Add /usr/local/lib path for libxml2 and link libc++ on FreeBSD

This commit is contained in:
Greg V 2018-10-17 22:18:50 +03:00
parent d6cab0d4b6
commit a983a0a59b
2 changed files with 12 additions and 1 deletions

View File

@ -284,7 +284,7 @@ fn configureStage2(b: *Builder, exe: var, ctx: Context) !void {
exe.addObjectFile(libstdcxx_path);
exe.linkSystemLibrary("pthread");
} else if (exe.target.isDarwin()) {
} else if (exe.target.isDarwin() or exe.target.isFreeBSD()) {
exe.linkSystemLibrary("c++");
}
@ -293,6 +293,10 @@ fn configureStage2(b: *Builder, exe: var, ctx: Context) !void {
}
if (exe.target.getOs() != builtin.Os.windows) {
if (exe.target.isFreeBSD()) {
exe.addLibPath("/usr/local/lib");
// TODO use pkg-config
}
exe.linkSystemLibrary("xml2");
}
exe.linkSystemLibrary("c");

View File

@ -795,6 +795,13 @@ pub const Target = union(enum).{
};
}
pub fn isFreeBSD(self: *const Target) bool {
return switch (self.getOs()) {
builtin.Os.freebsd => true,
else => false,
};
}
pub fn wantSharedLibSymLinks(self: *const Target) bool {
return !self.isWindows();
}