| ... | ... | @@ -62,6 +62,9 @@ pub fn build(b: *Builder) !void { |
| 62 | 62 | b.default_step.dependOn(&exe.step); |
| 63 | 63 | |
| 64 | 64 | const skip_release = b.option(bool, "skip-release", "Main test suite skips release builds") orelse false; |
| 65 | const skip_release_small = b.option(bool, "skip-release-small", "Main test suite skips release-small builds") orelse skip_release; |
| 66 | const skip_release_fast = b.option(bool, "skip-release-fast", "Main test suite skips release-fast builds") orelse skip_release; |
| 67 | const skip_release_safe = b.option(bool, "skip-release-safe", "Main test suite skips release-safe builds") orelse skip_release; |
| 65 | 68 | const skip_self_hosted = b.option(bool, "skip-self-hosted", "Main test suite skips building self hosted compiler") orelse false; |
| 66 | 69 | if (!skip_self_hosted) { |
| 67 | 70 | test_step.dependOn(&exe.step); |
| ... | ... | @@ -83,13 +86,23 @@ pub fn build(b: *Builder) !void { |
| 83 | 86 | test_step.dependOn(test_stage2_step); |
| 84 | 87 | } |
| 85 | 88 | |
| 86 | | const all_modes = []builtin.Mode{ |
| 87 | | builtin.Mode.Debug, |
| 88 | | builtin.Mode.ReleaseSafe, |
| 89 | | builtin.Mode.ReleaseFast, |
| 90 | | builtin.Mode.ReleaseSmall, |
| 91 | | }; |
| 92 | | const modes = if (skip_release) []builtin.Mode{builtin.Mode.Debug} else all_modes; |
| 89 | var chosen_modes: [4]builtin.Mode = undefined; |
| 90 | var chosen_mode_index: usize = 0; |
| 91 | chosen_modes[chosen_mode_index] = builtin.Mode.Debug; |
| 92 | chosen_mode_index += 1; |
| 93 | if (!skip_release_safe) { |
| 94 | chosen_modes[chosen_mode_index] = builtin.Mode.ReleaseSafe; |
| 95 | chosen_mode_index += 1; |
| 96 | } |
| 97 | if (!skip_release_fast) { |
| 98 | chosen_modes[chosen_mode_index] = builtin.Mode.ReleaseFast; |
| 99 | chosen_mode_index += 1; |
| 100 | } |
| 101 | if (!skip_release_small) { |
| 102 | chosen_modes[chosen_mode_index] = builtin.Mode.ReleaseSmall; |
| 103 | chosen_mode_index += 1; |
| 104 | } |
| 105 | const modes = chosen_modes[0..chosen_mode_index]; |
| 93 | 106 | |
| 94 | 107 | test_step.dependOn(tests.addPkgTests(b, test_filter, "test/behavior.zig", "behavior", "Run the behavior tests", modes)); |
| 95 | 108 | |