https://gitlab.synchro.net/main/sbbs/-/commit/9a720937620ffe0eca8a5d0a
Added Files:
src/sbbs3/sexyz_release/CLAUDE.md mksexyzsrc.sh
Log Message:
sexyz: derive the source release from the makefile, not by hand
The archive's value is that its file set is derived: the sources are
whatever GNUmakefile's SRCS names, and the headers are their #include
closure. Assembling one by hand loses that, and twice did: the first
archive omitted xpprintf.c entirely, and a later one carried three stale sources.
mksexyzsrc.sh takes a checkout and an output directory, reads the source
list out of the shipped GNUmakefile, computes the header closure with
gcc -MM, pins git_branch.h/git_hash.h to HEAD, test-builds the result, and writes both containers named after sexyz.c's own revision string. It fails loudly if a file the makefile names is missing from the tree.
CLAUDE.md records what a Linux host cannot discover about this archive:
that a GCC link map cannot see what MSVC needs, which is how three defects reached a published archive, and that a cut must be verified on both
toolchains before release.
Co-Authored-By: Claude Opus 5 (1M context) <
noreply@anthropic.com>
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net