summaryrefslogtreecommitdiff
path: root/cesar
diff options
context:
space:
mode:
Diffstat (limited to 'cesar')
-rwxr-xr-xcesar/common/tools/config-merge9
1 files changed, 7 insertions, 2 deletions
diff --git a/cesar/common/tools/config-merge b/cesar/common/tools/config-merge
index 69a1f442e2..2f8f786451 100755
--- a/cesar/common/tools/config-merge
+++ b/cesar/common/tools/config-merge
@@ -112,11 +112,16 @@ sub read_config
$conf{$var} = $val;
next;
}
- elsif (m'^\s* set \s* ([a-z][-a-z0-9_/]*) \s*$'x)
+ elsif (m'^\s* set # Keyword.
+ \s* (?:\[([a-z0-9-]+)\])? # Optional build type selector.
+ \s* ([a-z][-a-z0-9_/]*) # Set identifier.
+ \s*$'x)
{
+ my ($selector, $set) = ($1, $2);
$type eq 'module'
and die "$filename:$.:config set called in module config\n";
- my $set = $1;
+ defined $selector && $selector ne $build_type
+ and next;
defined $set_dir
or die "use --set-dir to point to config sets\n";
read_config ("$set_dir/$set", 'set');