From c1f706433081c5341c3526551f3a485149c44336 Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Tue, 20 Jun 2006 23:40:02 +0000
Subject: [PATCH] add package/download target

SVN-Revision: 4028
---
 openwrt/package/Makefile |  5 +++++
 openwrt/package/rules.mk | 21 +++++++++++++--------
 2 files changed, 18 insertions(+), 8 deletions(-)

diff --git a/openwrt/package/Makefile b/openwrt/package/Makefile
index 7548e069a7..2b7f0db764 100644
--- a/openwrt/package/Makefile
+++ b/openwrt/package/Makefile
@@ -3,12 +3,16 @@ include $(TOPDIR)/rules.mk
 include $(TOPDIR)/.config
 include $(TOPDIR)/.pkgdeps
 
+SOURCE_PACKAGES:=$(patsubst %,%-source,$(package-y) $(package-m))
 COMPILE_PACKAGES:=$(patsubst %,%-compile,$(package-y) $(package-m))
 INSTALL_PACKAGES:=$(patsubst %,%-install,$(package-y))
 
 $(STAMP_DIR) $(TARGET_DIR):
 	mkdir -p $@
 
+%-source: $(STAMP_DIR) $(TARGET_DIR)
+	$(MAKE) -C $(patsubst %-source,%,$@) source MAKEFLAGS="$(BUILD_MAKEFLAGS)"
+
 %-prepare: $(STAMP_DIR) $(TARGET_DIR)
 	$(MAKE) -C $(patsubst %-prepare,%,$@) prepare MAKEFLAGS="$(BUILD_MAKEFLAGS)"
 
@@ -29,6 +33,7 @@ $(TOPDIR)/.pkgdeps: $(TOPDIR)/.pkginfo
 
 all: compile
 clean: $(patsubst %,%-clean,$(package-) $(package-y) $(package-m))
+download: $(SOURCE_PACKAGES)
 compile-targets: $(COMPILE_PACKAGES)
 compile:
 	$(MAKE) -j$(CONFIG_JLEVEL) compile-targets
diff --git a/openwrt/package/rules.mk b/openwrt/package/rules.mk
index 40e07f839f..82298b0249 100644
--- a/openwrt/package/rules.mk
+++ b/openwrt/package/rules.mk
@@ -19,7 +19,8 @@ define Build/DefaultTargets
     endif
   endif
 
-  $(PKG_BUILD_DIR)/.prepared: $(DL_DIR)/$(PKG_SOURCE)
+
+  $(PKG_BUILD_DIR)/.prepared:
 	@-rm -rf $(PKG_BUILD_DIR)
 	@mkdir -p $(PKG_BUILD_DIR)
 	$(call Build/Prepare)
@@ -199,11 +200,6 @@ define BuildPackage
 
 endef
 
-ifneq ($(strip $(PKG_SOURCE)),)
-  $(DL_DIR)/$(PKG_SOURCE):
-	$(SCRIPT_DIR)/download.pl "$(DL_DIR)" "$(PKG_SOURCE)" "$(PKG_MD5SUM)" $(PKG_SOURCE_URL)
-endif
-
 ifneq ($(strip $(PKG_CAT)),)
   define Build/Prepare/Default
 	@if [ "$(PKG_CAT)" = "unzip" ]; then \
@@ -273,11 +269,20 @@ ifneq ($(DUMP),)
   dumpinfo: FORCE
 	@$(DUMPINFO)
 else
-		
   $(PACKAGE_DIR):
 	mkdir -p $@
+		
+  ifneq ($(strip $(PKG_SOURCE)),)
+    source: $(DL_DIR)/$(PKG_SOURCE)
+
+    $(DL_DIR)/$(PKG_SOURCE):
+		mkdir -p $(DL_DIR)
+		$(SCRIPT_DIR)/download.pl "$(DL_DIR)" "$(PKG_SOURCE)" "$(PKG_MD5SUM)" $(PKG_SOURCE_URL)
+
+    $(PKG_BUILD_DIR)/.prepared: $(DL_DIR)/$(PKG_SOURCE)
+  endif
 
-  source: $(DL_DIR)/$(PKG_SOURCE)
+  source:
   prepare: $(PKG_BUILD_DIR)/.prepared
   configure: $(PKG_BUILD_DIR)/.configured
 
-- 
GitLab