aboutsummaryrefslogtreecommitdiffstats
path: root/doc/bitbake-user-manual
diff options
context:
space:
mode:
authorScott Rifenbark <srifenbark@gmail.com>2016-09-01 14:01:21 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-09-02 16:29:30 +0100
commitb543458dd67d24a228fa2db0ecb4ddd20016a560 (patch)
tree29024004ea406002f7b92debae767605ef4a6e38 /doc/bitbake-user-manual
parent7dff6762148bc2ac8f81d89bbe595dfbfdf7b119 (diff)
downloadbitbake-b543458dd67d24a228fa2db0ecb4ddd20016a560.tar.gz
bitbake-user-manual: Added "Exporting Variables to the Environment"
Fixes [YOCTO #10196] Added a new section named "Exporting Variables to the Environment". This section provides a dedicated description for how to export variables to the shell. Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Diffstat (limited to 'doc/bitbake-user-manual')
-rw-r--r--doc/bitbake-user-manual/bitbake-user-manual-metadata.xml47
1 files changed, 47 insertions, 0 deletions
diff --git a/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml b/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml
index 64f08157f..d4f73ae14 100644
--- a/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml
+++ b/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml
@@ -476,6 +476,53 @@
</section>
</section>
+ <section id='exporting-variables-to-the-environment'>
+ <title>Exporting Variables to the Environment</title>
+
+ <para>
+ You can export variables to the environment of running
+ tasks by using the <filename>export</filename> keyword.
+ For example, in the following example, the
+ <filename>do_foo</filename> task prints "value from
+ the environment" when run:
+ <literallayout class='monospaced'>
+ export ENV_VARIABLE
+ ENV_VARIABLE = "value from the environment"
+
+ do_foo() {
+ bbplain "$ENV_VARIABLE"
+ }
+ </literallayout>
+ <note>
+ BitBake does not expand <filename>$ENV_VARIABLE</filename>
+ in this case because it lacks the obligatory
+ <filename>{}</filename>.
+ Rather, <filename>$ENV_VARIABLE</filename> is expanded
+ by the shell.
+ </note>
+ It does not matter whether
+ <filename>export ENV_VARIABLE</filename> appears before or
+ after assignments to <filename>ENV_VARIABLE</filename>.
+ </para>
+
+ <para>
+ It is also possible to combine <filename>export</filename>
+ with setting a value for the variable.
+ Here is an example:
+ <literallayout class='monospaced'>
+ export ENV_VARIABLE = "<replaceable>variable-value</replaceable>"
+ </literallayout>
+ In the output of <filename>bitbake -e</filename>, variables
+ that are exported to the environment are preceded by "export".
+ </para>
+
+ <para>
+ Among the variables commonly exported to the environment
+ are <filename>CC</filename> and <filename>CFLAGS</filename>,
+ which are picked up by many build systems.
+ </para>
+ </section>
+
<section id='conditional-syntax-overrides'>
<title>Conditional Syntax (Overrides)</title>