| author | |
| committer | |
| log | ac546f56eb2b9fd50a69f1d0bda3d0d070b76f52 |
| tree | b102f9dbd11b9aba60840f9c983fc6044b4218b5 |
| parent | b288f8c9a657b1c5a97e3e543d8598a9e749a390 |
2 files changed, 16 insertions(+), 2 deletions(-)
src/Compilation.zig+11-1| ... | ... | @@ -2903,7 +2903,17 @@ fn detectLibCIncludeDirs( |
| 2903 | 2903 | if (target_util.canBuildLibC(target)) { |
| 2904 | 2904 | const generic_name = target_util.libCGenericName(target); |
| 2905 | 2905 | // Some architectures are handled by the same set of headers. |
| 2906 | const arch_name = if (target.abi.isMusl()) target_util.archMuslName(target.cpu.arch) else @tagName(target.cpu.arch); | |
| 2906 | const arch_name = if (target.abi.isMusl()) | |
| 2907 | target_util.archMuslName(target.cpu.arch) | |
| 2908 | else if (target.cpu.arch.isThumb()) | |
| 2909 | // ARM headers are valid for Thumb too. | |
| 2910 | switch (target.cpu.arch) { | |
| 2911 | .thumb => "arm", | |
| 2912 | .thumbeb => "armeb", | |
| 2913 | else => unreachable, | |
| 2914 | } | |
| 2915 | else | |
| 2916 | @tagName(target.cpu.arch); | |
| 2907 | 2917 | const os_name = @tagName(target.os.tag); |
| 2908 | 2918 | // Musl's headers are ABI-agnostic and so they all have the "musl" ABI name. |
| 2909 | 2919 | const abi_name = if (target.abi.isMusl()) "musl" else @tagName(target.abi); |
src/target.zig+5-1| ... | ... | @@ -24,6 +24,10 @@ pub const available_libcs = [_]ArchOsAbi{ |
| 24 | 24 | .{ .arch = .arm, .os = .linux, .abi = .gnueabihf }, |
| 25 | 25 | .{ .arch = .arm, .os = .linux, .abi = .musleabi }, |
| 26 | 26 | .{ .arch = .arm, .os = .linux, .abi = .musleabihf }, |
| 27 | .{ .arch = .thumb, .os = .linux, .abi = .gnueabi }, | |
| 28 | .{ .arch = .thumb, .os = .linux, .abi = .gnueabihf }, | |
| 29 | .{ .arch = .thumb, .os = .linux, .abi = .musleabi }, | |
| 30 | .{ .arch = .thumb, .os = .linux, .abi = .musleabihf }, | |
| 27 | 31 | .{ .arch = .arm, .os = .windows, .abi = .gnu }, |
| 28 | 32 | .{ .arch = .csky, .os = .linux, .abi = .gnueabi }, |
| 29 | 33 | .{ .arch = .csky, .os = .linux, .abi = .gnueabihf }, |
| ... | ... | @@ -97,7 +101,7 @@ pub fn libCGenericName(target: std.Target) [:0]const u8 { |
| 97 | 101 | pub fn archMuslName(arch: std.Target.Cpu.Arch) [:0]const u8 { |
| 98 | 102 | switch (arch) { |
| 99 | 103 | .aarch64, .aarch64_be => return "aarch64", |
| 100 | .arm, .armeb => return "arm", | |
| 104 | .arm, .armeb, .thumb, .thumbeb => return "arm", | |
| 101 | 105 | .mips, .mipsel => return "mips", |
| 102 | 106 | .mips64el, .mips64 => return "mips64", |
| 103 | 107 | .powerpc => return "powerpc", |