summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authordes <des@FreeBSD.org>2003-02-23 21:24:08 +0000
committerdes <des@FreeBSD.org>2003-02-23 21:24:08 +0000
commit4531e083d41e4f3c0a7a7774a738392932c034c7 (patch)
tree4e11993e5f9821feff7fda1d8dfd6918782aa54d /tools
parentc614cef2af17fe4c523a48a9f77274187ebc9bc4 (diff)
downloadFreeBSD-src-4531e083d41e4f3c0a7a7774a738392932c034c7.zip
FreeBSD-src-4531e083d41e4f3c0a7a7774a738392932c034c7.tar.gz
If more than one argument were given on the command line, interpret the
additional arguments as a series of architectures to build. This is useful for running subsets of a particular configuration.
Diffstat (limited to 'tools')
-rw-r--r--tools/tools/tinderbox/tbmaster.pl19
1 files changed, 15 insertions, 4 deletions
diff --git a/tools/tools/tinderbox/tbmaster.pl b/tools/tools/tinderbox/tbmaster.pl
index dab75fae..4282d0d 100644
--- a/tools/tools/tinderbox/tbmaster.pl
+++ b/tools/tools/tinderbox/tbmaster.pl
@@ -222,8 +222,8 @@ sub usage() {
MAIN:{
usage()
- unless (@ARGV == 1);
- my $config = lc($ARGV[0]);
+ unless (@ARGV >= 1);
+ my $config = lc(shift(@ARGV));
usage()
unless (exists($CONFIGS{$config}) && $config ne 'global');
%CONFIG = %{$CONFIGS{$config}};
@@ -244,10 +244,21 @@ MAIN:{
}
foreach my $branch (sort(@{$CONFIG{'BRANCHES'}})) {
- foreach my $arch (sort(keys(%{$CONFIG{'ARCHES'}}))) {
- foreach my $machine (sort(@{$CONFIG{'ARCHES'}->{$arch}})) {
+ if (@ARGV) {
+ foreach my $target (@ARGV) {
+ $target =~ m|^(\w+)(?:/(\w+))?$|
+ or die("invalid target specification: $target\n");
+ my ($arch, $machine) = ($1, $2);
+ $machine = $arch
+ unless defined($machine);
tinderbox($branch, $arch, $machine);
}
+ } else {
+ foreach my $arch (sort(keys(%{$CONFIG{'ARCHES'}}))) {
+ foreach my $machine (sort(@{$CONFIG{'ARCHES'}->{$arch}})) {
+ tinderbox($branch, $arch, $machine);
+ }
+ }
}
}
}
OpenPOWER on IntegriCloud