From: Yann E. MORIN Date: Fri, 21 Feb 2014 22:17:54 +0000 (+0100) Subject: manual: add explanations on limitations about using O=... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a524731012280dbb52fd0051a5c7c94a4562b265;p=buildroot.git manual: add explanations on limitations about using O=... Using a relative path for O=... has limitations, since it is interpreted relative to the Buildroot tree, and thus may lead to unexpected results. For example, running this: make -C buildroot O=my-O will not create my-O in the current working directory, but as a sub-directory of the Buildroot tree, here in buildroot/my-O Explain this in the manual (as is similarly done for BR2_EXTERNAL). Also add a note that $(O) will be created if missing. Also change O=.. and -C .. to O=<...> and -C <...> to make it explicit this is an ellipse, not a relative path. Reported-by: Jérémy Rosen Signed-off-by: "Yann E. MORIN" Cc: Samuel Martin Reviewed-by: Thomas De Schampheleire Acked-by: Samuel Martin Signed-off-by: Peter Korsgaard --- diff --git a/docs/manual/common-usage.txt b/docs/manual/common-usage.txt index 127060dc35..9a8c92a21c 100644 --- a/docs/manual/common-usage.txt +++ b/docs/manual/common-usage.txt @@ -40,7 +40,13 @@ Or: $ cd /tmp/build; make O=$PWD -C path/to/buildroot -------------------- -All the output files will be located under +/tmp/build+. +All the output files will be located under +/tmp/build+. If the +O+ +path does not exist, Buildroot will create it. + +*Note:* the +O+ path can be either an absolute or a relative path, but if it's +passed as a relative path, it is important to note that it is interpreted +relative to the main Buildroot source directory, *not* the current working +directory. When using out-of-tree builds, the Buildroot +.config+ and temporary files are also stored in the output directory. This means that you can @@ -48,8 +54,8 @@ safely run multiple builds in parallel using the same source tree as long as they use unique output directories. For ease of use, Buildroot generates a Makefile wrapper in the output -directory - so after the first run, you no longer need to pass +O=..+ -and +-C ..+, simply run (in the output directory): +directory - so after the first run, you no longer need to pass +O=<...>+ +and +-C <...>+, simply run (in the output directory): -------------------- $ make