ci: pin fuzz jobs to x86_64-unknown-linux-gnu

cargo-fuzz defaults to x86_64-unknown-linux-musl on Linux so ASAN can
statically link, but dtolnay/rust-toolchain@nightly doesn't ship a
musl std and GH runners don't have it preinstalled — build failed with
'can't find crate for core' on byteorder. Pinning both fuzz build and
fuzz run to the gnu target uses the std that comes with the toolchain
and works out of the box.
This commit is contained in:
swaits committed 2026-04-13 14:07:24 -06:00
1 parent a21e368e18
commit da9249446c
1 file changed
+5 -2
+5 -2
View File
@@ -120,13 +120,16 @@ jobs:
tool: cargo-fuzz
- name: Build fuzz targets
working-directory: fuzz
run: cargo +nightly fuzz build
# Pin to the gnu target — cargo-fuzz defaults to musl for ASAN
# static linking, but the nightly toolchain we install doesn't
# ship a musl std.
run: cargo +nightly fuzz build --target x86_64-unknown-linux-gnu
- name: Smoke-run every target
working-directory: fuzz
run: |
for target in parse_command parse_radio_config cobs_decoder_feed cobs_roundtrip command_roundtrip cobs_decoder_multi_frame cobs_chunk_invariant; do
echo "── $target ──"
cargo +nightly fuzz run "$target" -- -max_total_time=60
cargo +nightly fuzz run "$target" --target x86_64-unknown-linux-gnu -- -max_total_time=60
done
mutants: