diff options
author | Masahiro Yamada <yamada.masahiro@socionext.com> | 2018-02-11 17:40:29 +0900 |
---|---|---|
committer | Masahiro Yamada <yamada.masahiro@socionext.com> | 2018-03-26 02:01:20 +0900 |
commit | 22340a06534a10296209bc2d02365a2770ded8fc (patch) | |
tree | 283e1209267a71ab902b1128fa1eeb4f57c3bc23 | |
parent | f49821ee32b76b1a356fab17316eb62430182ecf (diff) |
kbuild: process mixture of clean/build targets one by one
Support parallel building of clean, config, and build targets in a
single command.
For example,
make -j<N> clean all
or
make -j<N> mrproper defconfig all
They should be handled one by one.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
-rw-r--r-- | Makefile | 11 |
1 files changed, 10 insertions, 1 deletions
@@ -220,7 +220,8 @@ export srctree objtree VPATH version_h := include/generated/uapi/linux/version.h old_version_h := include/linux/version.h -no-dot-config-targets := clean mrproper distclean \ +clean-targets := %clean mrproper cleandocs +no-dot-config-targets := $(clean-targets) \ cscope gtags TAGS tags help% %docs check% coccicheck \ $(version_h) headers_% archheaders archscripts \ kernelversion %src-pkg @@ -243,6 +244,14 @@ ifeq ($(KBUILD_EXTMOD),) endif endif endif + +# For "make -j clean all", "make -j mrproper defconfig all", etc. +ifneq ($(filter $(clean-targets),$(MAKECMDGOALS)),) + ifneq ($(filter-out $(clean-targets),$(MAKECMDGOALS)),) + mixed-targets := 1 + endif +endif + # install and modules_install need also be processed one by one ifneq ($(filter install,$(MAKECMDGOALS)),) ifneq ($(filter modules_install,$(MAKECMDGOALS)),) |