std.Target: Factor arch/ABI into FreeBSD minimum OS version selection.

Based on data in std.zig.target.
This commit is contained in:
Alex Rønne Petersen 2025-04-21 06:58:07 +02:00
parent eeaa1b17c6
commit 0e3609b8e0
No known key found for this signature in database

View file

@ -522,7 +522,19 @@ pub const Os = struct {
},
.freebsd => .{
.semver = .{
.min = .{ .major = 13, .minor = 4, .patch = 0 },
.min = blk: {
const default_min: std.SemanticVersion = .{ .major = 13, .minor = 4, .patch = 0 };
for (std.zig.target.available_libcs) |libc| {
if (libc.arch != arch or libc.os != tag or libc.abi != abi) continue;
if (libc.os_ver) |min| {
if (min.order(default_min) == .gt) break :blk min;
}
}
break :blk default_min;
},
.max = .{ .major = 14, .minor = 2, .patch = 0 },
},
},