diff options
author | Felix Fietkau <nbd@openwrt.org> | 2006-07-21 22:48:58 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2006-07-21 22:48:58 +0000 |
commit | d8521a8efc7c49bdae73388b05d1f829a0c327a9 (patch) | |
tree | 981f0011568de3f2e6d6154a8e75c6e1fcd8bf79 | |
parent | cd42bf72d9fc911e9c47f9d7b6c83bd7547415c2 (diff) | |
download | mtk-20170518-d8521a8efc7c49bdae73388b05d1f829a0c327a9.zip mtk-20170518-d8521a8efc7c49bdae73388b05d1f829a0c327a9.tar.gz mtk-20170518-d8521a8efc7c49bdae73388b05d1f829a0c327a9.tar.bz2 |
fix menu/submenu nesting
SVN-Revision: 4200
-rwxr-xr-x | openwrt/scripts/gen_menuconfig.pl | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/openwrt/scripts/gen_menuconfig.pl b/openwrt/scripts/gen_menuconfig.pl index ddce86b..fe01310 100755 --- a/openwrt/scripts/gen_menuconfig.pl +++ b/openwrt/scripts/gen_menuconfig.pl @@ -15,6 +15,17 @@ my %category; my $cur_menu; my $cur_menu_dep; +sub close_submenu { + if ($cur_menu) { + print "endmenu\n"; + $cur_menu_dep and do { + print "endif\n"; + $cur_menu_dep = undef; + }; + undef $cur_menu; + } +} + sub print_category($) { my $cat = shift; @@ -25,14 +36,7 @@ sub print_category($) { foreach my $spkg (sort {uc($a) cmp uc($b)} keys %spkg) { foreach my $pkg (@{$spkg{$spkg}}) { if ($cur_menu ne $pkg->{submenu}) { - if ($cur_menu) { - print "endmenu\n"; - $cur_menu_dep and do { - print "endif\n"; - $cur_menu_dep = undef; - }; - undef $cur_menu; - } + close_submenu(); if ($pkg->{submenu}) { $cur_menu = $pkg->{submenu}; $cur_menu_dep = $pkg->{submenudep} and print "if $cur_menu_dep\n"; @@ -66,6 +70,7 @@ sub print_category($) { $pkg->{config} and print $pkg->{config}."\n"; } } + close_submenu(); print "endmenu\n\n"; undef $category{$cat}; |