Skip to content

Commit a9ff2d5

Browse files
committed
Compilation: Pass -m<os>-version-min=... to Clang for all applicable Darwin targets.
1 parent ddcf6fc commit a9ff2d5

File tree

1 file changed

+10
-20
lines changed

1 file changed

+10
-20
lines changed

src/Compilation.zig

Lines changed: 10 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5628,12 +5628,19 @@ pub fn addCCArgs(
56285628
try argv.appendSlice(&[_][]const u8{ "-target", llvm_triple });
56295629

56305630
switch (target.os.tag) {
5631-
.macos => {
5631+
.ios, .macos, .tvos, .watchos => |os| {
56325632
try argv.ensureUnusedCapacity(2);
56335633
// Pass the proper -m<os>-version-min argument for darwin.
56345634
const ver = target.os.version_range.semver.min;
5635-
argv.appendAssumeCapacity(try std.fmt.allocPrint(arena, "-mmacos-version-min={d}.{d}.{d}", .{
5636-
ver.major, ver.minor, ver.patch,
5635+
argv.appendAssumeCapacity(try std.fmt.allocPrint(arena, "-m{s}{s}-version-min={d}.{d}.{d}", .{
5636+
switch (target.abi) {
5637+
.simulator => "-simulator",
5638+
else => "",
5639+
},
5640+
@tagName(os),
5641+
ver.major,
5642+
ver.minor,
5643+
ver.patch,
56375644
}));
56385645
// This avoids a warning that sometimes occurs when
56395646
// providing both a -target argument that contains a
@@ -5642,23 +5649,6 @@ pub fn addCCArgs(
56425649
// doesn't matter which one gets overridden.
56435650
argv.appendAssumeCapacity("-Wno-overriding-option");
56445651
},
5645-
.ios => switch (target.cpu.arch) {
5646-
// Pass the proper -m<os>-version-min argument for darwin.
5647-
.x86, .x86_64 => {
5648-
const ver = target.os.version_range.semver.min;
5649-
try argv.append(try std.fmt.allocPrint(
5650-
arena,
5651-
"-m{s}-simulator-version-min={d}.{d}.{d}",
5652-
.{ @tagName(target.os.tag), ver.major, ver.minor, ver.patch },
5653-
));
5654-
},
5655-
else => {
5656-
const ver = target.os.version_range.semver.min;
5657-
try argv.append(try std.fmt.allocPrint(arena, "-m{s}-version-min={d}.{d}.{d}", .{
5658-
@tagName(target.os.tag), ver.major, ver.minor, ver.patch,
5659-
}));
5660-
},
5661-
},
56625652
else => {},
56635653
}
56645654

0 commit comments

Comments
 (0)