compiler: Link libc by default when targeting FreeBSD.

We don't yet have a direct syscall layer in std.os.freebsd.
This commit is contained in:
Alex Rønne Petersen 2025-05-11 11:13:22 +02:00
parent 4c2f1e01a7
commit f3e851dbd0
No known key found for this signature in database

View file

@ -335,6 +335,13 @@ pub fn resolve(options: Options) ResolveError!Config {
break :b true; break :b true;
} }
if (options.link_libc) |x| break :b x; if (options.link_libc) |x| break :b x;
switch (target.os.tag) {
// These targets don't require libc, but we don't yet have a syscall layer for them,
// so we default to linking libc for now.
.freebsd,
=> break :b true,
else => {},
}
if (options.ensure_libc_on_non_freestanding and target.os.tag != .freestanding) if (options.ensure_libc_on_non_freestanding and target.os.tag != .freestanding)
break :b true; break :b true;