kbuild: do not create built-in objects for external module builds
authorMasahiro Yamada <masahiroy@kernel.org>
Tue, 8 Sep 2020 20:55:57 +0000 (05:55 +0900)
committerMasahiro Yamada <masahiroy@kernel.org>
Thu, 24 Sep 2020 15:36:49 +0000 (00:36 +0900)
'make M=/path/to/your/external/module' creates a pointless built-in.a
in the top of the external module directory because KBUILD_BUILTIN is
set to 1.

Clear KBUILD_BUILTIN when we are building external modules so that
'make M=...' and 'make M=... modules' work equivalently.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Makefile

index 97b1dae..744b6c6 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1702,7 +1702,8 @@ else # KBUILD_EXTMOD
 #                      Install the modules built in the module directory
 #                      Assumes install directory is already created
 
-# We are always building modules
+# We are always building only modules.
+KBUILD_BUILTIN :=
 KBUILD_MODULES := 1
 
 build-dirs := $(KBUILD_EXTMOD)