• src/doors/build.bat src/doors/clans-src/src/clans.props

    From Rob Swindell (on Windows 11)@1:103/705 to Git commit to main/sbbs/master on Sat Jul 25 00:18:18 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/bfa98ca23388299541a625d0
    Modified Files:
    src/doors/build.bat src/doors/clans-src/src/clans.props
    Log Message:
    doors/clans: build the Win32 output with the x64-hosted compiler

    The Clans failed to build intermittently with an internal compiler error
    in a UCRT header, landing on a different source file each run:

    corecrt_wstdio.h(1777,37): fatal error C1001: Internal compiler error.
    (compiler file 'msc1.cpp', line 1589)

    The 32-bit hosted cl.exe runs out of its ~3 GB address space with sixteen projects compiling at once, so the failure moves around and often vanishes
    on a straight retry. SyncRPG and SyncSCUMM already build their x86 output
    with the x64-hosted cross-compiler for exactly this reason. Select it for
    The Clans too, in the props sheet every project in clans.sln imports, so it applies whether the build comes from build.bat, MSBuild by hand, or the
    IDE. The emitted code is unchanged x86.

    On its own that makes every project fail instead with

    TRK0002: Failed to execute command: "...HostX64\x86\CL.exe ..."
    The parameter is incorrect.

    because FileTracker cannot launch an x64 child from a 32-bit MSBuild
    process. SyncSCUMM's props sheet answers this by switching access
    tracking off outright, which forfeits the header-dependency data behind incremental builds. Do that only where it is actually needed -- when
    MSBuild is a 32-bit process -- and have the doors build.bat prefer MSBuild\Current\Bin\amd64, where tracking works and an unchanged tree
    relinks in seconds rather than recompiling all sixteen projects.

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