std.zig.system.NativePaths: Add Homebrew paths (#22738)

This commit is contained in:
Wyatt Radkiewicz 2025-02-22 15:22:54 -07:00 committed by GitHub
parent 36fc2d2607
commit 33ffbb32c9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -81,7 +81,6 @@ pub fn detect(arena: Allocator, native_target: std.Target) !NativePaths {
return self; return self;
} }
// TODO: consider also adding homebrew paths
// TODO: consider also adding macports paths // TODO: consider also adding macports paths
if (builtin.target.os.tag.isDarwin()) { if (builtin.target.os.tag.isDarwin()) {
if (std.zig.system.darwin.isSdkInstalled(arena)) sdk: { if (std.zig.system.darwin.isSdkInstalled(arena)) sdk: {
@ -89,8 +88,14 @@ pub fn detect(arena: Allocator, native_target: std.Target) !NativePaths {
try self.addLibDir(try std.fs.path.join(arena, &.{ sdk, "usr/lib" })); try self.addLibDir(try std.fs.path.join(arena, &.{ sdk, "usr/lib" }));
try self.addFrameworkDir(try std.fs.path.join(arena, &.{ sdk, "System/Library/Frameworks" })); try self.addFrameworkDir(try std.fs.path.join(arena, &.{ sdk, "System/Library/Frameworks" }));
try self.addIncludeDir(try std.fs.path.join(arena, &.{ sdk, "usr/include" })); try self.addIncludeDir(try std.fs.path.join(arena, &.{ sdk, "usr/include" }));
return self;
} }
// Check for homebrew paths
if (std.posix.getenv("HOMEBREW_PREFIX")) |prefix| {
try self.addLibDir(try std.fs.path.join(arena, &.{ prefix, "/lib" }));
try self.addIncludeDir(try std.fs.path.join(arena, &.{ prefix, "/include" }));
}
return self; return self;
} }