aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xscripts/kconfig.pl11
1 files changed, 9 insertions, 2 deletions
diff --git a/scripts/kconfig.pl b/scripts/kconfig.pl
index 6a6bbd2747..392f1d5841 100755
--- a/scripts/kconfig.pl
+++ b/scripts/kconfig.pl
@@ -102,8 +102,15 @@ sub config_sub($$) {
my $cfg1 = shift;
my $cfg2 = shift;
my %config = %{$cfg1};
-
- foreach my $config (keys %$cfg2) {
+ my @keys = map {
+ my $expr = $_;
+ $expr =~ /[?.*]/ ?
+ map {
+ /^$expr$/ ? $_ : ()
+ } keys %config : $expr;
+ } keys %$cfg2;
+
+ foreach my $config (@keys) {
delete $config{$config};
}
return \%config;