aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMasahiro Yamada <yamada.m@jp.panasonic.com>2014-03-31 03:41:36 -0400
committerMichal Marek <mmarek@suse.cz>2014-03-31 16:47:16 -0400
commit1c9e70a55b088d97a59241744fe459409d0c3582 (patch)
treebcb49fb8471c641d8d321c1af9d4e82d349f6998
parenta03fcb50e816a69acffb13b5e56db75063aeba8a (diff)
kbuild: create a build directory automatically for out-of-tree build
Kbuild supports saving output files in a separate directory. But the build directory must be created beforehand. For example, $ mkdir -p dir/to/store/output/files $ make O=dir/to/store/output/files defconfig Creating a build directory automatically would be useful. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Michal Marek <mmarek@suse.cz>
-rw-r--r--Makefile5
1 files changed, 3 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index cea64d277457..faf55c96ba59 100644
--- a/Makefile
+++ b/Makefile
@@ -120,9 +120,10 @@ ifneq ($(KBUILD_OUTPUT),)
120# Invoke a second make in the output directory, passing relevant variables 120# Invoke a second make in the output directory, passing relevant variables
121# check that the output directory actually exists 121# check that the output directory actually exists
122saved-output := $(KBUILD_OUTPUT) 122saved-output := $(KBUILD_OUTPUT)
123KBUILD_OUTPUT := $(shell cd $(KBUILD_OUTPUT) && /bin/pwd) 123KBUILD_OUTPUT := $(shell mkdir -p $(KBUILD_OUTPUT) && cd $(KBUILD_OUTPUT) \
124 && /bin/pwd)
124$(if $(KBUILD_OUTPUT),, \ 125$(if $(KBUILD_OUTPUT),, \
125 $(error output directory "$(saved-output)" does not exist)) 126 $(error failed to create output directory "$(saved-output)"))
126 127
127PHONY += $(MAKECMDGOALS) sub-make 128PHONY += $(MAKECMDGOALS) sub-make
128 129