| ... | @@ -4,6 +4,7 @@ root_step: *std.Build.Step, | ... | @@ -4,6 +4,7 @@ root_step: *std.Build.Step, |
| 4 | | 4 | |
| 5 | pub const Options = struct { | 5 | pub const Options = struct { |
| 6 | test_filters: []const []const u8, | 6 | test_filters: []const []const u8, |
| | 7 | test_target_filters: []const []const u8, |
| 7 | gdb: ?[]const u8, | 8 | gdb: ?[]const u8, |
| 8 | lldb: ?[]const u8, | 9 | lldb: ?[]const u8, |
| 9 | optimize_modes: []const std.builtin.OptimizeMode, | 10 | optimize_modes: []const std.builtin.OptimizeMode, |
| ... | @@ -1988,6 +1989,12 @@ fn addTest( | ... | @@ -1988,6 +1989,12 @@ fn addTest( |
| 1988 | for (db.options.test_filters) |test_filter| { | 1989 | for (db.options.test_filters) |test_filter| { |
| 1989 | if (std.mem.indexOf(u8, name, test_filter)) |_| return; | 1990 | if (std.mem.indexOf(u8, name, test_filter)) |_| return; |
| 1990 | } | 1991 | } |
| | 1992 | if (db.options.test_target_filters.len > 0) { |
| | 1993 | const triple_txt = target.resolved.result.zigTriple(db.b.allocator) catch @panic("OOM"); |
| | 1994 | for (db.options.test_target_filters) |filter| { |
| | 1995 | if (std.mem.indexOf(u8, triple_txt, filter) != null) break; |
| | 1996 | } else return; |
| | 1997 | } |
| 1991 | const files_wf = db.b.addWriteFiles(); | 1998 | const files_wf = db.b.addWriteFiles(); |
| 1992 | const exe = db.b.addExecutable(.{ | 1999 | const exe = db.b.addExecutable(.{ |
| 1993 | .name = name, | 2000 | .name = name, |