summaryrefslogtreecommitdiffstats
path: root/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst')
-rw-r--r--bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst148
1 files changed, 74 insertions, 74 deletions
diff --git a/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst b/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst
index af870d515a..797e2a00cc 100644
--- a/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst
+++ b/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst
@@ -31,7 +31,7 @@ overview of their function and contents.
31 attempt to build. Instead, BitBake assumes these recipes have already 31 attempt to build. Instead, BitBake assumes these recipes have already
32 been built. 32 been built.
33 33
34 In OpenEmbedded-Core, ``ASSUME_PROVIDED`` mostly specifies native 34 In OpenEmbedded-Core, :term:`ASSUME_PROVIDED` mostly specifies native
35 tools that should not be built. An example is ``git-native``, which 35 tools that should not be built. An example is ``git-native``, which
36 when specified allows for the Git binary from the host to be used 36 when specified allows for the Git binary from the host to be used
37 rather than building ``git-native``. 37 rather than building ``git-native``.
@@ -84,14 +84,14 @@ overview of their function and contents.
84 84
85 - Attempts to access networks not in the host list cause a failure. 85 - Attempts to access networks not in the host list cause a failure.
86 86
87 Using ``BB_ALLOWED_NETWORKS`` in conjunction with 87 Using :term:`BB_ALLOWED_NETWORKS` in conjunction with
88 :term:`PREMIRRORS` is very useful. Adding the 88 :term:`PREMIRRORS` is very useful. Adding the
89 host you want to use to ``PREMIRRORS`` results in the source code 89 host you want to use to :term:`PREMIRRORS` results in the source code
90 being fetched from an allowed location and avoids raising an error 90 being fetched from an allowed location and avoids raising an error
91 when a host that is not allowed is in a 91 when a host that is not allowed is in a
92 :term:`SRC_URI` statement. This is because the 92 :term:`SRC_URI` statement. This is because the
93 fetcher does not attempt to use the host listed in ``SRC_URI`` after 93 fetcher does not attempt to use the host listed in :term:`SRC_URI` after
94 a successful fetch from the ``PREMIRRORS`` occurs. 94 a successful fetch from the :term:`PREMIRRORS` occurs.
95 95
96 :term:`BB_CONSOLELOG` 96 :term:`BB_CONSOLELOG`
97 Specifies the path to a log file into which BitBake's user interface 97 Specifies the path to a log file into which BitBake's user interface
@@ -178,7 +178,7 @@ overview of their function and contents.
178 issues a warning when the disk space in the ``${SSTATE_DIR}`` 178 issues a warning when the disk space in the ``${SSTATE_DIR}``
179 directory drops below 1 Gbyte or the number of free inodes drops 179 directory drops below 1 Gbyte or the number of free inodes drops
180 below 100 Kbytes. Subsequent warnings are issued during intervals as 180 below 100 Kbytes. Subsequent warnings are issued during intervals as
181 defined by the ``BB_DISKMON_WARNINTERVAL`` variable. 181 defined by the :term:`BB_DISKMON_WARNINTERVAL` variable.
182 182
183 The second example stops the build after all currently executing 183 The second example stops the build after all currently executing
184 tasks complete when the minimum disk space in the ``${TMPDIR}`` 184 tasks complete when the minimum disk space in the ``${TMPDIR}``
@@ -192,14 +192,14 @@ overview of their function and contents.
192 :term:`BB_DISKMON_WARNINTERVAL` 192 :term:`BB_DISKMON_WARNINTERVAL`
193 Defines the disk space and free inode warning intervals. 193 Defines the disk space and free inode warning intervals.
194 194
195 If you are going to use the ``BB_DISKMON_WARNINTERVAL`` variable, you 195 If you are going to use the :term:`BB_DISKMON_WARNINTERVAL` variable, you
196 must also use the :term:`BB_DISKMON_DIRS` 196 must also use the :term:`BB_DISKMON_DIRS`
197 variable and define its action as "WARN". During the build, 197 variable and define its action as "WARN". During the build,
198 subsequent warnings are issued each time disk space or number of free 198 subsequent warnings are issued each time disk space or number of free
199 inodes further reduces by the respective interval. 199 inodes further reduces by the respective interval.
200 200
201 If you do not provide a ``BB_DISKMON_WARNINTERVAL`` variable and you 201 If you do not provide a :term:`BB_DISKMON_WARNINTERVAL` variable and you
202 do use ``BB_DISKMON_DIRS`` with the "WARN" action, the disk 202 do use :term:`BB_DISKMON_DIRS` with the "WARN" action, the disk
203 monitoring interval defaults to the following: 203 monitoring interval defaults to the following:
204 BB_DISKMON_WARNINTERVAL = "50M,5K" 204 BB_DISKMON_WARNINTERVAL = "50M,5K"
205 205
@@ -264,7 +264,7 @@ overview of their function and contents.
264 :term:`BB_FILENAME` 264 :term:`BB_FILENAME`
265 Contains the filename of the recipe that owns the currently running 265 Contains the filename of the recipe that owns the currently running
266 task. For example, if the ``do_fetch`` task that resides in the 266 task. For example, if the ``do_fetch`` task that resides in the
267 ``my-recipe.bb`` is executing, the ``BB_FILENAME`` variable contains 267 ``my-recipe.bb`` is executing, the :term:`BB_FILENAME` variable contains
268 "/foo/path/my-recipe.bb". 268 "/foo/path/my-recipe.bb".
269 269
270 :term:`BB_GENERATE_MIRROR_TARBALLS` 270 :term:`BB_GENERATE_MIRROR_TARBALLS`
@@ -334,7 +334,7 @@ overview of their function and contents.
334 334
335 :term:`BB_LOGFMT` 335 :term:`BB_LOGFMT`
336 Specifies the name of the log files saved into 336 Specifies the name of the log files saved into
337 ``${``\ :term:`T`\ ``}``. By default, the ``BB_LOGFMT`` 337 ``${``\ :term:`T`\ ``}``. By default, the :term:`BB_LOGFMT`
338 variable is undefined and the log file names get created using the 338 variable is undefined and the log file names get created using the
339 following form:: 339 following form::
340 340
@@ -389,7 +389,7 @@ overview of their function and contents.
389 :term:`BB_RUNFMT` 389 :term:`BB_RUNFMT`
390 Specifies the name of the executable script files (i.e. run files) 390 Specifies the name of the executable script files (i.e. run files)
391 saved into ``${``\ :term:`T`\ ``}``. By default, the 391 saved into ``${``\ :term:`T`\ ``}``. By default, the
392 ``BB_RUNFMT`` variable is undefined and the run file names get 392 :term:`BB_RUNFMT` variable is undefined and the run file names get
393 created using the following form:: 393 created using the following form::
394 394
395 run.{task}.{pid} 395 run.{task}.{pid}
@@ -455,7 +455,7 @@ overview of their function and contents.
455 :term:`BB_SRCREV_POLICY` 455 :term:`BB_SRCREV_POLICY`
456 Defines the behavior of the fetcher when it interacts with source 456 Defines the behavior of the fetcher when it interacts with source
457 control systems and dynamic source revisions. The 457 control systems and dynamic source revisions. The
458 ``BB_SRCREV_POLICY`` variable is useful when working without a 458 :term:`BB_SRCREV_POLICY` variable is useful when working without a
459 network. 459 network.
460 460
461 The variable can be set using one of two policies: 461 The variable can be set using one of two policies:
@@ -499,7 +499,7 @@ overview of their function and contents.
499 Allows adjustment of a task's Input/Output priority. During 499 Allows adjustment of a task's Input/Output priority. During
500 Autobuilder testing, random failures can occur for tasks due to I/O 500 Autobuilder testing, random failures can occur for tasks due to I/O
501 starvation. These failures occur during various QEMU runtime 501 starvation. These failures occur during various QEMU runtime
502 timeouts. You can use the ``BB_TASK_IONICE_LEVEL`` variable to adjust 502 timeouts. You can use the :term:`BB_TASK_IONICE_LEVEL` variable to adjust
503 the I/O priority of these tasks. 503 the I/O priority of these tasks.
504 504
505 .. note:: 505 .. note::
@@ -573,13 +573,13 @@ overview of their function and contents.
573 573
574 .. note:: 574 .. note::
575 575
576 Internally, the ``BBCLASSEXTEND`` mechanism generates recipe 576 Internally, the :term:`BBCLASSEXTEND` mechanism generates recipe
577 variants by rewriting variable values and applying overrides such 577 variants by rewriting variable values and applying overrides such
578 as ``_class-native``. For example, to generate a native version of 578 as ``_class-native``. For example, to generate a native version of
579 a recipe, a :term:`DEPENDS` on "foo" is 579 a recipe, a :term:`DEPENDS` on "foo" is
580 rewritten to a ``DEPENDS`` on "foo-native". 580 rewritten to a :term:`DEPENDS` on "foo-native".
581 581
582 Even when using ``BBCLASSEXTEND``, the recipe is only parsed once. 582 Even when using :term:`BBCLASSEXTEND`, the recipe is only parsed once.
583 Parsing once adds some limitations. For example, it is not 583 Parsing once adds some limitations. For example, it is not
584 possible to include a different file depending on the variant, 584 possible to include a different file depending on the variant,
585 since ``include`` statements are processed when the recipe is 585 since ``include`` statements are processed when the recipe is
@@ -615,14 +615,14 @@ overview of their function and contents.
615 - effectively letting you control the precedence for the multiple 615 - effectively letting you control the precedence for the multiple
616 layers. The precedence established through this variable stands 616 layers. The precedence established through this variable stands
617 regardless of a recipe's version (:term:`PV` variable). 617 regardless of a recipe's version (:term:`PV` variable).
618 For example, a layer that has a recipe with a higher ``PV`` value but 618 For example, a layer that has a recipe with a higher :term:`PV` value but
619 for which the ``BBFILE_PRIORITY`` is set to have a lower precedence 619 for which the :term:`BBFILE_PRIORITY` is set to have a lower precedence
620 still has a lower precedence. 620 still has a lower precedence.
621 621
622 A larger value for the ``BBFILE_PRIORITY`` variable results in a 622 A larger value for the :term:`BBFILE_PRIORITY` variable results in a
623 higher precedence. For example, the value 6 has a higher precedence 623 higher precedence. For example, the value 6 has a higher precedence
624 than the value 5. If not specified, the ``BBFILE_PRIORITY`` variable 624 than the value 5. If not specified, the :term:`BBFILE_PRIORITY` variable
625 is set based on layer dependencies (see the ``LAYERDEPENDS`` variable 625 is set based on layer dependencies (see the :term:`LAYERDEPENDS` variable
626 for more information. The default priority, if unspecified for a 626 for more information. The default priority, if unspecified for a
627 layer with no dependencies, is the lowest defined priority + 1 (or 1 627 layer with no dependencies, is the lowest defined priority + 1 (or 1
628 if no priorities are defined). 628 if no priorities are defined).
@@ -645,7 +645,7 @@ overview of their function and contents.
645 Activates content depending on presence of identified layers. You 645 Activates content depending on presence of identified layers. You
646 identify the layers by the collections that the layers define. 646 identify the layers by the collections that the layers define.
647 647
648 Use the ``BBFILES_DYNAMIC`` variable to avoid ``.bbappend`` files whose 648 Use the :term:`BBFILES_DYNAMIC` variable to avoid ``.bbappend`` files whose
649 corresponding ``.bb`` file is in a layer that attempts to modify other 649 corresponding ``.bb`` file is in a layer that attempts to modify other
650 layers through ``.bbappend`` but does not want to introduce a hard 650 layers through ``.bbappend`` but does not want to introduce a hard
651 dependency on those other layers. 651 dependency on those other layers.
@@ -654,7 +654,7 @@ overview of their function and contents.
654 ``.bb`` files in case a layer is not present. Use this avoid hard 654 ``.bb`` files in case a layer is not present. Use this avoid hard
655 dependency on those other layers. 655 dependency on those other layers.
656 656
657 Use the following form for ``BBFILES_DYNAMIC``:: 657 Use the following form for :term:`BBFILES_DYNAMIC`::
658 658
659 collection_name:filename_pattern 659 collection_name:filename_pattern
660 660
@@ -691,7 +691,7 @@ overview of their function and contents.
691 :term:`BBINCLUDELOGS_LINES` 691 :term:`BBINCLUDELOGS_LINES`
692 If :term:`BBINCLUDELOGS` is set, specifies 692 If :term:`BBINCLUDELOGS` is set, specifies
693 the maximum number of lines from the task log file to print when 693 the maximum number of lines from the task log file to print when
694 reporting a failed task. If you do not set ``BBINCLUDELOGS_LINES``, 694 reporting a failed task. If you do not set :term:`BBINCLUDELOGS_LINES`,
695 the entire log is printed. 695 the entire log is printed.
696 696
697 :term:`BBLAYERS` 697 :term:`BBLAYERS`
@@ -717,7 +717,7 @@ overview of their function and contents.
717 :term:`BBMASK` 717 :term:`BBMASK`
718 Prevents BitBake from processing recipes and recipe append files. 718 Prevents BitBake from processing recipes and recipe append files.
719 719
720 You can use the ``BBMASK`` variable to "hide" these ``.bb`` and 720 You can use the :term:`BBMASK` variable to "hide" these ``.bb`` and
721 ``.bbappend`` files. BitBake ignores any recipe or recipe append 721 ``.bbappend`` files. BitBake ignores any recipe or recipe append
722 files that match any of the expressions. It is as if BitBake does not 722 files that match any of the expressions. It is as if BitBake does not
723 see them at all. Consequently, matching files are not parsed or 723 see them at all. Consequently, matching files are not parsed or
@@ -754,7 +754,7 @@ overview of their function and contents.
754 Enables BitBake to perform multiple configuration builds and lists 754 Enables BitBake to perform multiple configuration builds and lists
755 each separate configuration (multiconfig). You can use this variable 755 each separate configuration (multiconfig). You can use this variable
756 to cause BitBake to build multiple targets where each target has a 756 to cause BitBake to build multiple targets where each target has a
757 separate configuration. Define ``BBMULTICONFIG`` in your 757 separate configuration. Define :term:`BBMULTICONFIG` in your
758 ``conf/local.conf`` configuration file. 758 ``conf/local.conf`` configuration file.
759 759
760 As an example, the following line specifies three multiconfigs, each 760 As an example, the following line specifies three multiconfigs, each
@@ -766,7 +766,7 @@ overview of their function and contents.
766 build directory within a directory named ``conf/multiconfig`` (e.g. 766 build directory within a directory named ``conf/multiconfig`` (e.g.
767 build_directory\ ``/conf/multiconfig/configA.conf``). 767 build_directory\ ``/conf/multiconfig/configA.conf``).
768 768
769 For information on how to use ``BBMULTICONFIG`` in an environment 769 For information on how to use :term:`BBMULTICONFIG` in an environment
770 that supports building targets with multiple configurations, see the 770 that supports building targets with multiple configurations, see the
771 ":ref:`bitbake-user-manual/bitbake-user-manual-intro:executing a multiple configuration build`" 771 ":ref:`bitbake-user-manual/bitbake-user-manual-intro:executing a multiple configuration build`"
772 section. 772 section.
@@ -777,7 +777,7 @@ overview of their function and contents.
777 variable. 777 variable.
778 778
779 If you run BitBake from a directory outside of the build directory, 779 If you run BitBake from a directory outside of the build directory,
780 you must be sure to set ``BBPATH`` to point to the build directory. 780 you must be sure to set :term:`BBPATH` to point to the build directory.
781 Set the variable as you would any environment variable and then run 781 Set the variable as you would any environment variable and then run
782 BitBake:: 782 BitBake::
783 783
@@ -824,7 +824,7 @@ overview of their function and contents.
824 The most common usage of this is variable is to set it to "-1" within 824 The most common usage of this is variable is to set it to "-1" within
825 a recipe for a development version of a piece of software. Using the 825 a recipe for a development version of a piece of software. Using the
826 variable in this way causes the stable version of the recipe to build 826 variable in this way causes the stable version of the recipe to build
827 by default in the absence of ``PREFERRED_VERSION`` being used to 827 by default in the absence of :term:`PREFERRED_VERSION` being used to
828 build the development version. 828 build the development version.
829 829
830 .. note:: 830 .. note::
@@ -837,7 +837,7 @@ overview of their function and contents.
837 Lists a recipe's build-time dependencies (i.e. other recipe files). 837 Lists a recipe's build-time dependencies (i.e. other recipe files).
838 838
839 Consider this simple example for two recipes named "a" and "b" that 839 Consider this simple example for two recipes named "a" and "b" that
840 produce similarly named packages. In this example, the ``DEPENDS`` 840 produce similarly named packages. In this example, the :term:`DEPENDS`
841 statement appears in the "a" recipe:: 841 statement appears in the "a" recipe::
842 842
843 DEPENDS = "b" 843 DEPENDS = "b"
@@ -855,7 +855,7 @@ overview of their function and contents.
855 855
856 :term:`DL_DIR` 856 :term:`DL_DIR`
857 The central download directory used by the build process to store 857 The central download directory used by the build process to store
858 downloads. By default, ``DL_DIR`` gets files suitable for mirroring for 858 downloads. By default, :term:`DL_DIR` gets files suitable for mirroring for
859 everything except Git repositories. If you want tarballs of Git 859 everything except Git repositories. If you want tarballs of Git
860 repositories, use the :term:`BB_GENERATE_MIRROR_TARBALLS` variable. 860 repositories, use the :term:`BB_GENERATE_MIRROR_TARBALLS` variable.
861 861
@@ -870,14 +870,14 @@ overview of their function and contents.
870 870
871 .. note:: 871 .. note::
872 872
873 Recipes added to ``EXCLUDE_FROM_WORLD`` may still be built during a world 873 Recipes added to :term:`EXCLUDE_FROM_WORLD` may still be built during a world
874 build in order to satisfy dependencies of other recipes. Adding a 874 build in order to satisfy dependencies of other recipes. Adding a
875 recipe to ``EXCLUDE_FROM_WORLD`` only ensures that the recipe is not 875 recipe to :term:`EXCLUDE_FROM_WORLD` only ensures that the recipe is not
876 explicitly added to the list of build targets in a world build. 876 explicitly added to the list of build targets in a world build.
877 877
878 :term:`FAKEROOT` 878 :term:`FAKEROOT`
879 Contains the command to use when running a shell script in a fakeroot 879 Contains the command to use when running a shell script in a fakeroot
880 environment. The ``FAKEROOT`` variable is obsolete and has been 880 environment. The :term:`FAKEROOT` variable is obsolete and has been
881 replaced by the other ``FAKEROOT*`` variables. See these entries in 881 replaced by the other ``FAKEROOT*`` variables. See these entries in
882 the glossary for more information. 882 the glossary for more information.
883 883
@@ -940,9 +940,9 @@ overview of their function and contents.
940 Causes the named class or classes to be inherited globally. Anonymous 940 Causes the named class or classes to be inherited globally. Anonymous
941 functions in the class or classes are not executed for the base 941 functions in the class or classes are not executed for the base
942 configuration and in each individual recipe. The OpenEmbedded build 942 configuration and in each individual recipe. The OpenEmbedded build
943 system ignores changes to ``INHERIT`` in individual recipes. 943 system ignores changes to :term:`INHERIT` in individual recipes.
944 944
945 For more information on ``INHERIT``, see the 945 For more information on :term:`INHERIT`, see the
946 ":ref:`bitbake-user-manual/bitbake-user-manual-metadata:\`\`inherit\`\` configuration directive`" 946 ":ref:`bitbake-user-manual/bitbake-user-manual-metadata:\`\`inherit\`\` configuration directive`"
947 section. 947 section.
948 948
@@ -990,7 +990,7 @@ overview of their function and contents.
990 the build system searches for source code, it first tries the local 990 the build system searches for source code, it first tries the local
991 download directory. If that location fails, the build system tries 991 download directory. If that location fails, the build system tries
992 locations defined by :term:`PREMIRRORS`, the 992 locations defined by :term:`PREMIRRORS`, the
993 upstream source, and then locations specified by ``MIRRORS`` in that 993 upstream source, and then locations specified by :term:`MIRRORS` in that
994 order. 994 order.
995 995
996 :term:`MULTI_PROVIDER_WHITELIST` 996 :term:`MULTI_PROVIDER_WHITELIST`
@@ -1007,12 +1007,12 @@ overview of their function and contents.
1007 ``virtual/kernel``, and so forth). 1007 ``virtual/kernel``, and so forth).
1008 1008
1009 :term:`OVERRIDES` 1009 :term:`OVERRIDES`
1010 BitBake uses ``OVERRIDES`` to control what variables are overridden 1010 BitBake uses :term:`OVERRIDES` to control what variables are overridden
1011 after BitBake parses recipes and configuration files. 1011 after BitBake parses recipes and configuration files.
1012 1012
1013 Following is a simple example that uses an overrides list based on 1013 Following is a simple example that uses an overrides list based on
1014 machine architectures: OVERRIDES = "arm:x86:mips:powerpc" You can 1014 machine architectures: OVERRIDES = "arm:x86:mips:powerpc" You can
1015 find information on how to use ``OVERRIDES`` in the 1015 find information on how to use :term:`OVERRIDES` in the
1016 ":ref:`bitbake-user-manual/bitbake-user-manual-metadata:conditional syntax 1016 ":ref:`bitbake-user-manual/bitbake-user-manual-metadata:conditional syntax
1017 (overrides)`" section. 1017 (overrides)`" section.
1018 1018
@@ -1026,11 +1026,11 @@ overview of their function and contents.
1026 :term:`PACKAGES_DYNAMIC` 1026 :term:`PACKAGES_DYNAMIC`
1027 A promise that your recipe satisfies runtime dependencies for 1027 A promise that your recipe satisfies runtime dependencies for
1028 optional modules that are found in other recipes. 1028 optional modules that are found in other recipes.
1029 ``PACKAGES_DYNAMIC`` does not actually satisfy the dependencies, it 1029 :term:`PACKAGES_DYNAMIC` does not actually satisfy the dependencies, it
1030 only states that they should be satisfied. For example, if a hard, 1030 only states that they should be satisfied. For example, if a hard,
1031 runtime dependency (:term:`RDEPENDS`) of another 1031 runtime dependency (:term:`RDEPENDS`) of another
1032 package is satisfied during the build through the 1032 package is satisfied during the build through the
1033 ``PACKAGES_DYNAMIC`` variable, but a package with the module name is 1033 :term:`PACKAGES_DYNAMIC` variable, but a package with the module name is
1034 never actually produced, then the other package will be broken. 1034 never actually produced, then the other package will be broken.
1035 1035
1036 :term:`PE` 1036 :term:`PE`
@@ -1069,8 +1069,8 @@ overview of their function and contents.
1069 :term:`PREFERRED_PROVIDERS` 1069 :term:`PREFERRED_PROVIDERS`
1070 Determines which recipe should be given preference for cases where 1070 Determines which recipe should be given preference for cases where
1071 multiple recipes provide the same item. Functionally, 1071 multiple recipes provide the same item. Functionally,
1072 ``PREFERRED_PROVIDERS`` is identical to 1072 :term:`PREFERRED_PROVIDERS` is identical to
1073 :term:`PREFERRED_PROVIDER`. However, the ``PREFERRED_PROVIDERS`` variable 1073 :term:`PREFERRED_PROVIDER`. However, the :term:`PREFERRED_PROVIDERS` variable
1074 lets you define preferences for multiple situations using the following 1074 lets you define preferences for multiple situations using the following
1075 form:: 1075 form::
1076 1076
@@ -1088,7 +1088,7 @@ overview of their function and contents.
1088 select, and you should set :term:`PV` accordingly for 1088 select, and you should set :term:`PV` accordingly for
1089 precedence. 1089 precedence.
1090 1090
1091 The ``PREFERRED_VERSION`` variable supports limited wildcard use 1091 The :term:`PREFERRED_VERSION` variable supports limited wildcard use
1092 through the "``%``" character. You can use the character to match any 1092 through the "``%``" character. You can use the character to match any
1093 number of characters, which can be useful when specifying versions 1093 number of characters, which can be useful when specifying versions
1094 that contain long revision numbers that potentially change. Here are 1094 that contain long revision numbers that potentially change. Here are
@@ -1111,7 +1111,7 @@ overview of their function and contents.
1111 Specifies additional paths from which BitBake gets source code. When 1111 Specifies additional paths from which BitBake gets source code. When
1112 the build system searches for source code, it first tries the local 1112 the build system searches for source code, it first tries the local
1113 download directory. If that location fails, the build system tries 1113 download directory. If that location fails, the build system tries
1114 locations defined by ``PREMIRRORS``, the upstream source, and then 1114 locations defined by :term:`PREMIRRORS`, the upstream source, and then
1115 locations specified by :term:`MIRRORS` in that order. 1115 locations specified by :term:`MIRRORS` in that order.
1116 1116
1117 Typically, you would add a specific server for the build system to 1117 Typically, you would add a specific server for the build system to
@@ -1131,25 +1131,25 @@ overview of their function and contents.
1131 1131
1132 :term:`PROVIDES` 1132 :term:`PROVIDES`
1133 A list of aliases by which a particular recipe can be known. By 1133 A list of aliases by which a particular recipe can be known. By
1134 default, a recipe's own ``PN`` is implicitly already in its 1134 default, a recipe's own :term:`PN` is implicitly already in its
1135 ``PROVIDES`` list. If a recipe uses ``PROVIDES``, the additional 1135 :term:`PROVIDES` list. If a recipe uses :term:`PROVIDES`, the additional
1136 aliases are synonyms for the recipe and can be useful satisfying 1136 aliases are synonyms for the recipe and can be useful satisfying
1137 dependencies of other recipes during the build as specified by 1137 dependencies of other recipes during the build as specified by
1138 ``DEPENDS``. 1138 :term:`DEPENDS`.
1139 1139
1140 Consider the following example ``PROVIDES`` statement from a recipe 1140 Consider the following example :term:`PROVIDES` statement from a recipe
1141 file ``libav_0.8.11.bb``:: 1141 file ``libav_0.8.11.bb``::
1142 1142
1143 PROVIDES += "libpostproc" 1143 PROVIDES += "libpostproc"
1144 1144
1145 The ``PROVIDES`` statement results in the "libav" recipe also being known 1145 The :term:`PROVIDES` statement results in the "libav" recipe also being known
1146 as "libpostproc". 1146 as "libpostproc".
1147 1147
1148 In addition to providing recipes under alternate names, the 1148 In addition to providing recipes under alternate names, the
1149 ``PROVIDES`` mechanism is also used to implement virtual targets. A 1149 :term:`PROVIDES` mechanism is also used to implement virtual targets. A
1150 virtual target is a name that corresponds to some particular 1150 virtual target is a name that corresponds to some particular
1151 functionality (e.g. a Linux kernel). Recipes that provide the 1151 functionality (e.g. a Linux kernel). Recipes that provide the
1152 functionality in question list the virtual target in ``PROVIDES``. 1152 functionality in question list the virtual target in :term:`PROVIDES`.
1153 Recipes that depend on the functionality in question can include the 1153 Recipes that depend on the functionality in question can include the
1154 virtual target in :term:`DEPENDS` to leave the 1154 virtual target in :term:`DEPENDS` to leave the
1155 choice of provider open. 1155 choice of provider open.
@@ -1161,12 +1161,12 @@ overview of their function and contents.
1161 :term:`PRSERV_HOST` 1161 :term:`PRSERV_HOST`
1162 The network based :term:`PR` service host and port. 1162 The network based :term:`PR` service host and port.
1163 1163
1164 Following is an example of how the ``PRSERV_HOST`` variable is set:: 1164 Following is an example of how the :term:`PRSERV_HOST` variable is set::
1165 1165
1166 PRSERV_HOST = "localhost:0" 1166 PRSERV_HOST = "localhost:0"
1167 1167
1168 You must set the variable if you want to automatically start a local PR 1168 You must set the variable if you want to automatically start a local PR
1169 service. You can set ``PRSERV_HOST`` to other values to use a remote PR 1169 service. You can set :term:`PRSERV_HOST` to other values to use a remote PR
1170 service. 1170 service.
1171 1171
1172 :term:`PV` 1172 :term:`PV`
@@ -1178,22 +1178,22 @@ overview of their function and contents.
1178 a package in this list cannot be found during the build, you will get 1178 a package in this list cannot be found during the build, you will get
1179 a build error. 1179 a build error.
1180 1180
1181 Because the ``RDEPENDS`` variable applies to packages being built, 1181 Because the :term:`RDEPENDS` variable applies to packages being built,
1182 you should always use the variable in a form with an attached package 1182 you should always use the variable in a form with an attached package
1183 name. For example, suppose you are building a development package 1183 name. For example, suppose you are building a development package
1184 that depends on the ``perl`` package. In this case, you would use the 1184 that depends on the ``perl`` package. In this case, you would use the
1185 following ``RDEPENDS`` statement:: 1185 following :term:`RDEPENDS` statement::
1186 1186
1187 RDEPENDS_${PN}-dev += "perl" 1187 RDEPENDS_${PN}-dev += "perl"
1188 1188
1189 In the example, the development package depends on the ``perl`` package. 1189 In the example, the development package depends on the ``perl`` package.
1190 Thus, the ``RDEPENDS`` variable has the ``${PN}-dev`` package name as part 1190 Thus, the :term:`RDEPENDS` variable has the ``${PN}-dev`` package name as part
1191 of the variable. 1191 of the variable.
1192 1192
1193 BitBake supports specifying versioned dependencies. Although the 1193 BitBake supports specifying versioned dependencies. Although the
1194 syntax varies depending on the packaging format, BitBake hides these 1194 syntax varies depending on the packaging format, BitBake hides these
1195 differences from you. Here is the general syntax to specify versions 1195 differences from you. Here is the general syntax to specify versions
1196 with the ``RDEPENDS`` variable:: 1196 with the :term:`RDEPENDS` variable::
1197 1197
1198 RDEPENDS_${PN} = "package (operator version)" 1198 RDEPENDS_${PN} = "package (operator version)"
1199 1199
@@ -1219,19 +1219,19 @@ overview of their function and contents.
1219 1219
1220 :term:`REQUIRED_VERSION` 1220 :term:`REQUIRED_VERSION`
1221 If there are multiple versions of a recipe available, this variable 1221 If there are multiple versions of a recipe available, this variable
1222 determines which version should be given preference. ``REQUIRED_VERSION`` 1222 determines which version should be given preference. :term:`REQUIRED_VERSION`
1223 works in exactly the same manner as :term:`PREFERRED_VERSION`, except 1223 works in exactly the same manner as :term:`PREFERRED_VERSION`, except
1224 that if the specified version is not available then an error message 1224 that if the specified version is not available then an error message
1225 is shown and the build fails immediately. 1225 is shown and the build fails immediately.
1226 1226
1227 If both ``REQUIRED_VERSION`` and ``PREFERRED_VERSION`` are set for 1227 If both :term:`REQUIRED_VERSION` and :term:`PREFERRED_VERSION` are set for
1228 the same recipe, the ``REQUIRED_VERSION`` value applies. 1228 the same recipe, the :term:`REQUIRED_VERSION` value applies.
1229 1229
1230 :term:`RPROVIDES` 1230 :term:`RPROVIDES`
1231 A list of package name aliases that a package also provides. These 1231 A list of package name aliases that a package also provides. These
1232 aliases are useful for satisfying runtime dependencies of other 1232 aliases are useful for satisfying runtime dependencies of other
1233 packages both during the build and on the target (as specified by 1233 packages both during the build and on the target (as specified by
1234 ``RDEPENDS``). 1234 :term:`RDEPENDS`).
1235 1235
1236 As with all package-controlling variables, you must always use the 1236 As with all package-controlling variables, you must always use the
1237 variable in conjunction with a package name override. Here is an 1237 variable in conjunction with a package name override. Here is an
@@ -1244,12 +1244,12 @@ overview of their function and contents.
1244 built. The package being built does not depend on this list of 1244 built. The package being built does not depend on this list of
1245 packages in order to successfully build, but needs them for the 1245 packages in order to successfully build, but needs them for the
1246 extended usability. To specify runtime dependencies for packages, see 1246 extended usability. To specify runtime dependencies for packages, see
1247 the ``RDEPENDS`` variable. 1247 the :term:`RDEPENDS` variable.
1248 1248
1249 BitBake supports specifying versioned recommends. Although the syntax 1249 BitBake supports specifying versioned recommends. Although the syntax
1250 varies depending on the packaging format, BitBake hides these 1250 varies depending on the packaging format, BitBake hides these
1251 differences from you. Here is the general syntax to specify versions 1251 differences from you. Here is the general syntax to specify versions
1252 with the ``RRECOMMENDS`` variable:: 1252 with the :term:`RRECOMMENDS` variable::
1253 1253
1254 RRECOMMENDS_${PN} = "package (operator version)" 1254 RRECOMMENDS_${PN} = "package (operator version)"
1255 1255
@@ -1273,10 +1273,10 @@ overview of their function and contents.
1273 The list of source files - local or remote. This variable tells 1273 The list of source files - local or remote. This variable tells
1274 BitBake which bits to pull for the build and how to pull them. For 1274 BitBake which bits to pull for the build and how to pull them. For
1275 example, if the recipe or append file needs to fetch a single tarball 1275 example, if the recipe or append file needs to fetch a single tarball
1276 from the Internet, the recipe or append file uses a ``SRC_URI`` entry 1276 from the Internet, the recipe or append file uses a :term:`SRC_URI` entry
1277 that specifies that tarball. On the other hand, if the recipe or 1277 that specifies that tarball. On the other hand, if the recipe or
1278 append file needs to fetch a tarball and include a custom file, the 1278 append file needs to fetch a tarball and include a custom file, the
1279 recipe or append file needs an ``SRC_URI`` variable that specifies 1279 recipe or append file needs an :term:`SRC_URI` variable that specifies
1280 all those sources. 1280 all those sources.
1281 1281
1282 The following list explains the available URI protocols: 1282 The following list explains the available URI protocols:
@@ -1329,8 +1329,8 @@ overview of their function and contents.
1329 subdirectory within the archive. 1329 subdirectory within the archive.
1330 1330
1331 - ``name`` : Specifies a name to be used for association with 1331 - ``name`` : Specifies a name to be used for association with
1332 ``SRC_URI`` checksums when you have more than one file specified 1332 :term:`SRC_URI` checksums when you have more than one file specified
1333 in ``SRC_URI``. 1333 in :term:`SRC_URI`.
1334 1334
1335 - ``downloadfilename`` : Specifies the filename used when storing 1335 - ``downloadfilename`` : Specifies the filename used when storing
1336 the downloaded file. 1336 the downloaded file.
@@ -1345,7 +1345,7 @@ overview of their function and contents.
1345 variable applies only when using Subversion, Git, Mercurial and 1345 variable applies only when using Subversion, Git, Mercurial and
1346 Bazaar. If you want to build a fixed revision and you want to avoid 1346 Bazaar. If you want to build a fixed revision and you want to avoid
1347 performing a query on the remote repository every time BitBake parses 1347 performing a query on the remote repository every time BitBake parses
1348 your recipe, you should specify a ``SRCREV`` that is a full revision 1348 your recipe, you should specify a :term:`SRCREV` that is a full revision
1349 identifier and not just a tag. 1349 identifier and not just a tag.
1350 1350
1351 :term:`SRCREV_FORMAT` 1351 :term:`SRCREV_FORMAT`
@@ -1354,10 +1354,10 @@ overview of their function and contents.
1354 :term:`SRC_URI`. 1354 :term:`SRC_URI`.
1355 1355
1356 The system needs help constructing these values under these 1356 The system needs help constructing these values under these
1357 circumstances. Each component in the ``SRC_URI`` is assigned a name 1357 circumstances. Each component in the :term:`SRC_URI` is assigned a name
1358 and these are referenced in the ``SRCREV_FORMAT`` variable. Consider 1358 and these are referenced in the :term:`SRCREV_FORMAT` variable. Consider
1359 an example with URLs named "machine" and "meta". In this case, 1359 an example with URLs named "machine" and "meta". In this case,
1360 ``SRCREV_FORMAT`` could look like "machine_meta" and those names 1360 :term:`SRCREV_FORMAT` could look like "machine_meta" and those names
1361 would have the SCM versions substituted into each position. Only one 1361 would have the SCM versions substituted into each position. Only one
1362 ``AUTOINC`` placeholder is added and if needed. And, this placeholder 1362 ``AUTOINC`` placeholder is added and if needed. And, this placeholder
1363 is placed at the start of the returned string. 1363 is placed at the start of the returned string.
@@ -1369,7 +1369,7 @@ overview of their function and contents.
1369 1369
1370 :term:`STAMPCLEAN` 1370 :term:`STAMPCLEAN`
1371 Specifies the base path used to create recipe stamp files. Unlike the 1371 Specifies the base path used to create recipe stamp files. Unlike the
1372 :term:`STAMP` variable, ``STAMPCLEAN`` can contain 1372 :term:`STAMP` variable, :term:`STAMPCLEAN` can contain
1373 wildcards to match the range of files a clean operation should 1373 wildcards to match the range of files a clean operation should
1374 remove. BitBake uses a clean operation to remove any other stamps it 1374 remove. BitBake uses a clean operation to remove any other stamps it
1375 should be removing when creating a new stamp. 1375 should be removing when creating a new stamp.