diff --git a/lib/std/Target.zig b/lib/std/Target.zig index 161c81248b7949fb1d9595dcda9114cd2370901a..d1149ff5c512674321f5ae9ca94595a21eb6200b 100644 --- a/lib/std/Target.zig +++ b/lib/std/Target.zig @@ -2467,6 +2467,7 @@ pub const DynamicLinker = struct { pub fn kind(os: Os.Tag) Kind { return switch (os) { .fuchsia, + .managarm, .haiku, .illumos, @@ -2485,15 +2486,16 @@ pub const DynamicLinker = struct { .visionos, .watchos, => .arch_os, + .hurd, .linux, => .arch_os_abi, + .freestanding, .other, .contiki, .hermit, - .managarm, // Needs to be double-checked. .plan9, .rtems, @@ -2555,6 +2557,13 @@ pub const DynamicLinker = struct { else => none, }, + .managarm => switch (cpu.arch) { + .aarch64 => init("/lib/aarch64-managarm-mlibc-ld.so"), + .riscv64 => init("/lib/riscv64-managarm-mlibc-ld.so"), + .x86_64 => init("/lib/x86_64-managarm-mlibc-ld.so"), + else => none, + }, + .haiku => switch (cpu.arch) { .arm, .aarch64, @@ -2958,8 +2967,6 @@ pub const DynamicLinker = struct { // TODO go over each item in this list and either move it to the above list, or // implement the standard dynamic linker path code for it. - .managarm, - .ps3, .ps4, .ps5,