summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-07-15 23:36:02 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-07-15 23:36:02 +0000
commit9ed76c6c5c63f0923dc70dd7c7f99f9d1c648489 (patch)
treea6333f80492e5f0c3e7f137f590037f5088011a0 /scripts
parent08bc50f0808241c1381348bdf54fc72f6fdd6525 (diff)
properly support dependencies on packages that just use Build/DefaultTargets
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7983 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/metadata.pl8
1 files changed, 4 insertions, 4 deletions
diff --git a/scripts/metadata.pl b/scripts/metadata.pl
index e8a7c1b4a..46f66446a 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) {