commit f8372d030e50b6eec50fd21a387b4d875f81a178 (tree)
parent c9d6f8b5058ba0df3bf281a3be3a3570c2219754
Author: Alex Rønne Petersen <alex@alexrp.com>
Date: Fri, 6 Dec 2024 14:00:49 +0100
compiler: Classify libatomic as an alias for compiler-rt.
This is a library that ships with GCC and provides fallback implementations of
atomic intrinsics where necessary. Since we do the same in our compiler-rt
implementation, and since some build systems insist on passing -latomic even
for Clang (which zig cc masquerades as), just satisfy this dependency by way of
compiler-rt.
Closes #22165.
Diffstat:
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/target.zig b/src/target.zig
@@ -267,7 +267,9 @@ pub fn classifyCompilerRtLibName(target: std.Target, name: []const u8) CompilerR
// the linker unable to find `_Unwind_RaiseException` and other related symbols.
return .both;
}
- if (std.mem.eql(u8, name, "compiler_rt")) {
+ if (std.mem.eql(u8, name, "compiler_rt") or
+ std.mem.eql(u8, name, "atomic"))
+ {
return .only_compiler_rt;
}
if (std.mem.eql(u8, name, "unwind")) {