X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=blobdiff_plain;f=scripts%2Fgen_busybox_menuconfig.pl;h=0128bf78d7d85ab7f6f4bd62d5c0479894929af0;hp=5fe64783eb3d22383cdf9cf8c7a4394d3fe61363;hb=24f8162cdff754fb548136babbd4f479d68623b6;hpb=f0b65e7215bee823500548e87f3d059bb227b791 diff --git a/scripts/gen_busybox_menuconfig.pl b/scripts/gen_busybox_menuconfig.pl index 5fe64783eb..0128bf78d7 100755 --- a/scripts/gen_busybox_menuconfig.pl +++ b/scripts/gen_busybox_menuconfig.pl @@ -16,9 +16,9 @@ my %config; open CONFIG, $DEFCONFIG or die 'cannot open config file'; while () { - /^([\w_]+)=([ym])/ and $config{$1} = $2; - /^([\w_]+)=(\d+)/ and $config{$1} = $2; - /^([\w_]+)=(".+")/ and $config{$1} = $2; + /^CONFIG_([\w_]+)=([ym])/ and $config{$1} = $2; + /^CONFIG_([\w_]+)=(\d+)/ and $config{$1} = $2; + /^CONFIG_([\w_]+)=(".+")/ and $config{$1} = $2; } close CONFIG; @@ -39,8 +39,8 @@ while () { next if $line =~ /^\s*mainmenu/; # FIXME: make this dynamic - $line =~ s/default CONFIG_FEATURE_BUFFERS_USE_MALLOC/default CONFIG_FEATURE_BUFFERS_GO_ON_STACK/; - $line =~ s/default BUSYBOX_CONFIG_FEATURE_SH_IS_NONE/default BUSYBOX_CONFIG_FEATURE_SH_IS_ASH/; + $line =~ s/default FEATURE_BUFFERS_USE_MALLOC/default FEATURE_BUFFERS_GO_ON_STACK/; + $line =~ s/default FEATURE_SH_IS_NONE/default FEATURE_SH_IS_ASH/; if ($line =~ /^\s*config\s*([\w_]+)/) { $cur = $1; @@ -52,10 +52,12 @@ while () { } $line =~ s/^(\s*source\s+)/$1package\/busybox\/config\//; - $line =~ s/(\s+)((CONFIG|FDISK|USING|CROSS|EXTRA|PREFIX|FEATURE|HAVE|BUSYBOX)[\w_]*)/$1BUSYBOX_$2/g; + $line =~ s/^(\s*(prompt "[^"]+" if|config|depends|depends on|select|default|default \w if)\s+\!?)([A-Z_])/$1BUSYBOX_CONFIG_$3/g; + $line =~ s/(( \|\| | \&\& | \( )!?)([A-Z_])/$1BUSYBOX_CONFIG_$3/g; + $line =~ s/(\( ?!?)([A-Z_]+ (\|\||&&))/$1BUSYBOX_CONFIG_$2/g; if ($cur) { - ($cur !~ /^CONFIG/ or $cur eq 'CONFIG_LFS') and do { + ($cur eq 'LFS') and do { $line =~ s/^(\s*(bool|tristate|string))\s*".+"$/$1/; }; if ($line =~ /^\s*default/) {