add support for build-only packages which do not appear in menuconfig

SVN-Revision: 14009
This commit is contained in:
Felix Fietkau 2009-01-13 02:02:56 +00:00
parent 9b6691733e
commit 7502d4bd61
4 changed files with 6 additions and 0 deletions

View file

@ -31,6 +31,7 @@ define Package/Default
SUBMENUDEP:= SUBMENUDEP:=
TITLE:= TITLE:=
KCONFIG:= KCONFIG:=
BUILDONLY:=
endef endef
Build/Patch:=$(Build/Patch/Default) Build/Patch:=$(Build/Patch/Default)

View file

@ -30,6 +30,7 @@ ifneq ($(DUMP),)
echo "Maintainer: $(MAINTAINER)"; \ echo "Maintainer: $(MAINTAINER)"; \
echo "Type: $(if $(Package/$(1)/targets),$(Package/$(1)/targets),$(if $(PKG_TARGETS),$(PKG_TARGETS),ipkg))"; \ echo "Type: $(if $(Package/$(1)/targets),$(Package/$(1)/targets),$(if $(PKG_TARGETS),$(PKG_TARGETS),ipkg))"; \
$(if $(KCONFIG),echo "Kernel-Config: $(KCONFIG)";) \ $(if $(KCONFIG),echo "Kernel-Config: $(KCONFIG)";) \
$(if $(BUILDONLY),echo "Build-Only: $(BUILDONLY)";) \
echo -n "Description: "; \ echo -n "Description: "; \
getvar $(call shvar,Package/$(1)/description); \ getvar $(call shvar,Package/$(1)/description); \
$(if $(URL),echo;echo "$(URL)";) \ $(if $(URL),echo;echo "$(URL)";) \

View file

@ -398,6 +398,7 @@ sub mconf_depends {
$depend = $2; $depend = $2;
} }
next if $seen->{$depend}; next if $seen->{$depend};
next if $package{$depend} and $package{$depend}->{buildonly};
$seen->{$depend} = 1; $seen->{$depend} = 1;
if ($vdep = $package{$depend}->{vdepends}) { if ($vdep = $package{$depend}->{vdepends}) {
$depend = join("||", map { "PACKAGE_".$_ } @$vdep); $depend = join("||", map { "PACKAGE_".$_ } @$vdep);
@ -442,6 +443,7 @@ sub print_package_config_category($) {
foreach my $spkg (sort {uc($a) cmp uc($b)} keys %spkg) { foreach my $spkg (sort {uc($a) cmp uc($b)} keys %spkg) {
foreach my $pkg (@{$spkg{$spkg}}) { foreach my $pkg (@{$spkg{$spkg}}) {
next if $pkg->{buildonly};
my $menu = $pkg->{submenu}; my $menu = $pkg->{submenu};
if ($menu) { if ($menu) {
$menu_dep{$menu} or $menu_dep{$menu} = $pkg->{submenudep}; $menu_dep{$menu} or $menu_dep{$menu} = $pkg->{submenudep};
@ -543,6 +545,7 @@ sub gen_package_mk() {
$config = "\$(CONFIG_PACKAGE_$name)" $config = "\$(CONFIG_PACKAGE_$name)"
} }
if ($config) { if ($config) {
$pkg->{buildonly} and $config = "";
print "package-$config += $pkg->{subdir}$pkg->{src}\n"; print "package-$config += $pkg->{subdir}$pkg->{src}\n";
$pkg->{prereq} and print "prereq-$config += $pkg->{subdir}$pkg->{src}\n"; $pkg->{prereq} and print "prereq-$config += $pkg->{subdir}$pkg->{src}\n";
} }

View file

@ -88,6 +88,7 @@ sub parse_package_metadata($) {
} }
}; };
/^Depends: \s*(.+)\s*$/ and $pkg->{depends} = [ split /\s+/, $1 ]; /^Depends: \s*(.+)\s*$/ and $pkg->{depends} = [ split /\s+/, $1 ];
/^Build-Only: \s*(.+)\s*$/ and $pkg->{buildonly} = 1;
/^Build-Depends: \s*(.+)\s*$/ and $pkg->{builddepends} = [ split /\s+/, $1 ]; /^Build-Depends: \s*(.+)\s*$/ and $pkg->{builddepends} = [ split /\s+/, $1 ];
/^Category: \s*(.+)\s*$/ and do { /^Category: \s*(.+)\s*$/ and do {
$pkg->{category} = $1; $pkg->{category} = $1;