https://gitlab.synchro.net/main/sbbs/-/commit/f88761b4f2123a438616835e
Modified Files:
.gitlab-ci-unix.yml .gitlab-ci.yml
Log Message:
CI: build libtermgfx and the doors that link it on Linux x64
The termgfx door family had no CI coverage: the Doors section only builds
the ODoors-based doors, which are gmake projects. libtermgfx, syncdoom, syncduke, syncretro, syncmoo1 and syncconquer are CMake projects, so the existing build_doors gate does not fit them -- it drives gmake command
lines that mean nothing to CMake.
Add a separate build_termgfx_doors input, defaulting to 'no', and enable
it on linux/x64 only. These doors also build under Windows/MSVC via each
door's build.bat, but the other CI targets are unverified, so platforms
opt in as each one is confirmed rather than opting out after a red
pipeline.
The jobs share a .<os>-termgfx-door template carrying the gate, the
ccache launcher and needs: []. Unlike the ODoors doors, these build their dependencies (xpdev, termgfx, and each door's vendored engine) as CMake sub-targets, so they need no *.tgz artifact from the library jobs and can
start immediately.
Each door is driven through its own build.sh, the documented entry point,
which encodes that door's CMake flags -- syncconquer's -DBUILD_VANILLATD=ON adds the second Tiberian Dawn binary, so calling cmake directly here would silently halve its artifact. build.sh only builds; it never deploys into a
live install. libtermgfx has no build.sh, so its job calls cmake directly
and is the one place TERMGFX_TESTS is turned on, running ctest.
ccache follows the [syncterm-cmake] job's convention and matters more for
these trees, which vendor whole engines. It is set through the CMAKE_<LANG>_COMPILER_LAUNCHER environment variables rather than -D,
because build.sh owns the cmake invocation and takes no extra arguments.
syncscumm is deliberately excluded: it is a full ScummVM configure+make
across five engines rather than a small CMake project, and wants its own
job once the rest are proven.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net