build/conf/local.conf
- This file contains all the local user configuration for your build environment.
- If there is no local.conf present, it is created from
- local.conf.sample.
- The local.conf file contains documentation on the various configuration options.
- Any variable set here overrides any variable set elsewhere within the environment unless
- that variable is hard-coded within a file (e.g. by using '=' instead of '?=').
- Some variables are hard-coded for various reasons but these variables are
- relatively rare.
+ This configuration file contains all the local user configurations
+ for your build environment.
+ The local.conf file contains documentation on
+ the various configuration options.
+ Any variable set here overrides any variable set elsewhere within
+ the environment unless that variable is hard-coded within a file
+ (e.g. by using '=' instead of '?=').
+ Some variables are hard-coded for various reasons but these
+ variables are relatively rare.
- Edit this file to set the MACHINE
+ Edit this file to set the
+ MACHINE
for which you want to build, which package types you wish to use
(PACKAGE_CLASSES),
the location from which you want to downloaded files
(DL_DIR),
and how you want your host machine to use resources
- (BB_NUMBER_THREADS and
+ (BB_NUMBER_THREADS
+ and
PARALLEL_MAKE).
+
+
+ If local.conf is not present when you
+ start the build, the OpenEmbedded build system creates it from
+ local.conf.sample when
+ you source the top-level build environment
+ setup script (i.e.
+ &OE_INIT_FILE;
+ or
+ oe-init-build-env-memres).
+
+
+
+ The source local.conf.sample file used
+ depends on the $TEMPLATECONF script variable,
+ which defaults to /meta-yocto/conf
+ when you are building from the Yocto Project development
+ environment and defaults to /meta/conf when
+ you are building from the OpenEmbedded Core environment.
+ Because the script variable points to the source of the
+ local.conf.sample file, this implies that
+ you can configure your build environment from any layer by setting
+ the variable in the top-level build environment setup script as
+ follows:
+
+ TEMPLATECONF=<your_layer>/conf
+
+ Once the build process gets the sample file, it uses
+ sed to substitute final
+ ${OEROOT}
+ values for all ##OEROOT## values.
+
+ You can see how the TEMPLATECONF variable
+ is used by looking at the
+ /scripts/oe-setup-builddir script in the
+ Source Directory.
+ You can find the Yocto Project version of the
+ local.conf.sample file in the
+ /meta-yocto/conf directory.
+
+ build/conf/bblayers.conf
- This file defines
+ This configuration file defines
layers,
which are directory trees, traversed (or walked) by BitBake.
- If bblayers.conf
- is not present, it is created from bblayers.conf.sample when
- you source the environment setup script.
+ The bblayers.conf file uses the
+ BBLAYERS
+ variable to list the layers BitBake tries to find, and uses the
+ BBLAYERS_NON_REMOVABLE
+ variable to list layers that must not be removed.
- The bblayers.conf file uses the
- BBLAYERS variable to
- list the layers BitBake tries to find.
- The file uses the
- BBLAYERS_NON_REMOVABLE
- variable to list layers that must not be removed.
+ If bblayers.conf is not present when you
+ start the build, the OpenEmbedded build system creates it from
+ bblayers.conf.sample when
+ you source the top-level build environment
+ setup script (i.e.
+ &OE_INIT_FILE;
+ or
+ oe-init-build-env-memres).
+
+
+
+ The source bblayers.conf.sample file used
+ depends on the $TEMPLATECONF script variable,
+ which defaults to /meta-yocto/conf
+ when you are building from the Yocto Project development
+ environment and defaults to /meta/conf when
+ you are building from the OpenEmbedded Core environment.
+ Because the script variable points to the source of the
+ bblayers.conf.sample file, this implies that
+ you can base your build from any layer by setting the variable in
+ the top-level build environment setup script as follows:
+
+ TEMPLATECONF=<your_layer>/conf
+
+ Once the build process gets the sample file, it uses
+ sed to substitute final
+ ${OEROOT}
+ values for all ##OEROOT## values.
+
+ You can see how the TEMPLATECONF variable
+ /scripts/oe-setup-builddir script in the
+ Source Directory.
+ You can find the Yocto Project version of the
+ bblayers.conf.sample file in the
+ /meta-yocto/conf directory.
+
diff --git a/documentation/ref-manual/ref-variables.xml b/documentation/ref-manual/ref-variables.xml
index b3562db578..764c8072da 100644
--- a/documentation/ref-manual/ref-variables.xml
+++ b/documentation/ref-manual/ref-variables.xml
@@ -1230,37 +1230,40 @@ Core layer for images cannot be removed
DL_DIR
- The central download directory used by the build process to store downloads.
- You can set this directory by defining the DL_DIR
- variable in the /conf/local.conf file.
+ The central download directory used by the build process to
+ store downloads.
+ You can set this directory by defining the
+ DL_DIR variable in the
+ /conf/local.conf file.
This directory is self-maintaining and you should not have
to touch it.
- By default, the directory is downloads in the
+ By default, the directory is downloads
+ in the
Build Directory.
#DL_DIR ?= "${TOPDIR}/downloads"
- To specify a different download directory, simply uncomment the line
- and provide your directory.
+ To specify a different download directory, simply remove
+ the comment from the line and provide your directory.
- During a first build, the system downloads many different source code
- tarballs from various upstream projects.
+ During a first build, the system downloads many different
+ source code tarballs from various upstream projects.
Downloading can take a while, particularly if your network
connection is slow.
Tarballs are all stored in the directory defined by
- DL_DIR and the build system looks there first
- to find source tarballs.
+ DL_DIR and the build system looks there
+ first to find source tarballs.
- When wiping and rebuilding, you can preserve this directory to speed
- up this part of subsequent builds.
+ When wiping and rebuilding, you can preserve this
+ directory to speed up this part of subsequent builds.
- You can safely share this directory between multiple builds on the
- same development machine.
+ You can safely share this directory between multiple builds
+ on the same development machine.
For additional information on how the build process gets
source files when working behind a firewall or proxy server,
see this specific question in the
@@ -3353,6 +3356,28 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
+ OEROOT
+
+
+ The directory from which the top-level build environment
+ setup script is sourced.
+ The Yocto Project makes two top-level build environment
+ setup scripts available:
+ &OE_INIT_FILE;
+ and
+ oe-init-build-env-memres.
+ When you run one of these scripts, the
+ OEROOT variable resolves to the
+ directory that holds the script.
+
+
+
+ For additional information on how this variable is used,
+ see the initialization scripts.
+
+
+
+
OLDEST_KERNEL