From 35f81211941548b7f1c2b25a1ead0acfb69b3ab5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Tue, 13 May 2025 01:31:13 +0200 Subject: [PATCH] std.zig.LibCDirs: Add NetBSD libc support. --- lib/std/zig/LibCDirs.zig | 3 +++ lib/std/zig/target.zig | 10 ++++++++++ 2 files changed, 13 insertions(+) diff --git a/lib/std/zig/LibCDirs.zig b/lib/std/zig/LibCDirs.zig index b98bbb6e0f..b9e612c2f9 100644 --- a/lib/std/zig/LibCDirs.zig +++ b/lib/std/zig/LibCDirs.zig @@ -172,6 +172,8 @@ pub fn detectFromBuilding( std.zig.target.muslArchNameHeaders(target.cpu.arch) else if (target.isFreeBSDLibC()) std.zig.target.freebsdArchNameHeaders(target.cpu.arch) + else if (target.isNetBSDLibC()) + std.zig.target.netbsdArchNameHeaders(target.cpu.arch) else @tagName(target.cpu.arch); const os_name = @tagName(target.os.tag); @@ -221,6 +223,7 @@ fn libCGenericName(target: std.Target) [:0]const u8 { .windows => return "mingw", .macos, .ios, .tvos, .watchos, .visionos => return "darwin", .freebsd => return "freebsd", + .netbsd => return "netbsd", else => {}, } switch (target.abi) { diff --git a/lib/std/zig/target.zig b/lib/std/zig/target.zig index bdf85a7217..352e08e92e 100644 --- a/lib/std/zig/target.zig +++ b/lib/std/zig/target.zig @@ -221,6 +221,16 @@ pub fn freebsdArchNameHeaders(arch: std.Target.Cpu.Arch) [:0]const u8 { }; } +pub fn netbsdArchNameHeaders(arch: std.Target.Cpu.Arch) [:0]const u8 { + return switch (arch) { + .armeb => "arm", + .aarch64_be => "aarch64", + .mipsel => "mips", + .mips64el => "mips64", + else => @tagName(arch), + }; +} + pub fn isLibCLibName(target: std.Target, name: []const u8) bool { const ignore_case = target.os.tag.isDarwin() or target.os.tag == .windows;