diff --git a/lib/std/zig/LibCDirs.zig b/lib/std/zig/LibCDirs.zig index ca43fe127f8f51c7446c93793fd6b94119d1cf3e..5d2313e50ad76626f04b646357b5a9e98da8dff7 100644 --- a/lib/std/zig/LibCDirs.zig +++ b/lib/std/zig/LibCDirs.zig @@ -193,6 +193,8 @@ pub fn detectFromBuilding( std.zig.target.freebsdArchNameHeaders(target.cpu.arch) else if (target.isNetBSDLibC()) std.zig.target.netbsdArchNameHeaders(target.cpu.arch) + else if (target.isOpenBSDLibC()) + std.zig.target.openbsdArchNameHeaders(target.cpu.arch) else @tagName(target.cpu.arch); const os_name = @tagName(target.os.tag); @@ -247,6 +249,7 @@ fn libCGenericName(target: *const std.Target) [:0]const u8 { .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos => return "darwin", .freebsd => return "freebsd", .netbsd => return "netbsd", + .openbsd => return "openbsd", else => {}, } switch (target.abi) { diff --git a/lib/std/zig/target.zig b/lib/std/zig/target.zig index ddd100c404736ff932476624cde626206365b5eb..b33e3ebfb90fb0a859a7ed8b2d87de7062b28e06 100644 --- a/lib/std/zig/target.zig +++ b/lib/std/zig/target.zig @@ -271,6 +271,12 @@ pub fn netbsdAbiNameHeaders(abi: std.Target.Abi) [:0]const u8 { }; } +pub fn openbsdArchNameHeaders(arch: std.Target.Cpu.Arch) [:0]const u8 { + return switch (arch) { + else => @tagName(arch), + }; +} + pub fn isLibCLibName(target: *const std.Target, name: []const u8) bool { const ignore_case = target.os.tag.isDarwin() or target.os.tag == .windows;