From b6f0bf2df0f6baadc345a9d146599197a5b46e9f Mon Sep 17 00:00:00 2001 From: _ov4 Date: Fri, 16 Oct 2026 09:19:30 +0000 Subject: fix(build): statically link MinGW XML manifest dependencies Replace LLVMWindowsManifest's XML import library with static XML, iconv and zlib archives. Check the Windows compiler's PE imports before the restricted-PATH package smoke test. Co-Authored-By: Claude Fable 5.1 --- AGENTS/ARCH.md | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'AGENTS') diff --git a/AGENTS/ARCH.md b/AGENTS/ARCH.md index 002d62e..a73e086 100644 --- a/AGENTS/ARCH.md +++ b/AGENTS/ARCH.md @@ -131,6 +131,10 @@ macOS links with `-dead_strip_dylibs` to omit unused dylibs inherited from LLVM's support interface, including Homebrew's Z3. Keep the nightly package's non-system dependency check; required dylibs are not removed by this option. Windows EMBEDDED is untested. +On MinGW, `LLVMWindowsManifest` explicitly uses static libxml2, iconv and zlib +plus the system bcrypt library. XML definitions are loaded with `--whole-archive` +to satisfy dllimport references in the prebuilt LLVM archive. `-static` alone +does not replace an imported target's explicit `.dll.a` path. `NativeCompiler` clones the module, sets the host triple/DataLayout and emits a PIC object. Clang Driver constructs one platform linker job, which is dispatched to -- cgit v1.3.1-4-g156e