Repository navigation
fix(build): allow static MinGW runtimes in relinker-only tests - #8067
oneandonlydean merged 1 commit into
Conversation
|
Some comparisons could not be completed because a pull request conflicts with the base branch. Review these shared files manually before concluding that there is no overlap.
|
4ee20e1 to
a1fb06d
Compare
|
Verdict: confirmed (configure step). Environment: Windows 11 Home 10.0.26300, CMake 4.3.1, Ninja. The compiler is WinLibs GCC 15.2.0 r7, run from a directory without the runtime DLLs:
With the normal WinLibs directory, the relinker-only build of this PR configures and builds, and I did not build or run the suite with a genuinely static-runtime toolchain (Scoop GCC). This DLL-less compiler directory still links dynamically, so it shows only the configure behaviour. AI-assisted: yes (Claude Code); results above were run on this machine. |
a1fb06d to
995c10e
Compare
What
Windows relinker-only builds with
BUILD_TESTING=ONreject MinGW distributions that ship static runtimes, such as Scoop GCC 15.2.0: configuration requires three runtime DLLs even though this mode does not build the PRX libraries.Allow missing runtime DLLs when
ANYPS5_RELINKER_ONLY=ON. Continue copying each DLL that is present, so WinLibs fixtures retain their runtime dependencies. Full builds still require all three DLLs and retain the existing DWARF-unwinding requirement. Clarify the distinction in the relinker-only build instructions.Overlap review (2026-10-19, main
8038a425f). The scan covered 697 open PRs and found no confirmed conflict involving this PR. The bot lists 10 incomplete comparisons because those other branches already conflict with main. Their current shared-file patches were reviewed manually:This PR has no prerequisite. #8087 is stacked on this exact commit and declares the dependency. The remaining bot warnings require the other branches to be updated against main before automatic comparisons can finish.
Tested
Latest verification on main
8038a425f: Scoop GCC 15.2.0 relinker-only build passed; 212 CTest cases passed, onelong_pathsskip, zero failures (89.10 s). The rebased patch is unchanged. Conventions and whitespace checks passed. Earlier qualification follows.Windows 11 (NT build 26300), Release, Ninja, on
maine004d03ceplus this change.Cannot locate MinGW runtime: libgcc_s_seh-1.dll.ANYPS5_RELINKER_ONLY=ONandBUILD_TESTING=ON.b/rs): 211 CTest cases passed, zero failures, one skip. Its test directory contains none of the three MinGW runtime DLLs; its test environment excludes the WinLibs bin directory.b/rw): 210 cases passed, one skip and oneshader_cache_runtime_sourcescleanup error (WinError 32, temporary file held open). That case passed on an isolated rerun. All runnable cases therefore passed across the full run and rerun. The three copied runtime DLLs match the compiler's originals byte for byte.long_pathsis the skipped case in both configurations because this host hasLongPathsEnabled=0. Short build directories avoid the existing path-length-sensitiveinput_preservationfixture; both it andwindows_diagnostic_fixture_isolationpassed with both compilers.Builds used
cmake --build b/rs --parallel 8andcmake --build b/rw --parallel 8; complete suites usedctest --test-dir b/rs --output-on-failure --parallel 4and the same command forb/rw. Linux and macOS were not run locally.Checklist
main; no other open PR implements the same functionsNotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file.mdfiles or images added to the repository (attach them to this PR)