diff options
| -rw-r--r-- | Makefile | 11 | ||||
| -rw-r--r-- | scripts/mkmakefile | 8 |
2 files changed, 13 insertions, 6 deletions
| @@ -118,12 +118,17 @@ $(if $(KBUILD_OUTPUT),, \ | |||
| 118 | # Check that OUTPUT directory is not the same as where we have kernel src | 118 | # Check that OUTPUT directory is not the same as where we have kernel src |
| 119 | $(if $(filter-out $(KBUILD_OUTPUT),$(shell /bin/pwd)),, \ | 119 | $(if $(filter-out $(KBUILD_OUTPUT),$(shell /bin/pwd)),, \ |
| 120 | $(error Output directory (O=...) specifies kernel src dir)) | 120 | $(error Output directory (O=...) specifies kernel src dir)) |
| 121 | PHONY += $(MAKECMDGOALS) | ||
| 122 | 121 | ||
| 123 | $(filter-out _all,$(MAKECMDGOALS)) _all: | 122 | PHONY += $(MAKECMDGOALS) sub-make |
| 123 | |||
| 124 | $(filter-out _all sub-make,$(MAKECMDGOALS)) _all: sub-make | ||
| 125 | $(Q)@: | ||
| 126 | |||
| 127 | sub-make: FORCE | ||
| 124 | $(if $(KBUILD_VERBOSE:1=),@)$(MAKE) -C $(KBUILD_OUTPUT) \ | 128 | $(if $(KBUILD_VERBOSE:1=),@)$(MAKE) -C $(KBUILD_OUTPUT) \ |
| 125 | KBUILD_SRC=$(CURDIR) \ | 129 | KBUILD_SRC=$(CURDIR) \ |
| 126 | KBUILD_EXTMOD="$(KBUILD_EXTMOD)" -f $(CURDIR)/Makefile $@ | 130 | KBUILD_EXTMOD="$(KBUILD_EXTMOD)" -f $(CURDIR)/Makefile \ |
| 131 | $(filter-out _all sub-make,$(MAKECMDGOALS)) | ||
| 127 | 132 | ||
| 128 | # Leave processing to above invocation of make | 133 | # Leave processing to above invocation of make |
| 129 | skip-makefile := 1 | 134 | skip-makefile := 1 |
diff --git a/scripts/mkmakefile b/scripts/mkmakefile index 7f9d544f9b6c..ee39facee152 100644 --- a/scripts/mkmakefile +++ b/scripts/mkmakefile | |||
| @@ -26,11 +26,13 @@ MAKEFLAGS += --no-print-directory | |||
| 26 | 26 | ||
| 27 | .PHONY: all \$(MAKECMDGOALS) | 27 | .PHONY: all \$(MAKECMDGOALS) |
| 28 | 28 | ||
| 29 | all := \$(filter-out all Makefile,\$(MAKECMDGOALS)) | ||
| 30 | |||
| 29 | all: | 31 | all: |
| 30 | \$(MAKE) -C \$(KERNELSRC) O=\$(KERNELOUTPUT) | 32 | \$(MAKE) -C \$(KERNELSRC) O=\$(KERNELOUTPUT) \$(all) |
| 31 | 33 | ||
| 32 | Makefile:; | 34 | Makefile:; |
| 33 | 35 | ||
| 34 | \$(filter-out all Makefile,\$(MAKECMDGOALS)) %/: | 36 | \$(all) %/: all |
| 35 | \$(MAKE) -C \$(KERNELSRC) O=\$(KERNELOUTPUT) \$@ | 37 | @: |
| 36 | EOF | 38 | EOF |
