Original comments is confusing on "OBJ directory", make it clear.
Bonus: move comments close to what it want to comment. Signed-off-by: Cao jin <caoj.f...@cn.fujitsu.com> --- Makefile | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 57df756..81c0df9 100644 --- a/Makefile +++ b/Makefile @@ -113,8 +113,9 @@ export quiet Q KBUILD_VERBOSE # The O= assignment takes precedence over the KBUILD_OUTPUT environment # variable. -# KBUILD_SRC is set on invocation of make in OBJ directory -# KBUILD_SRC is not intended to be used by the regular user (for now) +# KBUILD_SRC is not intended to be used by the regular user (for now), +# it is set on invocation of make in KBUILD_OUTPUT directory, i.e., it +# is set on using "make O=dir/to/store/output/files/" ifeq ($(KBUILD_SRC),) # OK, Make called in directory where kernel src resides @@ -135,7 +136,6 @@ ifneq ($(words $(subst :, ,$(CURDIR))), 1) endif ifneq ($(KBUILD_OUTPUT),) -# Invoke a second make in the output directory, passing relevant variables # check that the output directory actually exists saved-output := $(KBUILD_OUTPUT) KBUILD_OUTPUT := $(shell mkdir -p $(KBUILD_OUTPUT) && cd $(KBUILD_OUTPUT) \ @@ -148,6 +148,7 @@ PHONY += $(MAKECMDGOALS) sub-make $(filter-out _all sub-make $(CURDIR)/Makefile, $(MAKECMDGOALS)) _all: sub-make @: +# Invoke a second make in the output directory, passing relevant variables sub-make: $(Q)$(MAKE) -C $(KBUILD_OUTPUT) KBUILD_SRC=$(CURDIR) \ -f $(CURDIR)/Makefile $(filter-out _all sub-make,$(MAKECMDGOALS)) -- 2.1.0