X-Git-Url: http://git.ozo.com/?a=blobdiff_plain;f=target%2Fsdk%2Fconvert-config.pl;h=f73744af099d2966b1ecacca35483c72b90ec7c6;hb=feb1907270622f094a54ef23a20e8991908eca25;hp=243de0b87b419376962961bfbeef1408b9aafe46;hpb=ee4110aff031d53efe4fcc63e32cf218f455a7e9;p=openwrt%2F.git diff --git a/target/sdk/convert-config.pl b/target/sdk/convert-config.pl index 243de0b87b..f73744af09 100755 --- a/target/sdk/convert-config.pl +++ b/target/sdk/convert-config.pl @@ -1,40 +1,59 @@ #!/usr/bin/env perl use strict; -print <) { - chomp; - next unless /^CONFIG_([^=]+)=(.*)$/; - - my $var = $1; - my $val = $2; + my $match; + my $var; + my $val; my $type; - - next if $var eq 'ALL'; - - if ($val eq 'y') { + chomp; + next if /^CONFIG_SIGNED_PACKAGES/; + + if (/^CONFIG_([^=]+)=(.*)$/) { + $var = $1; + $val = $2; + + next if $var eq 'ALL'; + + if ($val eq 'y') { + $type = "bool"; + } elsif ($val eq 'm') { + $type = "tristate"; + } elsif ($val =~ /^".*"$/) { + $type = "string"; + } elsif ($val =~ /^\d+$/) { + $type = "int"; + } else { + warn "WARNING: no type found for symbol CONFIG_$var=$val\n"; + next; + } + } elsif (/^# CONFIG_BUSYBOX_(.*) is not set/) { + $var = "BUSYBOX_$1"; + $val = 'n'; $type = "bool"; - } elsif ($val eq 'm') { - $type = "tristate"; - } elsif ($val =~ /^".*"$/) { - $type = "string"; - } elsif ($val =~ /^\d+$/) { - $type = "int"; } else { - warn "WARNING: no type found for symbol CONFIG_$var=$val\n"; - next; + # We don't want to preserve a record of deselecting + # packages because we may want build them in the SDK. + # non-package configs however may be important to preserve + # the same compilation settings for packages that get + # recompiled in the SDK. + # Also we want avoid preserving image generation settings + # because we set those while in ImageBuilder + next if /^(# )?CONFIG_PACKAGE/; + next if /^(# )?CONFIG_TARGET/; + if (/^# CONFIG_(.*) is not set/) { + $var = $1; + $val = 'n'; + $type = "bool"; + } } - print <