zig

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

commit 78f2ae7f29ff537e63227d7e88e555178fed2a34 (tree)
parent 7b9165b37576ed4c4962c0ad2afb62921524aa08
Author: Jakub Konka <kubkon@jakubkonka.com>
Date:   Mon, 16 Oct 2023 20:45:04 +0200

Merge pull request #17531 from moosichu/fix/frameworks

Fix some frameworks not linking macos
Diffstat:
Msrc/link/MachO.zig | 11+++++++++++
Msrc/main.zig | 4++--
2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/src/link/MachO.zig b/src/link/MachO.zig @@ -707,6 +707,17 @@ fn accessLibPath( return true; } + noextension: { + test_path.clearRetainingCapacity(); + try test_path.writer().print("{s}" ++ sep ++ "{s}", .{ search_dir, lib_name }); + try checked_paths.append(try gpa.dupe(u8, test_path.items)); + fs.cwd().access(test_path.items, .{}) catch |err| switch (err) { + error.FileNotFound => break :noextension, + else => |e| return e, + }; + return true; + } + return false; } diff --git a/src/main.zig b/src/main.zig @@ -6956,9 +6956,9 @@ fn accessFrameworkPath( ) !bool { const sep = fs.path.sep_str; - for (&[_][]const u8{ "tbd", "dylib" }) |ext| { + for (&[_][]const u8{ ".tbd", ".dylib", "" }) |ext| { test_path.clearRetainingCapacity(); - try test_path.writer().print("{s}" ++ sep ++ "{s}.framework" ++ sep ++ "{s}.{s}", .{ + try test_path.writer().print("{s}" ++ sep ++ "{s}.framework" ++ sep ++ "{s}{s}", .{ framework_dir_path, framework_name, framework_name,