build: enable full parallelism when -Dhealed is set
The eowyn.sh script is used in a github workflow, but after commit 0d56ba3 (build: restore the exercise chain), the github action will take more time to complete. Enable full build parallelism, when -Dhealed is true and -Dn is null. Use the standard CompileStep and RunStep, instead of ZiglingStep. On my PC, this change reduces the build time by about 30%.
This commit is contained in:
parent
b478c1bff4
commit
1cf910fb51
1 changed files with 23 additions and 1 deletions
24
build.zig
24
build.zig
|
@ -593,6 +593,28 @@ pub fn build(b: *Build) !void {
|
|||
}
|
||||
start_step.dependOn(&prev_step.step);
|
||||
|
||||
return;
|
||||
} else if (use_healed) {
|
||||
const test_step = b.step("test", "Test the healed exercises");
|
||||
b.default_step = test_step;
|
||||
|
||||
for (exercises) |ex| {
|
||||
const base_name = ex.baseName();
|
||||
const file_path = std.fs.path.join(b.allocator, &[_][]const u8{
|
||||
"patches/healed", ex.main_file,
|
||||
}) catch unreachable;
|
||||
|
||||
const build_step = b.addExecutable(.{ .name = base_name, .root_source_file = .{ .path = file_path } });
|
||||
if (ex.C) {
|
||||
build_step.linkLibC();
|
||||
}
|
||||
build_step.install();
|
||||
|
||||
const run_step = build_step.run();
|
||||
|
||||
test_step.dependOn(&run_step.step);
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -604,7 +626,7 @@ pub fn build(b: *Build) !void {
|
|||
for (exercises, 0..) |ex, i| {
|
||||
const base_name = ex.baseName();
|
||||
const file_path = std.fs.path.join(b.allocator, &[_][]const u8{
|
||||
if (use_healed) "patches/healed" else "exercises", ex.main_file,
|
||||
"exercises", ex.main_file,
|
||||
}) catch unreachable;
|
||||
|
||||
const build_step = b.addExecutable(.{ .name = base_name, .root_source_file = .{ .path = file_path } });
|
||||
|
|
Loading…
Reference in a new issue