authorgravatar for michael.dusan@gmail.comMichael Dusan <michael.dusan@gmail.com> 2019-09-09 17:57:32-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-09-10 10:10:14-04:00
log8bd5681651f64c7ebe059e6d7b288ddc60658cd5
tree156894168628c61cee9041219f82c675c9601166
parent852679c3695af19f218fdc9eab22c6fdf8d09622

fix tests.addPkgTests to always run native target

- include native-target when native-target ∉ cross_targets old behavior: - do nothing when `-Dskip-non-native` - never execute pkg tests for non-members of cross_targets

1 files changed, 12 insertions(+), 2 deletions(-)

test/tests.zig+12-2
......@@ -23,7 +23,7 @@ const runtime_safety = @import("runtime_safety.zig");
2323const translate_c = @import("translate_c.zig");
2424const gen_h = @import("gen_h.zig");
2525
26const test_targets = [_]CrossTarget{
26const cross_targets = [_]CrossTarget{
2727 CrossTarget{
2828 .os = .linux,
2929 .arch = .x86_64,
......@@ -186,7 +186,17 @@ pub fn addPkgTests(
186186 skip_non_native: bool,
187187) *build.Step {
188188 const step = b.step(b.fmt("test-{}", name), desc);
189 for (test_targets) |test_target| {
189
190 var targets = std.ArrayList(*const CrossTarget).init(b.allocator);
191 defer targets.deinit();
192 const host = CrossTarget{ .os = builtin.os, .arch = builtin.arch, .abi = builtin.abi };
193 targets.append(&host) catch unreachable;
194 for (cross_targets) |*t| {
195 if (t.os == builtin.os and t.arch == builtin.arch and t.abi == builtin.abi) continue;
196 targets.append(t) catch unreachable;
197 }
198
199 for (targets.toSliceConst()) |test_target| {
190200 const is_native = (test_target.os == builtin.os and test_target.arch == builtin.arch);
191201 if (skip_non_native and !is_native)
192202 continue;