scripts/kconfig.pl: allow regex syntax in filtering out config entries
authorFelix Fietkau <nbd@nbd.name>
Tue, 20 Oct 2020 16:54:49 +0000 (18:54 +0200)
committerFelix Fietkau <nbd@nbd.name>
Fri, 13 Nov 2020 12:17:53 +0000 (13:17 +0100)
This will be used to filter out some autogenerated config values from
the kernel config files

Signed-off-by: Felix Fietkau <nbd@nbd.name>
scripts/kconfig.pl

index 6a6bbd27472b929005e22f42498057603c8ae457..392f1d58414fa4be67d77cb432c585a8e72f2745 100755 (executable)
@@ -102,8 +102,15 @@ sub config_sub($$) {
        my $cfg1 = shift;
        my $cfg2 = shift;
        my %config = %{$cfg1};
        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;
                delete $config{$config};
        }
        return \%config;