• src/doors/build.bat

    From Rob Swindell (on Windows 11)@1:103/705 to Git commit to main/sbbs/master on Thu Jul 23 00:08:00 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/7466e94ea5e801782f664ae8
    Added Files:
    src/doors/build.bat
    Log Message:
    doors: add a top-level build.bat, the Win32 twin of build.sh

    build.sh drives the doors that build on a Unix toolchain, and nothing did
    the same for Windows -- where the story differs enough that forwarding to build.sh was never an option. src/doors/build.bat is the same umbrella for MSVC: it drives all eight Win32-buildable targets, keeps going when one
    fails, and prints a pass/fail summary, exiting non-zero if any failed.

    Seven of the eight are the modern doors, each of which already ships its
    own build.bat. The eighth is The Clans, built from src/clans.sln with
    MSBuild -- the one legacy door with a Windows project. The rest are
    make(1) trees that link ../odoors and assume a Unix toolchain, so -l
    reports them as having no Windows build instead of failing them one by
    one.

    Where it differs from build.sh it says why in the header: there is no
    libODoors prerequisite step, because the Win32 ODoorW.lib is prebuilt and tracked; Win32 is the only target, since one Win32 door binary serves a
    Win64 host too and three of the doors refuse x64 outright; and there is no debug build, because no per-door build.bat takes the argument. Both are
    refused up front rather than passed down. Cleaning removes build-msvc and leaves build/ to build.sh, since a shared checkout can hold both.

    Named targets build a subset, "clean"/"clean all", -l and -q all mean what
    they do in build.sh, and per-target logs land in the same .build-logs/.

    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)