authorgravatar for kubkon@jakubkonka.comJakub Konka <kubkon@jakubkonka.com> 2024-01-24 14:45:54+01:00
committergravatar for kubkon@jakubkonka.comJakub Konka <kubkon@jakubkonka.com> 2024-01-25 12:07:04+01:00
logdc4ef6d5d05f3e8b99ec38628a3f671a9268236f
treeefea1ab609a47789090842fe72ac5dd4d6701a64
parentd8d6ea6af25af7ecfea1351c652c51de49169536

macho: try frameworks before libs non-exclusive


1 files changed, 8 insertions(+), 16 deletions(-)

src/link/MachO.zig+8-16
......@@ -1257,23 +1257,15 @@ fn parseDependentDylibs(self: *MachO) !void {
12571257 const full_path = full_path: {
12581258 fail: {
12591259 const stem = std.fs.path.stem(id.name);
1260 const framework_name = try std.fmt.allocPrint(gpa, "{s}.framework" ++ std.fs.path.sep_str ++ "{s}", .{
1261 stem,
1260
1261 // Framework
1262 if (try resolveFramework(
1263 arena,
1264 &test_path,
1265 &checked_paths,
1266 framework_dirs,
12621267 stem,
1263 });
1264 defer gpa.free(framework_name);
1265
1266 if (mem.endsWith(u8, id.name, framework_name)) {
1267 // Framework
1268 if (try resolveFramework(
1269 arena,
1270 &test_path,
1271 &checked_paths,
1272 framework_dirs,
1273 stem,
1274 )) break :full_path test_path.items;
1275 break :fail;
1276 }
1268 )) break :full_path test_path.items;
12771269
12781270 // Library
12791271 const lib_name = eatPrefix(stem, "lib") orelse stem;