mirror of
https://github.com/ziglang/zig.git
synced 2026-02-13 04:48:20 +00:00
std.Target: Make some functions handle driverkit alongside other Apple OSs.
Reference for versions: https://developer.apple.com/support/xcode
This commit is contained in:
parent
5d080e25d5
commit
0def4e0db0
@ -75,7 +75,13 @@ pub const Os = struct {
|
||||
|
||||
pub inline fn isDarwin(tag: Tag) bool {
|
||||
return switch (tag) {
|
||||
.ios, .macos, .watchos, .tvos, .visionos => true,
|
||||
.driverkit,
|
||||
.ios,
|
||||
.macos,
|
||||
.tvos,
|
||||
.visionos,
|
||||
.watchos,
|
||||
=> true,
|
||||
else => false,
|
||||
};
|
||||
}
|
||||
@ -116,7 +122,13 @@ pub const Os = struct {
|
||||
pub fn dynamicLibSuffix(tag: Tag) [:0]const u8 {
|
||||
return switch (tag) {
|
||||
.windows, .uefi => ".dll",
|
||||
.ios, .macos, .watchos, .tvos, .visionos => ".dylib",
|
||||
.driverkit,
|
||||
.ios,
|
||||
.macos,
|
||||
.tvos,
|
||||
.visionos,
|
||||
.watchos,
|
||||
=> ".dylib",
|
||||
else => ".so",
|
||||
};
|
||||
}
|
||||
@ -163,7 +175,6 @@ pub const Os = struct {
|
||||
.hermit,
|
||||
.hurd,
|
||||
.emscripten,
|
||||
.driverkit,
|
||||
.shadermodel,
|
||||
.uefi,
|
||||
.opencl, // TODO: OpenCL versions
|
||||
@ -175,6 +186,7 @@ pub const Os = struct {
|
||||
.other,
|
||||
=> .none,
|
||||
|
||||
.driverkit,
|
||||
.freebsd,
|
||||
.macos,
|
||||
.ios,
|
||||
@ -392,7 +404,6 @@ pub const Os = struct {
|
||||
.hermit,
|
||||
.hurd,
|
||||
.emscripten,
|
||||
.driverkit,
|
||||
.shadermodel,
|
||||
.uefi,
|
||||
.opencl, // TODO: OpenCL versions
|
||||
@ -410,6 +421,12 @@ pub const Os = struct {
|
||||
.max = .{ .major = 14, .minor = 0, .patch = 0 },
|
||||
},
|
||||
},
|
||||
.driverkit => .{
|
||||
.semver = .{
|
||||
.min = .{ .major = 19, .minor = 0, .patch = 0 },
|
||||
.max = .{ .major = 24, .minor = 0, .patch = 0 },
|
||||
},
|
||||
},
|
||||
.macos => switch (arch) {
|
||||
.aarch64 => VersionRange{
|
||||
.semver = .{
|
||||
@ -555,6 +572,7 @@ pub const Os = struct {
|
||||
return switch (os.tag) {
|
||||
.freebsd,
|
||||
.netbsd,
|
||||
.driverkit,
|
||||
.macos,
|
||||
.ios,
|
||||
.tvos,
|
||||
@ -589,7 +607,6 @@ pub const Os = struct {
|
||||
.hurd,
|
||||
.wasi,
|
||||
.emscripten,
|
||||
.driverkit,
|
||||
.shadermodel,
|
||||
.uefi,
|
||||
.opencl,
|
||||
@ -1802,6 +1819,7 @@ pub const DynamicLinker = struct {
|
||||
=> none,
|
||||
},
|
||||
|
||||
.driverkit,
|
||||
.ios,
|
||||
.tvos,
|
||||
.watchos,
|
||||
@ -1846,7 +1864,6 @@ pub const DynamicLinker = struct {
|
||||
.amdpal,
|
||||
.hermit,
|
||||
.hurd,
|
||||
.driverkit,
|
||||
.shadermodel,
|
||||
=> none,
|
||||
};
|
||||
@ -2261,7 +2278,13 @@ pub fn cTypeBitSize(target: Target, c_type: CType) u16 {
|
||||
},
|
||||
},
|
||||
|
||||
.macos, .ios, .tvos, .watchos, .visionos => switch (c_type) {
|
||||
.driverkit,
|
||||
.ios,
|
||||
.macos,
|
||||
.tvos,
|
||||
.visionos,
|
||||
.watchos,
|
||||
=> switch (c_type) {
|
||||
.char => return 8,
|
||||
.short, .ushort => return 16,
|
||||
.int, .uint, .float => return 32,
|
||||
@ -2334,7 +2357,6 @@ pub fn cTypeBitSize(target: Target, c_type: CType) u16 {
|
||||
.hermit,
|
||||
.hurd,
|
||||
.opengl,
|
||||
.driverkit,
|
||||
.shadermodel,
|
||||
=> @panic("TODO specify the C integer and float type sizes for this OS"),
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user