diff options
-rw-r--r-- | openwrt/package/Makefile | 2 | ||||
-rwxr-xr-x | openwrt/scripts/gen_deps.pl | 20 |
2 files changed, 14 insertions, 8 deletions
diff --git a/openwrt/package/Makefile b/openwrt/package/Makefile index d2b7468a39..e94c181ba0 100644 --- a/openwrt/package/Makefile +++ b/openwrt/package/Makefile @@ -11,7 +11,7 @@ include $(TOPDIR)/.config include $(TOPDIR)/.pkgdeps include $(TOPDIR)/host.mk -PREREQ_PACKAGES:=$(patsubst %,%-prereq,$(package-prereq)) +PREREQ_PACKAGES:=$(patsubst %,%-prereq,$(prereq-y) $(prereq-m)) DOWNLOAD_PACKAGES:=$(patsubst %,%-download,$(package-y) $(package-m)) COMPILE_PACKAGES:=$(patsubst %,%-compile,$(package-y) $(package-m)) INSTALL_PACKAGES:=$(patsubst %,%-install,$(package-y)) diff --git a/openwrt/scripts/gen_deps.pl b/openwrt/scripts/gen_deps.pl index e7daf18866..745d31c7d0 100755 --- a/openwrt/scripts/gen_deps.pl +++ b/openwrt/scripts/gen_deps.pl @@ -14,7 +14,6 @@ my $makefile; my %conf; my %pkg; my %prereq; -my $prereq; my %dep; my %options; my $opt; @@ -36,8 +35,7 @@ while ($line = <>) { $pkg{$name}->{src} = $src; }; $line =~ /^Prereq-Check:/ and !defined $prereq{$src} and do { - $prereq{$src} = 1; - $prereq .= "package-prereq += $src\n"; + $pkg{$name}->{prereq} = 1; }; $line =~ /^(Build-)?Depends: \s*(.+)\s*$/ and do { $pkg{$name}->{depends} ||= []; @@ -52,11 +50,19 @@ while ($line = <>) { $line=""; foreach $name (sort {uc($a) cmp uc($b)} keys %pkg) { + my $config; + if ($options{SDK}) { - $conf{$pkg{$name}->{src}} or print "package-m += $pkg{$name}->{src}\n"; - $conf{$pkg{$name}->{src}} = 1; + $conf{$pkg{$name}->{src}} or do { + $config = 'm'; + $conf{$pkg{$name}->{src}} = 1; + }; } else { - print "package-\$(CONFIG_PACKAGE_$name) += $pkg{$name}->{src}\n"; + $config = "\$(CONFIG_PACKAGE_$name)" + } + if ($config) { + print "package-$config += $pkg{$name}->{src}\n"; + $pkg{$name}->{prereq} and print "prereq-$config += $pkg{$name}->{src}\n"; } my $hasdeps = 0; @@ -81,5 +87,5 @@ foreach $name (sort {uc($a) cmp uc($b)} keys %pkg) { } if ($line ne "") { - print "\n$line\n$prereq"; + print "\n$line"; } |