From 4f9703fb8de91c3a6b6199238470b7cf53064ae1 Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Wed, 31 May 2006 20:58:13 +0000
Subject: [PATCH] add support for parallel build of packages (tested with -j8)

SVN-Revision: 3874
---
 openwrt/package/Makefile | 18 +++++++++++-------
 openwrt/rules.mk         |  4 ++--
 2 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/openwrt/package/Makefile b/openwrt/package/Makefile
index 12ea942a6a..7548e069a7 100644
--- a/openwrt/package/Makefile
+++ b/openwrt/package/Makefile
@@ -10,18 +10,18 @@ $(STAMP_DIR) $(TARGET_DIR):
 	mkdir -p $@
 
 %-prepare: $(STAMP_DIR) $(TARGET_DIR)
-	$(MAKE) -C $(patsubst %-prepare,%,$@) prepare
+	$(MAKE) -C $(patsubst %-prepare,%,$@) prepare MAKEFLAGS="$(BUILD_MAKEFLAGS)"
 
 %-compile: $(STAMP_DIR) $(TARGET_DIR)
 	@echo "-> make $@"
-	$(MAKE) -C $(patsubst %-compile,%,$@) compile
+	$(MAKE) -C $(patsubst %-compile,%,$@) compile MAKEFLAGS="$(BUILD_MAKEFLAGS)"
 
 %-install: $(STAMP_DIR) $(TARGET_DIR)
 	@echo "-> make $@"
-	$(MAKE) -C $(patsubst %-install,%,$@) install
+	$(MAKE) -C $(patsubst %-install,%,$@) install MAKEFLAGS="$(BUILD_MAKEFLAGS)"
 
 %-clean: $(STAMP_DIR) $(TARGET_DIR)
-	$(MAKE) -C $(patsubst %-clean,%,$@) clean
+	$(MAKE) -C $(patsubst %-clean,%,$@) clean MAKEFLAGS="$(BUILD_MAKEFLAGS)"
 
 
 $(TOPDIR)/.pkgdeps: $(TOPDIR)/.pkginfo
@@ -29,7 +29,11 @@ $(TOPDIR)/.pkgdeps: $(TOPDIR)/.pkginfo
 
 all: compile
 clean: $(patsubst %,%-clean,$(package-) $(package-y) $(package-m))
-compile: $(COMPILE_PACKAGES)
-install: base-files-install $(INSTALL_PACKAGES)
-
+compile-targets: $(COMPILE_PACKAGES)
+compile:
+	$(MAKE) -j$(CONFIG_JLEVEL) compile-targets
+install-targets: base-files-install $(INSTALL_PACKAGES)
+install:
+	rm -rf $(BUILD_DIR)/root
+	$(MAKE) install-targets
 
diff --git a/openwrt/rules.mk b/openwrt/rules.mk
index a94eee9cd1..79807e093d 100644
--- a/openwrt/rules.mk
+++ b/openwrt/rules.mk
@@ -24,8 +24,8 @@ endif
 
 
 CP=cp -fpR
-MAKE1=make
-MAKEFLAGS=-j$(CONFIG_JLEVEL) V=$(V) $(EXTRA_MAKEFLAGS)
+BUILD_MAKEFLAGS= V=$(V) $(EXTRA_MAKEFLAGS)
+MAKEFLAGS=$(BUILD_MAKEFLAGS)
 # Strip off the annoying quoting
 ARCH:=$(strip $(subst ",, $(CONFIG_ARCH)))
 WGET:=$(strip $(subst ",, $(CONFIG_WGET)))
-- 
GitLab