| ... | ... | @@ -12,10 +12,7 @@ pub const ArchOsAbi = struct { |
| 12 | 12 | abi: std.Target.Abi, |
| 13 | 13 | os_ver: ?std.SemanticVersion = null, |
| 14 | 14 | |
| 15 | | // Minimum glibc version that provides support for the arch/os (for |
| 16 | | // .abi = .gnu). For most entries, the .glibc_min is null, |
| 17 | | // meaning the Zig minimum required by the standard library (see |
| 18 | | // glibc_min_version) is sufficient. |
| 15 | // Minimum glibc version that provides support for the arch/os when ABI is GNU. |
| 19 | 16 | glibc_min: ?std.SemanticVersion = null, |
| 20 | 17 | }; |
| 21 | 18 | |
| ... | ... | @@ -82,9 +79,6 @@ pub const available_libcs = [_]ArchOsAbi{ |
| 82 | 79 | .{ .arch = .x86_64, .os = .macos, .abi = .none, .os_ver = .{ .major = 10, .minor = 7, .patch = 0 } }, |
| 83 | 80 | }; |
| 84 | 81 | |
| 85 | | /// Minimum glibc version, due to dependencies from the Zig standard library on glibc symbols |
| 86 | | pub const glibc_min_version: std.SemanticVersion = .{ .major = 2, .minor = 17, .patch = 0 }; |
| 87 | | |
| 88 | 82 | pub fn libCGenericName(target: std.Target) [:0]const u8 { |
| 89 | 83 | switch (target.os.tag) { |
| 90 | 84 | .windows => return "mingw", |
| ... | ... | @@ -165,7 +159,7 @@ pub fn canBuildLibC(target: std.Target) bool { |
| 165 | 159 | } |
| 166 | 160 | // Ensure glibc (aka *-linux-gnu) version is supported |
| 167 | 161 | if (target.isGnuLibC()) { |
| 168 | | const min_glibc_ver = libc.glibc_min orelse glibc_min_version; |
| 162 | const min_glibc_ver = libc.glibc_min orelse return true; |
| 169 | 163 | const target_glibc_ver = target.os.version_range.linux.glibc; |
| 170 | 164 | return target_glibc_ver.order(min_glibc_ver) != .lt; |
| 171 | 165 | } |