From d4b70505551ecf568f8af7375cb0e6e5aea97cfb Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 24 Jun 2026 01:28:12 -0700 Subject: [PATCH] cmake: remove --zig-lib-dir arg from zig build This demonstrates one of the downsides of the approach in this branch: since `zig build` CLI is intentionally unaware of the command line parsing that will be done by the child process, it cannot obtain zig lib dir override from the command line even as it needs that information in order to build the subcommand. Consequently, zig lib dir has to be passed via env var. CMake does not provide a way to do this. So instead we rely on Zig's automatic lookup functionality. This could be mitigated by adding CLI arg parsing that happens *before* the subcommand. I find this kind of special case to be awkward and unpleasant however. I think it's better to simply remove the ability to pass `--zig-lib-dir` to `zig build`. --- CMakeLists.txt | 2 -- ci/aarch64-freebsd-debug.sh | 4 +++- ci/aarch64-freebsd-release.sh | 4 +++- ci/aarch64-linux-debug.sh | 4 +++- ci/aarch64-linux-release.sh | 4 +++- ci/aarch64-macos-debug.sh | 4 +++- ci/aarch64-macos-release.sh | 4 +++- ci/aarch64-netbsd-debug.sh | 4 +++- ci/aarch64-netbsd-release.sh | 4 +++- ci/aarch64-windows.ps1 | 5 +++-- ci/loongarch64-linux-debug.sh | 4 +++- ci/loongarch64-linux-release.sh | 4 +++- ci/powerpc64le-linux-debug.sh | 4 +++- ci/powerpc64le-linux-release.sh | 4 +++- ci/riscv64-linux-debug.sh | 4 +++- ci/riscv64-linux-release.sh | 4 +++- ci/s390x-linux-debug.sh | 4 +++- ci/s390x-linux-release.sh | 4 +++- ci/x86_64-freebsd-debug.sh | 4 +++- ci/x86_64-freebsd-release.sh | 4 +++- ci/x86_64-linux-debug-llvm.sh | 4 +++- ci/x86_64-linux-debug.sh | 4 +++- ci/x86_64-linux-release.sh | 7 ++++--- ci/x86_64-netbsd-debug.sh | 4 +++- ci/x86_64-netbsd-release.sh | 4 +++- ci/x86_64-openbsd-debug.sh | 4 +++- ci/x86_64-openbsd-release.sh | 4 +++- ci/x86_64-windows-debug.ps1 | 7 +++---- ci/x86_64-windows-release.ps1 | 7 +++---- 29 files changed, 85 insertions(+), 39 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 893baf2951d7136d7b291e4fce5c1ac827167022..e9c24112daefb6350d78de46f765828eab78a7a8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -729,8 +729,6 @@ endif() set(ZIG_BUILD_ARGS - --zig-lib-dir "${PROJECT_SOURCE_DIR}/lib" - "-Dversion-string=${RESOLVED_ZIG_VERSION}" "-Dtarget=${ZIG_TARGET_TRIPLE}" "-Dcpu=${ZIG_TARGET_MCPU}" diff --git a/ci/aarch64-freebsd-debug.sh b/ci/aarch64-freebsd-debug.sh index f84a683771b456066ce5c7997b12bae71aac27bb..f1e53270618c5954a0554934a4dd90e81e8d5e3f 100755 --- a/ci/aarch64-freebsd-debug.sh +++ b/ci/aarch64-freebsd-debug.sh @@ -40,12 +40,14 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + stage3-debug/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ -Dstatic-llvm \ -Dskip-non-native \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 4m stage3-debug/bin/zig build \ diff --git a/ci/aarch64-freebsd-release.sh b/ci/aarch64-freebsd-release.sh index e008d4ee81fb11bdeac967f93965d7bffb754c5d..0f5a949b7a89c0256f4c9d4d8e85607756b88c00 100755 --- a/ci/aarch64-freebsd-release.sh +++ b/ci/aarch64-freebsd-release.sh @@ -40,12 +40,14 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + stage3-release/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ -Dstatic-llvm \ -Dskip-non-native \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 4m # Ensure that stage3 and stage4 are byte-for-byte identical. diff --git a/ci/aarch64-linux-debug.sh b/ci/aarch64-linux-debug.sh index 5ee0a33c1ccce4272f0a26a833c4cee56e5b7db5..c8497814fdc6688e6b1d9f6d307afbe9bbd0ac88 100755 --- a/ci/aarch64-linux-debug.sh +++ b/ci/aarch64-linux-debug.sh @@ -42,6 +42,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + # No -fqemu and -fwasmtime here as they're covered by the x86_64-linux scripts. stage3-debug/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ @@ -49,7 +52,6 @@ stage3-debug/bin/zig build test docs \ -Dskip-non-native \ -Dtarget=native-native-musl \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ -Denable-superhtml \ --test-timeout 3m diff --git a/ci/aarch64-linux-release.sh b/ci/aarch64-linux-release.sh index ae5203195d5a17d6fdd4b9970b3802c3d4115ca1..d6bf710555d13145ea7978d152561e0cc2f87d9b 100755 --- a/ci/aarch64-linux-release.sh +++ b/ci/aarch64-linux-release.sh @@ -42,6 +42,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + # No -fqemu and -fwasmtime here as they're covered by the x86_64-linux scripts. stage3-release/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ @@ -49,7 +52,6 @@ stage3-release/bin/zig build test docs \ -Dskip-non-native \ -Dtarget=native-native-musl \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ -Denable-superhtml \ --test-timeout 3m diff --git a/ci/aarch64-macos-debug.sh b/ci/aarch64-macos-debug.sh index dd959ef0c97d306d3f79a40d61d0eba87ae5c268..226b3109eafa9e8de169999b52fcd748ddb7c088 100755 --- a/ci/aarch64-macos-debug.sh +++ b/ci/aarch64-macos-debug.sh @@ -43,9 +43,11 @@ cmake .. \ ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + stage3-debug/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ - --zig-lib-dir "$PWD/../lib" \ -Denable-macos-sdk \ -Dstatic-llvm \ -Dskip-spirv \ diff --git a/ci/aarch64-macos-release.sh b/ci/aarch64-macos-release.sh index 5f2012d268fd097215113c760320092aba529ad0..b1b431f257fd867bf2bacea31dc63dff3d4a3acb 100755 --- a/ci/aarch64-macos-release.sh +++ b/ci/aarch64-macos-release.sh @@ -43,8 +43,10 @@ cmake .. \ ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + stage3-release/bin/zig build test docs \ - --zig-lib-dir "$PWD/../lib" \ -Denable-macos-sdk \ -Dstatic-llvm \ -Dskip-spirv \ diff --git a/ci/aarch64-netbsd-debug.sh b/ci/aarch64-netbsd-debug.sh index 1fedad9875d77822bd5473b3603248ecaece2314..a7d7d3e97920a95ff4006792c1bea005bc648583 100755 --- a/ci/aarch64-netbsd-debug.sh +++ b/ci/aarch64-netbsd-debug.sh @@ -40,12 +40,14 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + stage3-debug/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ -Dstatic-llvm \ -Dskip-non-native \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 4m stage3-debug/bin/zig build \ diff --git a/ci/aarch64-netbsd-release.sh b/ci/aarch64-netbsd-release.sh index db59d529e928f0059f664bd3557cde654d803f92..e0a4c9aaa03f87770b013be6aaf92ffddc6d2bbc 100755 --- a/ci/aarch64-netbsd-release.sh +++ b/ci/aarch64-netbsd-release.sh @@ -40,12 +40,14 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + stage3-release/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ -Dstatic-llvm \ -Dskip-non-native \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 4m # Ensure that stage3 and stage4 are byte-for-byte identical. diff --git a/ci/aarch64-windows.ps1 b/ci/aarch64-windows.ps1 index c711127a61fd0a8c48617a67199757fb2c3a7ae1..3268dfd1e4eec456d247780beab3ae2542eb6897 100644 --- a/ci/aarch64-windows.ps1 +++ b/ci/aarch64-windows.ps1 @@ -4,7 +4,6 @@ $MCPU = "baseline" $ZIG_LLVM_CLANG_LLD_URL = "https://ziglang.org/deps/$ZIG_LLVM_CLANG_LLD_NAME.zip" $PREFIX_PATH = "$(Get-Location)\..\$ZIG_LLVM_CLANG_LLD_NAME" $ZIG = "$PREFIX_PATH\bin\zig.exe" -$ZIG_LIB_DIR = "$(Get-Location)\lib" $ZSF_MAX_RSS = if ($Env:ZSF_MAX_RSS) { $Env:ZSF_MAX_RSS } else { 0 } if (!(Test-Path "..\$ZIG_LLVM_CLANG_LLD_NAME.zip")) { @@ -53,10 +52,12 @@ CheckLastExitCode ninja install CheckLastExitCode +# Must be done after zig cc is finished. +$Env:ZIG_LIB_DIR="$(Get-Location)\..\lib" + Write-Output "Main test suite..." & "stage3-release\bin\zig.exe" build test docs ` --maxrss $ZSF_MAX_RSS ` - --zig-lib-dir "$ZIG_LIB_DIR" ` --search-prefix "$PREFIX_PATH" ` -Dstatic-llvm ` -Dskip-non-native ` diff --git a/ci/loongarch64-linux-debug.sh b/ci/loongarch64-linux-debug.sh index f980744f8d0d3f7f790e88147635691cbee720f7..b3460be8fe4585bda04f9702c6d666dcf47949c5 100755 --- a/ci/loongarch64-linux-debug.sh +++ b/ci/loongarch64-linux-debug.sh @@ -40,6 +40,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + # No -fqemu and -fwasmtime here as they're covered by the x86_64-linux scripts. stage3-debug/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ @@ -47,7 +50,6 @@ stage3-debug/bin/zig build test docs \ -Dskip-non-native \ -Dtarget=native-native-musl \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 4m stage3-debug/bin/zig build \ diff --git a/ci/loongarch64-linux-release.sh b/ci/loongarch64-linux-release.sh index 0343259929fb06d39cfeda396c326f9b0cabbba9..4c1451a09003a53cde93328d34aad08c7de272f0 100755 --- a/ci/loongarch64-linux-release.sh +++ b/ci/loongarch64-linux-release.sh @@ -40,6 +40,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + # No -fqemu and -fwasmtime here as they're covered by the x86_64-linux scripts. stage3-release/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ @@ -47,7 +50,6 @@ stage3-release/bin/zig build test docs \ -Dskip-non-native \ -Dtarget=native-native-musl \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 4m # Ensure that stage3 and stage4 are byte-for-byte identical. diff --git a/ci/powerpc64le-linux-debug.sh b/ci/powerpc64le-linux-debug.sh index cbdfd9f48fa7c228e499c23b93ca71879c5f8474..442a7a03c3637b95249b4273469348a418b784ce 100755 --- a/ci/powerpc64le-linux-debug.sh +++ b/ci/powerpc64le-linux-debug.sh @@ -40,6 +40,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + # No -fqemu and -fwasmtime here as they're covered by the x86_64-linux scripts. stage3-debug/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ @@ -48,7 +51,6 @@ stage3-debug/bin/zig build test docs \ -Dtarget=native-native-musl \ -Dcpu=native+longcall \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 4m stage3-debug/bin/zig build \ diff --git a/ci/powerpc64le-linux-release.sh b/ci/powerpc64le-linux-release.sh index 25150408a4ef2161eb171371796b229a5f768ed6..c03c1504febc9e8039a74781c091fc999dd5d9e8 100755 --- a/ci/powerpc64le-linux-release.sh +++ b/ci/powerpc64le-linux-release.sh @@ -40,6 +40,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + # No -fqemu and -fwasmtime here as they're covered by the x86_64-linux scripts. stage3-release/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ @@ -48,7 +51,6 @@ stage3-release/bin/zig build test docs \ -Dtarget=native-native-musl \ -Dcpu=native+longcall \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 4m # Ensure that stage3 and stage4 are byte-for-byte identical. diff --git a/ci/riscv64-linux-debug.sh b/ci/riscv64-linux-debug.sh index 631573cfec76fc58be737b087a60a52ed0b04887..f01fc2bb09d763e3dbd06abbc055148d7d1b5ba0 100755 --- a/ci/riscv64-linux-debug.sh +++ b/ci/riscv64-linux-debug.sh @@ -42,6 +42,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + # No -fqemu and -fwasmtime here as they're covered by the x86_64-linux scripts. stage3-debug/bin/zig build test-modules test-c-abi \ --maxrss ${ZSF_MAX_RSS:-0} \ @@ -50,5 +53,4 @@ stage3-debug/bin/zig build test-modules test-c-abi \ -Dskip-single-threaded \ -Dtarget=native-native-musl \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 4m diff --git a/ci/riscv64-linux-release.sh b/ci/riscv64-linux-release.sh index 1f51b7d8c2931b4344bc05f9d7e76021ec35e590..34719e9d0d9595ff05f9d99f600b74347ddcb208 100755 --- a/ci/riscv64-linux-release.sh +++ b/ci/riscv64-linux-release.sh @@ -42,6 +42,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + # No -fqemu and -fwasmtime here as they're covered by the x86_64-linux scripts. stage3-release/bin/zig build test-modules test-c-abi \ --maxrss ${ZSF_MAX_RSS:-0} \ @@ -50,5 +53,4 @@ stage3-release/bin/zig build test-modules test-c-abi \ -Dskip-single-threaded \ -Dtarget=native-native-musl \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 4m diff --git a/ci/s390x-linux-debug.sh b/ci/s390x-linux-debug.sh index f4d601ce4bc74fe5244b3bd596f4e75684eaefe1..3d97f9c1650189ae1f105553257dd692e94f818d 100755 --- a/ci/s390x-linux-debug.sh +++ b/ci/s390x-linux-debug.sh @@ -40,6 +40,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + # No -fqemu and -fwasmtime here as they're covered by the x86_64-linux scripts. stage3-debug/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ @@ -47,7 +50,6 @@ stage3-debug/bin/zig build test docs \ -Dskip-non-native \ -Dtarget=native-native-musl \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 4m stage3-debug/bin/zig build \ diff --git a/ci/s390x-linux-release.sh b/ci/s390x-linux-release.sh index db70925e67b6afea80b483821e0a9a47d011f4a0..a8c5a9fcb341bb616729c5ab792acff29ca3db02 100755 --- a/ci/s390x-linux-release.sh +++ b/ci/s390x-linux-release.sh @@ -40,6 +40,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + # No -fqemu and -fwasmtime here as they're covered by the x86_64-linux scripts. stage3-release/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ @@ -47,7 +50,6 @@ stage3-release/bin/zig build test docs \ -Dskip-non-native \ -Dtarget=native-native-musl \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 4m # Ensure that stage3 and stage4 are byte-for-byte identical. diff --git a/ci/x86_64-freebsd-debug.sh b/ci/x86_64-freebsd-debug.sh index ec8d0db1ad77db75111ad334edca9094ffc03419..c67c7bbe4d50bdd2448a83e0479ff61b65cc5a62 100755 --- a/ci/x86_64-freebsd-debug.sh +++ b/ci/x86_64-freebsd-debug.sh @@ -40,6 +40,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + stage3-debug/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ -Dstatic-llvm \ @@ -51,7 +54,6 @@ stage3-debug/bin/zig build test docs \ -Dskip-windows \ -Dskip-darwin \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 2m stage3-debug/bin/zig build \ diff --git a/ci/x86_64-freebsd-release.sh b/ci/x86_64-freebsd-release.sh index f3d50ee920e1ff5ba8cf9a128b1c4a8f32e5df0d..83c88ef5aae163deee3cebd40c1b2b1f01047930 100755 --- a/ci/x86_64-freebsd-release.sh +++ b/ci/x86_64-freebsd-release.sh @@ -40,6 +40,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + stage3-release/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ -Dstatic-llvm \ @@ -51,7 +54,6 @@ stage3-release/bin/zig build test docs \ -Dskip-windows \ -Dskip-darwin \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 2m # Ensure that the fuzzer at least compiles. diff --git a/ci/x86_64-linux-debug-llvm.sh b/ci/x86_64-linux-debug-llvm.sh index 77579c827ba9414d773afddb1c8da47a5230e518..408607dbc632d110e82cca0dadcd0980b3bebe85 100755 --- a/ci/x86_64-linux-debug-llvm.sh +++ b/ci/x86_64-linux-debug-llvm.sh @@ -43,6 +43,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + # simultaneously test building self-hosted without LLVM and with 32-bit arm stage3-debug/bin/zig build \ -Dtarget=arm-linux-musleabihf \ @@ -63,7 +66,6 @@ stage3-debug/bin/zig build test docs \ -Dskip-darwin \ -Dtarget=native-native-musl \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ -Denable-superhtml \ --test-timeout 12m diff --git a/ci/x86_64-linux-debug.sh b/ci/x86_64-linux-debug.sh index 690b9c3314700f6a4b48ac7bc29adfe2e90bace4..fe4450ea8e67316d5d75def9c60fb79bf6edb3c6 100755 --- a/ci/x86_64-linux-debug.sh +++ b/ci/x86_64-linux-debug.sh @@ -42,6 +42,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + # simultaneously test building self-hosted without LLVM and with 32-bit arm stage3-debug/bin/zig build \ -Dtarget=arm-linux-musleabihf \ @@ -63,7 +66,6 @@ stage3-debug/bin/zig build test docs \ -Dskip-llvm \ -Dtarget=native-native-musl \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ -Denable-superhtml \ --test-timeout 10m diff --git a/ci/x86_64-linux-release.sh b/ci/x86_64-linux-release.sh index 815e85bf60f497585ca2d34704c6c8bd4d0d0e89..0fbccca8d3291869b1d68e461417053524b2b109 100755 --- a/ci/x86_64-linux-release.sh +++ b/ci/x86_64-linux-release.sh @@ -48,6 +48,9 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + # Covers several things: # 1. building the compiler without LLVM # 2. 32-bit @@ -66,7 +69,6 @@ stage3-release/bin/zig build test docs \ -Dstatic-llvm \ -Dtarget=native-native-musl \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ -Denable-superhtml \ --test-timeout 12m @@ -120,6 +122,5 @@ stage3/bin/zig build -p stage4 \ -Dstatic-llvm \ -Dtarget=native-native-musl \ -Dno-lib \ - --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" + --search-prefix "$PREFIX" stage4/bin/zig test ../test/behavior.zig diff --git a/ci/x86_64-netbsd-debug.sh b/ci/x86_64-netbsd-debug.sh index 3755131c6d1a815ecf1e1392f1e14be759af0ecb..ef16be259f9a5c692d63e094f974c81ee4e0e62d 100755 --- a/ci/x86_64-netbsd-debug.sh +++ b/ci/x86_64-netbsd-debug.sh @@ -40,12 +40,14 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + stage3-debug/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ -Dstatic-llvm \ -Dskip-non-native \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 2m stage3-debug/bin/zig build \ diff --git a/ci/x86_64-netbsd-release.sh b/ci/x86_64-netbsd-release.sh index 2a3dde40bd6f28f4c2ccec953307a29178d79d9d..f9fc7d6aea7fa0ed44223544052dd084a06996fd 100755 --- a/ci/x86_64-netbsd-release.sh +++ b/ci/x86_64-netbsd-release.sh @@ -40,12 +40,14 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + stage3-release/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ -Dstatic-llvm \ -Dskip-non-native \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 2m # Ensure that the fuzzer at least compiles. diff --git a/ci/x86_64-openbsd-debug.sh b/ci/x86_64-openbsd-debug.sh index e85befacfbf653af9d650a898effee6c860cda05..3aac9c636bc642dca609d562c6f721ce6cce8665 100755 --- a/ci/x86_64-openbsd-debug.sh +++ b/ci/x86_64-openbsd-debug.sh @@ -40,12 +40,14 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + stage3-debug/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ -Dstatic-llvm \ -Dskip-non-native \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 2m stage3-debug/bin/zig build \ diff --git a/ci/x86_64-openbsd-release.sh b/ci/x86_64-openbsd-release.sh index ea9c44df11318118c0dbd7cc1a01838adc2a0116..76dd9a8b9c0a41efe1a89a21a7125f56f6066d44 100755 --- a/ci/x86_64-openbsd-release.sh +++ b/ci/x86_64-openbsd-release.sh @@ -40,12 +40,14 @@ unset CXX ninja install +# Must be done after zig cc is finished. +export ZIG_LIB_DIR="$PWD/../lib" + stage3-release/bin/zig build test docs \ --maxrss ${ZSF_MAX_RSS:-0} \ -Dstatic-llvm \ -Dskip-non-native \ --search-prefix "$PREFIX" \ - --zig-lib-dir "$PWD/../lib" \ --test-timeout 2m # Ensure that the fuzzer at least compiles. diff --git a/ci/x86_64-windows-debug.ps1 b/ci/x86_64-windows-debug.ps1 index a00f6812e0382c5257cf00ae22cd7dd0de3d277a..fa416bf3ff1207dc26c6ebf497608940d8fc52e7 100644 --- a/ci/x86_64-windows-debug.ps1 +++ b/ci/x86_64-windows-debug.ps1 @@ -2,7 +2,6 @@ $TARGET = "x86_64-windows-gnu" $MCPU = "baseline" $PREFIX_PATH = "$($Env:USERPROFILE)\deps\zig+llvm+lld+clang-$TARGET-0.17.0-dev.203+073889523" $ZIG = "$PREFIX_PATH\bin\zig.exe" -$ZIG_LIB_DIR = "$(Get-Location)\lib" $ZSF_MAX_RSS = if ($Env:ZSF_MAX_RSS) { $Env:ZSF_MAX_RSS } else { 0 } function CheckLastExitCode { @@ -42,10 +41,12 @@ CheckLastExitCode ninja install CheckLastExitCode +# Must be done after zig cc is finished. +$Env:ZIG_LIB_DIR="$(Get-Location)\..\lib" + Write-Output "Main test suite..." stage3-debug\bin\zig build test docs ` --maxrss $ZSF_MAX_RSS ` - --zig-lib-dir "$ZIG_LIB_DIR" ` --search-prefix "$PREFIX_PATH" ` -Dstatic-llvm ` -Dskip-non-native ` @@ -56,7 +57,6 @@ CheckLastExitCode Write-Output "Build x86_64-windows-msvc behavior tests using the C backend..." stage3-debug\bin\zig build-obj ` - --zig-lib-dir "$ZIG_LIB_DIR" ` -ofmt=c ` -OReleaseSmall ` --name compiler_rt ` @@ -67,7 +67,6 @@ stage3-debug\bin\zig build-obj ` CheckLastExitCode stage3-debug\bin\zig test ` - --zig-lib-dir "$ZIG_LIB_DIR" ` -ofmt=c ` -femit-bin="behavior-x86_64-windows-msvc.c" ` --test-no-exec ` diff --git a/ci/x86_64-windows-release.ps1 b/ci/x86_64-windows-release.ps1 index 14d06818983be638497bc190e825fcb7734c8c92..8364836291d8d57097f7a76cba93b651c88c1e94 100644 --- a/ci/x86_64-windows-release.ps1 +++ b/ci/x86_64-windows-release.ps1 @@ -2,7 +2,6 @@ $TARGET = "x86_64-windows-gnu" $MCPU = "baseline" $PREFIX_PATH = "$($Env:USERPROFILE)\deps\zig+llvm+lld+clang-$TARGET-0.17.0-dev.203+073889523" $ZIG = "$PREFIX_PATH\bin\zig.exe" -$ZIG_LIB_DIR = "$(Get-Location)\lib" $ZSF_MAX_RSS = if ($Env:ZSF_MAX_RSS) { $Env:ZSF_MAX_RSS } else { 0 } function CheckLastExitCode { @@ -42,10 +41,12 @@ CheckLastExitCode ninja install CheckLastExitCode +# Must be done after zig cc is finished. +$Env:ZIG_LIB_DIR="$(Get-Location)\..\lib" + Write-Output "Main test suite..." stage3-release\bin\zig.exe build test docs ` --maxrss $ZSF_MAX_RSS ` - --zig-lib-dir "$ZIG_LIB_DIR" ` --search-prefix "$PREFIX_PATH" ` -Dstatic-llvm ` -Dskip-non-native ` @@ -82,7 +83,6 @@ CheckLastExitCode Write-Output "Build x86_64-windows-msvc behavior tests using the C backend..." stage3-release\bin\zig.exe build-obj ` - --zig-lib-dir "$ZIG_LIB_DIR" ` -ofmt=c ` -OReleaseSmall ` --name compiler_rt ` @@ -93,7 +93,6 @@ stage3-release\bin\zig.exe build-obj ` CheckLastExitCode stage3-release\bin\zig.exe test ` - --zig-lib-dir "$ZIG_LIB_DIR" ` -ofmt=c ` -femit-bin="behavior-x86_64-windows-msvc.c" ` --test-no-exec ` -- 2.54.0