summaryrefslogtreecommitdiffstats
path: root/documentation/ref-manual/ref-variables.rst
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/ref-manual/ref-variables.rst')
-rw-r--r--documentation/ref-manual/ref-variables.rst724
1 files changed, 259 insertions, 465 deletions
diff --git a/documentation/ref-manual/ref-variables.rst b/documentation/ref-manual/ref-variables.rst
index 94e839926d..b271d97c15 100644
--- a/documentation/ref-manual/ref-variables.rst
+++ b/documentation/ref-manual/ref-variables.rst
@@ -78,7 +78,7 @@ system and gives an overview of their function and contents.
78 78
79 .. note:: 79 .. note::
80 80
81 If ALTERNATIVE_LINK_NAME is not defined, it defaults to ${bindir}/ name. 81 If ``ALTERNATIVE_LINK_NAME`` is not defined, it defaults to ``${bindir}/name``.
82 82
83 For more information on the alternatives system, see the 83 For more information on the alternatives system, see the
84 ":ref:`update-alternatives.bbclass <ref-classes-update-alternatives>`" 84 ":ref:`update-alternatives.bbclass <ref-classes-update-alternatives>`"
@@ -237,15 +237,9 @@ system and gives an overview of their function and contents.
237 237
238 .. note:: 238 .. note::
239 239
240 It is assumed that all changes to 240 It is assumed that all changes to ``COMMON_LICENSE_DIR`` and
241 COMMON_LICENSE_DIR 241 ``LICENSE_PATH`` have been done before ``AVAILABLE_LICENSES``
242 and 242 is defined (in :ref:`ref-classes-license`).
243 LICENSE_PATH
244 have been done before
245 AVAILABLE_LICENSES
246 is defined (in
247 license.bbclass
248 ).
249 243
250 :term:`AVAILTUNES` 244 :term:`AVAILTUNES`
251 The list of defined CPU and Application Binary Interface (ABI) 245 The list of defined CPU and Application Binary Interface (ABI)
@@ -389,7 +383,8 @@ system and gives an overview of their function and contents.
389 add the ``BB_DISKMON_DIRS`` variable to your ``conf/local.conf`` file 383 add the ``BB_DISKMON_DIRS`` variable to your ``conf/local.conf`` file
390 found in the :term:`Build Directory`. Use the 384 found in the :term:`Build Directory`. Use the
391 following form: 385 following form:
392 :: 386
387 .. code-block:: none
393 388
394 BB_DISKMON_DIRS = "action,dir,threshold [...]" 389 BB_DISKMON_DIRS = "action,dir,threshold [...]"
395 390
@@ -473,7 +468,8 @@ system and gives an overview of their function and contents.
473 468
474 When specifying the variable in your configuration file, use the 469 When specifying the variable in your configuration file, use the
475 following form: 470 following form:
476 :: 471
472 .. code-block:: none
477 473
478 BB_DISKMON_WARNINTERVAL = "disk_space_interval,disk_inode_interval" 474 BB_DISKMON_WARNINTERVAL = "disk_space_interval,disk_inode_interval"
479 475
@@ -619,8 +615,7 @@ system and gives an overview of their function and contents.
619 615
620 .. tip:: 616 .. tip::
621 617
622 You can use the command 618 You can use the command ``bitbake-layers show-layers``
623 bitbake-layers show-layers
624 to list all configured layers along with their priorities. 619 to list all configured layers along with their priorities.
625 620
626 :term:`BBFILES` 621 :term:`BBFILES`
@@ -653,7 +648,8 @@ system and gives an overview of their function and contents.
653 648
654 This next example shows an error message that occurs because invalid 649 This next example shows an error message that occurs because invalid
655 entries are found, which cause parsing to abort: 650 entries are found, which cause parsing to abort:
656 :: 651
652 .. code-block:: none
657 653
658 ERROR: BBFILES_DYNAMIC entries must be of the form <collection name>:<filename pattern>, not: 654 ERROR: BBFILES_DYNAMIC entries must be of the form <collection name>:<filename pattern>, not:
659 /work/my-layer/bbappends/meta-security-isafw/*/*/*.bbappend 655 /work/my-layer/bbappends/meta-security-isafw/*/*/*.bbappend
@@ -675,7 +671,8 @@ system and gives an overview of their function and contents.
675 :: 671 ::
676 672
677 BBLAYERS = " \ 673 BBLAYERS = " \
678 /home/scottrif/poky/meta \ /home/scottrif/poky/meta-poky \ 674 /home/scottrif/poky/meta \
675 /home/scottrif/poky/meta-poky \
679 /home/scottrif/poky/meta-yocto-bsp \ 676 /home/scottrif/poky/meta-yocto-bsp \
680 /home/scottrif/poky/meta-mykernel \ 677 /home/scottrif/poky/meta-mykernel \
681 " 678 "
@@ -799,16 +796,12 @@ system and gives an overview of their function and contents.
799 796
800 .. note:: 797 .. note::
801 798
802 The 799 The ``BINCONFIG_GLOB`` variable uses
803 BINCONFIG_GLOB 800 `shell globbing <https://tldp.org/LDP/abs/html/globbingref.html>`__,
804 variable uses 801 which is recognition and expansion of wildcards during pattern
805 shell globbing
806 , which is recognition and expansion of wildcards during pattern
807 matching. Shell globbing is very similar to 802 matching. Shell globbing is very similar to
808 fnmatch 803 `fnmatch <https://docs.python.org/3/library/fnmatch.html#module-fnmatch>`__
809 and 804 and `glob <https://docs.python.org/3/library/glob.html>`__.
810 glob
811 .
812 805
813 For more information on how this variable works, see 806 For more information on how this variable works, see
814 ``meta/classes/binconfig.bbclass`` in the :term:`Source Directory`. 807 ``meta/classes/binconfig.bbclass`` in the :term:`Source Directory`.
@@ -944,7 +937,7 @@ system and gives an overview of their function and contents.
944 :term:`BUILDDIR` 937 :term:`BUILDDIR`
945 Points to the location of the :term:`Build Directory`. 938 Points to the location of the :term:`Build Directory`.
946 You can define this directory indirectly through the 939 You can define this directory indirectly through the
947 ````` <#structure-core-script>`__ script by passing in a Build 940 :ref:`structure-core-script` script by passing in a Build
948 Directory path when you run the script. If you run the script and do 941 Directory path when you run the script. If you run the script and do
949 not provide a Build Directory path, the ``BUILDDIR`` defaults to 942 not provide a Build Directory path, the ``BUILDDIR`` defaults to
950 ``build`` in the current directory. 943 ``build`` in the current directory.
@@ -1133,10 +1126,8 @@ system and gives an overview of their function and contents.
1133 1126
1134 .. note:: 1127 .. note::
1135 1128
1136 CLASSOVERRIDE 1129 ``CLASSOVERRIDE`` gets its default "class-target" value from the
1137 gets its default "class-target" value from the 1130 ``bitbake.conf`` file.
1138 bitbake.conf
1139 file.
1140 1131
1141 As an example, the following override allows you to install extra 1132 As an example, the following override allows you to install extra
1142 files, but only when building for the target: 1133 files, but only when building for the target:
@@ -1208,13 +1199,10 @@ system and gives an overview of their function and contents.
1208 1199
1209 .. note:: 1200 .. note::
1210 1201
1211 The 1202 The ``COMPLEMENTARY_GLOB`` variable uses Unix filename pattern matching
1212 COMPLEMENTARY_GLOB 1203 (`fnmatch <https://docs.python.org/3/library/fnmatch.html#module-fnmatch>`__),
1213 variable uses Unix filename pattern matching ( 1204 which is similar to the Unix style pathname pattern expansion
1214 fnmatch 1205 (`glob <https://docs.python.org/3/library/glob.html>`__).
1215 ), which is similar to the Unix style pathname pattern expansion (
1216 glob
1217 ).
1218 1206
1219 The resulting list of complementary packages is associated with an 1207 The resulting list of complementary packages is associated with an
1220 item that can be added to 1208 item that can be added to
@@ -1274,22 +1262,12 @@ system and gives an overview of their function and contents.
1274 1262
1275 .. note:: 1263 .. note::
1276 1264
1277 When specifying paths as part of the 1265 When specifying paths as part of the ``CONFFILES`` variable, it is
1278 CONFFILES 1266 good practice to use appropriate path variables.
1279 variable, it is good practice to use appropriate path variables. 1267 For example, ``${sysconfdir}`` rather than ``/etc`` or ``${bindir}``
1280 For example, 1268 rather than ``/usr/bin``. You can find a list of these variables at
1281 ${sysconfdir} 1269 the top of the ``meta/conf/bitbake.conf`` file in the
1282 rather than 1270 :term:`Source Directory`.
1283 /etc
1284 or
1285 ${bindir}
1286 rather than
1287 /usr/bin
1288 . You can find a list of these variables at the top of the
1289 meta/conf/bitbake.conf
1290 file in the
1291 Source Directory
1292 .
1293 1271
1294 :term:`CONFIG_INITRAMFS_SOURCE` 1272 :term:`CONFIG_INITRAMFS_SOURCE`
1295 Identifies the initial RAM filesystem (initramfs) source files. The 1273 Identifies the initial RAM filesystem (initramfs) source files. The
@@ -1339,11 +1317,8 @@ system and gives an overview of their function and contents.
1339 1317
1340 .. note:: 1318 .. note::
1341 1319
1342 The 1320 The ``COPYLEFT_LICENSE_EXCLUDE`` variable takes precedence over the
1343 COPYLEFT_LICENSE_EXCLUDE 1321 :term:`COPYLEFT_LICENSE_INCLUDE` variable.
1344 variable takes precedence over the
1345 COPYLEFT_LICENSE_INCLUDE
1346 variable.
1347 1322
1348 The default value, which is "CLOSED Proprietary", for 1323 The default value, which is "CLOSED Proprietary", for
1349 ``COPYLEFT_LICENSE_EXCLUDE`` is set by the 1324 ``COPYLEFT_LICENSE_EXCLUDE`` is set by the
@@ -1410,15 +1385,12 @@ system and gives an overview of their function and contents.
1410 1385
1411 .. note:: 1386 .. note::
1412 1387
1413 The 1388 The ``COPY_LIC_DIRS`` does not offer a path for adding licenses for
1414 COPY_LIC_DIRS 1389 newly installed packages to an image, which might be most suitable for
1415 does not offer a path for adding licenses for newly installed 1390 read-only filesystems that cannot be upgraded. See the
1416 packages to an image, which might be most suitable for read-only 1391 :term:`LICENSE_CREATE_PACKAGE` variable for additional information.
1417 filesystems that cannot be upgraded. See the 1392 You can also reference the ":ref:`dev-manual/dev-manual-common-tasks:providing license text`"
1418 LICENSE_CREATE_PACKAGE 1393 section in the Yocto Project Development Tasks Manual for
1419 variable for additional information. You can also reference the "
1420 Providing License Text
1421 " section in the Yocto Project Development Tasks Manual for
1422 information on providing license text. 1394 information on providing license text.
1423 1395
1424 :term:`COPY_LIC_MANIFEST` 1396 :term:`COPY_LIC_MANIFEST`
@@ -1429,15 +1401,12 @@ system and gives an overview of their function and contents.
1429 1401
1430 .. note:: 1402 .. note::
1431 1403
1432 The 1404 The ``COPY_LIC_MANIFEST`` does not offer a path for adding licenses for
1433 COPY_LIC_MANIFEST 1405 newly installed packages to an image, which might be most suitable for
1434 does not offer a path for adding licenses for newly installed 1406 read-only filesystems that cannot be upgraded. See the
1435 packages to an image, which might be most suitable for read-only 1407 :term:`LICENSE_CREATE_PACKAGE` variable for additional information.
1436 filesystems that cannot be upgraded. See the 1408 You can also reference the ":ref:`dev-manual/dev-manual-common-tasks:providing license text`"
1437 LICENSE_CREATE_PACKAGE 1409 section in the Yocto Project Development Tasks Manual for
1438 variable for additional information. You can also reference the "
1439 Providing License Text
1440 " section in the Yocto Project Development Tasks Manual for
1441 information on providing license text. 1410 information on providing license text.
1442 1411
1443 :term:`CORE_IMAGE_EXTRA_INSTALL` 1412 :term:`CORE_IMAGE_EXTRA_INSTALL`
@@ -1500,8 +1469,7 @@ system and gives an overview of their function and contents.
1500 1469
1501 .. note:: 1470 .. note::
1502 1471
1503 The OpenEmbedded build system sets the 1472 The OpenEmbedded build system sets the ``CROSS_COMPILE``
1504 CROSS_COMPILE
1505 variable only in certain contexts (e.g. when building for kernel 1473 variable only in certain contexts (e.g. when building for kernel
1506 and kernel module recipes). 1474 and kernel module recipes).
1507 1475
@@ -1541,8 +1509,7 @@ system and gives an overview of their function and contents.
1541 .. note:: 1509 .. note::
1542 1510
1543 Tasks that read from or write to this directory should run under 1511 Tasks that read from or write to this directory should run under
1544 fakeroot 1512 :ref:`fakeroot <overview-manual/overview-manual-concepts:fakeroot and pseudo>`.
1545 .
1546 1513
1547 :term:`DATE` 1514 :term:`DATE`
1548 The date the build was started. Dates appear using the year, month, 1515 The date the build was started. Dates appear using the year, month,
@@ -1593,12 +1560,9 @@ system and gives an overview of their function and contents.
1593 1560
1594 .. note:: 1561 .. note::
1595 1562
1596 The bias provided by 1563 The bias provided by ``DEFAULT_PREFERENCE`` is weak and is overridden
1597 DEFAULT_PREFERENCE 1564 by :term:`BBFILE_PRIORITY` if that variable is different between two
1598 is weak and is overridden by 1565 layers that contain different versions of the same recipe.
1599 BBFILE_PRIORITY
1600 if that variable is different between two layers that contain
1601 different versions of the same recipe.
1602 1566
1603 :term:`DEFAULTTUNE` 1567 :term:`DEFAULTTUNE`
1604 The default CPU and Application Binary Interface (ABI) tunings (i.e. 1568 The default CPU and Application Binary Interface (ABI) tunings (i.e.
@@ -1635,8 +1599,7 @@ system and gives an overview of their function and contents.
1635 1599
1636 .. note:: 1600 .. note::
1637 1601
1638 It seldom is necessary to reference, for example, 1602 It seldom is necessary to reference, for example, ``STAGING_DIR_HOST``
1639 STAGING_DIR_HOST
1640 explicitly. The standard classes and build-related variables are 1603 explicitly. The standard classes and build-related variables are
1641 configured to automatically use the appropriate staging sysroots. 1604 configured to automatically use the appropriate staging sysroots.
1642 1605
@@ -1807,7 +1770,7 @@ system and gives an overview of their function and contents.
1807 is set in the ``deploy`` class as follows: 1770 is set in the ``deploy`` class as follows:
1808 :: 1771 ::
1809 1772
1810 DEPLOYDIR = "${WORKDIR}/deploy-${:term:`PN`}" 1773 DEPLOYDIR = "${WORKDIR}/deploy-${PN}"
1811 1774
1812 Recipes inheriting the ``deploy`` class should copy files to be 1775 Recipes inheriting the ``deploy`` class should copy files to be
1813 deployed into ``DEPLOYDIR``, and the class will take care of copying 1776 deployed into ``DEPLOYDIR``, and the class will take care of copying
@@ -1844,12 +1807,9 @@ system and gives an overview of their function and contents.
1844 1807
1845 .. note:: 1808 .. note::
1846 1809
1847 If the 1810 If the ``DISTRO`` variable is blank, a set of default configurations
1848 DISTRO 1811 are used, which are specified within
1849 variable is blank, a set of default configurations are used, which 1812 ``meta/conf/distro/defaultsetup.conf`` also in the Source Directory.
1850 are specified within
1851 meta/conf/distro/defaultsetup.conf
1852 also in the Source Directory.
1853 1813
1854 :term:`DISTRO_CODENAME` 1814 :term:`DISTRO_CODENAME`
1855 Specifies a codename for the distribution being built. 1815 Specifies a codename for the distribution being built.
@@ -1884,8 +1844,7 @@ system and gives an overview of their function and contents.
1884 1844
1885 Two more examples are Bluetooth and NFS support. For a more complete 1845 Two more examples are Bluetooth and NFS support. For a more complete
1886 list of features that ships with the Yocto Project and that you can 1846 list of features that ships with the Yocto Project and that you can
1887 provide with this variable, see the "`Distro 1847 provide with this variable, see the ":ref:`ref-features-distro`" section.
1888 Features <#ref-features-distro>`__" section.
1889 1848
1890 :term:`DISTRO_FEATURES_BACKFILL` 1849 :term:`DISTRO_FEATURES_BACKFILL`
1891 Features to be added to ``DISTRO_FEATURES`` if not also present in 1850 Features to be added to ``DISTRO_FEATURES`` if not also present in
@@ -1894,15 +1853,13 @@ system and gives an overview of their function and contents.
1894 This variable is set in the ``meta/conf/bitbake.conf`` file. It is 1853 This variable is set in the ``meta/conf/bitbake.conf`` file. It is
1895 not intended to be user-configurable. It is best to just reference 1854 not intended to be user-configurable. It is best to just reference
1896 the variable to see which distro features are being backfilled for 1855 the variable to see which distro features are being backfilled for
1897 all distro configurations. See the "`Feature 1856 all distro configurations. See the ":ref:`ref-features-backfill`" section
1898 Backfilling <#ref-features-backfill>`__" section for more 1857 for more information.
1899 information.
1900 1858
1901 :term:`DISTRO_FEATURES_BACKFILL_CONSIDERED` 1859 :term:`DISTRO_FEATURES_BACKFILL_CONSIDERED`
1902 Features from ``DISTRO_FEATURES_BACKFILL`` that should not be 1860 Features from ``DISTRO_FEATURES_BACKFILL`` that should not be
1903 backfilled (i.e. added to ``DISTRO_FEATURES``) during the build. See 1861 backfilled (i.e. added to ``DISTRO_FEATURES``) during the build. See
1904 the "`Feature Backfilling <#ref-features-backfill>`__" section for 1862 the ":ref:`ref-features-backfill`" section for more information.
1905 more information.
1906 1863
1907 :term:`DISTRO_FEATURES_DEFAULT` 1864 :term:`DISTRO_FEATURES_DEFAULT`
1908 A convenience variable that gives you the default list of distro 1865 A convenience variable that gives you the default list of distro
@@ -1973,12 +1930,9 @@ system and gives an overview of their function and contents.
1973 1930
1974 .. note:: 1931 .. note::
1975 1932
1976 If the 1933 If the ``DISTRO_NAME`` variable is blank, a set of default
1977 DISTRO_NAME 1934 configurations are used, which are specified within
1978 variable is blank, a set of default configurations are used, which 1935 ``meta/conf/distro/defaultsetup.conf`` also in the Source Directory.
1979 are specified within
1980 meta/conf/distro/defaultsetup.conf
1981 also in the Source Directory.
1982 1936
1983 :term:`DISTRO_VERSION` 1937 :term:`DISTRO_VERSION`
1984 The version of the distribution. 1938 The version of the distribution.
@@ -2028,8 +1982,7 @@ system and gives an overview of their function and contents.
2028 You can safely share this directory between multiple builds on the 1982 You can safely share this directory between multiple builds on the
2029 same development machine. For additional information on how the build 1983 same development machine. For additional information on how the build
2030 process gets source files when working behind a firewall or proxy 1984 process gets source files when working behind a firewall or proxy
2031 server, see this specific question in the 1985 server, see this specific question in the ":doc:`faq`"
2032 "`FAQ <#how-does-the-yocto-project-obtain-source-code-and-will-it-work-behind-my-firewall-or-proxy-server>`__"
2033 chapter. You can also refer to the 1986 chapter. You can also refer to the
2034 ":yocto_wiki:`Working Behind a Network Proxy </wiki/Working_Behind_a_Network_Proxy>`" 1987 ":yocto_wiki:`Working Behind a Network Proxy </wiki/Working_Behind_a_Network_Proxy>`"
2035 Wiki page. 1988 Wiki page.
@@ -2089,12 +2042,10 @@ system and gives an overview of their function and contents.
2089 .. note:: 2042 .. note::
2090 2043
2091 The shared libraries resolver's functionality results in part from 2044 The shared libraries resolver's functionality results in part from
2092 the internal function 2045 the internal function ``package_do_shlibs``, which is part of the
2093 package_do_shlibs 2046 :ref:`ref-tasks-package` task. You should be aware that the shared
2094 , which is part of the 2047 libraries resolver might implicitly define some dependencies between
2095 do_package 2048 packages.
2096 task. You should be aware that the shared libraries resolver might
2097 implicitly define some dependencies between packages.
2098 2049
2099 The ``EXCLUDE_FROM_SHLIBS`` variable is similar to the 2050 The ``EXCLUDE_FROM_SHLIBS`` variable is similar to the
2100 :term:`PRIVATE_LIBS` variable, which excludes a 2051 :term:`PRIVATE_LIBS` variable, which excludes a
@@ -2117,13 +2068,10 @@ system and gives an overview of their function and contents.
2117 2068
2118 .. note:: 2069 .. note::
2119 2070
2120 Recipes added to 2071 Recipes added to ``EXCLUDE_FROM_WORLD`` may still be built during a
2121 EXCLUDE_FROM_WORLD 2072 world build in order to satisfy dependencies of other recipes. Adding
2122 may still be built during a world build in order to satisfy 2073 a recipe to ``EXCLUDE_FROM_WORLD`` only ensures that the recipe is not
2123 dependencies of other recipes. Adding a recipe to 2074 explicitly added to the list of build targets in a world build.
2124 EXCLUDE_FROM_WORLD
2125 only ensures that the recipe is not explicitly added to the list
2126 of build targets in a world build.
2127 2075
2128 :term:`EXTENDPE` 2076 :term:`EXTENDPE`
2129 Used with file and pathnames to create a prefix for a recipe's 2077 Used with file and pathnames to create a prefix for a recipe's
@@ -2205,8 +2153,7 @@ system and gives an overview of their function and contents.
2205 .. note:: 2153 .. note::
2206 2154
2207 To enable primary features from within the image recipe, use the 2155 To enable primary features from within the image recipe, use the
2208 IMAGE_FEATURES 2156 :term:`IMAGE_FEATURES` variable.
2209 variable.
2210 2157
2211 Here are some examples of features you can add: 2158 Here are some examples of features you can add:
2212 2159
@@ -2215,8 +2162,8 @@ system and gives an overview of their function and contents.
2215 2162
2216 - "debug-tweaks" - Makes an image suitable for debugging. For example, allows root logins without passwords and 2163 - "debug-tweaks" - Makes an image suitable for debugging. For example, allows root logins without passwords and
2217 enables post-installation logging. See the 'allow-empty-password' and 2164 enables post-installation logging. See the 'allow-empty-password' and
2218 'post-install-logging' features in the "`Image 2165 'post-install-logging' features in the ":ref:`ref-features-image`"
2219 Features <#ref-features-image>`__" section for more information. 2166 section for more information.
2220 - "dev-pkgs" - Adds -dev packages for all installed packages. This is 2167 - "dev-pkgs" - Adds -dev packages for all installed packages. This is
2221 useful if you want to develop against the libraries in the image. 2168 useful if you want to develop against the libraries in the image.
2222 - "read-only-rootfs" - Creates an image whose root filesystem is 2169 - "read-only-rootfs" - Creates an image whose root filesystem is
@@ -2231,7 +2178,7 @@ system and gives an overview of their function and contents.
2231 such as ts_print, aplay, arecord and so forth. 2178 such as ts_print, aplay, arecord and so forth.
2232 2179
2233 For a complete list of image features that ships with the Yocto 2180 For a complete list of image features that ships with the Yocto
2234 Project, see the "`Image Features <#ref-features-image>`__" section. 2181 Project, see the ":ref:`ref-features-image`" section.
2235 2182
2236 For an example that shows how to customize your image by using this 2183 For an example that shows how to customize your image by using this
2237 variable, see the ":ref:`usingpoky-extend-customimage-imagefeatures`" 2184 variable, see the ":ref:`usingpoky-extend-customimage-imagefeatures`"
@@ -2258,8 +2205,7 @@ system and gives an overview of their function and contents.
2258 .. note:: 2205 .. note::
2259 2206
2260 To add packages to the root filesystem, see the various 2207 To add packages to the root filesystem, see the various
2261 \*RDEPENDS and \*RRECOMMENDS 2208 \*:term:`RDEPENDS` and \*:term:`RRECOMMENDS` variables.
2262 variables.
2263 2209
2264 :term:`EXTRANATIVEPATH` 2210 :term:`EXTRANATIVEPATH`
2265 A list of subdirectories of 2211 A list of subdirectories of
@@ -2332,13 +2278,10 @@ system and gives an overview of their function and contents.
2332 2278
2333 .. note:: 2279 .. note::
2334 2280
2335 Packages installed by features defined through 2281 Packages installed by features defined through ``FEATURE_PACKAGES``
2336 FEATURE_PACKAGES
2337 are often package groups. While similarly named, you should not 2282 are often package groups. While similarly named, you should not
2338 confuse the 2283 confuse the ``FEATURE_PACKAGES`` variable with package groups, which
2339 FEATURE_PACKAGES 2284 are discussed elsewhere in the documentation.
2340 variable with package groups, which are discussed elsewhere in the
2341 documentation.
2342 2285
2343 :term:`FEED_DEPLOYDIR_BASE_URI` 2286 :term:`FEED_DEPLOYDIR_BASE_URI`
2344 Points to the base URL of the server and location within the 2287 Points to the base URL of the server and location within the
@@ -2471,9 +2414,7 @@ system and gives an overview of their function and contents.
2471 .. note:: 2414 .. note::
2472 2415
2473 For a layer that supports a single BSP, the override could just be 2416 For a layer that supports a single BSP, the override could just be
2474 the value of 2417 the value of ``MACHINE``.
2475 MACHINE
2476 .
2477 2418
2478 By prepending paths in ``.bbappend`` files, you allow multiple append 2419 By prepending paths in ``.bbappend`` files, you allow multiple append
2479 files that reside in different layers but are used for the same 2420 files that reside in different layers but are used for the same
@@ -2498,10 +2439,9 @@ system and gives an overview of their function and contents.
2498 2439
2499 .. note:: 2440 .. note::
2500 2441
2501 Do not hand-edit the 2442 Do not hand-edit the ``FILESOVERRIDES`` variable. The values match up
2502 FILESOVERRIDES 2443 with expected overrides and are used in an expected manner by the
2503 variable. The values match up with expected overrides and are used 2444 build system.
2504 in an expected manner by the build system.
2505 2445
2506 :term:`FILESPATH` 2446 :term:`FILESPATH`
2507 The default set of directories the OpenEmbedded build system uses 2447 The default set of directories the OpenEmbedded build system uses
@@ -2674,11 +2614,8 @@ system and gives an overview of their function and contents.
2674 2614
2675 .. note:: 2615 .. note::
2676 2616
2677 If you specifically remove the locale 2617 If you specifically remove the locale ``en_US.UTF-8``, you must set
2678 en_US.UTF-8 2618 :term:`IMAGE_LINGUAS` appropriately.
2679 , you must set
2680 IMAGE_LINGUAS
2681 appropriately.
2682 2619
2683 You can set ``GLIBC_GENERATE_LOCALES`` in your ``local.conf`` file. 2620 You can set ``GLIBC_GENERATE_LOCALES`` in your ``local.conf`` file.
2684 By default, all locales are generated. 2621 By default, all locales are generated.
@@ -2771,7 +2708,7 @@ system and gives an overview of their function and contents.
2771 - :term:`TARGET_CC_ARCH` when building for the 2708 - :term:`TARGET_CC_ARCH` when building for the
2772 target 2709 target
2773 2710
2774 - ``BUILD_CC_ARCH`` when building for the build host (i.e. 2711 - :term:`BUILD_CC_ARCH` when building for the build host (i.e.
2775 ``-native``) 2712 ``-native``)
2776 2713
2777 - ``BUILDSDK_CC_ARCH`` when building for an SDK (i.e. 2714 - ``BUILDSDK_CC_ARCH`` when building for an SDK (i.e.
@@ -2870,9 +2807,7 @@ system and gives an overview of their function and contents.
2870 .. note:: 2807 .. note::
2871 2808
2872 The options passed affect builds on all enabled machines on the 2809 The options passed affect builds on all enabled machines on the
2873 network, which are machines running the 2810 network, which are machines running the ``iceccd`` daemon.
2874 iceccd
2875 daemon.
2876 2811
2877 If your enabled machines support multiple cores, coming up with the 2812 If your enabled machines support multiple cores, coming up with the
2878 maximum number of parallel threads that gives you the best 2813 maximum number of parallel threads that gives you the best
@@ -3046,11 +2981,10 @@ system and gives an overview of their function and contents.
3046 .. note:: 2981 .. note::
3047 2982
3048 To enable extra features from outside the image recipe, use the 2983 To enable extra features from outside the image recipe, use the
3049 EXTRA_IMAGE_FEATURES 2984 :term:`EXTRA_IMAGE_FEATURES` variable.
3050 variable.
3051 2985
3052 For a list of image features that ships with the Yocto Project, see 2986 For a list of image features that ships with the Yocto Project, see
3053 the "`Image Features <#ref-features-image>`__" section. 2987 the ":ref:`ref-features-image`" section.
3054 2988
3055 For an example that shows how to customize your image by using this 2989 For an example that shows how to customize your image by using this
3056 variable, see the ":ref:`usingpoky-extend-customimage-imagefeatures`" 2990 variable, see the ":ref:`usingpoky-extend-customimage-imagefeatures`"
@@ -3104,7 +3038,7 @@ system and gives an overview of their function and contents.
3104 .. note:: 3038 .. note::
3105 3039
3106 - When working with a 3040 - When working with a
3107 ```core-image-minimal-initramfs`` <#images-core-image-minimal-initramfs>`__ 3041 :ref:`core-image-minimal-initramfs <ref-manual/ref-images:images>`
3108 image, do not use the ``IMAGE_INSTALL`` variable to specify 3042 image, do not use the ``IMAGE_INSTALL`` variable to specify
3109 packages for installation. Instead, use the 3043 packages for installation. Instead, use the
3110 :term:`PACKAGE_INSTALL` variable, which 3044 :term:`PACKAGE_INSTALL` variable, which
@@ -3219,10 +3153,8 @@ system and gives an overview of their function and contents.
3219 3153
3220 .. note:: 3154 .. note::
3221 3155
3222 The 3156 The ``package_tar`` class is broken and is not supported. It is
3223 package_tar 3157 recommended that you do not use it.
3224 class is broken and is not supported. It is recommended that you
3225 do not use it.
3226 3158
3227 The :ref:`populate_sdk_* <ref-classes-populate-sdk-*>` and 3159 The :ref:`populate_sdk_* <ref-classes-populate-sdk-*>` and
3228 :ref:`image <ref-classes-image>` classes use the ``IMAGE_PKGTYPE`` 3160 :ref:`image <ref-classes-image>` classes use the ``IMAGE_PKGTYPE``
@@ -3237,10 +3169,9 @@ system and gives an overview of their function and contents.
3237 3169
3238 .. note:: 3170 .. note::
3239 3171
3240 Files using the 3172 Files using the ``.tar`` format are never used as a substitute
3241 .tar 3173 packaging format for DEB, RPM, and IPK formatted files for your image
3242 format are never used as a substitute packaging format for DEB, 3174 or SDK.
3243 RPM, and IPK formatted files for your image or SDK.
3244 3175
3245 :term:`IMAGE_POSTPROCESS_COMMAND` 3176 :term:`IMAGE_POSTPROCESS_COMMAND`
3246 Specifies a list of functions to call once the OpenEmbedded build 3177 Specifies a list of functions to call once the OpenEmbedded build
@@ -3447,23 +3378,17 @@ system and gives an overview of their function and contents.
3447 3378
3448 It is possible to define a list of licenses that are allowed to be 3379 It is possible to define a list of licenses that are allowed to be
3449 used instead of the licenses that are excluded. To do this, define 3380 used instead of the licenses that are excluded. To do this, define
3450 a variable 3381 a variable ``COMPATIBLE_LICENSES`` with the names of the licences
3451 COMPATIBLE_LICENSES 3382 that are allowed. Then define ``INCOMPATIBLE_LICENSE`` as:
3452 with the names of the licences that are allowed. Then define
3453 INCOMPATIBLE_LICENSE
3454 as:
3455 :: 3383 ::
3456 3384
3457 INCOMPATIBLE_LICENSE = "${@' '.join(sorted(set(d.getVar('AVAILABLE_LICENSES').split()) - set(d.getVar('COMPATIBLE_LICENSES').split())))}" 3385 INCOMPATIBLE_LICENSE = "${@' '.join(sorted(set(d.getVar('AVAILABLE_LICENSES').split()) - set(d.getVar('COMPATIBLE_LICENSES').split())))}"
3458 3386
3459 3387
3460 This will result in 3388 This will result in ``INCOMPATIBLE_LICENSE`` containing the names of
3461 INCOMPATIBLE_LICENSE 3389 all licences from :term:`AVAILABLE_LICENSES` except the ones specified
3462 containing the names of all licences from 3390 in ``COMPATIBLE_LICENSES`` , thus only allowing the latter licences to
3463 AVAILABLE_LICENSES 3391 be used.
3464 except the ones specified in
3465 COMPATIBLE_LICENSES
3466 , thus only allowing the latter licences to be used.
3467 3392
3468 :term:`INHERIT` 3393 :term:`INHERIT`
3469 Causes the named class or classes to be inherited globally. Anonymous 3394 Causes the named class or classes to be inherited globally. Anonymous
@@ -3536,13 +3461,11 @@ system and gives an overview of their function and contents.
3536 3461
3537 .. note:: 3462 .. note::
3538 3463
3539 Use of the 3464 Use of the ``INHIBIT_SYSROOT_STRIP`` variable occurs in rare and
3540 INHIBIT_SYSROOT_STRIP 3465 special circumstances. For example, suppose you are building
3541 variable occurs in rare and special circumstances. For example, 3466 bare-metal firmware by using an external GCC toolchain. Furthermore,
3542 suppose you are building bare-metal firmware by using an external 3467 even if the toolchain's binaries are strippable, other files exist
3543 GCC toolchain. Furthermore, even if the toolchain's binaries are 3468 that are needed for the build that are not strippable.
3544 strippable, other files exist that are needed for the build that
3545 are not strippable.
3546 3469
3547 :term:`INITRAMFS_FSTYPES` 3470 :term:`INITRAMFS_FSTYPES`
3548 Defines the format for the output image of an initial RAM filesystem 3471 Defines the format for the output image of an initial RAM filesystem
@@ -3573,13 +3496,10 @@ system and gives an overview of their function and contents.
3573 3496
3574 .. note:: 3497 .. note::
3575 3498
3576 See the 3499 See the ``meta/recipes-core/images/core-image-minimal-initramfs.bb``
3577 meta/recipes-core/images/core-image-minimal-initramfs.bb 3500 recipe in the :term:`Source Directory`
3578 recipe in the
3579 Source Directory
3580 for an example initramfs recipe. To select this sample recipe as 3501 for an example initramfs recipe. To select this sample recipe as
3581 the one built to provide the initramfs image, set 3502 the one built to provide the initramfs image, set ``INITRAMFS_IMAGE``
3582 INITRAMFS_IMAGE
3583 to "core-image-minimal-initramfs". 3503 to "core-image-minimal-initramfs".
3584 3504
3585 You can also find more information by referencing the 3505 You can also find more information by referencing the
@@ -3637,10 +3557,8 @@ system and gives an overview of their function and contents.
3637 3557
3638 .. note:: 3558 .. note::
3639 3559
3640 You must set the 3560 You must set the ``INITRAMFS_IMAGE_BUNDLE`` variable in a
3641 INITRAMFS_IMAGE_BUNDLE 3561 configuration file. You cannot set the variable in a recipe file.
3642 variable in a configuration file. You cannot set the variable in a
3643 recipe file.
3644 3562
3645 See the 3563 See the
3646 :yocto_git:`local.conf.sample.extended </cgit/cgit.cgi/poky/tree/meta-poky/conf/local.conf.sample.extended>` 3564 :yocto_git:`local.conf.sample.extended </cgit/cgit.cgi/poky/tree/meta-poky/conf/local.conf.sample.extended>`
@@ -3861,7 +3779,7 @@ system and gives an overview of their function and contents.
3861 3779
3862 .. note:: 3780 .. note::
3863 3781
3864 The IMAGE_VERSION_SUFFIX variable is set to DATETIME. 3782 The ``IMAGE_VERSION_SUFFIX`` variable is set to :term:`DATETIME`.
3865 3783
3866 :term:`KERNEL_CLASSES` 3784 :term:`KERNEL_CLASSES`
3867 A list of classes defining kernel image types that the 3785 A list of classes defining kernel image types that the
@@ -3879,7 +3797,7 @@ system and gives an overview of their function and contents.
3879 .. note:: 3797 .. note::
3880 3798
3881 Legacy support exists for specifying the full path to the device 3799 Legacy support exists for specifying the full path to the device
3882 tree. However, providing just the .dtb file is preferred. 3800 tree. However, providing just the ``.dtb`` file is preferred.
3883 3801
3884 In order to use this variable, the 3802 In order to use this variable, the
3885 :ref:`kernel-devicetree <ref-classes-kernel-devicetree>` class must 3803 :ref:`kernel-devicetree <ref-classes-kernel-devicetree>` class must
@@ -4038,8 +3956,7 @@ system and gives an overview of their function and contents.
4038 3956
4039 .. note:: 3957 .. note::
4040 3958
4041 This variable replaces the deprecated 3959 This variable replaces the deprecated :term:`module_autoload`
4042 module_autoload
4043 variable. 3960 variable.
4044 3961
4045 You can use the ``KERNEL_MODULE_AUTOLOAD`` variable anywhere that it 3962 You can use the ``KERNEL_MODULE_AUTOLOAD`` variable anywhere that it
@@ -4234,9 +4151,8 @@ system and gives an overview of their function and contents.
4234 4151
4235 .. note:: 4152 .. note::
4236 4153
4237 Setting 4154 Setting ``LAYERSERIES_COMPAT`` is required by the Yocto Project
4238 LAYERSERIES_COMPAT 4155 Compatible version 2 standard.
4239 is required by the Yocto Project Compatible version 2 standard.
4240 The OpenEmbedded build system produces a warning if the variable 4156 The OpenEmbedded build system produces a warning if the variable
4241 is not set for any given layer. 4157 is not set for any given layer.
4242 4158
@@ -4484,9 +4400,7 @@ system and gives an overview of their function and contents.
4484 .. note:: 4400 .. note::
4485 4401
4486 Adding additional Board Support Package (BSP) layers to your 4402 Adding additional Board Support Package (BSP) layers to your
4487 configuration adds new possible settings for 4403 configuration adds new possible settings for ``MACHINE``.
4488 MACHINE
4489 .
4490 4404
4491 :term:`MACHINE_ARCH` 4405 :term:`MACHINE_ARCH`
4492 Specifies the name of the machine-specific architecture. This 4406 Specifies the name of the machine-specific architecture. This
@@ -4551,13 +4465,10 @@ system and gives an overview of their function and contents.
4551 4465
4552 .. note:: 4466 .. note::
4553 4467
4554 In this example, the 4468 In this example, the ``kernel-module-ab123`` recipe needs to
4555 kernel-module-ab123 4469 explicitly set its :term:`PACKAGES` variable to ensure that BitBake
4556 recipe needs to explicitly set its 4470 does not use the kernel recipe's :term:`PACKAGES_DYNAMIC` variable to
4557 PACKAGES 4471 satisfy the dependency.
4558 variable to ensure that BitBake does not use the kernel recipe's
4559 PACKAGES_DYNAMIC
4560 variable to satisfy the dependency.
4561 4472
4562 Some examples of these machine essentials are flash, screen, 4473 Some examples of these machine essentials are flash, screen,
4563 keyboard, mouse, or touchscreen drivers (depending on the machine). 4474 keyboard, mouse, or touchscreen drivers (depending on the machine).
@@ -4625,8 +4536,7 @@ system and gives an overview of their function and contents.
4625 :term:`IMAGE_FEATURES` variables. 4536 :term:`IMAGE_FEATURES` variables.
4626 4537
4627 For a list of hardware features supported by the Yocto Project as 4538 For a list of hardware features supported by the Yocto Project as
4628 shipped, see the "`Machine Features <#ref-features-machine>`__" 4539 shipped, see the ":ref:`ref-features-machine`" section.
4629 section.
4630 4540
4631 :term:`MACHINE_FEATURES_BACKFILL` 4541 :term:`MACHINE_FEATURES_BACKFILL`
4632 Features to be added to ``MACHINE_FEATURES`` if not also present in 4542 Features to be added to ``MACHINE_FEATURES`` if not also present in
@@ -4635,15 +4545,13 @@ system and gives an overview of their function and contents.
4635 This variable is set in the ``meta/conf/bitbake.conf`` file. It is 4545 This variable is set in the ``meta/conf/bitbake.conf`` file. It is
4636 not intended to be user-configurable. It is best to just reference 4546 not intended to be user-configurable. It is best to just reference
4637 the variable to see which machine features are being backfilled for 4547 the variable to see which machine features are being backfilled for
4638 all machine configurations. See the "`Feature 4548 all machine configurations. See the ":ref:`ref-features-backfill`"
4639 Backfilling <#ref-features-backfill>`__" section for more 4549 section for more information.
4640 information.
4641 4550
4642 :term:`MACHINE_FEATURES_BACKFILL_CONSIDERED` 4551 :term:`MACHINE_FEATURES_BACKFILL_CONSIDERED`
4643 Features from ``MACHINE_FEATURES_BACKFILL`` that should not be 4552 Features from ``MACHINE_FEATURES_BACKFILL`` that should not be
4644 backfilled (i.e. added to ``MACHINE_FEATURES``) during the build. See 4553 backfilled (i.e. added to ``MACHINE_FEATURES``) during the build. See
4645 the "`Feature Backfilling <#ref-features-backfill>`__" section for 4554 the ":ref:`ref-features-backfill`" section for more information.
4646 more information.
4647 4555
4648 :term:`MACHINEOVERRIDES` 4556 :term:`MACHINEOVERRIDES`
4649 A colon-separated list of overrides that apply to the current 4557 A colon-separated list of overrides that apply to the current
@@ -4697,16 +4605,10 @@ system and gives an overview of their function and contents.
4697 4605
4698 .. note:: 4606 .. note::
4699 4607
4700 The "ML" in 4608 The "ML" in ``MLPREFIX`` stands for "MultiLib". This representation is
4701 MLPREFIX 4609 historical and comes from a time when ``nativesdk`` was a suffix
4702 stands for "MultiLib". This representation is historical and comes 4610 rather than a prefix on the recipe name. When ``nativesdk`` was turned
4703 from a time when 4611 into a prefix, it made sense to set ``MLPREFIX`` for it as well.
4704 nativesdk
4705 was a suffix rather than a prefix on the recipe name. When
4706 nativesdk
4707 was turned into a prefix, it made sense to set
4708 MLPREFIX
4709 for it as well.
4710 4612
4711 To help understand when ``MLPREFIX`` might be needed, consider when 4613 To help understand when ``MLPREFIX`` might be needed, consider when
4712 :term:`BBCLASSEXTEND` is used to provide a 4614 :term:`BBCLASSEXTEND` is used to provide a
@@ -4891,7 +4793,7 @@ system and gives an overview of their function and contents.
4891 4793
4892 Some recommended packages might be required for certain system 4794 Some recommended packages might be required for certain system
4893 functionality, such as kernel modules. It is up to you to add 4795 functionality, such as kernel modules. It is up to you to add
4894 packages with the IMAGE_INSTALL variable. 4796 packages with the :term:`IMAGE_INSTALL` variable.
4895 4797
4896 Support for this variable exists only when using the IPK and RPM 4798 Support for this variable exists only when using the IPK and RPM
4897 packaging backend. Support does not exist for DEB. 4799 packaging backend. Support does not exist for DEB.
@@ -4969,7 +4871,7 @@ system and gives an overview of their function and contents.
4969 :term:`OEROOT` 4871 :term:`OEROOT`
4970 The directory from which the top-level build environment setup script 4872 The directory from which the top-level build environment setup script
4971 is sourced. The Yocto Project provides a top-level build environment 4873 is sourced. The Yocto Project provides a top-level build environment
4972 setup script: ````` <#structure-core-script>`__. When you run this 4874 setup script: :ref:`structure-core-script`. When you run this
4973 script, the ``OEROOT`` variable resolves to the directory that 4875 script, the ``OEROOT`` variable resolves to the directory that
4974 contains the script. 4876 contains the script.
4975 4877
@@ -5020,14 +4922,10 @@ system and gives an overview of their function and contents.
5020 4922
5021 .. note:: 4923 .. note::
5022 4924
5023 An easy way to see what overrides apply is to search for 4925 An easy way to see what overrides apply is to search for ``OVERRIDES``
5024 OVERRIDES 4926 in the output of the ``bitbake -e`` command. See the
5025 in the output of the 4927 ":ref:`dev-debugging-viewing-variable-values`" section in the Yocto
5026 bitbake -e 4928 Project Development Tasks Manual for more information.
5027 command. See the "
5028 Viewing Variable Values
5029 " section in the Yocto Project Development Tasks Manual for more
5030 information.
5031 4929
5032 :term:`P` 4930 :term:`P`
5033 The recipe name and version. ``P`` is comprised of the following: 4931 The recipe name and version. ``P`` is comprised of the following:
@@ -5062,9 +4960,7 @@ system and gives an overview of their function and contents.
5062 4960
5063 .. note:: 4961 .. note::
5064 4962
5065 See 4963 See :term:`SDK_ARCH` for more information.
5066 SDK_ARCH
5067 for more information.
5068 4964
5069 However, if your recipe's output packages are built specific to the 4965 However, if your recipe's output packages are built specific to the
5070 target machine rather than generally for the architecture of the 4966 target machine rather than generally for the architecture of the
@@ -5098,8 +4994,7 @@ system and gives an overview of their function and contents.
5098 4994
5099 .. note:: 4995 .. note::
5100 4996
5101 While it is a legal option, the 4997 While it is a legal option, the ``package_tar``
5102 package_tar
5103 class has limited functionality due to no support for package 4998 class has limited functionality due to no support for package
5104 dependencies by that backend. Therefore, it is recommended that 4999 dependencies by that backend. Therefore, it is recommended that
5105 you do not use it. 5000 you do not use it.
@@ -5209,8 +5104,7 @@ system and gives an overview of their function and contents.
5209 5104
5210 .. note:: 5105 .. note::
5211 5106
5212 You can use the 5107 You can use the ``PACKAGE_FEEDS_ARCHS``
5213 PACKAGE_FEEDS_ARCHS
5214 variable to whitelist specific package architectures. If you do 5108 variable to whitelist specific package architectures. If you do
5215 not need to whitelist specific architectures, which is a common 5109 not need to whitelist specific architectures, which is a common
5216 case, you can omit this variable. Omitting the variable results in 5110 case, you can omit this variable. Omitting the variable results in
@@ -5228,7 +5122,8 @@ system and gives an overview of their function and contents.
5228 PACKAGE_FEED_ARCHS = "all core2-64" 5122 PACKAGE_FEED_ARCHS = "all core2-64"
5229 5123
5230 Given these settings, the resulting package feeds are as follows: 5124 Given these settings, the resulting package feeds are as follows:
5231 :: 5125
5126 .. code-block:: none
5232 5127
5233 https://example.com/packagerepos/release/rpm/all 5128 https://example.com/packagerepos/release/rpm/all
5234 https://example.com/packagerepos/release/rpm/core2-64 5129 https://example.com/packagerepos/release/rpm/core2-64
@@ -5257,7 +5152,8 @@ system and gives an overview of their function and contents.
5257 PACKAGE_FEED_ARCHS = "all core2-64" 5152 PACKAGE_FEED_ARCHS = "all core2-64"
5258 5153
5259 Given these settings, the resulting package feeds are as follows: 5154 Given these settings, the resulting package feeds are as follows:
5260 :: 5155
5156 .. code-block:: none
5261 5157
5262 https://example.com/packagerepos/release/rpm/all 5158 https://example.com/packagerepos/release/rpm/all
5263 https://example.com/packagerepos/release/rpm/core2-64 5159 https://example.com/packagerepos/release/rpm/core2-64
@@ -5286,7 +5182,8 @@ system and gives an overview of their function and contents.
5286 PACKAGE_FEED_ARCHS = "all core2-64" 5182 PACKAGE_FEED_ARCHS = "all core2-64"
5287 5183
5288 Given these settings, the resulting package feeds are as follows: 5184 Given these settings, the resulting package feeds are as follows:
5289 :: 5185
5186 .. code-block:: none
5290 5187
5291 https://example.com/packagerepos/release/rpm/all 5188 https://example.com/packagerepos/release/rpm/all
5292 https://example.com/packagerepos/release/rpm/core2-64 5189 https://example.com/packagerepos/release/rpm/core2-64
@@ -5308,8 +5205,7 @@ system and gives an overview of their function and contents.
5308 general, you should use the 5205 general, you should use the
5309 :term:`IMAGE_INSTALL` variable to specify 5206 :term:`IMAGE_INSTALL` variable to specify
5310 packages for installation. The exception to this is when working with 5207 packages for installation. The exception to this is when working with
5311 the 5208 the :ref:`core-image-minimal-initramfs <ref-manual/ref-images:images>`
5312 ```core-image-minimal-initramfs`` <#images-core-image-minimal-initramfs>`__
5313 image. When working with an initial RAM filesystem (initramfs) image, 5209 image. When working with an initial RAM filesystem (initramfs) image,
5314 use the ``PACKAGE_INSTALL`` variable. For information on creating an 5210 use the ``PACKAGE_INSTALL`` variable. For information on creating an
5315 initramfs, see the ":ref:`building-an-initramfs-image`" section 5211 initramfs, see the ":ref:`building-an-initramfs-image`" section
@@ -5424,8 +5320,11 @@ system and gives an overview of their function and contents.
5424 block through an append file except you edit your ``local.conf`` 5320 block through an append file except you edit your ``local.conf``
5425 or ``mydistro.conf`` file. As with append files previously 5321 or ``mydistro.conf`` file. As with append files previously
5426 described, you can either completely override the variable: 5322 described, you can either completely override the variable:
5427 PACKAGECONFIG_pn-recipename = "f4 f5" Or, you can just amend the 5323 ::
5428 variable: 5324
5325 PACKAGECONFIG_pn-recipename = "f4 f5"
5326
5327 Or, you can just amend the variable:
5429 :: 5328 ::
5430 5329
5431 PACKAGECONFIG_append_pn-recipename = " f4" 5330 PACKAGECONFIG_append_pn-recipename = " f4"
@@ -5511,17 +5410,9 @@ system and gives an overview of their function and contents.
5511 5410
5512 .. note:: 5411 .. note::
5513 5412
5514 In order for 5413 In order for ``PARALLEL_MAKE`` to be effective, ``make`` must be
5515 PARALLEL_MAKE 5414 called with ``${``\ :term:`EXTRA_OEMAKE`\ ``}``. An easy way to ensure
5516 to be effective, 5415 this is to use the ``oe_runmake`` function.
5517 make
5518 must be called with
5519 ${
5520 EXTRA_OEMAKE
5521 }
5522 . An easy way to ensure this is to use the
5523 oe_runmake
5524 function.
5525 5416
5526 By default, the OpenEmbedded build system automatically sets this 5417 By default, the OpenEmbedded build system automatically sets this
5527 variable to be equal to the number of cores the build system uses. 5418 variable to be equal to the number of cores the build system uses.
@@ -5529,14 +5420,11 @@ system and gives an overview of their function and contents.
5529 .. note:: 5420 .. note::
5530 5421
5531 If the software being built experiences dependency issues during 5422 If the software being built experiences dependency issues during
5532 the 5423 the ``do_compile`` task that result in race conditions, you can clear
5533 do_compile 5424 the ``PARALLEL_MAKE`` variable within the recipe as a workaround. For
5534 task that result in race conditions, you can clear the 5425 information on addressing race conditions, see the
5535 PARALLEL_MAKE 5426 ":ref:`dev-manual/dev-manual-common-tasks:debugging parallel make races`"
5536 variable within the recipe as a workaround. For information on 5427 section in the Yocto Project Development Tasks Manual.
5537 addressing race conditions, see the "
5538 Debugging Parallel Make Races
5539 " section in the Yocto Project Development Tasks Manual.
5540 5428
5541 For single socket systems (i.e. one CPU), you should not have to 5429 For single socket systems (i.e. one CPU), you should not have to
5542 override this variable to gain optimal parallelism during builds. 5430 override this variable to gain optimal parallelism during builds.
@@ -5623,9 +5511,7 @@ system and gives an overview of their function and contents.
5623 5511
5624 .. note:: 5512 .. note::
5625 5513
5626 When using the 5514 When using the ``PKG`` variable, you must use a package name override.
5627 PKG
5628 variable, you must use a package name override.
5629 5515
5630 For example, when the :ref:`debian <ref-classes-debian>` class 5516 For example, when the :ref:`debian <ref-classes-debian>` class
5631 renames the output package, it does so by setting 5517 renames the output package, it does so by setting
@@ -5768,14 +5654,11 @@ system and gives an overview of their function and contents.
5768 5654
5769 .. note:: 5655 .. note::
5770 5656
5771 The OpenEmbedded build system does not need the aid of 5657 The OpenEmbedded build system does not need the aid of ``PR``
5772 PR
5773 to know when to rebuild a recipe. The build system uses the task 5658 to know when to rebuild a recipe. The build system uses the task
5774 input checksums 5659 :ref:`input checksums <overview-checksums>` along with the
5775 along with the 5660 :ref:`stamp <structure-build-tmp-stamps>` and
5776 stamp 5661 :ref:`overview-manual/overview-manual-concepts:shared state cache`
5777 and
5778 shared state cache
5779 mechanisms. 5662 mechanisms.
5780 5663
5781 The ``PR`` variable primarily becomes significant when a package 5664 The ``PR`` variable primarily becomes significant when a package
@@ -5790,8 +5673,7 @@ system and gives an overview of their function and contents.
5790 5673
5791 .. note:: 5674 .. note::
5792 5675
5793 PR 5676 ``PR`` does not need to be increased for changes that do not change the
5794 does not need to be increased for changes that do not change the
5795 package contents or metadata. 5677 package contents or metadata.
5796 5678
5797 Because manually managing ``PR`` can be cumbersome and error-prone, 5679 Because manually managing ``PR`` can be cumbersome and error-prone,
@@ -5826,17 +5708,11 @@ system and gives an overview of their function and contents.
5826 5708
5827 .. note:: 5709 .. note::
5828 5710
5829 If you use a 5711 If you use a ``virtual/\*`` item with ``PREFERRED_PROVIDER``, then any
5830 virtual/\* 5712 recipe that :term:`PROVIDES` that item but is not selected (defined)
5831 item with 5713 by ``PREFERRED_PROVIDER`` is prevented from building, which is usually
5832 PREFERRED_PROVIDER 5714 desirable since this mechanism is designed to select between mutually
5833 , then any recipe that 5715 exclusive alternative providers.
5834 PROVIDES
5835 that item but is not selected (defined) by
5836 PREFERRED_PROVIDER
5837 is prevented from building, which is usually desirable since this
5838 mechanism is designed to select between mutually exclusive
5839 alternative providers.
5840 5716
5841 :term:`PREFERRED_VERSION` 5717 :term:`PREFERRED_VERSION`
5842 If multiple versions of recipes exist, this variable determines which 5718 If multiple versions of recipes exist, this variable determines which
@@ -5897,8 +5773,8 @@ system and gives an overview of their function and contents.
5897 5773
5898 .. note:: 5774 .. note::
5899 5775
5900 The \_forcevariable override is not handled specially. This override 5776 The ``\_forcevariable`` override is not handled specially. This override
5901 only works because the default value of OVERRIDES includes "forcevariable". 5777 only works because the default value of ``OVERRIDES`` includes "forcevariable".
5902 5778
5903 :term:`PREMIRRORS` 5779 :term:`PREMIRRORS`
5904 Specifies additional paths from which the OpenEmbedded build system 5780 Specifies additional paths from which the OpenEmbedded build system
@@ -5988,9 +5864,7 @@ system and gives an overview of their function and contents.
5988 .. note:: 5864 .. note::
5989 5865
5990 Given that a recipe's own recipe name is already implicitly in its 5866 Given that a recipe's own recipe name is already implicitly in its
5991 own 5867 own PROVIDES list, it is unnecessary to add aliases with the "+=" operator;
5992 PROVIDES
5993 list, it is unnecessary to add aliases with the "+=" operator;
5994 using a simple assignment will be sufficient. In other words, 5868 using a simple assignment will be sufficient. In other words,
5995 while you could write: 5869 while you could write:
5996 :: 5870 ::
@@ -6122,8 +5996,15 @@ system and gives an overview of their function and contents.
6122 5996
6123 RCONFLICTS_${PN} = "package (operator version)" 5997 RCONFLICTS_${PN} = "package (operator version)"
6124 5998
6125 For ``operator``, you can specify the following: = < > <= 5999 For ``operator``, you can specify the following:
6126 >= For example, the following sets up a dependency on version 1.2 or 6000
6001 - =
6002 - <
6003 - >
6004 - <=
6005 - >=
6006
6007 For example, the following sets up a dependency on version 1.2 or
6127 greater of the package ``foo``: 6008 greater of the package ``foo``:
6128 :: 6009 ::
6129 6010
@@ -6149,7 +6030,7 @@ system and gives an overview of their function and contents.
6149 The practical effect of the above ``RDEPENDS`` assignment is that 6030 The practical effect of the above ``RDEPENDS`` assignment is that
6150 ``bar`` and ``baz`` will be declared as dependencies inside the 6031 ``bar`` and ``baz`` will be declared as dependencies inside the
6151 package ``foo`` when it is written out by one of the 6032 package ``foo`` when it is written out by one of the
6152 ```do_package_write_*`` <#ref-tasks-package_write_deb>`__ tasks. 6033 :ref:`do_package_write_\* <ref-tasks-package_write_deb>` tasks.
6153 Exactly how this is done depends on which package format is used, 6034 Exactly how this is done depends on which package format is used,
6154 which is determined by 6035 which is determined by
6155 :term:`PACKAGE_CLASSES`. When the 6036 :term:`PACKAGE_CLASSES`. When the
@@ -6188,19 +6069,11 @@ system and gives an overview of their function and contents.
6188 6069
6189 .. note:: 6070 .. note::
6190 6071
6191 RDEPENDS_${PN}-dev 6072 ``RDEPENDS_${PN}-dev`` includes ``${``\ :term:`PN`\ ``}``
6192 includes
6193 ${
6194 PN
6195 }
6196 by default. This default is set in the BitBake configuration file 6073 by default. This default is set in the BitBake configuration file
6197 ( 6074 (``meta/conf/bitbake.conf``). Be careful not to accidentally remove
6198 meta/conf/bitbake.conf 6075 ``${PN}`` when modifying ``RDEPENDS_${PN}-dev``. Use the "+=" operator
6199 ). Be careful not to accidentally remove 6076 rather than the "=" operator.
6200 ${PN}
6201 when modifying
6202 RDEPENDS_${PN}-dev
6203 . Use the "+=" operator rather than the "=" operator.
6204 6077
6205 The package names you use with ``RDEPENDS`` must appear as they would 6078 The package names you use with ``RDEPENDS`` must appear as they would
6206 in the ``PACKAGES`` variable. The :term:`PKG` variable 6079 in the ``PACKAGES`` variable. The :term:`PKG` variable
@@ -6219,14 +6092,20 @@ system and gives an overview of their function and contents.
6219 6092
6220 RDEPENDS_${PN} = "package (operator version)" 6093 RDEPENDS_${PN} = "package (operator version)"
6221 6094
6222 For operator, you can specify the following: = < > <= >= For version, 6095 For ``operator``, you can specify the following:
6223 provide the version number. 6096
6097 - =
6098 - <
6099 - >
6100 - <=
6101 - >=
6102
6103 For version, provide the version number.
6224 6104
6225 .. note:: 6105 .. note::
6226 6106
6227 You can use 6107 You can use ``EXTENDPKGV`` to provide a full package version
6228 EXTENDPKGV 6108 specification.
6229 to provide a full package version specification.
6230 6109
6231 For example, the following sets up a dependency on version 1.2 or 6110 For example, the following sets up a dependency on version 1.2 or
6232 greater of the package ``foo``: 6111 greater of the package ``foo``:
@@ -6355,9 +6234,7 @@ system and gives an overview of their function and contents.
6355 6234
6356 .. note:: 6235 .. note::
6357 6236
6358 A package's own name is implicitly already in its 6237 A package's own name is implicitly already in its ``RPROVIDES`` list.
6359 RPROVIDES
6360 list.
6361 6238
6362 As with all package-controlling variables, you must always use the 6239 As with all package-controlling variables, you must always use the
6363 variable in conjunction with a package name override. Here is an 6240 variable in conjunction with a package name override. Here is an
@@ -6546,13 +6423,8 @@ system and gives an overview of their function and contents.
6546 6423
6547 .. note:: 6424 .. note::
6548 6425
6549 The 6426 The ``SDK_DIR`` directory is a temporary directory as it is part of
6550 SDK_DIR 6427 ``WORKDIR``. The final output directory is :term:`SDK_DEPLOY`.
6551 directory is a temporary directory as it is part of
6552 WORKDIR
6553 . The final output directory is
6554 SDK_DEPLOY
6555 .
6556 6428
6557 :term:`SDK_EXT_TYPE` 6429 :term:`SDK_EXT_TYPE`
6558 Controls whether or not shared state artifacts are copied into the 6430 Controls whether or not shared state artifacts are copied into the
@@ -6563,9 +6435,8 @@ system and gives an overview of their function and contents.
6563 .. note:: 6435 .. note::
6564 6436
6565 If you set the variable to "minimal", you need to ensure 6437 If you set the variable to "minimal", you need to ensure
6566 SSTATE_MIRRORS 6438 :term:`SSTATE_MIRRORS` is set in the SDK's configuration to enable the
6567 is set in the SDK's configuration to enable the artifacts to be 6439 artifacts to be fetched as needed.
6568 fetched as needed.
6569 6440
6570 :term:`SDK_HOST_MANIFEST` 6441 :term:`SDK_HOST_MANIFEST`
6571 The manifest file for the host part of the SDK. This file lists all 6442 The manifest file for the host part of the SDK. This file lists all
@@ -6594,8 +6465,7 @@ system and gives an overview of their function and contents.
6594 6465
6595 .. note:: 6466 .. note::
6596 6467
6597 Enabling the 6468 Enabling the ``SDK_INCLUDE_PKGDATA``
6598 SDK_INCLUDE_PKGDATA
6599 variable significantly increases build time because all of world 6469 variable significantly increases build time because all of world
6600 needs to be built. Enabling the variable also slightly increases 6470 needs to be built. Enabling the variable also slightly increases
6601 the size of the extensible SDK. 6471 the size of the extensible SDK.
@@ -6702,9 +6572,9 @@ system and gives an overview of their function and contents.
6702 6572
6703 .. note:: 6573 .. note::
6704 6574
6705 The SDK_OUTPUT directory is a temporary directory as it is part of 6575 The ``SDK_OUTPUT`` directory is a temporary directory as it is part of
6706 WORKDIR by way of SDK_DIR. The final output directory is 6576 :term:`WORKDIR` by way of :term:`SDK_DIR`. The final output directory is
6707 SDK_DEPLOY. 6577 :term:`SDK_DEPLOY`.
6708 6578
6709 :term:`SDK_PACKAGE_ARCHS` 6579 :term:`SDK_PACKAGE_ARCHS`
6710 Specifies a list of architectures compatible with the SDK machine. 6580 Specifies a list of architectures compatible with the SDK machine.
@@ -6859,8 +6729,7 @@ system and gives an overview of their function and contents.
6859 6729
6860 .. note:: 6730 .. note::
6861 6731
6862 You cannot set the 6732 You cannot set the ``SDKMACHINE``
6863 SDKMACHINE
6864 variable in your distribution configuration file. If you do, the 6733 variable in your distribution configuration file. If you do, the
6865 configuration will not take affect. 6734 configuration will not take affect.
6866 6735
@@ -6900,11 +6769,8 @@ system and gives an overview of their function and contents.
6900 6769
6901 .. note:: 6770 .. note::
6902 6771
6903 The 6772 The ``SERIAL_CONSOLE`` variable is deprecated. Please use the
6904 SERIAL_CONSOLE 6773 :term:`SERIAL_CONSOLES` variable.
6905 variable is deprecated. Please use the
6906 SERIAL_CONSOLES
6907 variable.
6908 6774
6909 :term:`SERIAL_CONSOLES` 6775 :term:`SERIAL_CONSOLES`
6910 Defines a serial console (TTY) to enable using 6776 Defines a serial console (TTY) to enable using
@@ -6996,11 +6862,8 @@ system and gives an overview of their function and contents.
6996 6862
6997 .. note:: 6863 .. note::
6998 6864
6999 You must include 6865 You must include ``conf/machine/include/soc-family.inc`` for this
7000 conf/machine/include/soc-family.inc 6866 variable to appear in :term:`MACHINEOVERRIDES`.
7001 for this variable to appear in
7002 MACHINEOVERRIDES
7003 .
7004 6867
7005 :term:`SOLIBS` 6868 :term:`SOLIBS`
7006 Defines the suffix for shared libraries used on the target platform. 6869 Defines the suffix for shared libraries used on the target platform.
@@ -7033,8 +6896,7 @@ system and gives an overview of their function and contents.
7033 6896
7034 .. note:: 6897 .. note::
7035 6898
7036 Do not set the 6899 Do not set the ``SOURCE_MIRROR_FETCH``
7037 SOURCE_MIRROR_FETCH
7038 variable unless you are creating a source mirror. In other words, 6900 variable unless you are creating a source mirror. In other words,
7039 do not set the variable during a normal build. 6901 do not set the variable during a normal build.
7040 6902
@@ -7053,9 +6915,7 @@ system and gives an overview of their function and contents.
7053 6915
7054 .. note:: 6916 .. note::
7055 6917
7056 You can specify only a single URL in 6918 You can specify only a single URL in ``SOURCE_MIRROR_URL``.
7057 SOURCE_MIRROR_URL
7058 .
7059 6919
7060 :term:`SPDXLICENSEMAP` 6920 :term:`SPDXLICENSEMAP`
7061 Maps commonly used license names to their SPDX counterparts found in 6921 Maps commonly used license names to their SPDX counterparts found in
@@ -7283,13 +7143,10 @@ system and gives an overview of their function and contents.
7283 .. note:: 7143 .. note::
7284 7144
7285 For information on limitations when inheriting the latest revision 7145 For information on limitations when inheriting the latest revision
7286 of software using 7146 of software using ``SRCREV``, see the :term:`AUTOREV` variable
7287 SRCREV 7147 description and the
7288 , see the 7148 ":ref:`automatically-incrementing-a-binary-package-revision-number`"
7289 AUTOREV 7149 section, which is in the Yocto Project Development Tasks Manual.
7290 variable description and the "
7291 Automatically Incrementing a Binary Package Revision Number
7292 " section, which is in the Yocto Project Development Tasks Manual.
7293 7150
7294 :term:`SSTATE_DIR` 7151 :term:`SSTATE_DIR`
7295 The directory for the shared state cache. 7152 The directory for the shared state cache.
@@ -7379,13 +7236,9 @@ system and gives an overview of their function and contents.
7379 .. note:: 7236 .. note::
7380 7237
7381 This style of build configuration has been largely replaced by 7238 This style of build configuration has been largely replaced by
7382 pkg-config 7239 ``pkg-config``. Consequently, if ``pkg-config`` is supported by the
7383 . Consequently, if 7240 library to which you are linking, it is recommended you use
7384 pkg-config 7241 ``pkg-config`` instead of a provided configuration script.
7385 is supported by the library to which you are linking, it is
7386 recommended you use
7387 pkg-config
7388 instead of a provided configuration script.
7389 7242
7390 :term:`STAGING_BINDIR_NATIVE` 7243 :term:`STAGING_BINDIR_NATIVE`
7391 Specifies the path to the ``/usr/bin`` subdirectory of the sysroot 7244 Specifies the path to the ``/usr/bin`` subdirectory of the sysroot
@@ -7414,15 +7267,10 @@ system and gives an overview of their function and contents.
7414 7267
7415 .. note:: 7268 .. note::
7416 7269
7417 Recipes should never write files directly under the 7270 Recipes should never write files directly under the ``STAGING_DIR``
7418 STAGING_DIR
7419 directory because the OpenEmbedded build system manages the 7271 directory because the OpenEmbedded build system manages the
7420 directory automatically. Instead, files should be installed to 7272 directory automatically. Instead, files should be installed to
7421 ${ 7273 ``${``\ :term:`D`\ ``}`` within your recipe's :ref:`ref-tasks-install`
7422 D
7423 }
7424 within your recipe's
7425 do_install
7426 task and then the OpenEmbedded build system will stage a subset of 7274 task and then the OpenEmbedded build system will stage a subset of
7427 those files into the sysroot. 7275 those files into the sysroot.
7428 7276
@@ -7668,12 +7516,9 @@ system and gives an overview of their function and contents.
7668 7516
7669 .. note:: 7517 .. note::
7670 7518
7671 Programs built by 7519 Programs built by ``-native`` recipes run directly from the sysroot
7672 -native 7520 (:term:`STAGING_DIR_NATIVE`), which is why additional directories
7673 recipes run directly from the sysroot ( 7521 containing program executables and supporting files need to be staged.
7674 STAGING_DIR_NATIVE
7675 ), which is why additional directories containing program
7676 executables and supporting files need to be staged.
7677 7522
7678 :term:`SYSROOT_PREPROCESS_FUNCS` 7523 :term:`SYSROOT_PREPROCESS_FUNCS`
7679 A list of functions to execute after files are staged into the 7524 A list of functions to execute after files are staged into the
@@ -7819,14 +7664,9 @@ system and gives an overview of their function and contents.
7819 7664
7820 .. note:: 7665 .. note::
7821 7666
7822 It is a common workaround to append 7667 It is a common workaround to append :term:`LDFLAGS` to
7823 LDFLAGS 7668 ``TARGET_CC_ARCH`` in recipes that build software for the target that
7824 to 7669 would not otherwise respect the exported ``LDFLAGS`` variable.
7825 TARGET_CC_ARCH
7826 in recipes that build software for the target that would not
7827 otherwise respect the exported
7828 LDFLAGS
7829 variable.
7830 7670
7831 :term:`TARGET_CC_KERNEL_ARCH` 7671 :term:`TARGET_CC_KERNEL_ARCH`
7832 This is a specific kernel compiler flag for a CPU or Application 7672 This is a specific kernel compiler flag for a CPU or Application
@@ -7929,7 +7769,7 @@ system and gives an overview of their function and contents.
7929 7769
7930 .. note:: 7770 .. note::
7931 7771
7932 You do not need to set the TARGET_SYS variable yourself. 7772 You do not need to set the ``TARGET_SYS`` variable yourself.
7933 7773
7934 Consider these two examples: 7774 Consider these two examples:
7935 7775
@@ -7973,16 +7813,13 @@ system and gives an overview of their function and contents.
7973 7813
7974 .. note:: 7814 .. note::
7975 7815
7976 If 7816 If ``TCMODE`` is set to a value other than "default", then it is your
7977 TCMODE
7978 is set to a value other than "default", then it is your
7979 responsibility to ensure that the toolchain is compatible with the 7817 responsibility to ensure that the toolchain is compatible with the
7980 default toolchain. Using older or newer versions of these 7818 default toolchain. Using older or newer versions of these
7981 components might cause build problems. See the Release Notes for 7819 components might cause build problems. See the Release Notes for
7982 the Yocto Project release for the specific components with which 7820 the Yocto Project release for the specific components with which
7983 the toolchain must be compatible. To access the Release Notes, go 7821 the toolchain must be compatible. To access the Release Notes, go
7984 to the 7822 to the :yocto_home:`Downloads </software-overview/downloads>`
7985 Downloads
7986 page on the Yocto Project website and click on the "RELEASE 7823 page on the Yocto Project website and click on the "RELEASE
7987 INFORMATION" link for the appropriate release. 7824 INFORMATION" link for the appropriate release.
7988 7825
@@ -8026,11 +7863,8 @@ system and gives an overview of their function and contents.
8026 7863
8027 .. note:: 7864 .. note::
8028 7865
8029 Actual test results reside in the task log ( 7866 Actual test results reside in the task log (``log.do_testimage``),
8030 log.do_testimage 7867 which is in the ``${WORKDIR}/temp/`` directory.
8031 ), which is in the
8032 ${WORKDIR}/temp/
8033 directory.
8034 7868
8035 :term:`TEST_POWERCONTROL_CMD` 7869 :term:`TEST_POWERCONTROL_CMD`
8036 For automated hardware testing, specifies the command to use to 7870 For automated hardware testing, specifies the command to use to
@@ -8089,12 +7923,9 @@ system and gives an overview of their function and contents.
8089 7923
8090 .. note:: 7924 .. note::
8091 7925
8092 The 7926 The ``TEST_SERVER_IP`` variable is only used for a small number of
8093 TEST_SERVER_IP 7927 tests such as the "dnf" test suite, which needs to download packages
8094 variable is only used for a small number of tests such as the 7928 from ``WORKDIR/oe-rootfs-repo``.
8095 "dnf" test suite, which needs to download packages from
8096 WORKDIR/oe-rootfs-repo
8097 .
8098 7929
8099 :term:`TEST_SUITES` 7930 :term:`TEST_SUITES`
8100 An ordered list of tests (modules) to run against an image when 7931 An ordered list of tests (modules) to run against an image when
@@ -8169,8 +8000,7 @@ system and gives an overview of their function and contents.
8169 .. note:: 8000 .. note::
8170 8001
8171 This argument is defined in 8002 This argument is defined in
8172 meta/lib/oeqa/controllers/simpleremote.py 8003 ``meta/lib/oeqa/controllers/simpleremote.py``.
8173 .
8174 8004
8175 For information on running tests on hardware, see the 8005 For information on running tests on hardware, see the
8176 ":ref:`hardware-image-enabling-tests`" 8006 ":ref:`hardware-image-enabling-tests`"
@@ -8304,7 +8134,7 @@ system and gives an overview of their function and contents.
8304 :term:`TOPDIR` 8134 :term:`TOPDIR`
8305 The top-level :term:`Build Directory`. BitBake 8135 The top-level :term:`Build Directory`. BitBake
8306 automatically sets this variable when you initialize your build 8136 automatically sets this variable when you initialize your build
8307 environment using ````` <#structure-core-script>`__. 8137 environment using :ref:`structure-core-script`.
8308 8138
8309 :term:`TRANSLATED_TARGET_ARCH` 8139 :term:`TRANSLATED_TARGET_ARCH`
8310 A sanitized version of :term:`TARGET_ARCH`. This 8140 A sanitized version of :term:`TARGET_ARCH`. This
@@ -8728,20 +8558,11 @@ system and gives an overview of their function and contents.
8728 .. note:: 8558 .. note::
8729 8559
8730 There is a difference in behavior between setting 8560 There is a difference in behavior between setting
8731 USERADD_ERROR_DYNAMIC 8561 ``USERADD_ERROR_DYNAMIC`` to ``error`` and setting it to ``warn``.
8732 to 8562 When it is set to ``warn``, the build system will report a warning for
8733 error 8563 every undefined ``uid`` and ``gid`` in any recipe. But when it is set
8734 and setting it to 8564 to ``error``, it will only report errors for recipes that are actually
8735 warn 8565 built.
8736 . When it is set to
8737 warn
8738 , the build system will report a warning for every undefined
8739 uid
8740 and
8741 gid
8742 in any recipe. But when it is set to
8743 error
8744 , it will only report errors for recipes that are actually built.
8745 This saves you from having to add static IDs for recipes that you 8566 This saves you from having to add static IDs for recipes that you
8746 know will never be built. 8567 know will never be built.
8747 8568
@@ -8761,12 +8582,8 @@ system and gives an overview of their function and contents.
8761 8582
8762 .. note:: 8583 .. note::
8763 8584
8764 Setting the 8585 Setting the :term:`USERADDEXTENSION` variable to "useradd-staticids"
8765 USERADDEXTENSION 8586 causes the build system to use static ``gid`` values.
8766 variable to "useradd-staticids" causes the build system to use
8767 static
8768 gid
8769 values.
8770 8587
8771 :term:`USERADD_PACKAGES` 8588 :term:`USERADD_PACKAGES`
8772 When inheriting the :ref:`useradd <ref-classes-useradd>` class, 8589 When inheriting the :ref:`useradd <ref-classes-useradd>` class,
@@ -8782,15 +8599,9 @@ system and gives an overview of their function and contents.
8782 8599
8783 .. note:: 8600 .. note::
8784 8601
8785 It follows that if you are going to use the 8602 It follows that if you are going to use the ``USERADD_PACKAGES``
8786 USERADD_PACKAGES 8603 variable, you need to set one or more of the :term:`USERADD_PARAM`,
8787 variable, you need to set one or more of the 8604 :term:`GROUPADD_PARAM`, or :term:`GROUPMEMS_PARAM` variables.
8788 USERADD_PARAM
8789 ,
8790 GROUPADD_PARAM
8791 , or
8792 GROUPMEMS_PARAM
8793 variables.
8794 8605
8795 :term:`USERADD_PARAM` 8606 :term:`USERADD_PARAM`
8796 When inheriting the :ref:`useradd <ref-classes-useradd>` class, 8607 When inheriting the :ref:`useradd <ref-classes-useradd>` class,
@@ -8824,12 +8635,8 @@ system and gives an overview of their function and contents.
8824 8635
8825 .. note:: 8636 .. note::
8826 8637
8827 Setting the 8638 Setting the :term:`USERADDEXTENSION` variable to "useradd-staticids"
8828 USERADDEXTENSION 8639 causes the build system to use static ``uid`` values.
8829 variable to "useradd-staticids" causes the build system to use
8830 static
8831 uid
8832 values.
8833 8640
8834 :term:`USERADDEXTENSION` 8641 :term:`USERADDEXTENSION`
8835 When set to "useradd-staticids", causes the OpenEmbedded build system 8642 When set to "useradd-staticids", causes the OpenEmbedded build system
@@ -8842,13 +8649,9 @@ system and gives an overview of their function and contents.
8842 8649
8843 .. note:: 8650 .. note::
8844 8651
8845 Setting this variable to use static 8652 Setting this variable to use static ``uid`` and ``gid``
8846 uid
8847 and
8848 gid
8849 values causes the OpenEmbedded build system to employ the 8653 values causes the OpenEmbedded build system to employ the
8850 useradd-staticids 8654 :ref:`ref-classes-useradd` class.
8851 class.
8852 8655
8853 If you use static ``uid`` and ``gid`` information, you must also 8656 If you use static ``uid`` and ``gid`` information, you must also
8854 specify the ``files/passwd`` and ``files/group`` files by setting the 8657 specify the ``files/passwd`` and ``files/group`` files by setting the
@@ -8919,22 +8722,13 @@ system and gives an overview of their function and contents.
8919 8722
8920 The actual directory depends on several things: 8723 The actual directory depends on several things:
8921 8724
8922 - TMPDIR 8725 - :term:`TMPDIR`: The top-level build output directory
8923 : The top-level build output directory 8726 - :term:`MULTIMACH_TARGET_SYS`: The target system identifier
8924 - MULTIMACH_TARGET_SYS 8727 - :term:`PN`: The recipe name
8925 : The target system identifier 8728 - :term:`EXTENDPE`: The epoch - (if :term:`PE` is not specified, which
8926 - PN 8729 is usually the case for most recipes, then `EXTENDPE` is blank)
8927 : The recipe name 8730 - :term:`PV`: The recipe version
8928 - EXTENDPE 8731 - :term:`PR`: The recipe revision
8929 : The epoch - (if
8930 PE
8931 is not specified, which is usually the case for most recipes, then
8932 EXTENDPE
8933 is blank)
8934 - PV
8935 : The recipe version
8936 - PR
8937 : The recipe revision
8938 8732
8939 As an example, assume a Source Directory top-level folder name 8733 As an example, assume a Source Directory top-level folder name
8940 ``poky``, a default Build Directory at ``poky/build``, and a 8734 ``poky``, a default Build Directory at ``poky/build``, and a