add submenu dependencies (used to hide the proprietary broadcom driver on anything except for brcm-2.4)

git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@4197 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Felix Fietkau 2006-07-21 14:27:45 +00:00
parent 39fc421919
commit 510cb8aca9
3 changed files with 13 additions and 0 deletions

View File

@ -83,6 +83,7 @@ define Package/Default
DEFAULT:=
MENU:=
SUBMENU:=
SUBMENUDEP:=
TITLE:=
DESCRIPTION:=
endef
@ -142,6 +143,10 @@ define BuildPackage
ifneq ($(SUBMENU),)
DUMPINFO += \
echo "Submenu: $(SUBMENU)";
ifneq ($(SUBMENUDEP),)
DUMPINFO += \
echo "Submenu-Depends: $(SUBMENUDEP)";
endif
endif
ifneq ($(DEFAULT),)

View File

@ -28,6 +28,7 @@ define Package/kmod-brcm-wl
DEPENDS:=@LINUX_2_4_BRCM
DEFAULT:=y
SUBMENU:=Proprietary BCM43xx WiFi driver
SUBMENUDEP:=@LINUX_2_4_BRCM
TITLE:=Kernel driver (normal version)
DESCRIPTION:=Proprietary Wireless driver for the Broadcom BCM43xx chipset
VERSION:=$(LINUX_VERSION)+$(PKG_VERSION)-$(PKG_RELEASE)

View File

@ -13,6 +13,7 @@ my $makefile;
my $pkg;
my %category;
my $cur_menu;
my $cur_menu_dep;
sub print_category($) {
my $cat = shift;
@ -26,10 +27,15 @@ sub print_category($) {
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;
}
if ($pkg->{submenu}) {
$cur_menu = $pkg->{submenu};
$cur_menu_dep = $pkg->{submenudep} and print "if $cur_menu_dep\n";
print "menu \"$cur_menu\"\n";
}
}
@ -84,6 +90,7 @@ while ($line = <>) {
$line =~ /^Title: \s*(.+)\s*$/ and $pkg->{title} = $1;
$line =~ /^Menu: \s*(.+)\s*$/ and $pkg->{menu} = $1;
$line =~ /^Submenu: \s*(.+)\s*$/ and $pkg->{submenu} = $1;
$line =~ /^Submenu-Depends: \s*(.+)\s*$/ and $pkg->{submenudep} = $1;
$line =~ /^Default: \s*(.+)\s*$/ and $pkg->{default} = $1;
$line =~ /^Depends: \s*(.+)\s*$/ and do {
my @dep = split /\s+/, $1;