提交 22340a06 编写于 作者: M Masahiro Yamada

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: NMasahiro Yamada <yamada.masahiro@socionext.com>
上级 f49821ee
...@@ -220,7 +220,8 @@ export srctree objtree VPATH ...@@ -220,7 +220,8 @@ export srctree objtree VPATH
version_h := include/generated/uapi/linux/version.h version_h := include/generated/uapi/linux/version.h
old_version_h := include/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 \ cscope gtags TAGS tags help% %docs check% coccicheck \
$(version_h) headers_% archheaders archscripts \ $(version_h) headers_% archheaders archscripts \
kernelversion %src-pkg kernelversion %src-pkg
...@@ -243,6 +244,14 @@ ifeq ($(KBUILD_EXTMOD),) ...@@ -243,6 +244,14 @@ ifeq ($(KBUILD_EXTMOD),)
endif endif
endif 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 # install and modules_install need also be processed one by one
ifneq ($(filter install,$(MAKECMDGOALS)),) ifneq ($(filter install,$(MAKECMDGOALS)),)
ifneq ($(filter modules_install,$(MAKECMDGOALS)),) ifneq ($(filter modules_install,$(MAKECMDGOALS)),)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册