aboutsummaryrefslogtreecommitdiff
path: root/src/Compilation.zig
diff options
context:
space:
mode:
authorAlex Rønne Petersen <alex@alexrp.com>2025-05-08 21:28:13 +0200
committerAlex Rønne Petersen <alex@alexrp.com>2025-05-10 20:58:28 +0200
commit2116f2e3b2da0a01e119276e46fd3cbf4b35d548 (patch)
tree08534136016bff23b937f9f847154b55d303eed1 /src/Compilation.zig
parentd3a6236eef400ff0f99c3fe7d85cfda1c687bb82 (diff)
downloadzig-2116f2e3b2da0a01e119276e46fd3cbf4b35d548.tar.gz
zig-2116f2e3b2da0a01e119276e46fd3cbf4b35d548.zip
Compilation: Don't pass -mabi to Clang on powerpc64(le)-freebsd.
The driver doesn't support it, and FreeBSD 13+ on PPC64 uses ELFv2 anyway.
Diffstat (limited to 'src/Compilation.zig')
-rw-r--r--src/Compilation.zig5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/Compilation.zig b/src/Compilation.zig
index f921a8cfd1..351b81c122 100644
--- a/src/Compilation.zig
+++ b/src/Compilation.zig
@@ -5775,7 +5775,10 @@ pub fn addCCArgs(
if (target_util.llvmMachineAbi(target)) |mabi| {
// Clang's integrated Arm assembler doesn't support `-mabi` yet...
- if (!(target.cpu.arch.isArm() and (ext == .assembly or ext == .assembly_with_cpp))) {
+ // Clang's FreeBSD driver doesn't support `-mabi` on PPC64 (ELFv2 is used anyway).
+ if (!(target.cpu.arch.isArm() and (ext == .assembly or ext == .assembly_with_cpp)) and
+ !(target.cpu.arch.isPowerPC64() and target.os.tag == .freebsd))
+ {
try argv.append(try std.fmt.allocPrint(arena, "-mabi={s}", .{mabi}));
}
}