Skip to content

Commit e2d58c1

Browse files
committed
Fix CI AArch64 Linux musl builds
This is required to get PR #640 and further work on the repository moving.
1 parent 61deab3 commit e2d58c1

File tree

1 file changed

+14
-4
lines changed

1 file changed

+14
-4
lines changed

.cargo/config.toml

+14-4
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,19 @@
1-
# Remove this if targeting AArch64 from an AArch64 Linux box
1+
# May need to remove these if targeting AArch64 from an AArch64 Linux box
2+
23
[target.'cfg(all(target_os = "linux", target_arch = "aarch64"))']
3-
runner = 'qemu-aarch64'
4+
runner = "qemu-aarch64"
45

56
[target.aarch64-unknown-linux-gnu]
6-
linker = 'aarch64-linux-gnu-gcc'
7+
linker = "aarch64-linux-gnu-gcc"
78

89
[target.aarch64-unknown-linux-musl]
9-
linker = 'aarch64-linux-musl-gcc'
10+
linker = "aarch64-linux-musl-gcc"
11+
# AArch64 Linux musl targets are repeatedly affected under varying
12+
# circumstances by fixedn't linking issues to compiler builtin symbols.
13+
# Linking to libgcc, though arguably an inelegant hack that's only portable
14+
# to our glibc from musl crosscompilation scenario, is effective to reliably
15+
# provide an implementation of those fundamental symbols over time, without
16+
# user-visible impacts on the final executables. See:
17+
# https://github.com/rust-lang/rust/issues/46651
18+
# https://github.com/rust-lang/compiler-builtins/issues/201
19+
rustflags = ["-Clink-args=-lgcc"]

0 commit comments

Comments
 (0)