zig

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

commit 9e23e1d16c77d05ab0b4c2bcc861f2aaf4ad5c16 (tree)
parent be566a4c119a280ae34778f5e01dedb1480e4904
Author: Alex Rønne Petersen <alex@alexrp.com>
Date:   Mon,  5 May 2025 14:58:13 +0200

compiler: Define __FreeBSD_version when targeting FreeBSD libc.

Diffstat:
Msrc/Compilation.zig | 9+++++++++
1 file changed, 9 insertions(+), 0 deletions(-)

diff --git a/src/Compilation.zig b/src/Compilation.zig @@ -5852,6 +5852,15 @@ pub fn addCCArgs( try argv.append( try std.fmt.allocPrint(arena, "-D_WIN32_WINNT=0x{x:0>4}", .{minver}), ); + } else if (target.isFreeBSDLibC()) { + // https://docs.freebsd.org/en/books/porters-handbook/versions + const min_ver = target.os.version_range.semver.min; + try argv.append(try std.fmt.allocPrint(arena, "-D__FreeBSD_version={d}", .{ + // We don't currently respect the minor and patch components. This wouldn't be particularly + // helpful because our abilists file only tracks major FreeBSD releases, so the link-time stub + // symbols would be inconsistent with header declarations. + min_ver.major * 100_000, + })); } }