X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/5cd973bdee8ff6c747e37a22ba7baf701f5e64fa..847fd175443ae15c4db01e7ba322dee51c3f4bff:/scripts/metadata.pl?ds=inline diff --git a/scripts/metadata.pl b/scripts/metadata.pl index c341e6526..1971607eb 100755 --- a/scripts/metadata.pl +++ b/scripts/metadata.pl @@ -415,12 +415,12 @@ sub mconf_depends { $depend =~ s/^([@\+]+)//; my $flags = $1; my $vdep; - my $condition; + my $condition = $parent_condition; if ($depend =~ /^(.+):(.+)$/) { if ($1 ne "PACKAGE_$pkgname") { - if ($parent_condition) { - $condition = "$parent_condition && $1"; + if ($condition) { + $condition = "$condition && $1"; } else { $condition = $1; } @@ -676,23 +676,24 @@ sub gen_package_mk() { foreach my $dep (@deps) { $pkg_dep = $package{$deps}; if (defined $pkg_dep->{src}) { - ($pkg->{src} ne $pkg_dep->{src}) and $idx = $pkg_dep->{subdir}.$pkg_dep->{src}; + ($pkg->{src} ne $pkg_dep->{src}.$suffix) and $idx = $pkg_dep->{subdir}.$pkg_dep->{src}; } elsif (defined($srcpackage{$dep})) { $idx = $subdir{$dep}.$dep; } + $idx .= $suffix; undef $idx if $idx =~ /^(kernel)|(base-files)$/; if ($idx) { my $depline; - next if $pkg->{src} eq $pkg_dep->{src}; + next if $pkg->{src} eq $pkg_dep->{src}.$suffix; next if $dep{$pkg->{src}."->".$idx}; next if $dep{$pkg->{src}."->($dep)".$idx} and $pkg_dep->{vdepends}; my $depstr; if ($pkg_dep->{vdepends}) { - $depstr = "\$(if \$(CONFIG_PACKAGE_$dep),\$(curdir)/$idx$suffix/compile)"; + $depstr = "\$(if \$(CONFIG_PACKAGE_$dep),\$(curdir)/$idx/compile)"; $dep{$pkg->{src}."->($dep)".$idx} = 1; } else { - $depstr = "\$(curdir)/$idx$suffix/compile"; + $depstr = "\$(curdir)/$idx/compile"; $dep{$pkg->{src}."->".$idx} = 1; } $depline = get_conditional_dep($condition, $depstr);