zig

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

commit a8002a85649447b3622a81bfcbb27b2ca6d3d482 (tree)
parent ac793232eeeca87378b6b6cf4bec6e610859b5b1
Author: Michael Dusan <michael.dusan@gmail.com>
Date:   Thu, 15 Jan 2026 10:51:14 +0100

build: avoid pkg-config when statically linking LLVM

Fixes stage4 build on NetBSD with pkg-config installed.

Diffstat:
Mbuild.zig | 28+++++++++++++++-------------
1 file changed, 15 insertions(+), 13 deletions(-)

diff --git a/build.zig b/build.zig @@ -958,46 +958,48 @@ fn addStaticLlvmOptionsToModule(mod: *std.Build.Module, options: struct { .flags = &zig_cpp_cflags, }); + const lsl_options: std.Build.Module.LinkSystemLibraryOptions = .{ .use_pkg_config = .no }; + for (clang_libs) |lib_name| { - mod.linkSystemLibrary(lib_name, .{}); + mod.linkSystemLibrary(lib_name, lsl_options); } for (lld_libs) |lib_name| { - mod.linkSystemLibrary(lib_name, .{}); + mod.linkSystemLibrary(lib_name, lsl_options); } for (llvm_libs) |lib_name| { - mod.linkSystemLibrary(lib_name, .{}); + mod.linkSystemLibrary(lib_name, lsl_options); } if (options.llvm_has_m68k) for (llvm_libs_m68k) |lib_name| { - mod.linkSystemLibrary(lib_name, .{}); + mod.linkSystemLibrary(lib_name, lsl_options); }; if (options.llvm_has_csky) for (llvm_libs_csky) |lib_name| { - mod.linkSystemLibrary(lib_name, .{}); + mod.linkSystemLibrary(lib_name, lsl_options); }; if (options.llvm_has_arc) for (llvm_libs_arc) |lib_name| { - mod.linkSystemLibrary(lib_name, .{}); + mod.linkSystemLibrary(lib_name, lsl_options); }; if (options.llvm_has_xtensa) for (llvm_libs_xtensa) |lib_name| { - mod.linkSystemLibrary(lib_name, .{}); + mod.linkSystemLibrary(lib_name, lsl_options); }; - mod.linkSystemLibrary("z", .{}); - mod.linkSystemLibrary("zstd", .{}); + mod.linkSystemLibrary("z", lsl_options); + mod.linkSystemLibrary("zstd", lsl_options); if (mod.resolved_target.?.result.os.tag != .windows or mod.resolved_target.?.result.abi != .msvc) { // This means we rely on clang-or-zig-built LLVM, Clang, LLD libraries. - mod.linkSystemLibrary("c++", .{}); + mod.linkSystemLibrary("c++", lsl_options); } if (mod.resolved_target.?.result.os.tag == .windows) { - mod.linkSystemLibrary("version", .{}); - mod.linkSystemLibrary("uuid", .{}); - mod.linkSystemLibrary("ole32", .{}); + mod.linkSystemLibrary("version", lsl_options); + mod.linkSystemLibrary("uuid", lsl_options); + mod.linkSystemLibrary("ole32", lsl_options); } }