|
@@ -2,33 +2,58 @@
|
|
|
use strict;
|
|
|
|
|
|
while (<>) {
|
|
|
+ my $match;
|
|
|
+ my $var;
|
|
|
+ my $val;
|
|
|
+ my $type;
|
|
|
chomp;
|
|
|
next if /^CONFIG_SIGNED_PACKAGES/;
|
|
|
- next unless /^CONFIG_([^=]+)=(.*)$/;
|
|
|
|
|
|
- my $var = $1;
|
|
|
- my $val = $2;
|
|
|
- my $type;
|
|
|
+ if (/^CONFIG_([^=]+)=(.*)$/) {
|
|
|
+ $var = $1;
|
|
|
+ $val = $2;
|
|
|
|
|
|
- next if $var eq 'ALL';
|
|
|
+ next if $var eq 'ALL';
|
|
|
|
|
|
- if ($val eq 'y') {
|
|
|
+ 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 <<EOF;
|
|
|
+ if (($var ne '') && ($type ne '') && ($val ne '')) {
|
|
|
+ print <<EOF;
|
|
|
config $var
|
|
|
$type
|
|
|
default $val
|
|
|
|
|
|
EOF
|
|
|
+ }
|
|
|
}
|