Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 22340a06 authored by Masahiro Yamada's avatar Masahiro Yamada
Browse files

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: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
parent f49821ee
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -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)),)