- BORLAND/: Borland C++ 4.52 (chosen over 4.5 by byte-match: CODE/RP/CW32.LIB
is identical to 4.52's install lib). BCC32/TLINK32/TLIB/MAKE run natively on
Win11; CODE/BT/OPT.MAK is the shipped BTL4OPT.EXE's exact flag recipe
(extender = Borland PowerPack DPMI32, not Phar Lap TNT).
- restoration/source410/: the literal 1995-form reconstruction of the missing
BT game source (never mixed into CODE/). Round 1-3 state:
* 6 of 10 surviving original TUs COMPILE CLEAN under the period toolchain
(BTMSSN, BTCNSL, BTSCNRL, BTTEAM, BTL4MODE, BTL4ARND) - first builds
since 1996.
* BT_L4/BTL4APP.CPP pilot reconstruction: 12/12 functions, Fail() lands on
its binary-recorded line 400 exactly.
* BT/BTCNSL.HPP: console wire IDs recovered from the binary's ctors
(Killed=9, Damaged=10, ScoreUpdate=13, DeathWithoutHonor=15 [T1];
TeamScore=12 flagged [T4]).
* MUNGA/: 8 engine-header backfills back-dated from the BT412 WinTesla tree
(VDATA numbering decomp-verified; AUDREND's OpenAL-era virtual removed -
the period compiler is the drift detector).
* Tooling: backdate.py (WinTesla->1995 header transform), compile410.sh
(per-TU verification sweep under authentic OPT.MAK flags).
* README: corrected roadmap - MECH.HPP is the capstone grown with the mech
TU reconstructions; BTREG.CPP green = the header-family milestone.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
172 lines
2.9 KiB
Makefile
172 lines
2.9 KiB
Makefile
PATH = ..\..
|
|
VCPATH = c:\msvc\bin
|
|
VCROOT = c:\msvc
|
|
|
|
# Set the IDAPI INCLUDE and LIB directory
|
|
!ifndef IDAPIINC
|
|
IDAPIINC = $(PATH)\include
|
|
!endif
|
|
|
|
!ifndef IDAPILIB
|
|
IDAPILIB = $(PATH)\lib
|
|
!endif
|
|
|
|
# Set the full INCLUDE and LIB search paths
|
|
INCLUDE = $(IDAPIINC);$(INCLUDE)
|
|
LIB = $(IDAPILIB);$(LIB)
|
|
LINKOPT = /NOLOGO /NOD /PACKC:61440 /ALIGN:16 /ONERROR:NOEXE /CO /SEG:256 /CODEVIEW
|
|
OBJS_EXT =
|
|
MAPFILE =
|
|
|
|
OBJS = \
|
|
aliases.obj\
|
|
batmove.obj\
|
|
blobio.obj\
|
|
blobsmpl.obj\
|
|
block.obj\
|
|
bookmark.obj\
|
|
callback.obj\
|
|
config.obj\
|
|
cr8pxtbl.obj\
|
|
cr8dbtbl.obj\
|
|
cr8txtbl.obj\
|
|
dbio.obj\
|
|
dblogin.obj\
|
|
drvcaps.obj\
|
|
errval.obj\
|
|
fieldmap.obj\
|
|
filter.obj\
|
|
filtcomp.obj\
|
|
filtcont.obj\
|
|
format.obj\
|
|
idxdbase.obj\
|
|
idxexpr.obj\
|
|
idxpdox.obj\
|
|
initeng.obj\
|
|
inmemtbl.obj\
|
|
inputreq.obj\
|
|
langdrv.obj\
|
|
lnkcrsr.obj\
|
|
lsql.obj\
|
|
lsqljoin.obj\
|
|
lsqllive.obj\
|
|
navigate.obj\
|
|
optparam.obj\
|
|
password.obj\
|
|
prdxsort.obj\
|
|
qbe.obj\
|
|
qbe2.obj\
|
|
range.obj\
|
|
reclock.obj\
|
|
recupdat.obj\
|
|
rdolock.obj\
|
|
refinteg.obj\
|
|
search.obj\
|
|
secdesc.obj\
|
|
session.obj\
|
|
softdel.obj\
|
|
sqlbind.obj\
|
|
sysinfo.obj\
|
|
tblinfo.obj\
|
|
tbllist.obj\
|
|
tbllock.obj\
|
|
tblopen.obj\
|
|
tbrstrct.obj\
|
|
test.obj\
|
|
textimp.obj\
|
|
textexp.obj\
|
|
transact.obj\
|
|
upsize.obj\
|
|
valcheck.obj\
|
|
input.obj\
|
|
snipdata.obj\
|
|
snipmain.obj\
|
|
sniptool.obj
|
|
|
|
|
|
SNIPIT.EXE:: $(OBJS) $(OBJS_EXT) SNIPIT.DEF
|
|
echo >NUL @<<SNIPIT.CFG
|
|
aliases.obj+
|
|
batmove.obj+
|
|
blobio.obj+
|
|
blobsmpl.obj+
|
|
block.obj+
|
|
bookmark.obj+
|
|
callback.obj+
|
|
config.obj+
|
|
cr8pxtbl.obj+
|
|
cr8dbtbl.obj+
|
|
cr8txtbl.obj+
|
|
dbio.obj+
|
|
dblogin.obj+
|
|
drvcaps.obj+
|
|
errval.obj+
|
|
fieldmap.obj+
|
|
filter.obj+
|
|
filtcomp.obj+
|
|
filtcont.obj+
|
|
format.obj+
|
|
idxdbase.obj+
|
|
idxexpr.obj+
|
|
idxpdox.obj+
|
|
initeng.obj+
|
|
inmemtbl.obj+
|
|
inputreq.obj+
|
|
langdrv.obj+
|
|
lnkcrsr.obj+
|
|
lsql.obj+
|
|
lsqljoin.obj+
|
|
lsqllive.obj+
|
|
navigate.obj+
|
|
optparam.obj+
|
|
password.obj+
|
|
prdxsort.obj+
|
|
qbe.obj+
|
|
qbe2.obj+
|
|
range.obj+
|
|
reclock.obj+
|
|
recupdat.obj+
|
|
rdolock.obj+
|
|
refinteg.obj+
|
|
search.obj+
|
|
secdesc.obj+
|
|
session.obj+
|
|
softdel.obj+
|
|
sqlbind.obj+
|
|
sysinfo.obj+
|
|
tblinfo.obj+
|
|
tbllist.obj+
|
|
tbllock.obj+
|
|
tblopen.obj+
|
|
tbrstrct.obj+
|
|
test.obj+
|
|
textimp.obj+
|
|
textexp.obj+
|
|
transact.obj+
|
|
upsize.obj+
|
|
valcheck.obj+
|
|
input.obj+
|
|
snipdata.obj+
|
|
snipmain.obj+
|
|
sniptool.obj+
|
|
$(OBJS_EXT)
|
|
SNIPIT.EXE
|
|
$(MAPFILE)
|
|
$(PATH)\LIB\IDAPI.LIB+
|
|
$(VCROOT)\LIB\OLDNAMES.LIB+
|
|
$(VCROOT)\LIB\LIBW+
|
|
$(VCROOT)\LIB\LLIBCEW+
|
|
$(PATH)\LIB\CTL3DMSC.LIB
|
|
SNIPIT.DEF;
|
|
<<
|
|
$(VCPATH)\link $(LINKOPT) @SNIPIT.CFG
|
|
$(VCPATH)\RC /NOLOGO -r -d_DEBUG SNIPIT.RC
|
|
$(VCPATH)\rc /NOLOGO SNIPIT.RES $@
|
|
|
|
.c.obj :
|
|
$(VCPATH)\cl /c /nologo /G2 /W3 /Zi /AL /Gt10 /Gx- /Od /D "_DEBUG" \
|
|
/D "STRICT" /D "WIN31" /FR /GA /Fd"SNIPIT.PDB" $*.c
|
|
|
|
|
|
|