authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-04-15 14:18:56-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-04-16 19:42:23+02:00
log29532177c1c03a20d011e794f9abb70f1bdb6d59
treeb4deb75b136ed2d98d2052635843905ff74c98be
parentebc8fe4899ba1d3eb881cbbd3f3fc5032ec58b58

CI: add coverage for fuzzer compiling

From mlugg: this commit originally also added the same coverage to the aarch64-linux-release script, but that caused the aarch64-linux-release job to time out, so that change has been omitted for now.

3 files changed, 19 insertions(+), 1 deletions(-)

ci/aarch64-macos-release.sh+4
...@@ -51,6 +51,10 @@ stage3-release/bin/zig build test docs \...@@ -51,6 +51,10 @@ stage3-release/bin/zig build test docs \
51 --search-prefix "$PREFIX" \51 --search-prefix "$PREFIX" \
52 --test-timeout 2m52 --test-timeout 2m
5353
54# Ensure that the fuzzer at least compiles.
55stage3-release/bin/zig build test-std --fuzz=1K -Dno-lib -Dfuzz-only -Doptimize=ReleaseSafe
56stage3-release/bin/zig build test-std --fuzz=1K -Dno-lib -Dfuzz-only -Doptimize=Debug
57
54# Ensure that stage3 and stage4 are byte-for-byte identical.58# Ensure that stage3 and stage4 are byte-for-byte identical.
55stage3-release/bin/zig build \59stage3-release/bin/zig build \
56 --maxrss ${ZSF_MAX_RSS:-0} \60 --maxrss ${ZSF_MAX_RSS:-0} \
ci/x86_64-linux-release.sh+8-1
...@@ -51,7 +51,10 @@ unset CXX...@@ -51,7 +51,10 @@ unset CXX
5151
52ninja install52ninja install
5353
54# simultaneously test building self-hosted without LLVM and with 32-bit arm54# Covers several things:
55# 1. building the compiler without LLVM
56# 2. 32-bit
57# 3. arm
55stage3-release/bin/zig build \58stage3-release/bin/zig build \
56 -Dtarget=arm-linux-musleabihf \59 -Dtarget=arm-linux-musleabihf \
57 -Dno-lib60 -Dno-lib
...@@ -70,6 +73,10 @@ stage3-release/bin/zig build test docs \...@@ -70,6 +73,10 @@ stage3-release/bin/zig build test docs \
70 -Denable-superhtml \73 -Denable-superhtml \
71 --test-timeout 12m74 --test-timeout 12m
7275
76# Ensure that the fuzzer at least compiles.
77stage3-release/bin/zig build test-std --fuzz=1K -Dno-lib -Dfuzz-only -Doptimize=ReleaseSafe
78stage3-release/bin/zig build test-std --fuzz=1K -Dno-lib -Dfuzz-only -Doptimize=Debug
79
73# Ensure that stage3 and stage4 are byte-for-byte identical.80# Ensure that stage3 and stage4 are byte-for-byte identical.
74stage3-release/bin/zig build \81stage3-release/bin/zig build \
75 --prefix stage4-release \82 --prefix stage4-release \
ci/x86_64-windows-release.ps1+7
...@@ -54,6 +54,13 @@ stage3-release\bin\zig.exe build test docs `...@@ -54,6 +54,13 @@ stage3-release\bin\zig.exe build test docs `
54 --test-timeout 30m54 --test-timeout 30m
55CheckLastExitCode55CheckLastExitCode
5656
57# Ensure that the fuzzer at least compiles.
58# https://codeberg.org/ziglang/zig/issues/31893
59# stage3-release\bin\zig.exe build test-std --fuzz=1K -Dno-lib -Dfuzz-only -Doptimize=ReleaseSafe
60# CheckLastExitCode
61# stage3-release\bin\zig.exe build test-std --fuzz=1K -Dno-lib -Dfuzz-only -Doptimize=Debug
62# CheckLastExitCode
63
57# Ensure that stage3 and stage4 are byte-for-byte identical.64# Ensure that stage3 and stage4 are byte-for-byte identical.
58Write-Output "Build and compare stage4..."65Write-Output "Build and compare stage4..."
59stage3-release\bin\zig.exe build `66stage3-release\bin\zig.exe build `