aboutsummaryrefslogtreecommitdiffstats
path: root/include/package.mk
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2012-09-15 10:21:24 +0000
committerFelix Fietkau <nbd@openwrt.org>2012-09-15 10:21:24 +0000
commit397d1a34965af8036027881e783b6352ded3a28a (patch)
tree7eae014a38c9914f9d45f1cecf614acaee6bd692 /include/package.mk
parent6826f8137a7e28a6e2706d99f754cc7422a16f63 (diff)
downloadmaster-187ad058-397d1a34965af8036027881e783b6352ded3a28a.tar.gz
master-187ad058-397d1a34965af8036027881e783b6352ded3a28a.tar.bz2
master-187ad058-397d1a34965af8036027881e783b6352ded3a28a.zip
build: add a config option for passing the top-level make jobserver to packages that have parallel build enabled, significantly improves parallelization and gets rid of CPU overcommit during intra-package parallel builds
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33414 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'include/package.mk')
-rw-r--r--include/package.mk8
1 files changed, 7 insertions, 1 deletions
diff --git a/include/package.mk b/include/package.mk
index 64973b0510..6b3617f776 100644
--- a/include/package.mk
+++ b/include/package.mk
@@ -15,11 +15,17 @@ PKG_MD5SUM ?= unknown
PKG_BUILD_PARALLEL ?=
PKG_INFO_DIR := $(STAGING_DIR)/pkginfo
+ifneq ($(CONFIG_PKG_BUILD_USE_JOBSERVER),)
+ MAKE_J:=$(MAKE_JOBSERVER)
+else
+ MAKE_J:=-j$(CONFIG_PKG_BUILD_JOBS)
+endif
+
ifeq ($(strip $(PKG_BUILD_PARALLEL)),0)
PKG_JOBS?=-j1
else
PKG_JOBS?=$(if $(PKG_BUILD_PARALLEL)$(CONFIG_PKG_DEFAULT_PARALLEL),\
- $(if $(CONFIG_PKG_BUILD_PARALLEL),-j$(CONFIG_PKG_BUILD_JOBS),-j1),-j1)
+ $(if $(CONFIG_PKG_BUILD_PARALLEL),$(MAKE_J),-j1),-j1)
endif
include $(INCLUDE_DIR)/prereq.mk