zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 3f1f05011edc19e0b94b3200e54f30cf7aa8da8e (tree)
parent fcdb7027e9f606cf0f4415daee73cb717affe69e
Author: Jacob Young <jacobly0@users.noreply.github.com>
Date:   Sun,  7 Apr 2024 21:40:59 -0400

haiku: fix abi and dynamic linker detection

Diffstat:
Mlib/std/zig/system.zig | 10+++++++---
1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/lib/std/zig/system.zig b/lib/std/zig/system.zig @@ -988,9 +988,13 @@ fn detectAbiAndDynamicLinker( // if it finds one, then instead of using /usr/bin/env as the ELF file to examine, it uses the file it references instead, // doing the same logic recursively in case it finds another shebang line. - // Since /usr/bin/env is hard-coded into the shebang line of many portable scripts, it's a - // reasonably reliable path to start with. - var file_name: []const u8 = "/usr/bin/env"; + var file_name: []const u8 = switch (os.tag) { + // Since /usr/bin/env is hard-coded into the shebang line of many portable scripts, it's a + // reasonably reliable path to start with. + else => "/usr/bin/env", + // Haiku does not have a /usr root directory. + .haiku => "/bin/env", + }; // #! (2) + 255 (max length of shebang line since Linux 5.1) + \n (1) var buffer: [258]u8 = undefined; while (true) {