std.debug: avoid os.getFdPath

Commit ea9917d9bd introduced usage
of fs.Dir.realpath which eventually calls os.getFdpath which is
forbidden to be used by the compiler. It causes building zig to fail on
OpenBsd, NetBSD and older versions of FreeBSD and DragonFly.

This patch substitutes with os.realpath on libc targets and eventually
calls c.realpath and allows zig to build. Any use of realpath is not
desired but this is the lesser evil.
This commit is contained in:
Michael Dusan
2023-08-15 17:20:05 -04:00
parent 3eedaab731
commit c685b675e5

View File

@@ -1228,7 +1228,7 @@ pub fn readElfDebugInfo(
}
var cwd_buf: [fs.MAX_PATH_BYTES]u8 = undefined;
const cwd_path = fs.cwd().realpath("", &cwd_buf) catch break :blk;
const cwd_path = os.realpath(".", &cwd_buf) catch break :blk;
// <global debug directory>/<absolute folder of current binary>/<gnu_debuglink>
for (global_debug_directories) |global_directory| {