ref-manual: Updated bitbake/ section to remove wrapper script

Robert P. J. Day noted that the bitbake command no longer uses
a wrapper as the section indicated.  I have removed this reference.

Reported-by: Robert P. J. Day <rpjday@crashcourse.ca>
(From yocto-docs rev: ccdcf3d80f2e684877265d2dde8606ddeed4dfd2)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Scott Rifenbark 2013-11-06 10:18:20 -08:00 committed by Richard Purdie
parent abf9789893
commit 5eeb8e08cf
1 changed files with 72 additions and 68 deletions

View File

@ -39,23 +39,27 @@
<para> <para>
This directory includes a copy of BitBake for ease of use. This directory includes a copy of BitBake for ease of use.
The copy usually matches the current stable BitBake release from the BitBake project. The copy usually matches the current stable BitBake release from
the BitBake project.
BitBake, a BitBake, a
<ulink url='&YOCTO_DOCS_DEV_URL;#metadata'>Metadata</ulink> <ulink url='&YOCTO_DOCS_DEV_URL;#metadata'>Metadata</ulink>
interpreter, reads the Yocto Project metadata and runs the tasks interpreter, reads the Yocto Project Metadata and runs the tasks
defined by that data. defined by that data.
Failures are usually from the metadata and not from BitBake itself. Failures are usually from the Metadata and not from BitBake itself.
Consequently, most users do not need to worry about BitBake. Consequently, most users do not need to worry about BitBake.
</para> </para>
<para> <para>
When you run the <filename>bitbake</filename> command, the wrapper script in When you run the <filename>bitbake</filename> command, the
<filename>scripts/</filename> is executed to run the main BitBake executable, main BitBake executable, which resides in the
which resides in the <filename>bitbake/bin/</filename> directory. <filename>bitbake/bin/</filename> directory, starts.
Sourcing the <link linkend="structure-core-script"><filename>&OE_INIT_FILE;</filename></link> Sourcing an environment setup script (e.g.
script places the <filename>scripts</filename> and <filename>bitbake/bin</filename> <link linkend="structure-core-script"><filename>&OE_INIT_FILE;</filename></link>
directories (in that order) into the shell's <filename>PATH</filename> environment or
variable. <link linkend="structure-memres-core-script"><filename>oe-init-build-env-memres</filename></link>)
places the <filename>scripts</filename> and
<filename>bitbake/bin</filename> directories (in that order) into
the shell's <filename>PATH</filename> environment variable.
</para> </para>
<para> <para>
@ -74,7 +78,7 @@
the source tree is combined with the output. the source tree is combined with the output.
The <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> The <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>
is created initially when you <filename>source</filename> is created initially when you <filename>source</filename>
the OpenEmbedded build environment setup script the OpenEmbedded build environment setup script
(i.e. (i.e.
<link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link> <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>
or or
@ -185,9 +189,9 @@
<title><filename>&OE_INIT_FILE;</filename></title> <title><filename>&OE_INIT_FILE;</filename></title>
<para> <para>
This script is one of two scripts that set up the OpenEmbedded build This script is one of two scripts that set up the OpenEmbedded build
environment. environment.
For information on the other script, see the For information on the other script, see the
"<link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link>" "<link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link>"
section. section.
</para> </para>
@ -196,7 +200,7 @@
Running this script with the <filename>source</filename> command in Running this script with the <filename>source</filename> command in
a shell makes changes to <filename>PATH</filename> and sets other a shell makes changes to <filename>PATH</filename> and sets other
core BitBake variables based on the current working directory. core BitBake variables based on the current working directory.
You need to run an environment setup script before running BitBake You need to run an environment setup script before running BitBake
commands. commands.
The script uses other scripts within the The script uses other scripts within the
<filename>scripts</filename> directory to do the bulk of the work. <filename>scripts</filename> directory to do the bulk of the work.
@ -231,11 +235,11 @@
<title><filename>oe-init-build-env-memres</filename></title> <title><filename>oe-init-build-env-memres</filename></title>
<para> <para>
This script is one of two scripts that set up the OpenEmbedded build This script is one of two scripts that set up the OpenEmbedded build
environment. environment.
Setting up the environment with this script uses a Setting up the environment with this script uses a
memory-resident BitBake. memory-resident BitBake.
For information on the other setup script, see the For information on the other setup script, see the
"<link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>" "<link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>"
section. section.
</para> </para>
@ -252,14 +256,14 @@
Running this script with the <filename>source</filename> command in Running this script with the <filename>source</filename> command in
a shell makes changes to <filename>PATH</filename> and sets other a shell makes changes to <filename>PATH</filename> and sets other
core BitBake variables based on the current working directory. core BitBake variables based on the current working directory.
One of these variables is the One of these variables is the
<link linkend='var-BBSERVER'><filename>BBSERVER</filename></link> <link linkend='var-BBSERVER'><filename>BBSERVER</filename></link>
variable, which allows the OpenEmbedded build system to locate variable, which allows the OpenEmbedded build system to locate
the server that is running BitBake. the server that is running BitBake.
</para> </para>
<para> <para>
You need to run an environment setup script before running BitBake You need to run an environment setup script before running BitBake
commands. commands.
Following is the script syntax: Following is the script syntax:
<literallayout class='monospaced'> <literallayout class='monospaced'>
@ -289,14 +293,14 @@
$ source oe-init-build-env-memres ~/mybuilds $ source oe-init-build-env-memres ~/mybuilds
</literallayout> </literallayout>
<note> <note>
The OpenEmbedded build system does not support file or The OpenEmbedded build system does not support file or
directory names that contain spaces. directory names that contain spaces.
If you attempt to run the If you attempt to run the
<filename>oe-init-build-env-memres</filename> script <filename>oe-init-build-env-memres</filename> script
from a Source Directory that contains spaces in either the from a Source Directory that contains spaces in either the
filenames or directory names, the script returns an error filenames or directory names, the script returns an error
indicating no such file or directory. indicating no such file or directory.
Be sure to use a Source Directory free of names containing Be sure to use a Source Directory free of names containing
spaces. spaces.
</note> </note>
</para> </para>
@ -334,68 +338,68 @@
<title><filename>build/conf/local.conf</filename></title> <title><filename>build/conf/local.conf</filename></title>
<para> <para>
This configuration file contains all the local user configurations This configuration file contains all the local user configurations
for your build environment. for your build environment.
The <filename>local.conf</filename> file contains documentation on The <filename>local.conf</filename> file contains documentation on
the various configuration options. the various configuration options.
Any variable set here overrides any variable set elsewhere within Any variable set here overrides any variable set elsewhere within
the environment unless that variable is hard-coded within a file the environment unless that variable is hard-coded within a file
(e.g. by using '=' instead of '?='). (e.g. by using '=' instead of '?=').
Some variables are hard-coded for various reasons but these Some variables are hard-coded for various reasons but these
variables are relatively rare. variables are relatively rare.
</para> </para>
<para> <para>
Edit this file to set the Edit this file to set the
<filename><link linkend='var-MACHINE'>MACHINE</link></filename> <filename><link linkend='var-MACHINE'>MACHINE</link></filename>
for which you want to build, which package types you wish to use for which you want to build, which package types you wish to use
(<link linkend='var-PACKAGE_CLASSES'><filename>PACKAGE_CLASSES</filename></link>), (<link linkend='var-PACKAGE_CLASSES'><filename>PACKAGE_CLASSES</filename></link>),
the location from which you want to downloaded files the location from which you want to downloaded files
(<filename><link linkend='var-DL_DIR'>DL_DIR</link></filename>), (<filename><link linkend='var-DL_DIR'>DL_DIR</link></filename>),
and how you want your host machine to use resources and how you want your host machine to use resources
(<link linkend='var-BB_NUMBER_THREADS'><filename>BB_NUMBER_THREADS</filename></link> (<link linkend='var-BB_NUMBER_THREADS'><filename>BB_NUMBER_THREADS</filename></link>
and and
<link linkend='var-PARALLEL_MAKE'><filename>PARALLEL_MAKE</filename></link>). <link linkend='var-PARALLEL_MAKE'><filename>PARALLEL_MAKE</filename></link>).
</para> </para>
<para> <para>
If <filename>local.conf</filename> is not present when you If <filename>local.conf</filename> is not present when you
start the build, the OpenEmbedded build system creates it from start the build, the OpenEmbedded build system creates it from
<filename>local.conf.sample</filename> when <filename>local.conf.sample</filename> when
you <filename>source</filename> the top-level build environment you <filename>source</filename> the top-level build environment
setup script (i.e. setup script (i.e.
<link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link> <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>
or or
<link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link>). <link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link>).
</para> </para>
<para> <para>
The source <filename>local.conf.sample</filename> file used The source <filename>local.conf.sample</filename> file used
depends on the <filename>$TEMPLATECONF</filename> script variable, depends on the <filename>$TEMPLATECONF</filename> script variable,
which defaults to <filename>/meta-yocto/conf</filename> which defaults to <filename>/meta-yocto/conf</filename>
when you are building from the Yocto Project development when you are building from the Yocto Project development
environment and defaults to <filename>/meta/conf</filename> when environment and defaults to <filename>/meta/conf</filename> when
you are building from the OpenEmbedded Core environment. you are building from the OpenEmbedded Core environment.
Because the script variable points to the source of the Because the script variable points to the source of the
<filename>local.conf.sample</filename> file, this implies that <filename>local.conf.sample</filename> file, this implies that
you can configure your build environment from any layer by setting you can configure your build environment from any layer by setting
the variable in the top-level build environment setup script as the variable in the top-level build environment setup script as
follows: follows:
<literallayout class='monospaced'> <literallayout class='monospaced'>
TEMPLATECONF=&lt;your_layer&gt;/conf TEMPLATECONF=&lt;your_layer&gt;/conf
</literallayout> </literallayout>
Once the build process gets the sample file, it uses Once the build process gets the sample file, it uses
<filename>sed</filename> to substitute final <filename>sed</filename> to substitute final
<filename>${</filename><link linkend='var-OEROOT'><filename>OEROOT</filename></link><filename>}</filename> <filename>${</filename><link linkend='var-OEROOT'><filename>OEROOT</filename></link><filename>}</filename>
values for all <filename>##OEROOT##</filename> values. values for all <filename>##OEROOT##</filename> values.
<note> <note>
You can see how the <filename>TEMPLATECONF</filename> variable You can see how the <filename>TEMPLATECONF</filename> variable
is used by looking at the is used by looking at the
<filename>/scripts/oe-setup-builddir</filename> script in the <filename>/scripts/oe-setup-builddir</filename> script in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>. <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
You can find the Yocto Project version of the You can find the Yocto Project version of the
<filename>local.conf.sample</filename> file in the <filename>local.conf.sample</filename> file in the
<filename>/meta-yocto/conf</filename> directory. <filename>/meta-yocto/conf</filename> directory.
</note> </note>
</para> </para>
</section> </section>
@ -408,48 +412,48 @@
<ulink url='&YOCTO_DOCS_DEV_URL;#understanding-and-creating-layers'>layers</ulink>, <ulink url='&YOCTO_DOCS_DEV_URL;#understanding-and-creating-layers'>layers</ulink>,
which are directory trees, traversed (or walked) by BitBake. which are directory trees, traversed (or walked) by BitBake.
The <filename>bblayers.conf</filename> file uses the The <filename>bblayers.conf</filename> file uses the
<link linkend='var-BBLAYERS'><filename>BBLAYERS</filename></link> <link linkend='var-BBLAYERS'><filename>BBLAYERS</filename></link>
variable to list the layers BitBake tries to find, and uses the variable to list the layers BitBake tries to find, and uses the
<link linkend='var-BBLAYERS_NON_REMOVABLE'><filename>BBLAYERS_NON_REMOVABLE</filename></link> <link linkend='var-BBLAYERS_NON_REMOVABLE'><filename>BBLAYERS_NON_REMOVABLE</filename></link>
variable to list layers that must not be removed. variable to list layers that must not be removed.
</para> </para>
<para> <para>
If <filename>bblayers.conf</filename> is not present when you If <filename>bblayers.conf</filename> is not present when you
start the build, the OpenEmbedded build system creates it from start the build, the OpenEmbedded build system creates it from
<filename>bblayers.conf.sample</filename> when <filename>bblayers.conf.sample</filename> when
you <filename>source</filename> the top-level build environment you <filename>source</filename> the top-level build environment
setup script (i.e. setup script (i.e.
<link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link> <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>
or or
<link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link>). <link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link>).
</para> </para>
<para> <para>
The source <filename>bblayers.conf.sample</filename> file used The source <filename>bblayers.conf.sample</filename> file used
depends on the <filename>$TEMPLATECONF</filename> script variable, depends on the <filename>$TEMPLATECONF</filename> script variable,
which defaults to <filename>/meta-yocto/conf</filename> which defaults to <filename>/meta-yocto/conf</filename>
when you are building from the Yocto Project development when you are building from the Yocto Project development
environment and defaults to <filename>/meta/conf</filename> when environment and defaults to <filename>/meta/conf</filename> when
you are building from the OpenEmbedded Core environment. you are building from the OpenEmbedded Core environment.
Because the script variable points to the source of the Because the script variable points to the source of the
<filename>bblayers.conf.sample</filename> file, this implies that <filename>bblayers.conf.sample</filename> file, this implies that
you can base your build from any layer by setting the variable in you can base your build from any layer by setting the variable in
the top-level build environment setup script as follows: the top-level build environment setup script as follows:
<literallayout class='monospaced'> <literallayout class='monospaced'>
TEMPLATECONF=&lt;your_layer&gt;/conf TEMPLATECONF=&lt;your_layer&gt;/conf
</literallayout> </literallayout>
Once the build process gets the sample file, it uses Once the build process gets the sample file, it uses
<filename>sed</filename> to substitute final <filename>sed</filename> to substitute final
<filename>${</filename><link linkend='var-OEROOT'><filename>OEROOT</filename></link><filename>}</filename> <filename>${</filename><link linkend='var-OEROOT'><filename>OEROOT</filename></link><filename>}</filename>
values for all <filename>##OEROOT##</filename> values. values for all <filename>##OEROOT##</filename> values.
<note> <note>
You can see how the <filename>TEMPLATECONF</filename> variable You can see how the <filename>TEMPLATECONF</filename> variable
<filename>/scripts/oe-setup-builddir</filename> script in the <filename>/scripts/oe-setup-builddir</filename> script in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>. <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
You can find the Yocto Project version of the You can find the Yocto Project version of the
<filename>bblayers.conf.sample</filename> file in the <filename>bblayers.conf.sample</filename> file in the
<filename>/meta-yocto/conf</filename> directory. <filename>/meta-yocto/conf</filename> directory.
</note> </note>
</para> </para>
</section> </section>