From 5b05f4a5ee5fa1dd3246350b6672d05a1aaa7f4d Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Tue, 30 May 2006 18:55:52 +0000 Subject: improve dependency handling, fix some package makefile bugs SVN-Revision: 3843 --- openwrt/scripts/gen_menuconfig.pl | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'openwrt/scripts/gen_menuconfig.pl') diff --git a/openwrt/scripts/gen_menuconfig.pl b/openwrt/scripts/gen_menuconfig.pl index e282ee3..a7f939f 100755 --- a/openwrt/scripts/gen_menuconfig.pl +++ b/openwrt/scripts/gen_menuconfig.pl @@ -26,7 +26,12 @@ sub print_category($) { print "\t\ttristate \"$title\"\n"; print "\t\tdefault ".$pkg->{default}."\n"; foreach my $depend (@{$pkg->{depends}}) { - print "\t\tdepends PACKAGE_$depend\n"; + my $m = "depends"; + $depend =~ s/^([@\+])//; + my $flags = $1; + $flags =~ /@/ or $depend = "PACKAGE_$depend"; + $flags =~ /\+/ and $m = "select"; + print "\t\t$m $depend\n"; } print "\t\thelp\n"; print $pkg->{description}; @@ -60,7 +65,7 @@ while ($line = <>) { $line =~ /^Menu: \s*(.+)\s*$/ and $pkg->{menu} = $1; $line =~ /^Default: \s*(.+)\s*$/ and $pkg->{default} = $1; $line =~ /^Depends: \s*(.+)\s*$/ and do { - my @dep = split /,\s*/, $1; + my @dep = split /\s+/, $1; $pkg->{depends} = \@dep; }; $line =~ /^Category: \s*(.+)\s*$/ and do { -- cgit v1.1