summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Korsgaard <jacmet@sunsite.dk>2008-08-31 20:23:47 +0000
committerPeter Korsgaard <jacmet@sunsite.dk>2008-08-31 20:23:47 +0000
commit0732b8cc840efb5927bc143f5091a1da4c6e0dce (patch)
tree40daf37226fe4fc897dffad1f5c56569e6613649
parentd5007ac67b7df21bc3d6b5ebd2453a420354425b (diff)
buildroot: support out-of-tree builds
Add support and documentation for out-of-tree builds with syntax like the Linux kernel (make O=<dir>).
-rw-r--r--docs/buildroot.html14
-rw-r--r--project/Makefile.in7
2 files changed, 21 insertions, 0 deletions
diff --git a/docs/buildroot.html b/docs/buildroot.html
index 6e20d0419..89c59701b 100644
--- a/docs/buildroot.html
+++ b/docs/buildroot.html
@@ -217,6 +217,20 @@
<p>You can now disconnect or copy the content of your <code>dl</code>
directory to the build-host. </p>
+ <h3><a name="building_out_of_tree" id="building_out_of_tree"></a>
+ Building out-of-tree</h3>
+
+ <p>Buildroot supports building out of tree with a syntax similar
+ to the Linux kernel. To use it, add O=&lt;directory&gt; to the
+ make command line, E.G.:</p>
+
+<pre>
+ $ make O=/tmp/build
+</pre>
+
+ <p>And all the output files will be located under
+ <code>/tmp/build</code>.</p>
+
<h3><a name="environment_variables" id="environment_variables"></a>
Environment variables</h3>
diff --git a/project/Makefile.in b/project/Makefile.in
index c4188505b..034b1fa6c 100644
--- a/project/Makefile.in
+++ b/project/Makefile.in
@@ -25,7 +25,14 @@ TAR_OPTIONS=$(subst ",, $(BR2_TAR_OPTIONS)) -xf
#")
+# Buildroot supports building out of tree similarly to the Linux kernel.
+# To use, add O= to the make command line (make O=/tmp/build)
BASE_DIR:=$(shell pwd)
+ifdef O
+ifeq ("$(origin O)", "command line")
+BASE_DIR := $(O)
+endif
+endif
TOPDIR_PREFIX:=$(strip $(subst ",, $(BR2_TOPDIR_PREFIX)))_
#"))