aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2007-07-15 23:36:02 +0000
committerFelix Fietkau <nbd@openwrt.org>2007-07-15 23:36:02 +0000
commitde2aa28c4cecf4d63c9ed5e057498bf2c046bb69 (patch)
treef67b95a6ce7eddee6f9fc83f29bdf1c047cdc828
parent7b16475eb7c316e9f23d21e572cf1f027e5af380 (diff)
downloadupstream-de2aa28c4cecf4d63c9ed5e057498bf2c046bb69.tar.gz
upstream-de2aa28c4cecf4d63c9ed5e057498bf2c046bb69.tar.bz2
upstream-de2aa28c4cecf4d63c9ed5e057498bf2c046bb69.zip
properly support dependencies on packages that just use Build/DefaultTargets
SVN-Revision: 7983
-rw-r--r--include/scan.mk2
-rwxr-xr-xscripts/metadata.pl8
2 files changed, 5 insertions, 5 deletions
diff --git a/include/scan.mk b/include/scan.mk
index cd1e47e1a3..9bd0f379da 100644
--- a/include/scan.mk
+++ b/include/scan.mk
@@ -31,7 +31,7 @@ endef
$(FILELIST):
rm -f tmp/info/.files-$(SCAN_TARGET)-*
- find $(SCAN_DIR) $(SCAN_EXTRA) -mindepth 1 $(if $(SCAN_DEPTH),-maxdepth $(SCAN_DEPTH)) -name Makefile | xargs grep -HE 'call (KernelPackage|Build(Package|Kernel))' | sed -e 's#^$(SCAN_DIR)/##' -e 's#/Makefile:.*##' | uniq > $@
+ find $(SCAN_DIR) $(SCAN_EXTRA) -mindepth 1 $(if $(SCAN_DEPTH),-maxdepth $(SCAN_DEPTH)) -name Makefile | xargs grep -HE 'call (Build/DefaultTargets|KernelPackage|Build(Package|Kernel))' | sed -e 's#^$(SCAN_DIR)/##' -e 's#/Makefile:.*##' | uniq > $@
tmp/info/.files-$(SCAN_TARGET).mk: $(FILELIST)
( \
diff --git a/scripts/metadata.pl b/scripts/metadata.pl
index e8a7c1b4a8..46f66446a8 100755
--- a/scripts/metadata.pl
+++ b/scripts/metadata.pl
@@ -4,6 +4,7 @@ my %preconfig;
my %package;
my %srcpackage;
my %category;
+my %subdir;
sub get_multiline {
my $prefix = shift;
@@ -81,6 +82,7 @@ sub parse_package_metadata() {
$subdir = $2;
$src = $3;
$subdir =~ s/^package\///;
+ $subdir{$src} = $subdir;
$srcpackage{$src} = [];
undef $pkg;
};
@@ -518,14 +520,12 @@ sub gen_package_mk() {
$dep =~ s/\+//;
my $idx;
my $pkg_dep = $package{$dep};
- $pkg_dep or $pkg_dep = $srcpackage{$dep}->[0];
- next unless defined $pkg_dep;
next if defined $pkg_dep->{vdepends};
if (defined $pkg_dep->{src}) {
($pkg->{src} ne $pkg_dep->{src}) and $idx = $pkg_dep->{subdir}.$pkg_dep->{src};
- } elsif (defined($pkg_dep) && !defined($ENV{SDK})) {
- $idx = $dep;
+ } elsif (defined($srcpackage{$dep})) {
+ $idx = $subdir{$dep}.$dep;
}
undef $idx if $idx =~ /^(kernel)|(base-files)$/;
if ($idx) {