summaryrefslogtreecommitdiffstats
path: root/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml')
-rw-r--r--bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml78
1 files changed, 39 insertions, 39 deletions
diff --git a/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml b/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml
index f1caaecd2d..46dafeee30 100644
--- a/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml
+++ b/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml
@@ -31,7 +31,7 @@
31 <para> 31 <para>
32 Prior to executing BitBake, you should take advantage of available 32 Prior to executing BitBake, you should take advantage of available
33 parallel thread execution on your build host by setting the 33 parallel thread execution on your build host by setting the
34 <link linkend='var-BB_NUMBER_THREADS'><filename>BB_NUMBER_THREADS</filename></link> 34 <link linkend='var-bb-BB_NUMBER_THREADS'><filename>BB_NUMBER_THREADS</filename></link>
35 variable in your project's <filename>local.conf</filename> 35 variable in your project's <filename>local.conf</filename>
36 configuration file. 36 configuration file.
37 </para> 37 </para>
@@ -87,9 +87,9 @@
87 <para> 87 <para>
88 The <filename>layer.conf</filename> files are used to 88 The <filename>layer.conf</filename> files are used to
89 construct key variables such as 89 construct key variables such as
90 <link linkend='var-BBPATH'><filename>BBPATH</filename></link> 90 <link linkend='var-bb-BBPATH'><filename>BBPATH</filename></link>
91 and 91 and
92 <link linkend='var-BBFILES'><filename>BBFILES</filename></link>. 92 <link linkend='var-bb-BBFILES'><filename>BBFILES</filename></link>.
93 <filename>BBPATH</filename> is used to search for 93 <filename>BBPATH</filename> is used to search for
94 configuration and class files under the 94 configuration and class files under the
95 <filename>conf</filename> and <filename>classes</filename> 95 <filename>conf</filename> and <filename>classes</filename>
@@ -117,19 +117,19 @@
117 at certain variables, including: 117 at certain variables, including:
118 <itemizedlist> 118 <itemizedlist>
119 <listitem><para> 119 <listitem><para>
120 <link linkend='var-BB_ENV_WHITELIST'><filename>BB_ENV_WHITELIST</filename></link> 120 <link linkend='var-bb-BB_ENV_WHITELIST'><filename>BB_ENV_WHITELIST</filename></link>
121 </para></listitem> 121 </para></listitem>
122 <listitem><para> 122 <listitem><para>
123 <link linkend='var-BB_ENV_EXTRAWHITE'><filename>BB_ENV_EXTRAWHITE</filename></link> 123 <link linkend='var-bb-BB_ENV_EXTRAWHITE'><filename>BB_ENV_EXTRAWHITE</filename></link>
124 </para></listitem> 124 </para></listitem>
125 <listitem><para> 125 <listitem><para>
126 <link linkend='var-BB_PRESERVE_ENV'><filename>BB_PRESERVE_ENV</filename></link> 126 <link linkend='var-bb-BB_PRESERVE_ENV'><filename>BB_PRESERVE_ENV</filename></link>
127 </para></listitem> 127 </para></listitem>
128 <listitem><para> 128 <listitem><para>
129 <link linkend='var-BB_ORIGENV'><filename>BB_ORIGENV</filename></link> 129 <link linkend='var-bb-BB_ORIGENV'><filename>BB_ORIGENV</filename></link>
130 </para></listitem> 130 </para></listitem>
131 <listitem><para> 131 <listitem><para>
132 <link linkend='var-BITBAKE_UI'><filename>BITBAKE_UI</filename></link> 132 <link linkend='var-bb-BITBAKE_UI'><filename>BITBAKE_UI</filename></link>
133 </para></listitem> 133 </para></listitem>
134 </itemizedlist> 134 </itemizedlist>
135 The first four variables in this list relate to how BitBake treats shell 135 The first four variables in this list relate to how BitBake treats shell
@@ -156,7 +156,7 @@
156 BitBake first searches the current working directory for an 156 BitBake first searches the current working directory for an
157 optional <filename>conf/bblayers.conf</filename> configuration file. 157 optional <filename>conf/bblayers.conf</filename> configuration file.
158 This file is expected to contain a 158 This file is expected to contain a
159 <link linkend='var-BBLAYERS'><filename>BBLAYERS</filename></link> 159 <link linkend='var-bb-BBLAYERS'><filename>BBLAYERS</filename></link>
160 variable that is a space-delimited list of 'layer' directories. 160 variable that is a space-delimited list of 'layer' directories.
161 Recall that if BitBake cannot find a <filename>bblayers.conf</filename> 161 Recall that if BitBake cannot find a <filename>bblayers.conf</filename>
162 file, then it is assumed the user has set the <filename>BBPATH</filename> 162 file, then it is assumed the user has set the <filename>BBPATH</filename>
@@ -166,10 +166,10 @@
166 <para> 166 <para>
167 For each directory (layer) in this list, a <filename>conf/layer.conf</filename> 167 For each directory (layer) in this list, a <filename>conf/layer.conf</filename>
168 file is located and parsed with the 168 file is located and parsed with the
169 <link linkend='var-LAYERDIR'><filename>LAYERDIR</filename></link> 169 <link linkend='var-bb-LAYERDIR'><filename>LAYERDIR</filename></link>
170 variable being set to the directory where the layer was found. 170 variable being set to the directory where the layer was found.
171 The idea is these files automatically set up 171 The idea is these files automatically set up
172 <link linkend='var-BBPATH'><filename>BBPATH</filename></link> 172 <link linkend='var-bb-BBPATH'><filename>BBPATH</filename></link>
173 and other variables correctly for a given build directory. 173 and other variables correctly for a given build directory.
174 </para> 174 </para>
175 175
@@ -189,7 +189,7 @@
189 depending on the environment variables previously 189 depending on the environment variables previously
190 mentioned or set in the configuration files. 190 mentioned or set in the configuration files.
191 The 191 The
192 "<link linkend='ref-variables-glos'>Variables Glossary</link>" 192 "<link linkend='ref-bb-variables-glos'>Variables Glossary</link>"
193 chapter presents a full list of variables. 193 chapter presents a full list of variables.
194 </para> 194 </para>
195 195
@@ -204,7 +204,7 @@
204 <para> 204 <para>
205 The <filename>base.bbclass</filename> file is always included. 205 The <filename>base.bbclass</filename> file is always included.
206 Other classes that are specified in the configuration using the 206 Other classes that are specified in the configuration using the
207 <link linkend='var-INHERIT'><filename>INHERIT</filename></link> 207 <link linkend='var-bb-INHERIT'><filename>INHERIT</filename></link>
208 variable are also included. 208 variable are also included.
209 BitBake searches for class files in a 209 BitBake searches for class files in a
210 <filename>classes</filename> subdirectory under 210 <filename>classes</filename> subdirectory under
@@ -270,7 +270,7 @@
270 270
271 <para> 271 <para>
272 During the configuration phase, BitBake will have set 272 During the configuration phase, BitBake will have set
273 <link linkend='var-BBFILES'><filename>BBFILES</filename></link>. 273 <link linkend='var-bb-BBFILES'><filename>BBFILES</filename></link>.
274 BitBake now uses it to construct a list of recipes to parse, 274 BitBake now uses it to construct a list of recipes to parse,
275 along with any append files (<filename>.bbappend</filename>) 275 along with any append files (<filename>.bbappend</filename>)
276 to apply. 276 to apply.
@@ -292,7 +292,7 @@
292 Any inherit statements cause BitBake to find and 292 Any inherit statements cause BitBake to find and
293 then parse class files (<filename>.bbclass</filename>) 293 then parse class files (<filename>.bbclass</filename>)
294 using 294 using
295 <link linkend='var-BBPATH'><filename>BBPATH</filename></link> 295 <link linkend='var-bb-BBPATH'><filename>BBPATH</filename></link>
296 as the search path. 296 as the search path.
297 Finally, BitBake parses in order any append files found in 297 Finally, BitBake parses in order any append files found in
298 <filename>BBFILES</filename>. 298 <filename>BBFILES</filename>.
@@ -303,8 +303,8 @@
303 pieces of metadata. 303 pieces of metadata.
304 For example, in <filename>bitbake.conf</filename> the recipe 304 For example, in <filename>bitbake.conf</filename> the recipe
305 name and version are used to set the variables 305 name and version are used to set the variables
306 <link linkend='var-PN'><filename>PN</filename></link> and 306 <link linkend='var-bb-PN'><filename>PN</filename></link> and
307 <link linkend='var-PV'><filename>PV</filename></link>: 307 <link linkend='var-bb-PV'><filename>PV</filename></link>:
308 <literallayout class='monospaced'> 308 <literallayout class='monospaced'>
309 PN = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE', False),d)[0] or 'defaultpkgname'}" 309 PN = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE', False),d)[0] or 'defaultpkgname'}"
310 PV = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE', False),d)[1] or '1.0'}" 310 PV = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE', False),d)[1] or '1.0'}"
@@ -336,7 +336,7 @@
336 recipe information. 336 recipe information.
337 The validity of this cache is determined by first computing a 337 The validity of this cache is determined by first computing a
338 checksum of the base configuration data (see 338 checksum of the base configuration data (see
339 <link linkend='var-BB_HASHCONFIG_WHITELIST'><filename>BB_HASHCONFIG_WHITELIST</filename></link>) 339 <link linkend='var-bb-BB_HASHCONFIG_WHITELIST'><filename>BB_HASHCONFIG_WHITELIST</filename></link>)
340 and then checking if the checksum matches. 340 and then checking if the checksum matches.
341 If that checksum matches what is in the cache and the recipe 341 If that checksum matches what is in the cache and the recipe
342 and class files have not changed, Bitbake is able to use 342 and class files have not changed, Bitbake is able to use
@@ -384,9 +384,9 @@
384 the recipe can be known. 384 the recipe can be known.
385 Each recipe's <filename>PROVIDES</filename> list is created 385 Each recipe's <filename>PROVIDES</filename> list is created
386 implicitly through the recipe's 386 implicitly through the recipe's
387 <link linkend='var-PN'><filename>PN</filename></link> variable 387 <link linkend='var-bb-PN'><filename>PN</filename></link> variable
388 and explicitly through the recipe's 388 and explicitly through the recipe's
389 <link linkend='var-PROVIDES'><filename>PROVIDES</filename></link> 389 <link linkend='var-bb-PROVIDES'><filename>PROVIDES</filename></link>
390 variable, which is optional. 390 variable, which is optional.
391 </para> 391 </para>
392 392
@@ -427,7 +427,7 @@
427 PREFERRED_PROVIDER_virtual/kernel = "linux-yocto" 427 PREFERRED_PROVIDER_virtual/kernel = "linux-yocto"
428 </literallayout> 428 </literallayout>
429 The default 429 The default
430 <link linkend='var-PREFERRED_PROVIDER'><filename>PREFERRED_PROVIDER</filename></link> 430 <link linkend='var-bb-PREFERRED_PROVIDER'><filename>PREFERRED_PROVIDER</filename></link>
431 is the provider with the same name as the target. 431 is the provider with the same name as the target.
432 Bitbake iterates through each target it needs to build and 432 Bitbake iterates through each target it needs to build and
433 resolves them and their dependencies using this process. 433 resolves them and their dependencies using this process.
@@ -439,10 +439,10 @@
439 BitBake defaults to the highest version of a provider. 439 BitBake defaults to the highest version of a provider.
440 Version comparisons are made using the same method as Debian. 440 Version comparisons are made using the same method as Debian.
441 You can use the 441 You can use the
442 <link linkend='var-PREFERRED_VERSION'><filename>PREFERRED_VERSION</filename></link> 442 <link linkend='var-bb-PREFERRED_VERSION'><filename>PREFERRED_VERSION</filename></link>
443 variable to specify a particular version. 443 variable to specify a particular version.
444 You can influence the order by using the 444 You can influence the order by using the
445 <link linkend='var-DEFAULT_PREFERENCE'><filename>DEFAULT_PREFERENCE</filename></link> 445 <link linkend='var-bb-DEFAULT_PREFERENCE'><filename>DEFAULT_PREFERENCE</filename></link>
446 variable. 446 variable.
447 </para> 447 </para>
448 448
@@ -464,7 +464,7 @@
464 BitBake defaults to selecting the most recent 464 BitBake defaults to selecting the most recent
465 version, unless otherwise specified. 465 version, unless otherwise specified.
466 If the recipe in question has a 466 If the recipe in question has a
467 <link linkend='var-DEFAULT_PREFERENCE'><filename>DEFAULT_PREFERENCE</filename></link> 467 <link linkend='var-bb-DEFAULT_PREFERENCE'><filename>DEFAULT_PREFERENCE</filename></link>
468 set lower than the other recipes (default is 0), then 468 set lower than the other recipes (default is 0), then
469 it will not be selected. 469 it will not be selected.
470 This allows the person or persons maintaining 470 This allows the person or persons maintaining
@@ -475,9 +475,9 @@
475 475
476 <para> 476 <para>
477 If the first recipe is named <filename>a_1.1.bb</filename>, then the 477 If the first recipe is named <filename>a_1.1.bb</filename>, then the
478 <link linkend='var-PN'><filename>PN</filename></link> variable 478 <link linkend='var-bb-PN'><filename>PN</filename></link> variable
479 will be set to “a”, and the 479 will be set to “a”, and the
480 <link linkend='var-PV'><filename>PV</filename></link> 480 <link linkend='var-bb-PV'><filename>PV</filename></link>
481 variable will be set to 1.1. 481 variable will be set to 1.1.
482 </para> 482 </para>
483 483
@@ -532,11 +532,11 @@
532 <para> 532 <para>
533 Dependencies are defined through several variables. 533 Dependencies are defined through several variables.
534 You can find information about variables BitBake uses in 534 You can find information about variables BitBake uses in
535 the <link linkend='ref-variables-glos'>Variables Glossary</link> 535 the <link linkend='ref-bb-variables-glos'>Variables Glossary</link>
536 near the end of this manual. 536 near the end of this manual.
537 At a basic level, it is sufficient to know that BitBake uses the 537 At a basic level, it is sufficient to know that BitBake uses the
538 <link linkend='var-DEPENDS'><filename>DEPENDS</filename></link> and 538 <link linkend='var-bb-DEPENDS'><filename>DEPENDS</filename></link> and
539 <link linkend='var-RDEPENDS'><filename>RDEPENDS</filename></link> variables when 539 <link linkend='var-bb-RDEPENDS'><filename>RDEPENDS</filename></link> variables when
540 calculating dependencies. 540 calculating dependencies.
541 </para> 541 </para>
542 542
@@ -560,7 +560,7 @@
560 560
561 <para> 561 <para>
562 The build now starts with BitBake forking off threads up to the limit set in the 562 The build now starts with BitBake forking off threads up to the limit set in the
563 <link linkend='var-BB_NUMBER_THREADS'><filename>BB_NUMBER_THREADS</filename></link> 563 <link linkend='var-bb-BB_NUMBER_THREADS'><filename>BB_NUMBER_THREADS</filename></link>
564 variable. 564 variable.
565 BitBake continues to fork threads as long as there are tasks ready to run, 565 BitBake continues to fork threads as long as there are tasks ready to run,
566 those tasks have all their dependencies met, and the thread threshold has not been 566 those tasks have all their dependencies met, and the thread threshold has not been
@@ -574,7 +574,7 @@
574 574
575 <para> 575 <para>
576 As each task completes, a timestamp is written to the directory specified by the 576 As each task completes, a timestamp is written to the directory specified by the
577 <link linkend='var-STAMP'><filename>STAMP</filename></link> variable. 577 <link linkend='var-bb-STAMP'><filename>STAMP</filename></link> variable.
578 On subsequent runs, BitBake looks in the build directory within 578 On subsequent runs, BitBake looks in the build directory within
579 <filename>tmp/stamps</filename> and does not rerun 579 <filename>tmp/stamps</filename> and does not rerun
580 tasks that are already completed unless a timestamp is found to be invalid. 580 tasks that are already completed unless a timestamp is found to be invalid.
@@ -618,7 +618,7 @@
618 <para> 618 <para>
619 Tasks can be either a shell task or a Python task. 619 Tasks can be either a shell task or a Python task.
620 For shell tasks, BitBake writes a shell script to 620 For shell tasks, BitBake writes a shell script to
621 <filename>${</filename><link linkend='var-T'><filename>T</filename></link><filename>}/run.do_taskname.pid</filename> 621 <filename>${</filename><link linkend='var-bb-T'><filename>T</filename></link><filename>}/run.do_taskname.pid</filename>
622 and then executes the script. 622 and then executes the script.
623 The generated shell script contains all the exported variables, 623 The generated shell script contains all the exported variables,
624 and the shell functions with all variables expanded. 624 and the shell functions with all variables expanded.
@@ -645,10 +645,10 @@
645 behavior: 645 behavior:
646 <itemizedlist> 646 <itemizedlist>
647 <listitem><para> 647 <listitem><para>
648 <link linkend='var-BB_SCHEDULER'><filename>BB_SCHEDULER</filename></link> 648 <link linkend='var-bb-BB_SCHEDULER'><filename>BB_SCHEDULER</filename></link>
649 </para></listitem> 649 </para></listitem>
650 <listitem><para> 650 <listitem><para>
651 <link linkend='var-BB_SCHEDULERS'><filename>BB_SCHEDULERS</filename></link> 651 <link linkend='var-bb-BB_SCHEDULERS'><filename>BB_SCHEDULERS</filename></link>
652 </para></listitem> 652 </para></listitem>
653 </itemizedlist> 653 </itemizedlist>
654 It is possible to have functions run before and after a task's main 654 It is possible to have functions run before and after a task's main
@@ -684,7 +684,7 @@
684 The simplistic approach for excluding the working directory is to set 684 The simplistic approach for excluding the working directory is to set
685 it to some fixed value and create the checksum for the "run" script. 685 it to some fixed value and create the checksum for the "run" script.
686 BitBake goes one step better and uses the 686 BitBake goes one step better and uses the
687 <link linkend='var-BB_HASHBASE_WHITELIST'><filename>BB_HASHBASE_WHITELIST</filename></link> 687 <link linkend='var-bb-BB_HASHBASE_WHITELIST'><filename>BB_HASHBASE_WHITELIST</filename></link>
688 variable to define a list of variables that should never be included 688 variable to define a list of variables that should never be included
689 when generating the signatures. 689 when generating the signatures.
690 </para> 690 </para>
@@ -795,7 +795,7 @@
795 This results in any metadata change that changes the task hash, automatically 795 This results in any metadata change that changes the task hash, automatically
796 causing the task to be run again. 796 causing the task to be run again.
797 This removes the need to bump 797 This removes the need to bump
798 <link linkend='var-PR'><filename>PR</filename></link> 798 <link linkend='var-bb-PR'><filename>PR</filename></link>
799 values, and changes to metadata automatically ripple across the build. 799 values, and changes to metadata automatically ripple across the build.
800 </para> 800 </para>
801 801
@@ -884,7 +884,7 @@
884 884
885 <para> 885 <para>
886 BitBake first calls the function defined by the 886 BitBake first calls the function defined by the
887 <link linkend='var-BB_HASHCHECK_FUNCTION'><filename>BB_HASHCHECK_FUNCTION</filename></link> 887 <link linkend='var-bb-BB_HASHCHECK_FUNCTION'><filename>BB_HASHCHECK_FUNCTION</filename></link>
888 variable with a list of tasks and corresponding 888 variable with a list of tasks and corresponding
889 hashes it wants to build. 889 hashes it wants to build.
890 This function is designed to be fast and returns a list 890 This function is designed to be fast and returns a list
@@ -908,7 +908,7 @@
908 For example, it is pointless to obtain a compiler if you 908 For example, it is pointless to obtain a compiler if you
909 already have the compiled binary. 909 already have the compiled binary.
910 To handle this, BitBake calls the 910 To handle this, BitBake calls the
911 <link linkend='var-BB_SETSCENE_DEPVALID'><filename>BB_SETSCENE_DEPVALID</filename></link> 911 <link linkend='var-bb-BB_SETSCENE_DEPVALID'><filename>BB_SETSCENE_DEPVALID</filename></link>
912 function for each successful setscene task to know whether or not it needs 912 function for each successful setscene task to know whether or not it needs
913 to obtain the dependencies of that task. 913 to obtain the dependencies of that task.
914 </para> 914 </para>
@@ -916,7 +916,7 @@
916 <para> 916 <para>
917 Finally, after all the setscene tasks have executed, BitBake calls the 917 Finally, after all the setscene tasks have executed, BitBake calls the
918 function listed in 918 function listed in
919 <link linkend='var-BB_SETSCENE_VERIFY_FUNCTION2'><filename>BB_SETSCENE_VERIFY_FUNCTION2</filename></link> 919 <link linkend='var-bb-BB_SETSCENE_VERIFY_FUNCTION2'><filename>BB_SETSCENE_VERIFY_FUNCTION2</filename></link>
920 with the list of tasks BitBake thinks has been "covered". 920 with the list of tasks BitBake thinks has been "covered".
921 The metadata can then ensure that this list is correct and can 921 The metadata can then ensure that this list is correct and can
922 inform BitBake that it wants specific tasks to be run regardless 922 inform BitBake that it wants specific tasks to be run regardless