'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@xxxxxxxxxx> --- Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index ec2330ce0fc5..29878033f9d6 100644 --- a/Makefile +++ b/Makefile @@ -1692,7 +1692,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) -- 2.25.1