https://gitlab.synchro.net/main/sbbs/-/commit/ca2946f39c55712d53a4991f
Modified Files:
src/conio/GNUmakefile src/sbbs3/GNUmakefile src/sbbs3/gtkchat/GNUmakefile src/sbbs3/scfg/GNUmakefile src/sbbs3/syncview/GNUmakefile src/sbbs3/targets.mk src/sbbs3/uedit/GNUmakefile src/sbbs3/umonitor/GNUmakefile src/syncterm/GNUmakefile
Log Message:
build: depend on $(ENCODE_LIB) wherever $(ENCODE_LIBS) is linked
Same gap the previous commit closed for $(HASH_LIB): most targets that
link $(ENCODE_LIBS) never named $(ENCODE_LIB) as a prerequisite, so make
did not descend into src/encode and linked whatever libencode.a was
already on disk. It only ever worked because that library's exported
surface has been stable; the first new symbol added there would break an incremental build exactly the way a stale libhash.a just did.
Covers websrvr, fixsmb, chksmb, smbutil, sbbsecho, addfiles, makeuser, qwknodes, upgrade_to_v319/v320, textgen, scfg, uedit, umonitor,
syncview, gtkchat, cterm_test and syncterm. The targets that already had
the prerequisite (sbbs, node, echocfg, filelist, jsdoor, delfiles,
dupefind) are unchanged.
Verified by deleting libencode.a and libhash.a and rebuilding: make standalone-utils descends into both src/encode and src/hash and links everything cleanly, and each of the other patched makefiles issues the
encode descent as well.
Note that textgen also links $(XPDEV_LIB) by path without depending on
it; that one is left alone here.
Co-Authored-By: Claude Opus 4.8 (1M context) <
noreply@anthropic.com>
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net