From 0eefb4d212febfde5149c6bfb8b0a805465fb301 Mon Sep 17 00:00:00 2001 From: Meghan Denny Date: Sat, 15 Feb 2025 12:54:32 -0800 Subject: [PATCH] add disable_llvm build param --- build.zig | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/build.zig b/build.zig index 9fba23fd0f2ec866aa81d1f88d298b8dbb9aad6a..a18e933557ba7270d6b2606cbf174523a9fd1e74 100644 --- a/build.zig +++ b/build.zig @@ -4,19 +4,20 @@ const deps = @import("./deps.zig"); pub fn build(b: *std.Build) void { const target = b.standardTargetOptions(.{}); const mode = b.option(std.builtin.Mode, "mode", "") orelse .Debug; + const disable_llvm = b.option(bool, "disable_llvm", "use the non-llvm zig codegen") orelse false; const mod = b.addModule("tracer", .{ .root_source_file = b.path("src/mod.zig") }); - addTest(b, target, mode, mod, 0); - addTest(b, target, mode, mod, 1); - addTest(b, target, mode, mod, 2); - addTest(b, target, mode, mod, 3); + addTest(b, target, mode, disable_llvm, mod, 0); + addTest(b, target, mode, disable_llvm, mod, 1); + addTest(b, target, mode, disable_llvm, mod, 2); + addTest(b, target, mode, disable_llvm, mod, 3); const test_step = b.step("test", "dummy test step to pass CI checks"); test_step.dependOn(b.default_step); } -fn addTest(b: *std.Build, target: std.Build.ResolvedTarget, mode: std.builtin.Mode, mod: *std.Build.Module, comptime backend: u8) void { +fn addTest(b: *std.Build, target: std.Build.ResolvedTarget, mode: std.builtin.Mode, disable_llvm: bool, mod: *std.Build.Module, comptime backend: u8) void { _ = mod; const options = b.addOptions(); options.addOption(usize, "src_file_trimlen", std.fs.path.dirname(std.fs.path.dirname(@src().file).?).?.len); @@ -31,5 +32,7 @@ fn addTest(b: *std.Build, target: std.Build.ResolvedTarget, mode: std.builtin.Mo deps.addAllTo(exe); exe.linkLibC(); exe.root_module.addImport("build_options", options.createModule()); + exe.use_llvm = !disable_llvm; + exe.use_lld = !disable_llvm; b.installArtifact(exe); } -- 2.54.0