https://gitlab.synchro.net/main/sbbs/-/commit/89052800b9848c522a608af7
Modified Files:
src/doors/syncdoom/build.bat vcpkg.json src/doors/syncduke/build.bat vcpkg.json src/doors/termgfx/CMakeLists.txt
Log Message:
syncduke/syncdoom: link libsndfile via vcpkg for MSVC OGG music
termgfx only detected libsndfile through pkg_check_modules (pkg-config),
which doesn't exist under MSVC -- so on Windows the OGG-encode path was silently never compiled and rendered music always fell back to raw-PCM
WAV. The MinGW-GCC libsndfile vendored in 3rdp/ (for SyncTERM) can't fill
the gap: its objects pull in libgcc intrinsics (__chkstk_ms, __udivdi3)
and MinGW CRT thunks (__mingw_printf, __imp____acrt_iob_func) that MSVC's linker can't satisfy from the UCRT.
- termgfx/CMakeLists.txt: try find_package(SndFile CONFIG) first (the
vcpkg/MSVC path; also chains in the transitive static codec deps --
Vorbis/Ogg/FLAC/Opus -- via libsndfile's own config), then fall back to
the existing pkg-config path for *nix.
- syncduke/syncdoom vcpkg.json: add the libsndfile dependency (+ note the
vendored MinGW build can't be used by the MSVC door).
- syncduke/syncdoom build.bat: the vcpkg-prefix messages/comments now
cover libjxl and libsndfile.
Verified: both doors configure with "termgfx: libsndfile 1.2.2 (CONFIG)
found -> OGG music compression" and build clean (vcpkg libsndfile:x86-windows-static-md).
Co-Authored-By: Claude Opus 4.8 <
noreply@anthropic.com>
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net