- 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>
63 lines
3.1 KiB
Makefile
63 lines
3.1 KiB
Makefile
#----------------------------------------------------------------------------
|
|
# ObjectWindows - (C) Copyright 1993 by Borland International
|
|
# Use MODEL=m|l|d|f to statically link documents and viewers to application
|
|
# Use MODEL=x to build dynamically loaded document/view components
|
|
#
|
|
# This example combines an empty desktop with a variety of documents/views.
|
|
# The list of document/view modules is specified below by DOCVIEW = {obj list}.
|
|
# Document/view object files may be added or removed as desired from this list.
|
|
# Each document/view file must include document template(s) for their classes.
|
|
# The following document/view files are included in this examples:
|
|
# editlist.cpp - templates only, uses ObjectWindows TListView and TEditView
|
|
# dumpview.cpp - hex dump viewer/editor using TFileDocument
|
|
# odlistvw.cpp - owner-draw listbox viewer derived from example TODListBox
|
|
# infoview.cpp - viewer which displays all properties from any document
|
|
# xcptview.cpp - view which generates and logs a variety of exceptions
|
|
# linedoc.cpp - graphic line document with graphic and listbox viewers
|
|
# dvloader.cpp - pseudo-document & template used to load doc/view components
|
|
# These modules may be statically linked with the base application, or may be
|
|
# linked as DLL's for dynamic loading (dvloader must be statically linked).
|
|
#
|
|
# This application uses command-line switches to select the main frame class:
|
|
# -s SDI plain main window (TFrameWindow)
|
|
# -m MDI plain main window (TDecoratedFrame)
|
|
# -d SDI main window with status bar (TDecoratedFrame)
|
|
# (no switch) MDI main window with status bar (TDecoratedMDIFrame)
|
|
#
|
|
# Drag and drop from the file manager is supported by creating a document and
|
|
# view from the first document template with a matching file filter. Template
|
|
# order is dependent on the link ordering. In the dynmically built doc/view
|
|
# model, doc/view components (*.DVC) may be dropped or loaded from FileOpen.
|
|
#----------------------------------------------------------------------------
|
|
|
|
MODELS = mldfx
|
|
EXE = docviewx
|
|
DOCVIEW= editlist.obj dumpview.obj linedoc.obj xcptview.obj infoview.obj odlistvw.obj
|
|
|
|
!if "$(MODEL)" != "x" # static link of all document/view modules
|
|
|
|
OBJEXE = docviewx.obj odlistbx.obj $(DOCVIEW)
|
|
RESEXE = docviewx.res $(DOCVIEW:obj=res)
|
|
!include $(BCEXAMPLEDIR)\owlmake.gen
|
|
EXERULE = $(EXERULE) @echo Ignore previous warning about duplicate resource
|
|
|
|
!else # build each document/view module into a DLL, static link of dvloader
|
|
|
|
EXEBIN = docviewc.exe
|
|
OBJEXE = docviewx.obj dvloader.obj
|
|
RESEXE = docviewx.res dvloader.res
|
|
DLLRES = editlist
|
|
DLLBIN = editlist.dvc
|
|
DLLALL = $(DOCVIEW:obj=dvc)
|
|
DLLMAKE= $(EDITLIST) $(INFOVIEW) $(LINEDOC) $(XCPTVIEW) $(DUMPVIEW) $(ODLISTVW)
|
|
EDITLIST = $(DLLRULE:editlist.res=)
|
|
XCPTVIEW = $(DLLRULE:editlist=xcptview)
|
|
DUMPVIEW = $(DLLRULE:editlist=dumpview)
|
|
INFOVIEW = $(DLLRULE:editlist=infoview)
|
|
LINEDOC = $(DLLRULE:editlist=linedoc)
|
|
ODLISTX = $(DLLRULE:editlist=odlistvw)
|
|
ODLISTVW = $(ODLISTX:odlistvw.obj=odlistbx.obj odlistvw.obj)
|
|
!include $(BCEXAMPLEDIR)\owlmake.gen
|
|
|
|
!endif
|