std.Target: Add semver min/max versions for a bunch of OSs.

This commit is contained in:
Alex Rønne Petersen 2024-10-30 09:44:02 +01:00
parent ed68083d8f
commit f89982bf53
No known key found for this signature in database

View File

@ -162,42 +162,35 @@ pub const Os = struct {
.freestanding,
.other,
.contiki,
.elfiamcu,
.fuchsia,
.hermit,
.aix,
.haiku,
.hurd,
.plan9,
.rtems,
.serenity,
.zos,
// This should use semver once we determine the version history.
.bridgeos,
.illumos,
.uefi,
.ps3,
.ps4,
.ps5,
.emscripten,
.amdhsa,
.amdpal,
.cuda,
.mesa3d,
.nvcl,
.opencl, // TODO: OpenCL versions
.opengl, // TODO: GLSL versions
.vulkan,
=> .none,
.contiki,
.fuchsia,
.hermit,
.aix,
.hurd,
.rtems,
.zos,
.dragonfly,
.freebsd,
.netbsd,
@ -212,7 +205,17 @@ pub const Os = struct {
.solaris,
.uefi,
.wasi,
.amdhsa,
.amdpal,
.cuda,
.nvcl,
.opencl,
.opengl,
.vulkan,
=> .semver,
.linux => .linux,
@ -405,42 +408,57 @@ pub const Os = struct {
.freestanding,
.other,
.contiki,
.elfiamcu,
.fuchsia,
.hermit,
.aix,
.haiku,
.hurd,
.plan9,
.rtems,
.serenity,
.zos,
// This should use semver once we determine the version history.
.bridgeos,
.illumos,
.uefi,
.ps3,
.ps4,
.ps5,
.emscripten,
.amdhsa,
.amdpal,
.cuda,
.mesa3d,
.nvcl,
.opencl, // TODO: OpenCL versions
.opengl, // TODO: GLSL versions
.vulkan,
=> .{ .none = {} },
.contiki => .{
.semver = .{
.min = .{ .major = 4, .minor = 0, .patch = 0 },
.max = .{ .major = 4, .minor = 9, .patch = 0 },
},
},
.fuchsia => .{
.semver = .{
.min = .{ .major = 1, .minor = 1, .patch = 0 },
.max = .{ .major = 20, .minor = 1, .patch = 0 },
},
},
.hermit => .{
.semver = .{
.min = .{ .major = 0, .minor = 4, .patch = 0 },
.max = .{ .major = 0, .minor = 8, .patch = 0 },
},
},
.aix => .{
.semver = .{
.min = .{ .major = 7, .minor = 2, .patch = 5 },
.max = .{ .major = 7, .minor = 3, .patch = 2 },
},
},
.hurd => .{
.semver = .{
.min = .{ .major = 0, .minor = 9, .patch = 0 },
.max = .{ .major = 0, .minor = 9, .patch = 0 },
},
},
.linux => .{
.linux = .{
.range = .{
@ -464,6 +482,18 @@ pub const Os = struct {
},
},
},
.rtems => .{
.semver = .{
.min = .{ .major = 5, .minor = 1, .patch = 0 },
.max = .{ .major = 5, .minor = 3, .patch = 0 },
},
},
.zos => .{
.semver = .{
.min = .{ .major = 2, .minor = 5, .patch = 0 },
.max = .{ .major = 3, .minor = 1, .patch = 0 },
},
},
.dragonfly => .{
.semver = .{
@ -540,6 +570,12 @@ pub const Os = struct {
.max = WindowsVersion.latest,
},
},
.uefi => .{
.semver = .{
.min = .{ .major = 2, .minor = 0, .patch = 0 },
.max = .{ .major = 2, .minor = 9, .patch = 0 },
},
},
.wasi => .{
.semver = .{
@ -547,6 +583,45 @@ pub const Os = struct {
.max = .{ .major = 0, .minor = 2, .patch = 2 },
},
},
.amdhsa => .{
.semver = .{
.min = .{ .major = 5, .minor = 0, .patch = 2 },
.max = .{ .major = 6, .minor = 2, .patch = 2 },
},
},
.amdpal => .{
.semver = .{
.min = .{ .major = 1, .minor = 1, .patch = 0 },
.max = .{ .major = 3, .minor = 5, .patch = 0 },
},
},
.cuda => .{
.semver = .{
.min = .{ .major = 11, .minor = 0, .patch = 1 },
.max = .{ .major = 12, .minor = 6, .patch = 1 },
},
},
.nvcl,
.opencl,
=> .{
.semver = .{
.min = .{ .major = 2, .minor = 2, .patch = 0 },
.max = .{ .major = 3, .minor = 0, .patch = 0 },
},
},
.opengl => .{
.semver = .{
.min = .{ .major = 4, .minor = 5, .patch = 0 },
.max = .{ .major = 4, .minor = 6, .patch = 0 },
},
},
.vulkan => .{
.semver = .{
.min = .{ .major = 1, .minor = 2, .patch = 0 },
.max = .{ .major = 1, .minor = 3, .patch = 0 },
},
},
};
}
};