From e1b65ff8d211066d0856ad3535b96dcdc88e76dc Mon Sep 17 00:00:00 2001 From: Jakub Konka Date: Tue, 17 Nov 2020 13:04:25 +0100 Subject: [PATCH] stage2 macho: cleanup minimum version command --- src/link/MachO.zig | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/link/MachO.zig b/src/link/MachO.zig index bfc8537342..ff90c5a6c1 100644 --- a/src/link/MachO.zig +++ b/src/link/MachO.zig @@ -1379,13 +1379,21 @@ pub fn populateMissingMetadata(self: *MachO) !void { } if (self.version_min_cmd_index == null) { self.version_min_cmd_index = @intCast(u16, self.load_commands.items.len); + const cmd: u32 = switch (self.base.options.target.os.tag) { + .macos => macho.LC_VERSION_MIN_MACOSX, + .ios => macho.LC_VERSION_MIN_IPHONEOS, + .tvos => macho.LC_VERSION_MIN_TVOS, + .watchos => macho.LC_VERSION_MIN_WATCHOS, + else => unreachable, // wrong OS + }; + const ver = self.base.options.target.os.version_range.semver.min; + const version = ver.major << 16 | ver.minor << 8 | ver.patch; try self.load_commands.append(self.base.allocator, .{ - // TODO allow for different targets and different versions .MinVersion = .{ - .cmd = macho.LC_VERSION_MIN_MACOSX, + .cmd = cmd, .cmdsize = @sizeOf(macho.version_min_command), - .version = 0xB0001, // 11.0.1 BigSur - .sdk = 0xB0001, // 11.0.1 BigSur + .version = version, + .sdk = version, }, }); }