diff --git a/lib/std/Target.zig b/lib/std/Target.zig index 1af41afadf22b5cee1f1f947e7a8f211aedd0cc7..70a3d5b7dff9101031d625e81c870ec73f9fe34b 100644 --- a/lib/std/Target.zig +++ b/lib/std/Target.zig @@ -2469,6 +2469,9 @@ pub const DynamicLinker = struct { .tvos, .visionos, .watchos, + + .ps4, + .ps5, => .arch_os, .hurd, @@ -2489,6 +2492,11 @@ pub const DynamicLinker = struct { .@"switch", .gba, + .psx, + .ps3, + .psp, + .vita, + .emscripten, .wasi, @@ -2501,13 +2509,6 @@ pub const DynamicLinker = struct { .opengl, .vulkan, - .psx, - .ps3, - .ps4, - .ps5, - .psp, - .vita, - .tios, .ashetos, => .none, @@ -2910,8 +2911,10 @@ pub const DynamicLinker = struct { else => none, }, - // Operating systems in this list have been verified as not having a standard - // dynamic linker path. + .ps4, + .ps5, + => if (cpu.arch == .x86_64) init("/libexec/ld-elf.so.1") else none, + .freestanding, .other, @@ -2946,12 +2949,6 @@ pub const DynamicLinker = struct { .tios, .ashetos, => none, - - // 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. - .ps4, - .ps5, - => none, } catch unreachable; } };