add proper build depends
add proper build depends

git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@3841 3c298f89-4303-0410-b956-a3cf2f4a3e73

--- a/package/Makefile
+++ b/package/Makefile
@@ -20,7 +20,7 @@
 	$(MAKE) -C $(patsubst %-clean,%,$@) clean
 
 
-.pkgdeps: $(TOPDIR)/.pkginfo FORCE
+.pkgdeps: $(TOPDIR)/.pkginfo
 	@$(TOPDIR)/scripts/gen_deps.pl < $< > $@ || rm -f $@
 
 all: compile

--- a/package/ppp/Makefile
+++ b/package/ppp/Makefile
@@ -5,6 +5,7 @@
 PKG_NAME:=ppp
 PKG_VERSION:=2.4.3
 PKG_RELEASE:=7
+PKG_BUILDDEP:=libpcap
 
 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
@@ -19,7 +20,6 @@
 define Package/ppp
  SECTION:=net
  CATEGORY:=Network
- NEEDS:=libpcap
  MENU:=1
  DEFAULT:=y
  TITLE:=PPP daemon

--- a/package/rules.mk
+++ b/package/rules.mk
@@ -49,7 +49,6 @@
   SECTION:=opt
   CATEGORY:=Extra packages
   DEPENDS:=
-  NEEDS:=
   MAINTAINER:=OpenWrt Developers Team <openwrt-devel@openwrt.org>
   SOURCE:=$(patsubst $(TOPDIR)/%,%,${shell pwd})
   VERSION:=$(PKG_VERSION)-$(PKG_RELEASE)
@@ -92,7 +91,6 @@
   endif
 
   IDEPEND_$(1):=$$(strip $$(DEPENDS))
-  INEED_$(1):=$$(strip $$(NEEDS))
 
   DUMPINFO += \
 	echo "Package: $(1)"; 
@@ -110,7 +108,7 @@
   DUMPINFO += \
 	echo "Version: $(VERSION)"; \
 	echo "Depends: $$(IDEPEND_$(1))"; \
-	echo "Needs: $$(INEED_$(1))"; \
+	echo "Build-Depends: $(PKG_BUILDDEP)"; \
 	echo "Category: $(CATEGORY)"; \
 	echo "Title: $(TITLE)"; \
 	echo "Description: $(DESCRIPTION)" | sed -e 's,\\,\n,g';
@@ -134,8 +132,7 @@
 	mkdir -p $$(IDIR_$(1))/CONTROL
 	echo "Package: $(1)" > $$(IDIR_$(1))/CONTROL/control
 	echo "Version: $(VERSION)" >> $$(IDIR_$(1))/CONTROL/control
-	#FIXME: there should be a better way to do it
-	D="$$(IDEPEND_$(1))"; D="$$$${D}$$$${D:+, }$$(INEED_$(1))"; echo "Depends: $$$${D}" >> $$(IDIR_$(1))/CONTROL/control
+	echo "Depends: $$(IDEPEND_$(1))" >> $$(IDIR_$(1))/CONTROL/control
 	echo "Source: $(SOURCE)" >> $$(IDIR_$(1))/CONTROL/control
 	echo "Section: $(SECTION)" >> $$(IDIR_$(1))/CONTROL/control
 	echo "Priority: $(PRIORITY)" >> $$(IDIR_$(1))/CONTROL/control
@@ -155,8 +152,6 @@
 
   $$(INFO_$(1)): $$(IPKG_$(1))
 	$(IPKG) install $$(IPKG_$(1))
-
-  compile-targets: $(PKG_BUILD_DIR)/.dev-installed
 
   $(1)-clean:
 	rm -f $(PACKAGE_DIR)/$(1)_*
@@ -259,7 +254,7 @@
   prepare: $(PKG_BUILD_DIR)/.prepared
   configure: $(PKG_BUILD_DIR)/.configured
 
-  compile-targets:
+  compile-targets: $(PKG_BUILD_DIR)/.dev-installed
   compile: compile-targets
 
   install-targets:

--- a/scripts/gen_deps.pl
+++ b/scripts/gen_deps.pl
@@ -18,8 +18,8 @@
 		defined $pkg{$name} or $pkg{$name} = {};
 		$pkg{$name}->{src} = $src;
 	};
-	$line =~ /^Depends: \s*(.+)\s*$/ and do {
-		my @dep = split /,\s*/, $1;
+	$line =~ /^(Build-)?Depends: \s*(.+)\s*$/ and do {
+		my @dep = split /,\s*/, $2;
 		$pkg{$name}->{depends} = \@dep;
 	};
 }

--- a/scripts/gen_menuconfig.pl
+++ b/scripts/gen_menuconfig.pl
@@ -27,9 +27,6 @@
 			print "\t\tdefault ".$pkg->{default}."\n";
 			foreach my $depend (@{$pkg->{depends}}) {
 				print "\t\tdepends PACKAGE_$depend\n";
-			}
-			foreach my $need (@{$pkg->{needs}}) {
-				print "\t\tselect PACKAGE_$need\n";
 			}
 			print "\t\thelp\n";
 			print $pkg->{description};
@@ -66,10 +63,6 @@
 		my @dep = split /,\s*/, $1;
 		$pkg->{depends} = \@dep;
 	};
-	$line =~ /^Needs: \s*(.+)\s*$/ and do {
-		my @need = split /,\s*/, $1;
-		$pkg->{needs} = \@need;
-	};
 	$line =~ /^Category: \s*(.+)\s*$/ and do {
 		$pkg->{category} = $1;
 		defined $category{$1} or $category{$1} = {};

comments