summaryrefslogtreecommitdiffstats
path: root/documentation/ref-manual/migration.rst
diff options
context:
space:
mode:
authorNicolas Dechesne <nicolas.dechesne@linaro.org>2020-07-24 16:27:54 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-09-17 10:09:33 +0100
commitc473fa229239752367c5d573160fc8738cf1907e (patch)
treef8520ba3aa3cf911333dbd31e38e9a52203a0285 /documentation/ref-manual/migration.rst
parent4cd953989de42c7a83f666c23e077d53b016a1f1 (diff)
downloadpoky-c473fa229239752367c5d573160fc8738cf1907e.tar.gz
sphinx: fix internal links
Many of the internal links were not converted probably from DocBook using pandoc. After looking at the various patterns, the follow series of 'naive' Python regexp were used to perform some additional automatic conversion. Also, since we rely on built-in glossary, all links to terms need to use the sphinx :term: syntax. This commit is generated using the following Python series of regexp: line = re.sub("`+(\w+)`* <(\&YOCTO_DOCS_REF_URL;)?#var-\\1>`__", ":term:`\\1`", line) line = re.sub("`+do_([a-z_]+)`* <(\&YOCTO_DOCS_REF_URL;)?#ref-tasks-\\1>`__", ":ref:`ref-tasks-\\1`", line) line = re.sub("`+([a-z_\-\*\.]+).bbclass`* <(\&YOCTO_DOCS_REF_URL;)?#ref-classes-\\1>`__", ":ref:`\\1.bbclass <ref-classes-\\1>`", line) line = re.sub("`+([a-z_\-\*\.]+)`* <(\&YOCTO_DOCS_REF_URL;)?#ref-classes-\\1>`__", ":ref:`\\1 <ref-classes-\\1>`", line) line = re.sub("`Source Directory <(\&YOCTO_DOCS_REF_URL;)?#source-directory>`__", ":term:`Source Directory`", line) line = re.sub("`Build Directory <(\&YOCTO_DOCS_REF_URL;)?#build-directory>`__", ":term:`Build Directory`", line) line = re.sub("`Metadata <(\&YOCTO_DOCS_REF_URL;)?#metadata>`__", ":term:`Metadata`", line) line = re.sub("`BitBake <(\&YOCTO_DOCS_REF_URL;)?#bitbake-term>`__", ":term:`BitBake`", line) line = re.sub("`Images <(\&YOCTO_DOCS_REF_URL;)?#ref-images>`__", ":ref:`ref-manual/ref-images:Images`", line) line = re.sub("`Classes <(\&YOCTO_DOCS_REF_URL;)?#ref-classes>`__", ":ref:`ref-manual/ref-classes:Classes`", line) line = re.sub("`workspace <(\&YOCTO_DOCS_REF_URL;)?#devtool-the-workspace-layer-structure>`__", ":ref:`devtool-the-workspace-layer-structure`", line) line = re.sub("`Open-?Embedded b?B?uild s?S?ystem <(\&YOCTO_DOCS_REF_URL;)?#build-system-term>`__", ":term:`OpenEmbedded Build System`", line) line = re.sub("`(OpenEmbedded-Core )?(\(?OE-Core\)? )?<(\&YOCTO_DOCS_REF_URL;)?#oe-core>`__", ":term:`OpenEmbedded-Core (OE-Core)`", line) It won't catch multiline strings, but it catches a very large number of occurences! (From yocto-docs rev: 3f537d17de5b1fb76ba3bee196481984a4826378) Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/ref-manual/migration.rst')
-rw-r--r--documentation/ref-manual/migration.rst508
1 files changed, 254 insertions, 254 deletions
diff --git a/documentation/ref-manual/migration.rst b/documentation/ref-manual/migration.rst
index 8a309d003b..b8d27f3325 100644
--- a/documentation/ref-manual/migration.rst
+++ b/documentation/ref-manual/migration.rst
@@ -68,7 +68,7 @@ Local Configuration
68------------------- 68-------------------
69 69
70Differences include changes for 70Differences include changes for
71```SSTATE_MIRRORS`` <#var-SSTATE_MIRRORS>`__ and ``bblayers.conf``. 71:term:`SSTATE_MIRRORS` and ``bblayers.conf``.
72 72
73.. _migration-1.3-sstate-mirrors: 73.. _migration-1.3-sstate-mirrors:
74 74
@@ -76,13 +76,13 @@ SSTATE_MIRRORS
76~~~~~~~~~~~~~~ 76~~~~~~~~~~~~~~
77 77
78The shared state cache (sstate-cache), as pointed to by 78The shared state cache (sstate-cache), as pointed to by
79```SSTATE_DIR`` <#var-SSTATE_DIR>`__, by default now has two-character 79:term:`SSTATE_DIR`, by default now has two-character
80subdirectories to prevent issues arising from too many files in the same 80subdirectories to prevent issues arising from too many files in the same
81directory. Also, native sstate-cache packages, which are built to run on 81directory. Also, native sstate-cache packages, which are built to run on
82the host system, will go into a subdirectory named using the distro ID 82the host system, will go into a subdirectory named using the distro ID
83string. If you copy the newly structured sstate-cache to a mirror 83string. If you copy the newly structured sstate-cache to a mirror
84location (either local or remote) and then point to it in 84location (either local or remote) and then point to it in
85```SSTATE_MIRRORS`` <#var-SSTATE_MIRRORS>`__, you need to append "PATH" 85:term:`SSTATE_MIRRORS`, you need to append "PATH"
86to the end of the mirror URL so that the path used by BitBake before the 86to the end of the mirror URL so that the path used by BitBake before the
87mirror substitution is appended to the path used to access the mirror. 87mirror substitution is appended to the path used to access the mirror.
88Here is an example: SSTATE_MIRRORS = "file://.\* 88Here is an example: SSTATE_MIRRORS = "file://.\*
@@ -138,7 +138,7 @@ four-space indentation.
138proto= in SRC_URI 138proto= in SRC_URI
139~~~~~~~~~~~~~~~~~ 139~~~~~~~~~~~~~~~~~
140 140
141Any use of ``proto=`` in ```SRC_URI`` <#var-SRC_URI>`__ needs to be 141Any use of ``proto=`` in :term:`SRC_URI` needs to be
142changed to ``protocol=``. In particular, this applies to the following 142changed to ``protocol=``. In particular, this applies to the following
143URIs: 143URIs:
144 144
@@ -161,7 +161,7 @@ nativesdk
161The suffix ``nativesdk`` is now implemented as a prefix, which 161The suffix ``nativesdk`` is now implemented as a prefix, which
162simplifies a lot of the packaging code for ``nativesdk`` recipes. All 162simplifies a lot of the packaging code for ``nativesdk`` recipes. All
163custom ``nativesdk`` recipes, which are relocatable packages that are 163custom ``nativesdk`` recipes, which are relocatable packages that are
164native to ```SDK_ARCH`` <#var-SDK_ARCH>`__, and any references need to 164native to :term:`SDK_ARCH`, and any references need to
165be updated to use ``nativesdk-*`` instead of ``*-nativesdk``. 165be updated to use ``nativesdk-*`` instead of ``*-nativesdk``.
166 166
167.. _migration-1.3-task-recipes: 167.. _migration-1.3-task-recipes:
@@ -179,8 +179,8 @@ recipes to ``packagegroup-*``, and change them to inherit
179``packagegroup`` instead of ``task``, as well as taking the opportunity 179``packagegroup`` instead of ``task``, as well as taking the opportunity
180to remove anything now handled by ``packagegroup.bbclass``, such as 180to remove anything now handled by ``packagegroup.bbclass``, such as
181providing ``-dev`` and ``-dbg`` packages, setting 181providing ``-dev`` and ``-dbg`` packages, setting
182```LIC_FILES_CHKSUM`` <#var-LIC_FILES_CHKSUM>`__, and so forth. See the 182:term:`LIC_FILES_CHKSUM`, and so forth. See the
183"```packagegroup.bbclass`` <#ref-classes-packagegroup>`__" section for 183":ref:`packagegroup.bbclass <ref-classes-packagegroup>`" section for
184further details. 184further details.
185 185
186.. _migration-1.3-image-features: 186.. _migration-1.3-image-features:
@@ -189,7 +189,7 @@ IMAGE_FEATURES
189~~~~~~~~~~~~~~ 189~~~~~~~~~~~~~~
190 190
191Image recipes that previously included "apps-console-core" in 191Image recipes that previously included "apps-console-core" in
192```IMAGE_FEATURES`` <#var-IMAGE_FEATURES>`__ should now include "splash" 192:term:`IMAGE_FEATURES` should now include "splash"
193instead to enable the boot-up splash screen. Retaining 193instead to enable the boot-up splash screen. Retaining
194"apps-console-core" will still include the splash screen but generates a 194"apps-console-core" will still include the splash screen but generates a
195warning. The "apps-x11-core" and "apps-x11-games" ``IMAGE_FEATURES`` 195warning. The "apps-x11-core" and "apps-x11-games" ``IMAGE_FEATURES``
@@ -202,7 +202,7 @@ Removed Recipes
202 202
203The following recipes have been removed. For most of them, it is 203The following recipes have been removed. For most of them, it is
204unlikely that you would have any references to them in your own 204unlikely that you would have any references to them in your own
205`Metadata <#metadata>`__. However, you should check your metadata 205:term:`Metadata`. However, you should check your metadata
206against this list to be sure: 206against this list to be sure:
207 207
208- *``libx11-trim``*: Replaced by ``libx11``, which has a negligible 208- *``libx11-trim``*: Replaced by ``libx11``, which has a negligible
@@ -247,7 +247,7 @@ Linux Kernel Naming
247------------------- 247-------------------
248 248
249The naming scheme for kernel output binaries has been changed to now 249The naming scheme for kernel output binaries has been changed to now
250include ```PE`` <#var-PE>`__ as part of the filename: 250include :term:`PE` as part of the filename:
251KERNEL_IMAGE_BASE_NAME ?= 251KERNEL_IMAGE_BASE_NAME ?=
252"${KERNEL_IMAGETYPE}-${PE}-${PV}-${PR}-${MACHINE}-${DATETIME}" 252"${KERNEL_IMAGETYPE}-${PE}-${PV}-${PR}-${MACHINE}-${DATETIME}"
253 253
@@ -276,13 +276,13 @@ Differences include the following:
276 a comment. 276 a comment.
277 277
278- *Package Name Overrides:* The runtime package specific variables 278- *Package Name Overrides:* The runtime package specific variables
279 ```RDEPENDS`` <#var-RDEPENDS>`__, 279 :term:`RDEPENDS`,
280 ```RRECOMMENDS`` <#var-RRECOMMENDS>`__, 280 :term:`RRECOMMENDS`,
281 ```RSUGGESTS`` <#var-RSUGGESTS>`__, 281 :term:`RSUGGESTS`,
282 ```RPROVIDES`` <#var-RPROVIDES>`__, 282 :term:`RPROVIDES`,
283 ```RCONFLICTS`` <#var-RCONFLICTS>`__, 283 :term:`RCONFLICTS`,
284 ```RREPLACES`` <#var-RREPLACES>`__, ```FILES`` <#var-FILES>`__, 284 :term:`RREPLACES`, :term:`FILES`,
285 ```ALLOW_EMPTY`` <#var-ALLOW_EMPTY>`__, and the pre, post, install, 285 :term:`ALLOW_EMPTY`, and the pre, post, install,
286 and uninstall script functions ``pkg_preinst``, ``pkg_postinst``, 286 and uninstall script functions ``pkg_preinst``, ``pkg_postinst``,
287 ``pkg_prerm``, and ``pkg_postrm`` should always have a package name 287 ``pkg_prerm``, and ``pkg_postrm`` should always have a package name
288 override. For example, use ``RDEPENDS_${PN}`` for the main package 288 override. For example, use ``RDEPENDS_${PN}`` for the main package
@@ -305,15 +305,15 @@ Differences include the following:
305 you have missing declared dependencies. 305 you have missing declared dependencies.
306 306
307- *Scanning Directory Names:* When scanning for files in 307- *Scanning Directory Names:* When scanning for files in
308 ```SRC_URI`` <#var-SRC_URI>`__, the build system now uses 308 :term:`SRC_URI`, the build system now uses
309 ```FILESOVERRIDES`` <#var-FILESOVERRIDES>`__ instead of 309 :term:`FILESOVERRIDES` instead of
310 ```OVERRIDES`` <#var-OVERRIDES>`__ for the directory names. In 310 :term:`OVERRIDES` for the directory names. In
311 general, the values previously in ``OVERRIDES`` are now in 311 general, the values previously in ``OVERRIDES`` are now in
312 ``FILESOVERRIDES`` as well. However, if you relied upon an additional 312 ``FILESOVERRIDES`` as well. However, if you relied upon an additional
313 value you previously added to ``OVERRIDES``, you might now need to 313 value you previously added to ``OVERRIDES``, you might now need to
314 add it to ``FILESOVERRIDES`` unless you are already adding it through 314 add it to ``FILESOVERRIDES`` unless you are already adding it through
315 the ```MACHINEOVERRIDES`` <#var-MACHINEOVERRIDES>`__ or 315 the :term:`MACHINEOVERRIDES` or
316 ```DISTROOVERRIDES`` <#var-DISTROOVERRIDES>`__ variables, as 316 :term:`DISTROOVERRIDES` variables, as
317 appropriate. For more related changes, see the 317 appropriate. For more related changes, see the
318 "`Variables <#migration-1.4-variables>`__" section. 318 "`Variables <#migration-1.4-variables>`__" section.
319 319
@@ -335,7 +335,7 @@ Custom Interfaces File (netbase change)
335If you have created your own custom ``etc/network/interfaces`` file by 335If you have created your own custom ``etc/network/interfaces`` file by
336creating an append file for the ``netbase`` recipe, you now need to 336creating an append file for the ``netbase`` recipe, you now need to
337create an append file for the ``init-ifupdown`` recipe instead, which 337create an append file for the ``init-ifupdown`` recipe instead, which
338you can find in the `Source Directory <#source-directory>`__ at 338you can find in the :term:`Source Directory` at
339``meta/recipes-core/init-ifupdown``. For information on how to use 339``meta/recipes-core/init-ifupdown``. For information on how to use
340append files, see the "`Using .bbappend 340append files, see the "`Using .bbappend
341Files <&YOCTO_DOCS_DEV_URL;#using-bbappend-files>`__" section in the 341Files <&YOCTO_DOCS_DEV_URL;#using-bbappend-files>`__" section in the
@@ -363,24 +363,24 @@ The following variables have changed:
363- *``SANITY_TESTED_DISTROS``:* This variable now uses a distribution 363- *``SANITY_TESTED_DISTROS``:* This variable now uses a distribution
364 ID, which is composed of the host distributor ID followed by the 364 ID, which is composed of the host distributor ID followed by the
365 release. Previously, 365 release. Previously,
366 ```SANITY_TESTED_DISTROS`` <#var-SANITY_TESTED_DISTROS>`__ was 366 :term:`SANITY_TESTED_DISTROS` was
367 composed of the description field. For example, "Ubuntu 12.10" 367 composed of the description field. For example, "Ubuntu 12.10"
368 becomes "Ubuntu-12.10". You do not need to worry about this change if 368 becomes "Ubuntu-12.10". You do not need to worry about this change if
369 you are not specifically setting this variable, or if you are 369 you are not specifically setting this variable, or if you are
370 specifically setting it to "". 370 specifically setting it to "".
371 371
372- *``SRC_URI``:* The ``${``\ ```PN`` <#var-PN>`__\ ``}``, 372- *``SRC_URI``:* The ``${``\ :term:`PN`\ ``}``,
373 ``${``\ ```PF`` <#var-PF>`__\ ``}``, 373 ``${``\ :term:`PF`\ ``}``,
374 ``${``\ ```P`` <#var-P>`__\ ``}``, and ``FILE_DIRNAME`` directories 374 ``${``\ :term:`P`\ ``}``, and ``FILE_DIRNAME`` directories
375 have been dropped from the default value of the 375 have been dropped from the default value of the
376 ```FILESPATH`` <#var-FILESPATH>`__ variable, which is used as the 376 :term:`FILESPATH` variable, which is used as the
377 search path for finding files referred to in 377 search path for finding files referred to in
378 ```SRC_URI`` <#var-SRC_URI>`__. If you have a recipe that relied upon 378 :term:`SRC_URI`. If you have a recipe that relied upon
379 these directories, which would be unusual, then you will need to add 379 these directories, which would be unusual, then you will need to add
380 the appropriate paths within the recipe or, alternatively, rearrange 380 the appropriate paths within the recipe or, alternatively, rearrange
381 the files. The most common locations are still covered by ``${BP}``, 381 the files. The most common locations are still covered by ``${BP}``,
382 ``${BPN}``, and "files", which all remain in the default value of 382 ``${BPN}``, and "files", which all remain in the default value of
383 ```FILESPATH`` <#var-FILESPATH>`__. 383 :term:`FILESPATH`.
384 384
385.. _migration-target-package-management-with-rpm: 385.. _migration-target-package-management-with-rpm:
386 386
@@ -554,9 +554,9 @@ The following changes have been made that relate to BitBake:
554 554
555- The ``bitbake-runtask`` script has been removed. 555- The ``bitbake-runtask`` script has been removed.
556 556
557- ``${``\ ```P`` <#var-P>`__\ ``}`` and 557- ``${``\ :term:`P`\ ``}`` and
558 ``${``\ ```PF`` <#var-PF>`__\ ``}`` are no longer added to 558 ``${``\ :term:`PF`\ ``}`` are no longer added to
559 ```PROVIDES`` <#var-PROVIDES>`__ by default in ``bitbake.conf``. 559 :term:`PROVIDES` by default in ``bitbake.conf``.
560 These version-specific ``PROVIDES`` items were seldom used. 560 These version-specific ``PROVIDES`` items were seldom used.
561 Attempting to use them could result in two versions being built 561 Attempting to use them could result in two versions being built
562 simultaneously rather than just one version due to the way BitBake 562 simultaneously rather than just one version due to the way BitBake
@@ -569,19 +569,19 @@ QA Warnings
569 569
570The following changes have been made to the package QA checks: 570The following changes have been made to the package QA checks:
571 571
572- If you have customized ```ERROR_QA`` <#var-ERROR_QA>`__ or 572- If you have customized :term:`ERROR_QA` or
573 ```WARN_QA`` <#var-WARN_QA>`__ values in your configuration, check 573 :term:`WARN_QA` values in your configuration, check
574 that they contain all of the issues that you wish to be reported. 574 that they contain all of the issues that you wish to be reported.
575 Previous Yocto Project versions contained a bug that meant that any 575 Previous Yocto Project versions contained a bug that meant that any
576 item not mentioned in ``ERROR_QA`` or ``WARN_QA`` would be treated as 576 item not mentioned in ``ERROR_QA`` or ``WARN_QA`` would be treated as
577 a warning. Consequently, several important items were not already in 577 a warning. Consequently, several important items were not already in
578 the default value of ``WARN_QA``. All of the possible QA checks are 578 the default value of ``WARN_QA``. All of the possible QA checks are
579 now documented in the "```insane.bbclass`` <#ref-classes-insane>`__" 579 now documented in the ":ref:`insane.bbclass <ref-classes-insane>`"
580 section. 580 section.
581 581
582- An additional QA check has been added to check if 582- An additional QA check has been added to check if
583 ``/usr/share/info/dir`` is being installed. Your recipe should delete 583 ``/usr/share/info/dir`` is being installed. Your recipe should delete
584 this file within ```do_install`` <#ref-tasks-install>`__ if "make 584 this file within :ref:`ref-tasks-install` if "make
585 install" is installing it. 585 install" is installing it.
586 586
587- If you are using the buildhistory class, the check for the package 587- If you are using the buildhistory class, the check for the package
@@ -591,7 +591,7 @@ The following changes have been made to the package QA checks:
591 "version-going-backwards" to your value for one or the other 591 "version-going-backwards" to your value for one or the other
592 variables depending on how you wish it to be handled. See the 592 variables depending on how you wish it to be handled. See the
593 documented QA checks in the 593 documented QA checks in the
594 "```insane.bbclass`` <#ref-classes-insane>`__" section. 594 ":ref:`insane.bbclass <ref-classes-insane>`" section.
595 595
596.. _migration-1.5-directory-layout-changes: 596.. _migration-1.5-directory-layout-changes:
597 597
@@ -601,25 +601,25 @@ Directory Layout Changes
601The following directory changes exist: 601The following directory changes exist:
602 602
603- Output SDK installer files are now named to include the image name 603- Output SDK installer files are now named to include the image name
604 and tuning architecture through the ```SDK_NAME`` <#var-SDK_NAME>`__ 604 and tuning architecture through the :term:`SDK_NAME`
605 variable. 605 variable.
606 606
607- Images and related files are now installed into a directory that is 607- Images and related files are now installed into a directory that is
608 specific to the machine, instead of a parent directory containing 608 specific to the machine, instead of a parent directory containing
609 output files for multiple machines. The 609 output files for multiple machines. The
610 ```DEPLOY_DIR_IMAGE`` <#var-DEPLOY_DIR_IMAGE>`__ variable continues 610 :term:`DEPLOY_DIR_IMAGE` variable continues
611 to point to the directory containing images for the current 611 to point to the directory containing images for the current
612 ```MACHINE`` <#var-MACHINE>`__ and should be used anywhere there is a 612 :term:`MACHINE` and should be used anywhere there is a
613 need to refer to this directory. The ``runqemu`` script now uses this 613 need to refer to this directory. The ``runqemu`` script now uses this
614 variable to find images and kernel binaries and will use BitBake to 614 variable to find images and kernel binaries and will use BitBake to
615 determine the directory. Alternatively, you can set the 615 determine the directory. Alternatively, you can set the
616 ``DEPLOY_DIR_IMAGE`` variable in the external environment. 616 ``DEPLOY_DIR_IMAGE`` variable in the external environment.
617 617
618- When buildhistory is enabled, its output is now written under the 618- When buildhistory is enabled, its output is now written under the
619 `Build Directory <#build-directory>`__ rather than 619 :term:`Build Directory` rather than
620 ```TMPDIR`` <#var-TMPDIR>`__. Doing so makes it easier to delete 620 :term:`TMPDIR`. Doing so makes it easier to delete
621 ``TMPDIR`` and preserve the build history. Additionally, data for 621 ``TMPDIR`` and preserve the build history. Additionally, data for
622 produced SDKs is now split by ```IMAGE_NAME`` <#var-IMAGE_NAME>`__. 622 produced SDKs is now split by :term:`IMAGE_NAME`.
623 623
624- The ``pkgdata`` directory produced as part of the packaging process 624- The ``pkgdata`` directory produced as part of the packaging process
625 has been collapsed into a single machine-specific directory. This 625 has been collapsed into a single machine-specific directory. This
@@ -632,7 +632,7 @@ Shortened Git ``SRCREV`` Values
632------------------------------- 632-------------------------------
633 633
634BitBake will now shorten revisions from Git repositories from the normal 634BitBake will now shorten revisions from Git repositories from the normal
63540 characters down to 10 characters within ```SRCPV`` <#var-SRCPV>`__ 63540 characters down to 10 characters within :term:`SRCPV`
636for improved usability in path and file names. This change should be 636for improved usability in path and file names. This change should be
637safe within contexts where these revisions are used because the chances 637safe within contexts where these revisions are used because the chances
638of spatially close collisions is very low. Distant collisions are not a 638of spatially close collisions is very low. Distant collisions are not a
@@ -644,16 +644,16 @@ major issue in the way the values are used.
644------------------ 644------------------
645 645
646The following changes have been made that relate to 646The following changes have been made that relate to
647```IMAGE_FEATURES`` <#var-IMAGE_FEATURES>`__: 647:term:`IMAGE_FEATURES`:
648 648
649- The value of ``IMAGE_FEATURES`` is now validated to ensure invalid 649- The value of ``IMAGE_FEATURES`` is now validated to ensure invalid
650 feature items are not added. Some users mistakenly add package names 650 feature items are not added. Some users mistakenly add package names
651 to this variable instead of using 651 to this variable instead of using
652 ```IMAGE_INSTALL`` <#var-IMAGE_INSTALL>`__ in order to have the 652 :term:`IMAGE_INSTALL` in order to have the
653 package added to the image, which does not work. This change is 653 package added to the image, which does not work. This change is
654 intended to catch those kinds of situations. Valid ``IMAGE_FEATURES`` 654 intended to catch those kinds of situations. Valid ``IMAGE_FEATURES``
655 are drawn from ``PACKAGE_GROUP`` definitions, 655 are drawn from ``PACKAGE_GROUP`` definitions,
656 ```COMPLEMENTARY_GLOB`` <#var-COMPLEMENTARY_GLOB>`__ and a new 656 :term:`COMPLEMENTARY_GLOB` and a new
657 "validitems" varflag on ``IMAGE_FEATURES``. The "validitems" varflag 657 "validitems" varflag on ``IMAGE_FEATURES``. The "validitems" varflag
658 change allows additional features to be added if they are not 658 change allows additional features to be added if they are not
659 provided using the previous two mechanisms. 659 provided using the previous two mechanisms.
@@ -682,9 +682,9 @@ Removal of Package Manager Database Within Image Recipes
682 682
683The image ``core-image-minimal`` no longer adds 683The image ``core-image-minimal`` no longer adds
684``remove_packaging_data_files`` to 684``remove_packaging_data_files`` to
685```ROOTFS_POSTPROCESS_COMMAND`` <#var-ROOTFS_POSTPROCESS_COMMAND>`__. 685:term:`ROOTFS_POSTPROCESS_COMMAND`.
686This addition is now handled automatically when "package-management" is 686This addition is now handled automatically when "package-management" is
687not in ```IMAGE_FEATURES`` <#var-IMAGE_FEATURES>`__. If you have custom 687not in :term:`IMAGE_FEATURES`. If you have custom
688image recipes that make this addition, you should remove the lines, as 688image recipes that make this addition, you should remove the lines, as
689they are not needed and might interfere with correct operation of 689they are not needed and might interfere with correct operation of
690postinstall scripts. 690postinstall scripts.
@@ -694,7 +694,7 @@ postinstall scripts.
694Images Now Rebuild Only on Changes Instead of Every Time 694Images Now Rebuild Only on Changes Instead of Every Time
695-------------------------------------------------------- 695--------------------------------------------------------
696 696
697The ```do_rootfs`` <#ref-tasks-rootfs>`__ and other related image 697The :ref:`ref-tasks-rootfs` and other related image
698construction tasks are no longer marked as "nostamp". Consequently, they 698construction tasks are no longer marked as "nostamp". Consequently, they
699will only be re-executed when their inputs have changed. Previous 699will only be re-executed when their inputs have changed. Previous
700versions of the OpenEmbedded build system always rebuilt the image when 700versions of the OpenEmbedded build system always rebuilt the image when
@@ -711,7 +711,7 @@ them from ``task-*`` to ``packagegroup-*`` and inherit packagegroup
711instead. 711instead.
712 712
713For more information, see the 713For more information, see the
714"```packagegroup.bbclass`` <#ref-classes-packagegroup>`__" section. 714":ref:`packagegroup.bbclass <ref-classes-packagegroup>`" section.
715 715
716.. _migration-1.5-busybox: 716.. _migration-1.5-busybox:
717 717
@@ -723,7 +723,7 @@ root for those components that need it, and another for the rest of the
723components. Splitting BusyBox allows for optimization that eliminates 723components. Splitting BusyBox allows for optimization that eliminates
724the ``tinylogin`` recipe as recommended by upstream. You can disable 724the ``tinylogin`` recipe as recommended by upstream. You can disable
725this split by setting 725this split by setting
726```BUSYBOX_SPLIT_SUID`` <#var-BUSYBOX_SPLIT_SUID>`__ to "0". 726:term:`BUSYBOX_SPLIT_SUID` to "0".
727 727
728.. _migration-1.5-automated-image-testing: 728.. _migration-1.5-automated-image-testing:
729 729
@@ -771,7 +771,7 @@ section in the Yocto Project Development Tasks Manual.
771Following are changes to ``udev``: 771Following are changes to ``udev``:
772 772
773- ``udev`` no longer brings in ``udev-extraconf`` automatically through 773- ``udev`` no longer brings in ``udev-extraconf`` automatically through
774 ```RRECOMMENDS`` <#var-RRECOMMENDS>`__, since this was originally 774 :term:`RRECOMMENDS`, since this was originally
775 intended to be optional. If you need the extra rules, then add 775 intended to be optional. If you need the extra rules, then add
776 ``udev-extraconf`` to your image. 776 ``udev-extraconf`` to your image.
777 777
@@ -821,13 +821,13 @@ Following is a list of short entries describing other changes:
821- ``alsa-state``: Provide an empty ``asound.conf`` by default. 821- ``alsa-state``: Provide an empty ``asound.conf`` by default.
822 822
823- ``classes/image``: Ensure 823- ``classes/image``: Ensure
824 ```BAD_RECOMMENDATIONS`` <#var-BAD_RECOMMENDATIONS>`__ supports 824 :term:`BAD_RECOMMENDATIONS` supports
825 pre-renamed package names. 825 pre-renamed package names.
826 826
827- ``classes/rootfs_rpm``: Implement ``BAD_RECOMMENDATIONS`` for RPM. 827- ``classes/rootfs_rpm``: Implement ``BAD_RECOMMENDATIONS`` for RPM.
828 828
829- ``systemd``: Remove ``systemd_unitdir`` if ``systemd`` is not in 829- ``systemd``: Remove ``systemd_unitdir`` if ``systemd`` is not in
830 ```DISTRO_FEATURES`` <#var-DISTRO_FEATURES>`__. 830 :term:`DISTRO_FEATURES`.
831 831
832- ``systemd``: Remove ``init.d`` dir if ``systemd`` unit file is 832- ``systemd``: Remove ``init.d`` dir if ``systemd`` unit file is
833 present and ``sysvinit`` is not a distro feature. 833 present and ``sysvinit`` is not a distro feature.
@@ -854,7 +854,7 @@ Project 1.6 Release from the prior release.
854``archiver`` Class 854``archiver`` Class
855------------------ 855------------------
856 856
857The ```archiver`` <#ref-classes-archiver>`__ class has been rewritten 857The :ref:`archiver <ref-classes-archiver>` class has been rewritten
858and its configuration has been simplified. For more details on the 858and its configuration has been simplified. For more details on the
859source archiver, see the "`Maintaining Open Source License Compliance 859source archiver, see the "`Maintaining Open Source License Compliance
860During Your Product's 860During Your Product's
@@ -889,7 +889,7 @@ The following packaging changes have been made:
889BitBake 889BitBake
890------- 890-------
891 891
892The following changes have been made to `BitBake <#bitbake-term>`__. 892The following changes have been made to :term:`BitBake`.
893 893
894.. _migration-1.6-matching-branch-requirement-for-git-fetching: 894.. _migration-1.6-matching-branch-requirement-for-git-fetching:
895 895
@@ -897,8 +897,8 @@ Matching Branch Requirement for Git Fetching
897~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 897~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
898 898
899When fetching source from a Git repository using 899When fetching source from a Git repository using
900```SRC_URI`` <#var-SRC_URI>`__, BitBake will now validate the 900:term:`SRC_URI`, BitBake will now validate the
901```SRCREV`` <#var-SRCREV>`__ value against the branch. You can specify 901:term:`SRCREV` value against the branch. You can specify
902the branch using the following form: SRC_URI = 902the branch using the following form: SRC_URI =
903"git://server.name/repository;branch=branchname" If you do not specify a 903"git://server.name/repository;branch=branchname" If you do not specify a
904branch, BitBake looks in the default "master" branch. 904branch, BitBake looks in the default "master" branch.
@@ -960,7 +960,7 @@ will need to add ``2>&1`` (or something similar) to the end of your
960``task-``\ taskname overrides have been adjusted so that tasks whose 960``task-``\ taskname overrides have been adjusted so that tasks whose
961names contain underscores have the underscores replaced by hyphens for 961names contain underscores have the underscores replaced by hyphens for
962the override so that they now function properly. For example, the task 962the override so that they now function properly. For example, the task
963override for ```do_populate_sdk`` <#ref-tasks-populate_sdk>`__ is 963override for :ref:`ref-tasks-populate_sdk` is
964``task-populate-sdk``. 964``task-populate-sdk``.
965 965
966.. _migration-1.6-variable-changes: 966.. _migration-1.6-variable-changes:
@@ -977,7 +977,7 @@ Glossary <#ref-variables-glos>`__" Chapter.
977``TMPDIR`` 977``TMPDIR``
978~~~~~~~~~~ 978~~~~~~~~~~
979 979
980```TMPDIR`` <#var-TMPDIR>`__ can no longer be on an NFS mount. NFS does 980:term:`TMPDIR` can no longer be on an NFS mount. NFS does
981not offer full POSIX locking and inode consistency and can cause 981not offer full POSIX locking and inode consistency and can cause
982unexpected issues if used to store ``TMPDIR``. 982unexpected issues if used to store ``TMPDIR``.
983 983
@@ -990,7 +990,7 @@ NFS mount, an error occurs.
990~~~~~~~~~ 990~~~~~~~~~
991 991
992The ``PRINC`` variable has been deprecated and triggers a warning if 992The ``PRINC`` variable has been deprecated and triggers a warning if
993detected during a build. For ```PR`` <#var-PR>`__ increments on changes, 993detected during a build. For :term:`PR` increments on changes,
994use the PR service instead. You can find out more about this service in 994use the PR service instead. You can find out more about this service in
995the "`Working With a PR 995the "`Working With a PR
996Service <&YOCTO_DOCS_DEV_URL;#working-with-a-pr-service>`__" section in 996Service <&YOCTO_DOCS_DEV_URL;#working-with-a-pr-service>`__" section in
@@ -1001,7 +1001,7 @@ the Yocto Project Development Tasks Manual.
1001``IMAGE_TYPES`` 1001``IMAGE_TYPES``
1002~~~~~~~~~~~~~~~ 1002~~~~~~~~~~~~~~~
1003 1003
1004The "sum.jffs2" option for ```IMAGE_TYPES`` <#var-IMAGE_TYPES>`__ has 1004The "sum.jffs2" option for :term:`IMAGE_TYPES` has
1005been replaced by the "jffs2.sum" option, which fits the processing 1005been replaced by the "jffs2.sum" option, which fits the processing
1006order. 1006order.
1007 1007
@@ -1010,7 +1010,7 @@ order.
1010``COPY_LIC_MANIFEST`` 1010``COPY_LIC_MANIFEST``
1011~~~~~~~~~~~~~~~~~~~~~ 1011~~~~~~~~~~~~~~~~~~~~~
1012 1012
1013The ```COPY_LIC_MANIFEST`` <#var-COPY_LIC_MANIFEST>`__ variable must now 1013The :term:`COPY_LIC_MANIFEST` variable must now
1014be set to "1" rather than any value in order to enable it. 1014be set to "1" rather than any value in order to enable it.
1015 1015
1016.. _migration-1.6-variable-changes-COPY_LIC_DIRS: 1016.. _migration-1.6-variable-changes-COPY_LIC_DIRS:
@@ -1018,7 +1018,7 @@ be set to "1" rather than any value in order to enable it.
1018``COPY_LIC_DIRS`` 1018``COPY_LIC_DIRS``
1019~~~~~~~~~~~~~~~~~ 1019~~~~~~~~~~~~~~~~~
1020 1020
1021The ```COPY_LIC_DIRS`` <#var-COPY_LIC_DIRS>`__ variable must now be set 1021The :term:`COPY_LIC_DIRS` variable must now be set
1022to "1" rather than any value in order to enable it. 1022to "1" rather than any value in order to enable it.
1023 1023
1024.. _migration-1.6-variable-changes-PACKAGE_GROUP: 1024.. _migration-1.6-variable-changes-PACKAGE_GROUP:
@@ -1027,7 +1027,7 @@ to "1" rather than any value in order to enable it.
1027~~~~~~~~~~~~~~~~~ 1027~~~~~~~~~~~~~~~~~
1028 1028
1029The ``PACKAGE_GROUP`` variable has been renamed to 1029The ``PACKAGE_GROUP`` variable has been renamed to
1030```FEATURE_PACKAGES`` <#var-FEATURE_PACKAGES>`__ to more accurately 1030:term:`FEATURE_PACKAGES` to more accurately
1031reflect its purpose. You can still use ``PACKAGE_GROUP`` but the 1031reflect its purpose. You can still use ``PACKAGE_GROUP`` but the
1032OpenEmbedded build system produces a warning message when it encounters 1032OpenEmbedded build system produces a warning message when it encounters
1033the variable. 1033the variable.
@@ -1039,15 +1039,15 @@ Preprocess and Post Process Command Variable Behavior
1039 1039
1040The following variables now expect a semicolon separated list of 1040The following variables now expect a semicolon separated list of
1041functions to call and not arbitrary shell commands: 1041functions to call and not arbitrary shell commands:
1042`ROOTFS_PREPROCESS_COMMAND <#var-ROOTFS_PREPROCESS_COMMAND>`__ 1042:term:`ROOTFS_PREPROCESS_COMMAND`
1043`ROOTFS_POSTPROCESS_COMMAND <#var-ROOTFS_POSTPROCESS_COMMAND>`__ 1043:term:`ROOTFS_POSTPROCESS_COMMAND`
1044`SDK_POSTPROCESS_COMMAND <#var-SDK_POSTPROCESS_COMMAND>`__ 1044:term:`SDK_POSTPROCESS_COMMAND`
1045`POPULATE_SDK_POST_TARGET_COMMAND <#var-POPULATE_SDK_POST_TARGET_COMMAND>`__ 1045:term:`POPULATE_SDK_POST_TARGET_COMMAND`
1046`POPULATE_SDK_POST_HOST_COMMAND <#var-POPULATE_SDK_POST_HOST_COMMAND>`__ 1046:term:`POPULATE_SDK_POST_HOST_COMMAND`
1047`IMAGE_POSTPROCESS_COMMAND <#var-IMAGE_POSTPROCESS_COMMAND>`__ 1047:term:`IMAGE_POSTPROCESS_COMMAND`
1048`IMAGE_PREPROCESS_COMMAND <#var-IMAGE_PREPROCESS_COMMAND>`__ 1048:term:`IMAGE_PREPROCESS_COMMAND`
1049`ROOTFS_POSTUNINSTALL_COMMAND <#var-ROOTFS_POSTUNINSTALL_COMMAND>`__ 1049:term:`ROOTFS_POSTUNINSTALL_COMMAND`
1050`ROOTFS_POSTINSTALL_COMMAND <#var-ROOTFS_POSTINSTALL_COMMAND>`__ For 1050:term:`ROOTFS_POSTINSTALL_COMMAND` For
1051migration purposes, you can simply wrap shell commands in a shell 1051migration purposes, you can simply wrap shell commands in a shell
1052function and then call the function. Here is an example: 1052function and then call the function. Here is an example:
1053my_postprocess_function() { echo "hello" > ${IMAGE_ROOTFS}/hello.txt } 1053my_postprocess_function() { echo "hello" > ${IMAGE_ROOTFS}/hello.txt }
@@ -1062,7 +1062,7 @@ Package Tests (ptest) are built but not installed by default. For
1062information on using Package Tests, see the "`Testing Packages with 1062information on using Package Tests, see the "`Testing Packages with
1063ptest <&YOCTO_DOCS_DEV_URL;#testing-packages-with-ptest>`__" section in 1063ptest <&YOCTO_DOCS_DEV_URL;#testing-packages-with-ptest>`__" section in
1064the Yocto Project Development Tasks Manual. For information on the 1064the Yocto Project Development Tasks Manual. For information on the
1065``ptest`` class, see the "```ptest.bbclass`` <#ref-classes-ptest>`__" 1065``ptest`` class, see the ":ref:`ptest.bbclass <ref-classes-ptest>`"
1066section. 1066section.
1067 1067
1068.. _migration-1.6-build-changes: 1068.. _migration-1.6-build-changes:
@@ -1072,8 +1072,8 @@ Build Changes
1072 1072
1073Separate build and source directories have been enabled by default for 1073Separate build and source directories have been enabled by default for
1074selected recipes where it is known to work (a whitelist) and for all 1074selected recipes where it is known to work (a whitelist) and for all
1075recipes that inherit the ```cmake`` <#ref-classes-cmake>`__ class. In 1075recipes that inherit the :ref:`cmake <ref-classes-cmake>` class. In
1076future releases the ```autotools`` <#ref-classes-autotools>`__ class 1076future releases the :ref:`autotools <ref-classes-autotools>` class
1077will enable a separate build directory by default as well. Recipes 1077will enable a separate build directory by default as well. Recipes
1078building Autotools-based software that fails to build with a separate 1078building Autotools-based software that fails to build with a separate
1079build directory should be changed to inherit from the 1079build directory should be changed to inherit from the
@@ -1116,12 +1116,12 @@ Licensing
1116--------- 1116---------
1117 1117
1118The top-level ``LICENSE`` file has been changed to better describe the 1118The top-level ``LICENSE`` file has been changed to better describe the
1119license of the various components of `OE-Core <#oe-core>`__. However, 1119license of the various components of :term:`OpenEmbedded-Core (OE-Core)`. However,
1120the licensing itself remains unchanged. 1120the licensing itself remains unchanged.
1121 1121
1122Normally, this change would not cause any side-effects. However, some 1122Normally, this change would not cause any side-effects. However, some
1123recipes point to this file within 1123recipes point to this file within
1124```LIC_FILES_CHKSUM`` <#var-LIC_FILES_CHKSUM>`__ (as 1124:term:`LIC_FILES_CHKSUM` (as
1125``${COREBASE}/LICENSE``) and thus the accompanying checksum must be 1125``${COREBASE}/LICENSE``) and thus the accompanying checksum must be
1126changed from 3f40d7994397109285ec7b81fdeb3b58 to 1126changed from 3f40d7994397109285ec7b81fdeb3b58 to
11274d92cd373abda3937c2bc47fbc49d690. A better alternative is to have 11274d92cd373abda3937c2bc47fbc49d690. A better alternative is to have
@@ -1135,7 +1135,7 @@ rather than pointing to ``${COREBASE}/LICENSE``.
1135------------------ 1135------------------
1136 1136
1137The "-fpermissive" option has been removed from the default 1137The "-fpermissive" option has been removed from the default
1138```CFLAGS`` <#var-CFLAGS>`__ value. You need to take action on 1138:term:`CFLAGS` value. You need to take action on
1139individual recipes that fail when building with this option. You need to 1139individual recipes that fail when building with this option. You need to
1140either patch the recipes to fix the issues reported by the compiler, or 1140either patch the recipes to fix the issues reported by the compiler, or
1141you need to add "-fpermissive" to ``CFLAGS`` in the recipes. 1141you need to add "-fpermissive" to ``CFLAGS`` in the recipes.
@@ -1146,9 +1146,9 @@ Custom Image Output Types
1146------------------------- 1146-------------------------
1147 1147
1148Custom image output types, as selected using 1148Custom image output types, as selected using
1149```IMAGE_FSTYPES`` <#var-IMAGE_FSTYPES>`__, must declare their 1149:term:`IMAGE_FSTYPES`, must declare their
1150dependencies on other image types (if any) using a new 1150dependencies on other image types (if any) using a new
1151```IMAGE_TYPEDEP`` <#var-IMAGE_TYPEDEP>`__ variable. 1151:term:`IMAGE_TYPEDEP` variable.
1152 1152
1153.. _migration-1.6-do-package-write-task: 1153.. _migration-1.6-do-package-write-task:
1154 1154
@@ -1264,7 +1264,7 @@ Changes to Setting QEMU ``PACKAGECONFIG`` Options in ``local.conf``
1264------------------------------------------------------------------- 1264-------------------------------------------------------------------
1265 1265
1266The QEMU recipe now uses a number of 1266The QEMU recipe now uses a number of
1267```PACKAGECONFIG`` <#var-PACKAGECONFIG>`__ options to enable various 1267:term:`PACKAGECONFIG` options to enable various
1268optional features. The method used to set defaults for these options 1268optional features. The method used to set defaults for these options
1269means that existing ``local.conf`` files will need to be be modified to 1269means that existing ``local.conf`` files will need to be be modified to
1270append to ``PACKAGECONFIG`` for ``qemu-native`` and ``nativesdk-qemu`` 1270append to ``PACKAGECONFIG`` for ``qemu-native`` and ``nativesdk-qemu``
@@ -1291,13 +1291,13 @@ for more information.
1291Autotools Class Changes 1291Autotools Class Changes
1292----------------------- 1292-----------------------
1293 1293
1294The following ```autotools`` <#ref-classes-autotools>`__ class changes 1294The following :ref:`autotools <ref-classes-autotools>` class changes
1295occurred: 1295occurred:
1296 1296
1297- *A separate build directory is now used by default:* The 1297- *A separate build directory is now used by default:* The
1298 ``autotools`` class has been changed to use a directory for building 1298 ``autotools`` class has been changed to use a directory for building
1299 (```B`` <#var-B>`__), which is separate from the source directory 1299 (:term:`B`), which is separate from the source directory
1300 (```S`` <#var-S>`__). This is commonly referred to as ``B != S``, or 1300 (:term:`S`). This is commonly referred to as ``B != S``, or
1301 an out-of-tree build. 1301 an out-of-tree build.
1302 1302
1303 If the software being built is already capable of building in a 1303 If the software being built is already capable of building in a
@@ -1368,10 +1368,10 @@ Kernel Module Autoloading
1368 1368
1369The ```module_autoload_*`` <#var-module_autoload>`__ variable is now 1369The ```module_autoload_*`` <#var-module_autoload>`__ variable is now
1370deprecated and a new 1370deprecated and a new
1371```KERNEL_MODULE_AUTOLOAD`` <#var-KERNEL_MODULE_AUTOLOAD>`__ variable 1371:term:`KERNEL_MODULE_AUTOLOAD` variable
1372should be used instead. Also, ```module_conf_*`` <#var-module_conf>`__ 1372should be used instead. Also, ```module_conf_*`` <#var-module_conf>`__
1373must now be used in conjunction with a new 1373must now be used in conjunction with a new
1374```KERNEL_MODULE_PROBECONF`` <#var-KERNEL_MODULE_PROBECONF>`__ variable. 1374:term:`KERNEL_MODULE_PROBECONF` variable.
1375The new variables no longer require you to specify the module name as 1375The new variables no longer require you to specify the module name as
1376part of the variable name. This change not only simplifies usage but 1376part of the variable name. This change not only simplifies usage but
1377also allows the values of these variables to be appropriately 1377also allows the values of these variables to be appropriately
@@ -1395,15 +1395,15 @@ The following changes have occurred to the QA check process:
1395 see the "`QA Error and Warning Messages <#ref-qa-checks>`__" chapter. 1395 see the "`QA Error and Warning Messages <#ref-qa-checks>`__" chapter.
1396 1396
1397- Package QA checks are now performed during a new 1397- Package QA checks are now performed during a new
1398 ```do_package_qa`` <#ref-tasks-package_qa>`__ task rather than being 1398 :ref:`ref-tasks-package_qa` task rather than being
1399 part of the ```do_package`` <#ref-tasks-package>`__ task. This allows 1399 part of the :ref:`ref-tasks-package` task. This allows
1400 more parallel execution. This change is unlikely to be an issue 1400 more parallel execution. This change is unlikely to be an issue
1401 except for highly customized recipes that disable packaging tasks 1401 except for highly customized recipes that disable packaging tasks
1402 themselves by marking them as ``noexec``. For those packages, you 1402 themselves by marking them as ``noexec``. For those packages, you
1403 will need to disable the ``do_package_qa`` task as well. 1403 will need to disable the ``do_package_qa`` task as well.
1404 1404
1405- Files being overwritten during the 1405- Files being overwritten during the
1406 ```do_populate_sysroot`` <#ref-tasks-populate_sysroot>`__ task now 1406 :ref:`ref-tasks-populate_sysroot` task now
1407 trigger an error instead of a warning. Recipes should not be 1407 trigger an error instead of a warning. Recipes should not be
1408 overwriting files written to the sysroot by other recipes. If you 1408 overwriting files written to the sysroot by other recipes. If you
1409 have these types of recipes, you need to alter them so that they do 1409 have these types of recipes, you need to alter them so that they do
@@ -1412,7 +1412,7 @@ The following changes have occurred to the QA check process:
1412 You might now receive this error after changes in configuration or 1412 You might now receive this error after changes in configuration or
1413 metadata resulting in orphaned files being left in the sysroot. If 1413 metadata resulting in orphaned files being left in the sysroot. If
1414 you do receive this error, the way to resolve the issue is to delete 1414 you do receive this error, the way to resolve the issue is to delete
1415 your ```TMPDIR`` <#var-TMPDIR>`__ or to move it out of the way and 1415 your :term:`TMPDIR` or to move it out of the way and
1416 then re-start the build. Anything that has been fully built up to 1416 then re-start the build. Anything that has been fully built up to
1417 that point and does not need rebuilding will be restored from the 1417 that point and does not need rebuilding will be restored from the
1418 shared state cache and the rest of the build will be able to proceed 1418 shared state cache and the rest of the build will be able to proceed
@@ -1508,7 +1508,7 @@ BlueZ 4.x / 5.x Selection
1508 1508
1509Proper built-in support for selecting BlueZ 5.x in preference to the 1509Proper built-in support for selecting BlueZ 5.x in preference to the
1510default of 4.x now exists. To use BlueZ 5.x, simply add "bluez5" to your 1510default of 4.x now exists. To use BlueZ 5.x, simply add "bluez5" to your
1511```DISTRO_FEATURES`` <#var-DISTRO_FEATURES>`__ value. If you had 1511:term:`DISTRO_FEATURES` value. If you had
1512previously added append files (``*.bbappend``) to make this selection, 1512previously added append files (``*.bbappend``) to make this selection,
1513you can now remove them. 1513you can now remove them.
1514 1514
@@ -1532,8 +1532,8 @@ code tree. In theory, migration paths have been provided for most common
1532usages in kernel recipes but this might not work in all cases. In 1532usages in kernel recipes but this might not work in all cases. In
1533particular, users need to ensure that ``${S}`` (source files) and 1533particular, users need to ensure that ``${S}`` (source files) and
1534``${B}`` (build artifacts) are used correctly in functions such as 1534``${B}`` (build artifacts) are used correctly in functions such as
1535```do_configure`` <#ref-tasks-configure>`__ and 1535:ref:`ref-tasks-configure` and
1536```do_install`` <#ref-tasks-install>`__. For kernel recipes that do not 1536:ref:`ref-tasks-install`. For kernel recipes that do not
1537inherit from ``kernel-yocto`` or include ``linux-yocto.inc``, you might 1537inherit from ``kernel-yocto`` or include ``linux-yocto.inc``, you might
1538wish to refer to the ``linux.inc`` file in the ``meta-oe`` layer for the 1538wish to refer to the ``linux.inc`` file in the ``meta-oe`` layer for the
1539kinds of changes you need to make. For reference, here is the 1539kinds of changes you need to make. For reference, here is the
@@ -1554,7 +1554,7 @@ SSL 3.0 is now disabled when building OpenSSL. Disabling SSL 3.0 avoids
1554any lingering instances of the POODLE vulnerability. If you feel you 1554any lingering instances of the POODLE vulnerability. If you feel you
1555must re-enable SSL 3.0, then you can add an append file (``*.bbappend``) 1555must re-enable SSL 3.0, then you can add an append file (``*.bbappend``)
1556for the ``openssl`` recipe to remove "-no-ssl3" from 1556for the ``openssl`` recipe to remove "-no-ssl3" from
1557```EXTRA_OECONF`` <#var-EXTRA_OECONF>`__. 1557:term:`EXTRA_OECONF`.
1558 1558
1559.. _migration-1.8-default-sysroot-poisoning: 1559.. _migration-1.8-default-sysroot-poisoning:
1560 1560
@@ -1578,17 +1578,17 @@ need to take corrective steps.
1578Rebuild Improvements 1578Rebuild Improvements
1579-------------------- 1579--------------------
1580 1580
1581Changes have been made to the ```base`` <#ref-classes-base>`__, 1581Changes have been made to the :ref:`base <ref-classes-base>`,
1582```autotools`` <#ref-classes-autotools>`__, and 1582:ref:`autotools <ref-classes-autotools>`, and
1583```cmake`` <#ref-classes-cmake>`__ classes to clean out generated files 1583:ref:`cmake <ref-classes-cmake>` classes to clean out generated files
1584when the ```do_configure`` <#ref-tasks-configure>`__ task needs to be 1584when the :ref:`ref-tasks-configure` task needs to be
1585re-executed. 1585re-executed.
1586 1586
1587One of the improvements is to attempt to run "make clean" during the 1587One of the improvements is to attempt to run "make clean" during the
1588``do_configure`` task if a ``Makefile`` exists. Some software packages 1588``do_configure`` task if a ``Makefile`` exists. Some software packages
1589do not provide a working clean target within their make files. If you 1589do not provide a working clean target within their make files. If you
1590have such recipes, you need to set 1590have such recipes, you need to set
1591```CLEANBROKEN`` <#var-CLEANBROKEN>`__ to "1" within the recipe, for 1591:term:`CLEANBROKEN` to "1" within the recipe, for
1592example: CLEANBROKEN = "1" 1592example: CLEANBROKEN = "1"
1593 1593
1594.. _migration-1.8-qa-check-and-validation-changes: 1594.. _migration-1.8-qa-check-and-validation-changes:
@@ -1603,18 +1603,18 @@ The following QA Check and Validation Changes have occurred:
1603 recipe or append file. 1603 recipe or append file.
1604 1604
1605- An additional QA check has been added to detect usage of ``${D}`` in 1605- An additional QA check has been added to detect usage of ``${D}`` in
1606 ```FILES`` <#var-FILES>`__ values where ```D`` <#var-D>`__ values 1606 :term:`FILES` values where :term:`D` values
1607 should not be used at all. The same check ensures that ``$D`` is used 1607 should not be used at all. The same check ensures that ``$D`` is used
1608 in ``pkg_preinst/pkg_postinst/pkg_prerm/pkg_postrm`` functions 1608 in ``pkg_preinst/pkg_postinst/pkg_prerm/pkg_postrm`` functions
1609 instead of ``${D}``. 1609 instead of ``${D}``.
1610 1610
1611- ```S`` <#var-S>`__ now needs to be set to a valid value within a 1611- :term:`S` now needs to be set to a valid value within a
1612 recipe. If ``S`` is not set in the recipe, the directory is not 1612 recipe. If ``S`` is not set in the recipe, the directory is not
1613 automatically created. If ``S`` does not point to a directory that 1613 automatically created. If ``S`` does not point to a directory that
1614 exists at the time the ```do_unpack`` <#ref-tasks-unpack>`__ task 1614 exists at the time the :ref:`ref-tasks-unpack` task
1615 finishes, a warning will be shown. 1615 finishes, a warning will be shown.
1616 1616
1617- ```LICENSE`` <#var-LICENSE>`__ is now validated for correct 1617- :term:`LICENSE` is now validated for correct
1618 formatting of multiple licenses. If the format is invalid (e.g. 1618 formatting of multiple licenses. If the format is invalid (e.g.
1619 multiple licenses are specified with no operators to specify how the 1619 multiple licenses are specified with no operators to specify how the
1620 multiple licenses interact), then a warning will be shown. 1620 multiple licenses interact), then a warning will be shown.
@@ -1633,7 +1633,7 @@ The following miscellaneous changes have occurred:
1633- The ``oe-pkgdata-util`` script now expects a "-p" option to be 1633- The ``oe-pkgdata-util`` script now expects a "-p" option to be
1634 specified before the ``pkgdata`` directory, which is now optional. If 1634 specified before the ``pkgdata`` directory, which is now optional. If
1635 the ``pkgdata`` directory is not specified, the script will run 1635 the ``pkgdata`` directory is not specified, the script will run
1636 BitBake to query ```PKGDATA_DIR`` <#var-PKGDATA_DIR>`__ from the 1636 BitBake to query :term:`PKGDATA_DIR` from the
1637 build environment. 1637 build environment.
1638 1638
1639Moving to the Yocto Project 2.0 Release 1639Moving to the Yocto Project 2.0 Release
@@ -1811,7 +1811,7 @@ Recipe Maintenance Tracking Data Moved to OE-Core
1811------------------------------------------------- 1811-------------------------------------------------
1812 1812
1813Maintenance tracking data for recipes that was previously part of 1813Maintenance tracking data for recipes that was previously part of
1814``meta-yocto`` has been moved to `OE-Core <#oe-core>`__. The change 1814``meta-yocto`` has been moved to :term:`OpenEmbedded-Core (OE-Core)`. The change
1815includes ``package_regex.inc`` and ``distro_alias.inc``, which are 1815includes ``package_regex.inc`` and ``distro_alias.inc``, which are
1816typically enabled when using the ``distrodata`` class. Additionally, the 1816typically enabled when using the ``distrodata`` class. Additionally, the
1817contents of ``upstream_tracking.inc`` has now been split out to the 1817contents of ``upstream_tracking.inc`` has now been split out to the
@@ -1827,7 +1827,7 @@ configuration are now automatically removed from sysroot as well as
1827removed from any other place managed by shared state. This automatic 1827removed from any other place managed by shared state. This automatic
1828cleanup means that the build system now properly handles situations such 1828cleanup means that the build system now properly handles situations such
1829as renaming the build system side of recipes, removal of layers from 1829as renaming the build system side of recipes, removal of layers from
1830``bblayers.conf``, and ```DISTRO_FEATURES`` <#var-DISTRO_FEATURES>`__ 1830``bblayers.conf``, and :term:`DISTRO_FEATURES`
1831changes. 1831changes.
1832 1832
1833Additionally, work directories for old versions of recipes are now 1833Additionally, work directories for old versions of recipes are now
@@ -1847,7 +1847,7 @@ modifications synchronized, it is not always obvious to developers how
1847to manipulate the Metadata as compared to the source. 1847to manipulate the Metadata as compared to the source.
1848 1848
1849Metadata processing has now been removed from the 1849Metadata processing has now been removed from the
1850```kernel-yocto`` <#ref-classes-kernel-yocto>`__ class and the external 1850:ref:`kernel-yocto <ref-classes-kernel-yocto>` class and the external
1851Metadata repository ``yocto-kernel-cache``, which has always been used 1851Metadata repository ``yocto-kernel-cache``, which has always been used
1852to seed the ``linux-yocto`` "meta" branch. This separate ``linux-yocto`` 1852to seed the ``linux-yocto`` "meta" branch. This separate ``linux-yocto``
1853cache repository is now the primary location for this data. Due to this 1853cache repository is now the primary location for this data. Due to this
@@ -1870,13 +1870,13 @@ The following QA checks have been added:
1870 1870
1871- Added an "invalid-chars" check for invalid (non-UTF8) characters in 1871- Added an "invalid-chars" check for invalid (non-UTF8) characters in
1872 recipe metadata variable values (i.e. 1872 recipe metadata variable values (i.e.
1873 ```DESCRIPTION`` <#var-DESCRIPTION>`__, 1873 :term:`DESCRIPTION`,
1874 ```SUMMARY`` <#var-SUMMARY>`__, ```LICENSE`` <#var-LICENSE>`__, and 1874 :term:`SUMMARY`, :term:`LICENSE`, and
1875 ```SECTION`` <#var-SECTION>`__). Some package managers do not support 1875 :term:`SECTION`). Some package managers do not support
1876 these characters. 1876 these characters.
1877 1877
1878- Added an "invalid-packageconfig" check for any options specified in 1878- Added an "invalid-packageconfig" check for any options specified in
1879 ```PACKAGECONFIG`` <#var-PACKAGECONFIG>`__ that do not match any 1879 :term:`PACKAGECONFIG` that do not match any
1880 ``PACKAGECONFIG`` option defined for the recipe. 1880 ``PACKAGECONFIG`` option defined for the recipe.
1881 1881
1882.. _migration-2.0-miscellaneous: 1882.. _migration-2.0-miscellaneous:
@@ -1888,7 +1888,7 @@ These additional changes exist:
1888 1888
1889- ``gtk-update-icon-cache`` has been renamed to ``gtk-icon-utils``. 1889- ``gtk-update-icon-cache`` has been renamed to ``gtk-icon-utils``.
1890 1890
1891- The ``tools-profile`` ```IMAGE_FEATURES`` <#var-IMAGE_FEATURES>`__ 1891- The ``tools-profile`` :term:`IMAGE_FEATURES`
1892 item as well as its corresponding packagegroup and 1892 item as well as its corresponding packagegroup and
1893 ``packagegroup-core-tools-profile`` no longer bring in ``oprofile``. 1893 ``packagegroup-core-tools-profile`` no longer bring in ``oprofile``.
1894 Bringing in ``oprofile`` was originally added to aid compilation on 1894 Bringing in ``oprofile`` was originally added to aid compilation on
@@ -1897,7 +1897,7 @@ These additional changes exist:
1897 powerful target platforms and the existence of better 1897 powerful target platforms and the existence of better
1898 cross-compilation tools. 1898 cross-compilation tools.
1899 1899
1900- The ```IMAGE_FSTYPES`` <#var-IMAGE_FSTYPES>`__ variable's default 1900- The :term:`IMAGE_FSTYPES` variable's default
1901 value now specifies ``ext4`` instead of ``ext3``. 1901 value now specifies ``ext4`` instead of ``ext3``.
1902 1902
1903- All support for the ``PRINC`` variable has been removed. 1903- All support for the ``PRINC`` variable has been removed.
@@ -1937,7 +1937,7 @@ The convention for overrides has always been for them to be lower-case
1937characters. This practice is now a requirement as BitBake's datastore 1937characters. This practice is now a requirement as BitBake's datastore
1938now assumes lower-case characters in order to give a slight performance 1938now assumes lower-case characters in order to give a slight performance
1939boost during parsing. In practical terms, this requirement means that 1939boost during parsing. In practical terms, this requirement means that
1940anything that ends up in ```OVERRIDES`` <#var-OVERRIDES>`__ must now 1940anything that ends up in :term:`OVERRIDES` must now
1941appear in lower-case characters (e.g. values for ``MACHINE``, 1941appear in lower-case characters (e.g. values for ``MACHINE``,
1942``TARGET_ARCH``, ``DISTRO``, and also recipe names if 1942``TARGET_ARCH``, ``DISTRO``, and also recipe names if
1943``_pn-``\ recipename overrides are to be effective). 1943``_pn-``\ recipename overrides are to be effective).
@@ -1970,7 +1970,7 @@ layer to make this change: sed -e 's:\(\.getVar([^,()]*\)):\1, False):g'
1970Makefile Environment Changes 1970Makefile Environment Changes
1971---------------------------- 1971----------------------------
1972 1972
1973```EXTRA_OEMAKE`` <#var-EXTRA_OEMAKE>`__ now defaults to "" instead of 1973:term:`EXTRA_OEMAKE` now defaults to "" instead of
1974"-e MAKEFLAGS=". Setting ``EXTRA_OEMAKE`` to "-e MAKEFLAGS=" by default 1974"-e MAKEFLAGS=". Setting ``EXTRA_OEMAKE`` to "-e MAKEFLAGS=" by default
1975was a historical accident that has required many classes (e.g. 1975was a historical accident that has required many classes (e.g.
1976``autotools``, ``module``) and recipes to override this default in order 1976``autotools``, ``module``) and recipes to override this default in order
@@ -2007,14 +2007,14 @@ breaking FHS.
2007``ac_cv_sizeof_off_t`` is No Longer Cached in Site Files 2007``ac_cv_sizeof_off_t`` is No Longer Cached in Site Files
2008-------------------------------------------------------- 2008--------------------------------------------------------
2009 2009
2010For recipes inheriting the ```autotools`` <#ref-classes-autotools>`__ 2010For recipes inheriting the :ref:`autotools <ref-classes-autotools>`
2011class, ``ac_cv_sizeof_off_t`` is no longer cached in the site files for 2011class, ``ac_cv_sizeof_off_t`` is no longer cached in the site files for
2012``autoconf``. The reason for this change is because the 2012``autoconf``. The reason for this change is because the
2013``ac_cv_sizeof_off_t`` value is not necessarily static per architecture 2013``ac_cv_sizeof_off_t`` value is not necessarily static per architecture
2014as was previously assumed. Rather, the value changes based on whether 2014as was previously assumed. Rather, the value changes based on whether
2015large file support is enabled. For most software that uses ``autoconf``, 2015large file support is enabled. For most software that uses ``autoconf``,
2016this change should not be a problem. However, if you have a recipe that 2016this change should not be a problem. However, if you have a recipe that
2017bypasses the standard ```do_configure`` <#ref-tasks-configure>`__ task 2017bypasses the standard :ref:`ref-tasks-configure` task
2018from the ``autotools`` class and the software the recipe is building 2018from the ``autotools`` class and the software the recipe is building
2019uses a very old version of ``autoconf``, the recipe might be incapable 2019uses a very old version of ``autoconf``, the recipe might be incapable
2020of determining the correct size of ``off_t`` during ``do_configure``. 2020of determining the correct size of ``off_t`` during ``do_configure``.
@@ -2030,7 +2030,7 @@ implementation does get used.
2030Image Generation is Now Split Out from Filesystem Generation 2030Image Generation is Now Split Out from Filesystem Generation
2031------------------------------------------------------------ 2031------------------------------------------------------------
2032 2032
2033Previously, for image recipes the ```do_rootfs`` <#ref-tasks-rootfs>`__ 2033Previously, for image recipes the :ref:`ref-tasks-rootfs`
2034task assembled the filesystem and then from that filesystem generated 2034task assembled the filesystem and then from that filesystem generated
2035images. With this Yocto Project release, image generation is split into 2035images. With this Yocto Project release, image generation is split into
2036separate ```do_image_*`` <#ref-tasks-image>`__ tasks for clarity both in 2036separate ```do_image_*`` <#ref-tasks-image>`__ tasks for clarity both in
@@ -2047,7 +2047,7 @@ time.
2047 2047
2048A minor part of this restructuring is that the post-processing 2048A minor part of this restructuring is that the post-processing
2049definitions and functions have been moved from the 2049definitions and functions have been moved from the
2050```image`` <#ref-classes-image>`__ class to the 2050:ref:`image <ref-classes-image>` class to the
2051```rootfs-postcommands`` <#ref-classes-rootfs*>`__ class. Functionally, 2051```rootfs-postcommands`` <#ref-classes-rootfs*>`__ class. Functionally,
2052however, they remain unchanged. 2052however, they remain unchanged.
2053 2053
@@ -2099,7 +2099,7 @@ Class Changes
2099The following classes have changed: 2099The following classes have changed:
2100 2100
2101- ``autotools_stage``: Removed because the 2101- ``autotools_stage``: Removed because the
2102 ```autotools`` <#ref-classes-autotools>`__ class now provides its 2102 :ref:`autotools <ref-classes-autotools>` class now provides its
2103 functionality. Recipes that inherited from ``autotools_stage`` should 2103 functionality. Recipes that inherited from ``autotools_stage`` should
2104 now inherit from ``autotools`` instead. 2104 now inherit from ``autotools`` instead.
2105 2105
@@ -2108,7 +2108,7 @@ The following classes have changed:
2108 this change should not cause any issues. 2108 this change should not cause any issues.
2109 2109
2110- ``bootimg``: Merged into the 2110- ``bootimg``: Merged into the
2111 ```image-live`` <#ref-classes-image-live>`__ class. The ``bootimg`` 2111 :ref:`image-live <ref-classes-image-live>` class. The ``bootimg``
2112 class was rarely directly used. Consequently, this change should not 2112 class was rarely directly used. Consequently, this change should not
2113 cause any issues. 2113 cause any issues.
2114 2114
@@ -2166,7 +2166,7 @@ The following changes have been made for the Poky distribution:
2166 not need to change anything unless you are relying on this naming 2166 not need to change anything unless you are relying on this naming
2167 elsewhere. 2167 elsewhere.
2168 2168
2169- The ```uninative`` <#ref-classes-uninative>`__ class is now enabled 2169- The :ref:`uninative <ref-classes-uninative>` class is now enabled
2170 by default in Poky. This class attempts to isolate the build system 2170 by default in Poky. This class attempts to isolate the build system
2171 from the host distribution's C library and makes re-use of native 2171 from the host distribution's C library and makes re-use of native
2172 shared state artifacts across different host distributions practical. 2172 shared state artifacts across different host distributions practical.
@@ -2278,7 +2278,7 @@ These additional changes exist:
2278 2278
2279- Previously, the following list of packages were removed if 2279- Previously, the following list of packages were removed if
2280 package-management was not in 2280 package-management was not in
2281 ```IMAGE_FEATURES`` <#var-IMAGE_FEATURES>`__, regardless of any 2281 :term:`IMAGE_FEATURES`, regardless of any
2282 dependencies: update-rc.d base-passwd shadow update-alternatives 2282 dependencies: update-rc.d base-passwd shadow update-alternatives
2283 run-postinsts With the Yocto Project 2.1 release, these packages are 2283 run-postinsts With the Yocto Project 2.1 release, these packages are
2284 only removed if "read-only-rootfs" is in ``IMAGE_FEATURES``, since 2284 only removed if "read-only-rootfs" is in ``IMAGE_FEATURES``, since
@@ -2362,9 +2362,9 @@ Staging Directories in Sysroot Has Been Simplified
2362-------------------------------------------------- 2362--------------------------------------------------
2363 2363
2364The way directories are staged in sysroot has been simplified and 2364The way directories are staged in sysroot has been simplified and
2365introduces the new ```SYSROOT_DIRS`` <#var-SYSROOT_DIRS>`__, 2365introduces the new :term:`SYSROOT_DIRS`,
2366```SYSROOT_DIRS_NATIVE`` <#var-SYSROOT_DIRS_NATIVE>`__, and 2366:term:`SYSROOT_DIRS_NATIVE`, and
2367```SYSROOT_DIRS_BLACKLIST`` <#var-SYSROOT_DIRS_BLACKLIST>`__. See the 2367:term:`SYSROOT_DIRS_BLACKLIST`. See the
2368`v2 patch series on the OE-Core Mailing 2368`v2 patch series on the OE-Core Mailing
2369List <http://lists.openembedded.org/pipermail/openembedded-core/2016-May/121365.html>`__ 2369List <http://lists.openembedded.org/pipermail/openembedded-core/2016-May/121365.html>`__
2370for additional information. 2370for additional information.
@@ -2408,7 +2408,7 @@ Metadata Must Now Use Python 3 Syntax
2408The metadata is now required to use Python 3 syntax. For help preparing 2408The metadata is now required to use Python 3 syntax. For help preparing
2409metadata, see any of the many Python 3 porting guides available. 2409metadata, see any of the many Python 3 porting guides available.
2410Alternatively, you can reference the conversion commits for Bitbake and 2410Alternatively, you can reference the conversion commits for Bitbake and
2411you can use `OE-Core <#oe-core>`__ as a guide for changes. Following are 2411you can use :term:`OpenEmbedded-Core (OE-Core)` as a guide for changes. Following are
2412particular areas of interest: \* subprocess command-line pipes needing 2412particular areas of interest: \* subprocess command-line pipes needing
2413locale decoding \* the syntax for octal values changed \* the 2413locale decoding \* the syntax for octal values changed \* the
2414``iter*()`` functions changed name \* iterators now return views, not 2414``iter*()`` functions changed name \* iterators now return views, not
@@ -2449,7 +2449,7 @@ compared to uClibc.
2449``${B}`` No Longer Default Working Directory for Tasks 2449``${B}`` No Longer Default Working Directory for Tasks
2450------------------------------------------------------ 2450------------------------------------------------------
2451 2451
2452``${``\ ```B`` <#var-B>`__\ ``}`` is no longer the default working 2452``${``\ :term:`B`\ ``}`` is no longer the default working
2453directory for tasks. Consequently, any custom tasks you define now need 2453directory for tasks. Consequently, any custom tasks you define now need
2454to either have the 2454to either have the
2455``[``\ ```dirs`` <&YOCTO_DOCS_BB_URL;#variable-flags>`__\ ``]`` flag 2455``[``\ ```dirs`` <&YOCTO_DOCS_BB_URL;#variable-flags>`__\ ``]`` flag
@@ -2479,7 +2479,7 @@ enables fine-grained tuning of options passed to QEMU without the
2479``runqemu`` script hard-coding any knowledge about different machines. 2479``runqemu`` script hard-coding any knowledge about different machines.
2480Using a configuration file is particularly convenient when trying to use 2480Using a configuration file is particularly convenient when trying to use
2481QEMU with machines other than the ``qemu*`` machines in 2481QEMU with machines other than the ``qemu*`` machines in
2482`OE-Core <#oe-core>`__. The ``qemuboot.conf`` file is generated by the 2482:term:`OpenEmbedded-Core (OE-Core)`. The ``qemuboot.conf`` file is generated by the
2483``qemuboot`` class when the root filesystem is being build (i.e. build 2483``qemuboot`` class when the root filesystem is being build (i.e. build
2484rootfs). QEMU boot arguments can be set in BSP's configuration file and 2484rootfs). QEMU boot arguments can be set in BSP's configuration file and
2485the ``qemuboot`` class will save them to ``qemuboot.conf``. 2485the ``qemuboot`` class will save them to ``qemuboot.conf``.
@@ -2527,7 +2527,7 @@ socket,id=virtcon,port=@PORT@,host=127.0.0.1 -device
2527virtconsole,chardev=virtcon" runqemu will replace "@PORT@" with the port 2527virtconsole,chardev=virtcon" runqemu will replace "@PORT@" with the port
2528number which is used. 2528number which is used.
2529 2529
2530To use ``runqemu``, set ```IMAGE_CLASSES`` <#var-IMAGE_CLASSES>`__ as 2530To use ``runqemu``, set :term:`IMAGE_CLASSES` as
2531follows and run ``runqemu``: 2531follows and run ``runqemu``:
2532 2532
2533.. note:: 2533.. note::
@@ -2545,7 +2545,7 @@ Default Linker Hash Style Changed
2545 2545
2546The default linker hash style for ``gcc-cross`` is now "sysv" in order 2546The default linker hash style for ``gcc-cross`` is now "sysv" in order
2547to catch recipes that are building software without using the 2547to catch recipes that are building software without using the
2548OpenEmbedded ```LDFLAGS`` <#var-LDFLAGS>`__. This change could result in 2548OpenEmbedded :term:`LDFLAGS`. This change could result in
2549seeing some "No GNU_HASH in the elf binary" QA issues when building such 2549seeing some "No GNU_HASH in the elf binary" QA issues when building such
2550recipes. You need to fix these recipes so that they use the expected 2550recipes. You need to fix these recipes so that they use the expected
2551``LDFLAGS``. Depending on how the software is built, the build system 2551``LDFLAGS``. Depending on how the software is built, the build system
@@ -2559,7 +2559,7 @@ to the recipe: TARGET_CC_ARCH += "${LDFLAGS}"
2559-------------------------------------------------------------- 2559--------------------------------------------------------------
2560 2560
2561The ``KERNEL_IMAGE_BASE_NAME`` variable no longer uses the 2561The ``KERNEL_IMAGE_BASE_NAME`` variable no longer uses the
2562```KERNEL_IMAGETYPE`` <#var-KERNEL_IMAGETYPE>`__ variable to create the 2562:term:`KERNEL_IMAGETYPE` variable to create the
2563image's base name. Because the OpenEmbedded build system can now build 2563image's base name. Because the OpenEmbedded build system can now build
2564multiple kernel image types, this part of the kernel image base name as 2564multiple kernel image types, this part of the kernel image base name as
2565been removed leaving only the following: KERNEL_IMAGE_BASE_NAME ?= 2565been removed leaving only the following: KERNEL_IMAGE_BASE_NAME ?=
@@ -2577,11 +2577,11 @@ The following changes took place for BitBake:
2577- The "goggle" UI and standalone image-writer tool have been removed as 2577- The "goggle" UI and standalone image-writer tool have been removed as
2578 they both require GTK+ 2.0 and were not being maintained. 2578 they both require GTK+ 2.0 and were not being maintained.
2579 2579
2580- The Perforce fetcher now supports ```SRCREV`` <#var-SRCREV>`__ for 2580- The Perforce fetcher now supports :term:`SRCREV` for
2581 specifying the source revision to use, be it 2581 specifying the source revision to use, be it
2582 ``${``\ ```AUTOREV`` <#var-AUTOREV>`__\ ``}``, changelist number, 2582 ``${``\ :term:`AUTOREV`\ ``}``, changelist number,
2583 p4date, or label, in preference to separate 2583 p4date, or label, in preference to separate
2584 ```SRC_URI`` <#var-SRC_URI>`__ parameters to specify these. This 2584 :term:`SRC_URI` parameters to specify these. This
2585 change is more in-line with how the other fetchers work for source 2585 change is more in-line with how the other fetchers work for source
2586 control systems. Recipes that fetch from Perforce will need to be 2586 control systems. Recipes that fetch from Perforce will need to be
2587 updated to use ``SRCREV`` in place of specifying the source revision 2587 updated to use ``SRCREV`` in place of specifying the source revision
@@ -2687,8 +2687,8 @@ The following classes have been removed:
2687 2687
2688- ``distutils3-native-base``: No longer needed. 2688- ``distutils3-native-base``: No longer needed.
2689 2689
2690- ``sdl``: Only set ```DEPENDS`` <#var-DEPENDS>`__ and 2690- ``sdl``: Only set :term:`DEPENDS` and
2691 ```SECTION`` <#var-SECTION>`__, which are better set within the 2691 :term:`SECTION`, which are better set within the
2692 recipe instead. 2692 recipe instead.
2693 2693
2694- ``sip``: Mostly unused. 2694- ``sip``: Mostly unused.
@@ -2723,9 +2723,9 @@ The following miscellaneous changes have occurred:
2723 respective recipes. 2723 respective recipes.
2724 2724
2725- Both ``devtool add`` and ``recipetool create`` now use a fixed 2725- Both ``devtool add`` and ``recipetool create`` now use a fixed
2726 ```SRCREV`` <#var-SRCREV>`__ by default when fetching from a Git 2726 :term:`SRCREV` by default when fetching from a Git
2727 repository. You can override this in either case to use 2727 repository. You can override this in either case to use
2728 ``${``\ ```AUTOREV`` <#var-AUTOREV>`__\ ``}`` instead by using the 2728 ``${``\ :term:`AUTOREV`\ ``}`` instead by using the
2729 ``-a`` or ``DASHDASHautorev`` command-line option 2729 ``-a`` or ``DASHDASHautorev`` command-line option
2730 2730
2731- ``distcc``: GTK+ UI is now disabled by default. 2731- ``distcc``: GTK+ UI is now disabled by default.
@@ -2776,14 +2776,14 @@ Consider the following:
2776- *Specify Pre-Installation and Post-Installation Native Tool 2776- *Specify Pre-Installation and Post-Installation Native Tool
2777 Dependencies:* You must specifically specify any special native tool 2777 Dependencies:* You must specifically specify any special native tool
2778 dependencies of ``pkg_preinst`` and ``pkg_postinst`` scripts by using 2778 dependencies of ``pkg_preinst`` and ``pkg_postinst`` scripts by using
2779 the ```PACKAGE_WRITE_DEPS`` <#var-PACKAGE_WRITE_DEPS>`__ variable. 2779 the :term:`PACKAGE_WRITE_DEPS` variable.
2780 Specifying these dependencies ensures that these tools are available 2780 Specifying these dependencies ensures that these tools are available
2781 if these scripts need to be run on the build host during the 2781 if these scripts need to be run on the build host during the
2782 ```do_rootfs`` <#ref-tasks-rootfs>`__ task. 2782 :ref:`ref-tasks-rootfs` task.
2783 2783
2784 As an example, see the ``dbus`` recipe. You will see that this recipe 2784 As an example, see the ``dbus`` recipe. You will see that this recipe
2785 has a ``pkg_postinst`` that calls ``systemctl`` if "systemd" is in 2785 has a ``pkg_postinst`` that calls ``systemctl`` if "systemd" is in
2786 ```DISTRO_FEATURES`` <#var-DISTRO_FEATURES>`__. In the example, 2786 :term:`DISTRO_FEATURES`. In the example,
2787 ``systemd-systemctl-native`` is added to ``PACKAGE_WRITE_DEPS``, 2787 ``systemd-systemctl-native`` is added to ``PACKAGE_WRITE_DEPS``,
2788 which is also conditional on "systemd" being in ``DISTRO_FEATURES``. 2788 which is also conditional on "systemd" being in ``DISTRO_FEATURES``.
2789 2789
@@ -2797,7 +2797,7 @@ Consider the following:
2797 functions being called through ``SSTATEPOSTINSTFUNCS`` are doing 2797 functions being called through ``SSTATEPOSTINSTFUNCS`` are doing
2798 relocation, then you will need to change these to use a 2798 relocation, then you will need to change these to use a
2799 post-installation script that is installed by a function added to 2799 post-installation script that is installed by a function added to
2800 ```SYSROOT_PREPROCESS_FUNCS`` <#var-SYSROOT_PREPROCESS_FUNCS>`__. 2800 :term:`SYSROOT_PREPROCESS_FUNCS`.
2801 2801
2802 For an example, see the ``pixbufcache`` class in ``meta/classes/`` in 2802 For an example, see the ``pixbufcache`` class in ``meta/classes/`` in
2803 the Yocto Project `Source 2803 the Yocto Project `Source
@@ -2821,7 +2821,7 @@ Consider the following:
2821 the shared sysroot is now gone, the scripts 2821 the shared sysroot is now gone, the scripts
2822 ``oe-find-native-sysroot`` and ``oe-run-native`` have been changed 2822 ``oe-find-native-sysroot`` and ``oe-run-native`` have been changed
2823 such that you need to specify which recipe's 2823 such that you need to specify which recipe's
2824 ```STAGING_DIR_NATIVE`` <#var-STAGING_DIR_NATIVE>`__ is used. 2824 :term:`STAGING_DIR_NATIVE` is used.
2825 2825
2826.. note:: 2826.. note::
2827 2827
@@ -2839,8 +2839,8 @@ Within the environment used to run build tasks, the environment variable
2839``PATH`` is now sanitized such that the normal native binary paths 2839``PATH`` is now sanitized such that the normal native binary paths
2840(``/bin``, ``/sbin``, ``/usr/bin`` and so forth) are removed and a 2840(``/bin``, ``/sbin``, ``/usr/bin`` and so forth) are removed and a
2841directory containing symbolic links linking only to the binaries from 2841directory containing symbolic links linking only to the binaries from
2842the host mentioned in the ```HOSTTOOLS`` <#var-HOSTTOOLS>`__ and 2842the host mentioned in the :term:`HOSTTOOLS` and
2843```HOSTTOOLS_NONFATAL`` <#var-HOSTTOOLS_NONFATAL>`__ variables is added 2843:term:`HOSTTOOLS_NONFATAL` variables is added
2844to ``PATH``. 2844to ``PATH``.
2845 2845
2846Consequently, any native binaries provided by the host that you need to 2846Consequently, any native binaries provided by the host that you need to
@@ -2848,7 +2848,7 @@ call needs to be in one of these two variables at the configuration
2848level. 2848level.
2849 2849
2850Alternatively, you can add a native recipe (i.e. ``-native``) that 2850Alternatively, you can add a native recipe (i.e. ``-native``) that
2851provides the binary to the recipe's ```DEPENDS`` <#var-DEPENDS>`__ 2851provides the binary to the recipe's :term:`DEPENDS`
2852value. 2852value.
2853 2853
2854.. note:: 2854.. note::
@@ -2881,7 +2881,7 @@ The following changes to scripts took place:
2881- *``cleanup-workdir``:* The ``cleanup-workdir`` script has been 2881- *``cleanup-workdir``:* The ``cleanup-workdir`` script has been
2882 removed because the script was found to be deleting files it should 2882 removed because the script was found to be deleting files it should
2883 not have, which lead to broken build trees. Rather than trying to 2883 not have, which lead to broken build trees. Rather than trying to
2884 delete portions of ```TMPDIR`` <#var-TMPDIR>`__ and getting it wrong, 2884 delete portions of :term:`TMPDIR` and getting it wrong,
2885 it is recommended that you delete ``TMPDIR`` and have it restored 2885 it is recommended that you delete ``TMPDIR`` and have it restored
2886 from shared state (sstate) on subsequent builds. 2886 from shared state (sstate) on subsequent builds.
2887 2887
@@ -2927,8 +2927,8 @@ The following changes took place for BitBake:
2927 between recipes, which could be misleading. 2927 between recipes, which could be misleading.
2928 2928
2929- *Mirror Variable Splitting Changes:* Mirror variables including 2929- *Mirror Variable Splitting Changes:* Mirror variables including
2930 ```MIRRORS`` <#var-MIRRORS>`__, ```PREMIRRORS`` <#var-PREMIRRORS>`__, 2930 :term:`MIRRORS`, :term:`PREMIRRORS`,
2931 and ```SSTATE_MIRRORS`` <#var-SSTATE_MIRRORS>`__ can now separate 2931 and :term:`SSTATE_MIRRORS` can now separate
2932 values entirely with spaces. Consequently, you no longer need "\\n". 2932 values entirely with spaces. Consequently, you no longer need "\\n".
2933 BitBake looks for pairs of values, which simplifies usage. There 2933 BitBake looks for pairs of values, which simplifies usage. There
2934 should be no change required to existing mirror variable values 2934 should be no change required to existing mirror variable values
@@ -2940,7 +2940,7 @@ The following changes took place for BitBake:
2940 when the "protocol" parameter is set to "svn+ssh". You can only use 2940 when the "protocol" parameter is set to "svn+ssh". You can only use
2941 the new parameter to specify the ``ssh`` program used by SVN. The SVN 2941 the new parameter to specify the ``ssh`` program used by SVN. The SVN
2942 fetcher passes the new parameter through the ``SVN_SSH`` environment 2942 fetcher passes the new parameter through the ``SVN_SSH`` environment
2943 variable during the ```do_fetch`` <#ref-tasks-fetch>`__ task. 2943 variable during the :ref:`ref-tasks-fetch` task.
2944 2944
2945 See the "`Subversion (SVN) Fetcher 2945 See the "`Subversion (SVN) Fetcher
2946 (svn://) <&YOCTO_DOCS_BB_URL;#svn-fetcher>`__" section in the BitBake 2946 (svn://) <&YOCTO_DOCS_BB_URL;#svn-fetcher>`__" section in the BitBake
@@ -2974,8 +2974,8 @@ GPLv2 Versions of GPLv3 Recipes Moved
2974Older GPLv2 versions of GPLv3 recipes have moved to a separate 2974Older GPLv2 versions of GPLv3 recipes have moved to a separate
2975``meta-gplv2`` layer. 2975``meta-gplv2`` layer.
2976 2976
2977If you use ```INCOMPATIBLE_LICENSE`` <#var-INCOMPATIBLE_LICENSE>`__ to 2977If you use :term:`INCOMPATIBLE_LICENSE` to
2978exclude GPLv3 or set ```PREFERRED_VERSION`` <#var-PREFERRED_VERSION>`__ 2978exclude GPLv3 or set :term:`PREFERRED_VERSION`
2979to substitute a GPLv2 version of a GPLv3 recipe, then you must add the 2979to substitute a GPLv2 version of a GPLv3 recipe, then you must add the
2980``meta-gplv2`` layer to your configuration. 2980``meta-gplv2`` layer to your configuration.
2981 2981
@@ -3052,7 +3052,7 @@ The following package management changes took place:
3052 This change was made because too many places in DNF/RPM4 stack 3052 This change was made because too many places in DNF/RPM4 stack
3053 already make that assumption. Only the filenames and the architecture 3053 already make that assumption. Only the filenames and the architecture
3054 tag has changed. Nothing else has changed in OE-core system, 3054 tag has changed. Nothing else has changed in OE-core system,
3055 particularly in the ```allarch.bbclass`` <#ref-classes-allarch>`__ 3055 particularly in the :ref:`allarch.bbclass <ref-classes-allarch>`
3056 class. 3056 class.
3057 3057
3058- Signing of remote package feeds using ``PACKAGE_FEED_SIGN`` is not 3058- Signing of remote package feeds using ``PACKAGE_FEED_SIGN`` is not
@@ -3100,7 +3100,7 @@ The following recipes have been removed:
3100- *``tremor:``* Moved to ``meta-multimedia``. Fixed-integer Vorbis 3100- *``tremor:``* Moved to ``meta-multimedia``. Fixed-integer Vorbis
3101 decoding is not needed by current hardware. Thus, GStreamer's ivorbis 3101 decoding is not needed by current hardware. Thus, GStreamer's ivorbis
3102 plugin has been disabled by default eliminating the need for the 3102 plugin has been disabled by default eliminating the need for the
3103 ``tremor`` recipe in `OE-Core <#oe-core>`__. 3103 ``tremor`` recipe in :term:`OpenEmbedded-Core (OE-Core)`.
3104 3104
3105- *``gummiboot:``* Replaced by ``systemd-boot``. 3105- *``gummiboot:``* Replaced by ``systemd-boot``.
3106 3106
@@ -3151,7 +3151,7 @@ The following QA checks have changed:
3151 warning, you need to address missing runtime dependencies. 3151 warning, you need to address missing runtime dependencies.
3152 3152
3153 For additional information, see the 3153 For additional information, see the
3154 ```insane`` <#ref-classes-insane>`__ class and the "`Errors and 3154 :ref:`insane <ref-classes-insane>` class and the "`Errors and
3155 Warnings <#qa-errors-and-warnings>`__" section. 3155 Warnings <#qa-errors-and-warnings>`__" section.
3156 3156
3157.. _migration-2.3-miscellaneous-changes: 3157.. _migration-2.3-miscellaneous-changes:
@@ -3162,7 +3162,7 @@ Miscellaneous Changes
3162The following miscellaneous changes have occurred: 3162The following miscellaneous changes have occurred:
3163 3163
3164- In this release, a number of recipes have been changed to ignore the 3164- In this release, a number of recipes have been changed to ignore the
3165 ``largefile`` ```DISTRO_FEATURES`` <#var-DISTRO_FEATURES>`__ item, 3165 ``largefile`` :term:`DISTRO_FEATURES` item,
3166 enabling large file support unconditionally. This feature has always 3166 enabling large file support unconditionally. This feature has always
3167 been enabled by default. Disabling the feature has not been widely 3167 been enabled by default. Disabling the feature has not been widely
3168 tested. 3168 tested.
@@ -3174,8 +3174,8 @@ The following miscellaneous changes have occurred:
3174 largefile 3174 largefile
3175 feature, which would make it unconditionally enabled everywhere. 3175 feature, which would make it unconditionally enabled everywhere.
3176 3176
3177- If the ```DISTRO_VERSION`` <#var-DISTRO_VERSION>`__ value contains 3177- If the :term:`DISTRO_VERSION` value contains
3178 the value of the ```DATE`` <#var-DATE>`__ variable, which is the 3178 the value of the :term:`DATE` variable, which is the
3179 default between Poky releases, the ``DATE`` value is explicitly 3179 default between Poky releases, the ``DATE`` value is explicitly
3180 excluded from ``/etc/issue`` and ``/etc/issue.net``, which is 3180 excluded from ``/etc/issue`` and ``/etc/issue.net``, which is
3181 displayed at the login prompt, in order to avoid conflicts with 3181 displayed at the login prompt, in order to avoid conflicts with
@@ -3186,7 +3186,7 @@ The following miscellaneous changes have occurred:
3186 If you need the build date recorded in ``/etc/issue*`` or anywhere 3186 If you need the build date recorded in ``/etc/issue*`` or anywhere
3187 else in your image, a better method is to define a post-processing 3187 else in your image, a better method is to define a post-processing
3188 function to do it and have the function called from 3188 function to do it and have the function called from
3189 ```ROOTFS_POSTPROCESS_COMMAND`` <#var-ROOTFS_POSTPROCESS_COMMAND>`__. 3189 :term:`ROOTFS_POSTPROCESS_COMMAND`.
3190 Doing so ensures the value is always up-to-date with the created 3190 Doing so ensures the value is always up-to-date with the created
3191 image. 3191 image.
3192 3192
@@ -3195,7 +3195,7 @@ The following miscellaneous changes have occurred:
3195 RSA keys only, and with recent versions of OpenSSH, which deprecates 3195 RSA keys only, and with recent versions of OpenSSH, which deprecates
3196 DSA host keys. 3196 DSA host keys.
3197 3197
3198- The ```buildhistory`` <#ref-classes-buildhistory>`__ class now 3198- The :ref:`buildhistory <ref-classes-buildhistory>` class now
3199 correctly uses tabs as separators between all columns in 3199 correctly uses tabs as separators between all columns in
3200 ``installed-package-sizes.txt`` in order to aid import into other 3200 ``installed-package-sizes.txt`` in order to aid import into other
3201 tools. 3201 tools.
@@ -3206,7 +3206,7 @@ The following miscellaneous changes have occurred:
3206 DISTRO_FEATURES_BACKFILL_CONSIDERED_append = " ldconfig" 3206 DISTRO_FEATURES_BACKFILL_CONSIDERED_append = " ldconfig"
3207 3207
3208- The default value of 3208- The default value of
3209 ```COPYLEFT_LICENSE_INCLUDE`` <#var-COPYLEFT_LICENSE_INCLUDE>`__ now 3209 :term:`COPYLEFT_LICENSE_INCLUDE` now
3210 includes all versions of AGPL licenses in addition to GPL and LGPL. 3210 includes all versions of AGPL licenses in addition to GPL and LGPL.
3211 3211
3212 .. note:: 3212 .. note::
@@ -3227,14 +3227,14 @@ The following miscellaneous changes have occurred:
3227 3227
3228 If you need to preserve these ``.la`` files (e.g. in a custom 3228 If you need to preserve these ``.la`` files (e.g. in a custom
3229 distribution), you must change 3229 distribution), you must change
3230 ```INHERIT_DISTRO`` <#var-INHERIT_DISTRO>`__ such that 3230 :term:`INHERIT_DISTRO` such that
3231 "remove-libtool" is not included in the value. 3231 "remove-libtool" is not included in the value.
3232 3232
3233- Extensible SDKs built for GCC 5+ now refuse to install on a 3233- Extensible SDKs built for GCC 5+ now refuse to install on a
3234 distribution where the host GCC version is 4.8 or 4.9. This change 3234 distribution where the host GCC version is 4.8 or 4.9. This change
3235 resulted from the fact that the installation is known to fail due to 3235 resulted from the fact that the installation is known to fail due to
3236 the way the ``uninative`` shared state (sstate) package is built. See 3236 the way the ``uninative`` shared state (sstate) package is built. See
3237 the ```uninative`` <#ref-classes-uninative>`__ class for additional 3237 the :ref:`uninative <ref-classes-uninative>` class for additional
3238 information. 3238 information.
3239 3239
3240- All native and nativesdk recipes now use a separate 3240- All native and nativesdk recipes now use a separate
@@ -3242,18 +3242,18 @@ The following miscellaneous changes have occurred:
3242 recipes for the target, in order to avoid unnecessary rebuilds. 3242 recipes for the target, in order to avoid unnecessary rebuilds.
3243 3243
3244 The ``DISTRO_FEATURES`` for ``native`` recipes is 3244 The ``DISTRO_FEATURES`` for ``native`` recipes is
3245 ```DISTRO_FEATURES_NATIVE`` <#var-DISTRO_FEATURES_NATIVE>`__ added to 3245 :term:`DISTRO_FEATURES_NATIVE` added to
3246 an intersection of ``DISTRO_FEATURES`` and 3246 an intersection of ``DISTRO_FEATURES`` and
3247 ```DISTRO_FEATURES_FILTER_NATIVE`` <#var-DISTRO_FEATURES_FILTER_NATIVE>`__. 3247 :term:`DISTRO_FEATURES_FILTER_NATIVE`.
3248 3248
3249 For nativesdk recipes, the corresponding variables are 3249 For nativesdk recipes, the corresponding variables are
3250 ```DISTRO_FEATURES_NATIVESDK`` <#var-DISTRO_FEATURES_NATIVESDK>`__ 3250 :term:`DISTRO_FEATURES_NATIVESDK`
3251 and 3251 and
3252 ```DISTRO_FEATURES_FILTER_NATIVESDK`` <#var-DISTRO_FEATURES_FILTER_NATIVESDK>`__. 3252 :term:`DISTRO_FEATURES_FILTER_NATIVESDK`.
3253 3253
3254- The ``FILESDIR`` variable, which was previously deprecated and rarely 3254- The ``FILESDIR`` variable, which was previously deprecated and rarely
3255 used, has now been removed. You should change any recipes that set 3255 used, has now been removed. You should change any recipes that set
3256 ``FILESDIR`` to set ```FILESPATH`` <#var-FILESPATH>`__ instead. 3256 ``FILESDIR`` to set :term:`FILESPATH` instead.
3257 3257
3258- The ``MULTIMACH_HOST_SYS`` variable has been removed as it is no 3258- The ``MULTIMACH_HOST_SYS`` variable has been removed as it is no
3259 longer needed with recipe-specific sysroots. 3259 longer needed with recipe-specific sysroots.
@@ -3272,7 +3272,7 @@ Memory Resident Mode
3272A persistent mode is now available in BitBake's default operation, 3272A persistent mode is now available in BitBake's default operation,
3273replacing its previous "memory resident mode" (i.e. 3273replacing its previous "memory resident mode" (i.e.
3274``oe-init-build-env-memres``). Now you only need to set 3274``oe-init-build-env-memres``). Now you only need to set
3275```BB_SERVER_TIMEOUT`` <#var-BB_SERVER_TIMEOUT>`__ to a timeout (in 3275:term:`BB_SERVER_TIMEOUT` to a timeout (in
3276seconds) and BitBake's server stays resident for that amount of time 3276seconds) and BitBake's server stays resident for that amount of time
3277between invocations. The ``oe-init-build-env-memres`` script has been 3277between invocations. The ``oe-init-build-env-memres`` script has been
3278removed since a separate environment setup script is no longer needed. 3278removed since a separate environment setup script is no longer needed.
@@ -3306,11 +3306,11 @@ occurred:
3306 3306
3307 - The ``su`` program is now packaged in a separate "util-linux-su" 3307 - The ``su`` program is now packaged in a separate "util-linux-su"
3308 package, which is only built when "pam" is listed in the 3308 package, which is only built when "pam" is listed in the
3309 ```DISTRO_FEATURES`` <#var-DISTRO_FEATURES>`__ variable. 3309 :term:`DISTRO_FEATURES` variable.
3310 ``util-linux`` should not be installed unless it is needed because 3310 ``util-linux`` should not be installed unless it is needed because
3311 ``su`` is normally provided through the shadow file format. The 3311 ``su`` is normally provided through the shadow file format. The
3312 main ``util-linux`` package has runtime dependencies (i.e. 3312 main ``util-linux`` package has runtime dependencies (i.e.
3313 ```RDEPENDS`` <#var-RDEPENDS>`__) on the ``util-linux-su`` package 3313 :term:`RDEPENDS`) on the ``util-linux-su`` package
3314 when "pam" is in ``DISTRO_FEATURES``. 3314 when "pam" is in ``DISTRO_FEATURES``.
3315 3315
3316 - The ``switch_root`` program is now packaged in a separate 3316 - The ``switch_root`` program is now packaged in a separate
@@ -3318,7 +3318,7 @@ occurred:
3318 do not need the whole ``util-linux`` package or the busybox 3318 do not need the whole ``util-linux`` package or the busybox
3319 binary, which are both much larger than ``switch_root``. The main 3319 binary, which are both much larger than ``switch_root``. The main
3320 ``util-linux`` package has a recommended runtime dependency (i.e. 3320 ``util-linux`` package has a recommended runtime dependency (i.e.
3321 ```RRECOMMENDS`` <#var-RRECOMMENDS>`__) on the 3321 :term:`RRECOMMENDS`) on the
3322 ``util-linux-switch-root`` package. 3322 ``util-linux-switch-root`` package.
3323 3323
3324 - The ``ionice`` program is now packaged in a separate 3324 - The ``ionice`` program is now packaged in a separate
@@ -3338,7 +3338,7 @@ occurred:
3338 runtime dependency (i.e. ``RRECOMMENDS``) on the ``shared-mime-info`` 3338 runtime dependency (i.e. ``RRECOMMENDS``) on the ``shared-mime-info``
3339 package, since large portions of GIO are not useful without the MIME 3339 package, since large portions of GIO are not useful without the MIME
3340 database. You can remove the dependency by using the 3340 database. You can remove the dependency by using the
3341 ```BAD_RECOMMENDATIONS`` <#var-BAD_RECOMMENDATIONS>`__ variable if 3341 :term:`BAD_RECOMMENDATIONS` variable if
3342 ``shared-mime-info`` is too large and is not required. 3342 ``shared-mime-info`` is too large and is not required.
3343 3343
3344- *Go Standard Runtime:* The Go standard runtime has been split out 3344- *Go Standard Runtime:* The Go standard runtime has been split out
@@ -3456,10 +3456,10 @@ Kernel Device Tree Move
3456 3456
3457Kernel Device Tree support is now easier to enable in a kernel recipe. 3457Kernel Device Tree support is now easier to enable in a kernel recipe.
3458The Device Tree code has moved to a 3458The Device Tree code has moved to a
3459```kernel-devicetree`` <#ref-classes-kernel-devicetree>`__ class. 3459:ref:`kernel-devicetree <ref-classes-kernel-devicetree>` class.
3460Functionality is automatically enabled for any recipe that inherits the 3460Functionality is automatically enabled for any recipe that inherits the
3461```kernel`` <#ref-classes-kernel>`__ class and sets the 3461:ref:`kernel <ref-classes-kernel>` class and sets the
3462```KERNEL_DEVICETREE`` <#var-KERNEL_DEVICETREE>`__ variable. The 3462:term:`KERNEL_DEVICETREE` variable. The
3463previous mechanism for doing this, 3463previous mechanism for doing this,
3464``meta/recipes-kernel/linux/linux-dtb.inc``, is still available to avoid 3464``meta/recipes-kernel/linux/linux-dtb.inc``, is still available to avoid
3465breakage, but triggers a deprecation warning. Future releases of the 3465breakage, but triggers a deprecation warning. Future releases of the
@@ -3478,7 +3478,7 @@ The following package QA changes took place:
3478- The "unsafe-references-in-scripts" QA check has been removed. 3478- The "unsafe-references-in-scripts" QA check has been removed.
3479 3479
3480- If you refer to ``${COREBASE}/LICENSE`` within 3480- If you refer to ``${COREBASE}/LICENSE`` within
3481 ```LIC_FILES_CHKSUM`` <#var-LIC_FILES_CHKSUM>`__ you receive a 3481 :term:`LIC_FILES_CHKSUM` you receive a
3482 warning because this file is a description of the license for 3482 warning because this file is a description of the license for
3483 OE-Core. Use ``${COMMON_LICENSE_DIR}/MIT`` if your recipe is 3483 OE-Core. Use ``${COMMON_LICENSE_DIR}/MIT`` if your recipe is
3484 MIT-licensed and you cannot use the preferred method of referring to 3484 MIT-licensed and you cannot use the preferred method of referring to
@@ -3529,10 +3529,10 @@ The following are additional changes:
3529 from ``meta-poky`` to OE-Core (i.e. from 3529 from ``meta-poky`` to OE-Core (i.e. from
3530 ``meta-poky/conf/distro/include`` to ``meta/conf/distro/include``). 3530 ``meta-poky/conf/distro/include`` to ``meta/conf/distro/include``).
3531 3531
3532- The ```buildhistory`` <#ref-classes-buildhistory>`__ class now makes 3532- The :ref:`buildhistory <ref-classes-buildhistory>` class now makes
3533 a single commit per build rather than one commit per subdirectory in 3533 a single commit per build rather than one commit per subdirectory in
3534 the repository. This behavior assumes the commits are enabled with 3534 the repository. This behavior assumes the commits are enabled with
3535 ```BUILDHISTORY_COMMIT`` <#var-BUILDHISTORY_COMMIT>`__ = "1", which 3535 :term:`BUILDHISTORY_COMMIT` = "1", which
3536 is typical. Previously, the ``buildhistory`` class made one commit 3536 is typical. Previously, the ``buildhistory`` class made one commit
3537 per subdirectory in the repository in order to make it easier to see 3537 per subdirectory in the repository in order to make it easier to see
3538 the changes for a particular subdirectory. To view a particular 3538 the changes for a particular subdirectory. To view a particular
@@ -3540,7 +3540,7 @@ The following are additional changes:
3540 ``git show`` or ``git diff`` commands. 3540 ``git show`` or ``git diff`` commands.
3541 3541
3542- The ``x86-base.inc`` file, which is included by all x86-based machine 3542- The ``x86-base.inc`` file, which is included by all x86-based machine
3543 configurations, now sets ```IMAGE_FSTYPES`` <#var-IMAGE_FSTYPES>`__ 3543 configurations, now sets :term:`IMAGE_FSTYPES`
3544 using ``?=`` to "live" rather than appending with ``+=``. This change 3544 using ``?=`` to "live" rather than appending with ``+=``. This change
3545 makes the default easier to override. 3545 makes the default easier to override.
3546 3546
@@ -3550,7 +3550,7 @@ The following are additional changes:
3550 Manual. 3550 Manual.
3551 3551
3552- By default, the ``security_flags.inc`` file sets a 3552- By default, the ``security_flags.inc`` file sets a
3553 ```GCCPIE`` <#var-GCCPIE>`__ variable with an option to enable 3553 :term:`GCCPIE` variable with an option to enable
3554 Position Independent Executables (PIE) within ``gcc``. Enabling PIE 3554 Position Independent Executables (PIE) within ``gcc``. Enabling PIE
3555 in the GNU C Compiler (GCC), makes Return Oriented Programming (ROP) 3555 in the GNU C Compiler (GCC), makes Return Oriented Programming (ROP)
3556 attacks much more difficult to execute. 3556 attacks much more difficult to execute.
@@ -3570,12 +3570,12 @@ The following are additional changes:
3570 you need to update them. 3570 you need to update them.
3571 3571
3572- OpenSSL 1.1 has been introduced. However, the default is still 1.0.x 3572- OpenSSL 1.1 has been introduced. However, the default is still 1.0.x
3573 through the ```PREFERRED_VERSION`` <#var-PREFERRED_VERSION>`__ 3573 through the :term:`PREFERRED_VERSION`
3574 variable. This preference is set is due to the remaining 3574 variable. This preference is set is due to the remaining
3575 compatibility issues with other software. The 3575 compatibility issues with other software. The
3576 ```PROVIDES`` <#var-PROVIDES>`__ variable in the openssl 1.0 recipe 3576 :term:`PROVIDES` variable in the openssl 1.0 recipe
3577 now includes "openssl10" as a marker that can be used in 3577 now includes "openssl10" as a marker that can be used in
3578 ```DEPENDS`` <#var-DEPENDS>`__ within recipes that build software 3578 :term:`DEPENDS` within recipes that build software
3579 that still depend on OpenSSL 1.0. 3579 that still depend on OpenSSL 1.0.
3580 3580
3581- To ensure consistent behavior, BitBake's "-r" and "-R" options (i.e. 3581- To ensure consistent behavior, BitBake's "-r" and "-R" options (i.e.
@@ -3747,7 +3747,7 @@ One particular change to note is that the Python recipes no longer have
3747build-time provides for their packages. This assumes ``python-foo`` is 3747build-time provides for their packages. This assumes ``python-foo`` is
3748one of the packages provided by the Python recipe. You can no longer run 3748one of the packages provided by the Python recipe. You can no longer run
3749``bitbake python-foo`` or have a 3749``bitbake python-foo`` or have a
3750```DEPENDS`` <&YOCTO_DOCS_REF_URL;#var-DEPENDS>`__ on ``python-foo``, 3750:term:`DEPENDS` on ``python-foo``,
3751but doing either of the following causes the package to work as 3751but doing either of the following causes the package to work as
3752expected: IMAGE_INSTALL_append = " python-foo" or RDEPENDS_${PN} = 3752expected: IMAGE_INSTALL_append = " python-foo" or RDEPENDS_${PN} =
3753"python-foo" The earlier build-time provides behavior was a quirk of the 3753"python-foo" The earlier build-time provides behavior was a quirk of the
@@ -3787,7 +3787,7 @@ The following are additional changes:
3787 ``sysklogd`` recipe no longer uses ``update-alternatives`` because it 3787 ``sysklogd`` recipe no longer uses ``update-alternatives`` because it
3788 is incompatible with other implementations. 3788 is incompatible with other implementations.
3789 3789
3790- By default, the ```cmake`` <#ref-classes-cmake>`__ class uses 3790- By default, the :ref:`cmake <ref-classes-cmake>` class uses
3791 ``ninja`` instead of ``make`` for building. This improves build 3791 ``ninja`` instead of ``make`` for building. This improves build
3792 performance. If a recipe is broken with ``ninja``, then the recipe 3792 performance. If a recipe is broken with ``ninja``, then the recipe
3793 can set ``OECMAKE_GENERATOR = "Unix Makefiles"`` to change back to 3793 can set ``OECMAKE_GENERATOR = "Unix Makefiles"`` to change back to
@@ -3878,7 +3878,7 @@ release, see ` <https://gcc.gnu.org/gcc-8/changes.html>`__.
3878 3878
3879If you still need to compile with version 7.x, GCC 7.3 is also provided. 3879If you still need to compile with version 7.x, GCC 7.3 is also provided.
3880You can select this version by setting the and can be selected by 3880You can select this version by setting the and can be selected by
3881setting the ```GCCVERSION`` <#var-GCCVERSION>`__ variable to "7.%" in 3881setting the :term:`GCCVERSION` variable to "7.%" in
3882your configuration. 3882your configuration.
3883 3883
3884.. _migration-2.6-removed-recipes: 3884.. _migration-2.6-removed-recipes:
@@ -3972,12 +3972,12 @@ For names of recipes removed because of this repository change, see the
3972--------------------------------------------------------------------------------------------------- 3972---------------------------------------------------------------------------------------------------
3973 3973
3974Previously, it was possible for Python recipes that inherited the 3974Previously, it was possible for Python recipes that inherited the
3975```distutils`` <#ref-classes-distutils>`__ and 3975:ref:`distutils <ref-classes-distutils>` and
3976```distutils3`` <#ref-classes-distutils3>`__ classes to fetch code 3976```distutils3`` <#ref-classes-distutils3>`__ classes to fetch code
3977during the ```do_configure`` <#ref-tasks-configure>`__ task to satisfy 3977during the :ref:`ref-tasks-configure` task to satisfy
3978dependencies mentioned in ``setup.py`` if those dependencies were not 3978dependencies mentioned in ``setup.py`` if those dependencies were not
3979provided in the sysroot (i.e. recipes providing the dependencies were 3979provided in the sysroot (i.e. recipes providing the dependencies were
3980missing from ```DEPENDS`` <#var-DEPENDS>`__). 3980missing from :term:`DEPENDS`).
3981 3981
3982.. note:: 3982.. note::
3983 3983
@@ -4018,9 +4018,9 @@ Image/Kernel Artifact Naming Changes
4018 4018
4019The following changes have been made: 4019The following changes have been made:
4020 4020
4021- Name variables (e.g. ```IMAGE_NAME`` <#var-IMAGE_NAME>`__) use a new 4021- Name variables (e.g. :term:`IMAGE_NAME`) use a new
4022 ``IMAGE_VERSION_SUFFIX`` variable instead of 4022 ``IMAGE_VERSION_SUFFIX`` variable instead of
4023 ```DATETIME`` <#var-DATETIME>`__. Using ``IMAGE_VERSION_SUFFIX`` 4023 :term:`DATETIME`. Using ``IMAGE_VERSION_SUFFIX``
4024 allows easier and more direct changes. 4024 allows easier and more direct changes.
4025 4025
4026 The ``IMAGE_VERSION_SUFFIX`` variable is set in the ``bitbake.conf`` 4026 The ``IMAGE_VERSION_SUFFIX`` variable is set in the ``bitbake.conf``
@@ -4029,40 +4029,40 @@ The following changes have been made:
4029- Several variables have changed names for consistency: Old Variable 4029- Several variables have changed names for consistency: Old Variable
4030 Name New Variable Name 4030 Name New Variable Name
4031 ======================================================== 4031 ========================================================
4032 KERNEL_IMAGE_BASE_NAME `KERNEL_IMAGE_NAME <#var-KERNEL_IMAGE_NAME>`__ 4032 KERNEL_IMAGE_BASE_NAME :term:`KERNEL_IMAGE_NAME`
4033 KERNEL_IMAGE_SYMLINK_NAME 4033 KERNEL_IMAGE_SYMLINK_NAME
4034 `KERNEL_IMAGE_LINK_NAME <#var-KERNEL_IMAGE_LINK_NAME>`__ 4034 :term:`KERNEL_IMAGE_LINK_NAME`
4035 MODULE_TARBALL_BASE_NAME 4035 MODULE_TARBALL_BASE_NAME
4036 `MODULE_TARBALL_NAME <#var-MODULE_TARBALL_NAME>`__ 4036 :term:`MODULE_TARBALL_NAME`
4037 MODULE_TARBALL_SYMLINK_NAME 4037 MODULE_TARBALL_SYMLINK_NAME
4038 `MODULE_TARBALL_LINK_NAME <#var-MODULE_TARBALL_LINK_NAME>`__ 4038 :term:`MODULE_TARBALL_LINK_NAME`
4039 INITRAMFS_BASE_NAME `INITRAMFS_NAME <#var-INITRAMFS_NAME>`__ 4039 INITRAMFS_BASE_NAME :term:`INITRAMFS_NAME`
4040 4040
4041- The ``MODULE_IMAGE_BASE_NAME`` variable has been removed. The module 4041- The ``MODULE_IMAGE_BASE_NAME`` variable has been removed. The module
4042 tarball name is now controlled directly with the 4042 tarball name is now controlled directly with the
4043 ```MODULE_TARBALL_NAME`` <#var-MODULE_TARBALL_NAME>`__ variable. 4043 :term:`MODULE_TARBALL_NAME` variable.
4044 4044
4045- The ```KERNEL_DTB_NAME`` <#var-KERNEL_DTB_NAME>`__ and 4045- The :term:`KERNEL_DTB_NAME` and
4046 ```KERNEL_DTB_LINK_NAME`` <#var-KERNEL_DTB_LINK_NAME>`__ variables 4046 :term:`KERNEL_DTB_LINK_NAME` variables
4047 have been introduced to control kernel Device Tree Binary (DTB) 4047 have been introduced to control kernel Device Tree Binary (DTB)
4048 artifact names instead of mangling ``KERNEL_IMAGE_*`` variables. 4048 artifact names instead of mangling ``KERNEL_IMAGE_*`` variables.
4049 4049
4050- The ```KERNEL_FIT_NAME`` <#var-KERNEL_FIT_NAME>`__ and 4050- The :term:`KERNEL_FIT_NAME` and
4051 ```KERNEL_FIT_LINK_NAME`` <#var-KERNEL_FIT_LINK_NAME>`__ variables 4051 :term:`KERNEL_FIT_LINK_NAME` variables
4052 have been introduced to specify the name of flattened image tree 4052 have been introduced to specify the name of flattened image tree
4053 (FIT) kernel images similar to other deployed artifacts. 4053 (FIT) kernel images similar to other deployed artifacts.
4054 4054
4055- The ```MODULE_TARBALL_NAME`` <#var-MODULE_TARBALL_NAME>`__ and 4055- The :term:`MODULE_TARBALL_NAME` and
4056 ```MODULE_TARBALL_LINK_NAME`` <#var-MODULE_TARBALL_LINK_NAME>`__ 4056 :term:`MODULE_TARBALL_LINK_NAME`
4057 variable values no longer include the "module-" prefix or ".tgz" 4057 variable values no longer include the "module-" prefix or ".tgz"
4058 suffix. These parts are now hardcoded so that the values are 4058 suffix. These parts are now hardcoded so that the values are
4059 consistent with other artifact naming variables. 4059 consistent with other artifact naming variables.
4060 4060
4061- Added the ```INITRAMFS_LINK_NAME`` <#var-INITRAMFS_LINK_NAME>`__ 4061- Added the :term:`INITRAMFS_LINK_NAME`
4062 variable so that the symlink can be controlled similarly to other 4062 variable so that the symlink can be controlled similarly to other
4063 artifact types. 4063 artifact types.
4064 4064
4065- ```INITRAMFS_NAME`` <#var-INITRAMFS_NAME>`__ now uses 4065- :term:`INITRAMFS_NAME` now uses
4066 "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" instead 4066 "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" instead
4067 of "${PV}-${PR}-${MACHINE}-${DATETIME}", which makes it consistent 4067 of "${PV}-${PR}-${MACHINE}-${DATETIME}", which makes it consistent
4068 with other variables. 4068 with other variables.
@@ -4072,9 +4072,9 @@ The following changes have been made:
4072``SERIAL_CONSOLE`` Deprecated 4072``SERIAL_CONSOLE`` Deprecated
4073----------------------------- 4073-----------------------------
4074 4074
4075The ```SERIAL_CONSOLE`` <#var-SERIAL_CONSOLE>`__ variable has been 4075The :term:`SERIAL_CONSOLE` variable has been
4076functionally replaced by the 4076functionally replaced by the
4077```SERIAL_CONSOLES`` <#var-SERIAL_CONSOLES>`__ variable for some time. 4077:term:`SERIAL_CONSOLES` variable for some time.
4078With the Yocto Project 2.6 release, ``SERIAL_CONSOLE`` has been 4078With the Yocto Project 2.6 release, ``SERIAL_CONSOLE`` has been
4079officially deprecated. 4079officially deprecated.
4080 4080
@@ -4122,7 +4122,7 @@ The following changes have occurred:
4122- *The ``forcevariable`` Override Now Has a Higher Priority Than 4122- *The ``forcevariable`` Override Now Has a Higher Priority Than
4123 ``libc`` Overrides:* The ``forcevariable`` override is documented to 4123 ``libc`` Overrides:* The ``forcevariable`` override is documented to
4124 be the highest priority override. However, due to a long-standing 4124 be the highest priority override. However, due to a long-standing
4125 quirk of how ```OVERRIDES`` <#var-OVERRIDES>`__ is set, the ``libc`` 4125 quirk of how :term:`OVERRIDES` is set, the ``libc``
4126 overrides (e.g. ``libc-glibc``, ``libc-musl``, and so forth) 4126 overrides (e.g. ``libc-glibc``, ``libc-musl``, and so forth)
4127 erroneously had a higher priority. This issue is now corrected. 4127 erroneously had a higher priority. This issue is now corrected.
4128 4128
@@ -4177,14 +4177,14 @@ This section provides information about automatic testing changes:
4177 ``TEST_IMAGE`` variable to "1" to enable automatic testing for 4177 ``TEST_IMAGE`` variable to "1" to enable automatic testing for
4178 successfully built images. The ``TEST_IMAGE`` variable no longer 4178 successfully built images. The ``TEST_IMAGE`` variable no longer
4179 exists and has been replaced by the 4179 exists and has been replaced by the
4180 ```TESTIMAGE_AUTO`` <#var-TESTIMAGE_AUTO>`__ variable. 4180 :term:`TESTIMAGE_AUTO` variable.
4181 4181
4182- *Inheriting the ``testimage`` and ``testsdk`` Classes:* Best 4182- *Inheriting the ``testimage`` and ``testsdk`` Classes:* Best
4183 practices now dictate that you use the 4183 practices now dictate that you use the
4184 ```IMAGE_CLASSES`` <#var-IMAGE_CLASSES>`__ variable rather than the 4184 :term:`IMAGE_CLASSES` variable rather than the
4185 ```INHERIT`` <#var-INHERIT>`__ variable when you inherit the 4185 :term:`INHERIT` variable when you inherit the
4186 ```testimage`` <#ref-classes-testimage*>`__ and 4186 ```testimage`` <#ref-classes-testimage*>`__ and
4187 ```testsdk`` <#ref-classes-testsdk>`__ classes used for automatic 4187 :ref:`testsdk <ref-classes-testsdk>` classes used for automatic
4188 testing. 4188 testing.
4189 4189
4190.. _migration-2.6-openssl-changes: 4190.. _migration-2.6-openssl-changes:
@@ -4207,7 +4207,7 @@ BitBake Changes
4207--------------- 4207---------------
4208 4208
4209The server logfile ``bitbake-cookerdaemon.log`` is now always placed in 4209The server logfile ``bitbake-cookerdaemon.log`` is now always placed in
4210the `Build Directory <#build-directory>`__ instead of the current 4210the :term:`Build Directory` instead of the current
4211directory. 4211directory.
4212 4212
4213.. _migration-2.6-security-changes: 4213.. _migration-2.6-security-changes:
@@ -4229,7 +4229,7 @@ want to explicitly defer a postinstall to first boot on the target
4229rather than at rootfs creation time, use ``pkg_postinst_ontarget()`` or 4229rather than at rootfs creation time, use ``pkg_postinst_ontarget()`` or
4230call ``postinst_intercept delay_to_first_boot`` from ``pkg_postinst()``. 4230call ``postinst_intercept delay_to_first_boot`` from ``pkg_postinst()``.
4231Any failure of a ``pkg_postinst()`` script (including exit 1) triggers 4231Any failure of a ``pkg_postinst()`` script (including exit 1) triggers
4232an error during the ```do_rootfs`` <#ref-tasks-rootfs>`__ task. 4232an error during the :ref:`ref-tasks-rootfs` task.
4233 4233
4234For more information on post-installation behavior, see the 4234For more information on post-installation behavior, see the
4235"`Post-Installation 4235"`Post-Installation
@@ -4245,14 +4245,14 @@ The ``python3`` recipe now enables profile-guided optimization. Using
4245this optimization requires a little extra build time in exchange for 4245this optimization requires a little extra build time in exchange for
4246improved performance on the target at runtime. Additionally, the 4246improved performance on the target at runtime. Additionally, the
4247optimization is only enabled if the current 4247optimization is only enabled if the current
4248```MACHINE`` <#var-MACHINE>`__ has support for user-mode emulation in 4248:term:`MACHINE` has support for user-mode emulation in
4249QEMU (i.e. "qemu-usermode" is in 4249QEMU (i.e. "qemu-usermode" is in
4250```MACHINE_FEATURES`` <#var-MACHINE_FEATURES>`__, which it is by 4250:term:`MACHINE_FEATURES`, which it is by
4251default). 4251default).
4252 4252
4253If you wish to disable Python profile-guided optimization regardless of 4253If you wish to disable Python profile-guided optimization regardless of
4254the value of ``MACHINE_FEATURES``, then ensure that 4254the value of ``MACHINE_FEATURES``, then ensure that
4255```PACKAGECONFIG`` <#var-PACKAGECONFIG>`__ for the ``python3`` recipe 4255:term:`PACKAGECONFIG` for the ``python3`` recipe
4256does not contain "pgo". You could accomplish the latter using the 4256does not contain "pgo". You could accomplish the latter using the
4257following at the configuration level: PACKAGECONFIG_remove_pn-python3 = 4257following at the configuration level: PACKAGECONFIG_remove_pn-python3 =
4258"pgo" Alternatively, you can set ``PACKAGECONFIG`` using an append file 4258"pgo" Alternatively, you can set ``PACKAGECONFIG`` using an append file
@@ -4276,13 +4276,13 @@ The following miscellaneous changes occurred:
4276 4276
4277- The ``NOISO`` and ``NOHDD`` variables are no longer used. You now 4277- The ``NOISO`` and ``NOHDD`` variables are no longer used. You now
4278 control building ``*.iso`` and ``*.hddimg`` image types directly by 4278 control building ``*.iso`` and ``*.hddimg`` image types directly by
4279 using the ```IMAGE_FSTYPES`` <#var-IMAGE_FSTYPES>`__ variable. 4279 using the :term:`IMAGE_FSTYPES` variable.
4280 4280
4281- The ``scripts/contrib/mkefidisk.sh`` has been removed in favor of 4281- The ``scripts/contrib/mkefidisk.sh`` has been removed in favor of
4282 Wic. 4282 Wic.
4283 4283
4284- ``kernel-modules`` has been removed from 4284- ``kernel-modules`` has been removed from
4285 ```RRECOMMENDS`` <#var-RRECOMMENDS>`__ for ``qemumips`` and 4285 :term:`RRECOMMENDS` for ``qemumips`` and
4286 ``qemumips64`` machines. Removal also impacts the ``x86-base.inc`` 4286 ``qemumips64`` machines. Removal also impacts the ``x86-base.inc``
4287 file. 4287 file.
4288 4288
@@ -4302,7 +4302,7 @@ The following miscellaneous changes occurred:
4302 the ``WHITELIST_GPL-3.0`` variable instead. 4302 the ``WHITELIST_GPL-3.0`` variable instead.
4303 4303
4304- ``${ASNEEDED}`` is now included in the 4304- ``${ASNEEDED}`` is now included in the
4305 ```TARGET_LDFLAGS`` <#var-TARGET_LDFLAGS>`__ variable directly. The 4305 :term:`TARGET_LDFLAGS` variable directly. The
4306 remaining definitions from ``meta/conf/distro/include/as-needed.inc`` 4306 remaining definitions from ``meta/conf/distro/include/as-needed.inc``
4307 have been moved to corresponding recipes. 4307 have been moved to corresponding recipes.
4308 4308
@@ -4332,7 +4332,7 @@ The following changes have been made to BitBake:
4332 indentation. If found, BitBake produces a warning. 4332 indentation. If found, BitBake produces a warning.
4333 4333
4334- Bitbake now checks 4334- Bitbake now checks
4335 ```BBFILE_COLLECTIONS`` <#var-BBFILE_COLLECTIONS>`__ for duplicate 4335 :term:`BBFILE_COLLECTIONS` for duplicate
4336 entries and triggers an error if any are found. 4336 entries and triggers an error if any are found.
4337 4337
4338.. _migration-2.7-eclipse-support-dropped: 4338.. _migration-2.7-eclipse-support-dropped:
@@ -4386,7 +4386,7 @@ License Value Corrections
4386------------------------- 4386-------------------------
4387 4387
4388The following corrections have been made to the 4388The following corrections have been made to the
4389```LICENSE`` <#var-LICENSE>`__ values set by recipes: *socat*: Corrected 4389:term:`LICENSE` values set by recipes: *socat*: Corrected
4390``LICENSE`` to be "GPLv2" rather than "GPLv2+". *libgfortran*: Set 4390``LICENSE`` to be "GPLv2" rather than "GPLv2+". *libgfortran*: Set
4391license to "GPL-3.0-with-GCC-exception". *elfutils*: Removed 4391license to "GPL-3.0-with-GCC-exception". *elfutils*: Removed
4392"Elfutils-Exception" and set to "GPLv2" for shared libraries 4392"Elfutils-Exception" and set to "GPLv2" for shared libraries
@@ -4404,11 +4404,11 @@ This section provides information about packaging changes.
4404- Debug split: The default debug split has been changed to create 4404- Debug split: The default debug split has been changed to create
4405 separate source packages (i.e. package_name\ ``-dbg`` and 4405 separate source packages (i.e. package_name\ ``-dbg`` and
4406 package_name\ ``-src``). If you are currently using ``dbg-pkgs`` in 4406 package_name\ ``-src``). If you are currently using ``dbg-pkgs`` in
4407 ```IMAGE_FEATURES`` <#var-IMAGE_FEATURES>`__ to bring in debug 4407 :term:`IMAGE_FEATURES` to bring in debug
4408 symbols and you still need the sources, you must now also add 4408 symbols and you still need the sources, you must now also add
4409 ``src-pkgs`` to ``IMAGE_FEATURES``. Source packages remain in the 4409 ``src-pkgs`` to ``IMAGE_FEATURES``. Source packages remain in the
4410 target portion of the SDK by default, unless you have set your own 4410 target portion of the SDK by default, unless you have set your own
4411 value for ```SDKIMAGE_FEATURES`` <#var-SDKIMAGE_FEATURES>`__ that 4411 value for :term:`SDKIMAGE_FEATURES` that
4412 does not include ``src-pkgs``. 4412 does not include ``src-pkgs``.
4413 4413
4414- Mount all using ``util-linux``: ``/etc/default/mountall`` has moved 4414- Mount all using ``util-linux``: ``/etc/default/mountall`` has moved
@@ -4417,10 +4417,10 @@ This section provides information about packaging changes.
4417- Splitting binaries using ``util-linux``: ``util-linux`` now splits 4417- Splitting binaries using ``util-linux``: ``util-linux`` now splits
4418 each binary into its own package for fine-grained control. The main 4418 each binary into its own package for fine-grained control. The main
4419 ``util-linux`` package pulls in the individual binary packages using 4419 ``util-linux`` package pulls in the individual binary packages using
4420 the ```RRECOMMENDS`` <#var-RRECOMMENDS>`__ and 4420 the :term:`RRECOMMENDS` and
4421 ```RDEPENDS`` <#var-RDEPENDS>`__ variables. As a result, existing 4421 :term:`RDEPENDS` variables. As a result, existing
4422 images should not see any changes assuming 4422 images should not see any changes assuming
4423 ```NO_RECOMMENDATIONS`` <#var-NO_RECOMMENDATIONS>`__ is not set. 4423 :term:`NO_RECOMMENDATIONS` is not set.
4424 4424
4425- ``netbase/base-files``: ``/etc/hosts`` has moved from ``netbase`` to 4425- ``netbase/base-files``: ``/etc/hosts`` has moved from ``netbase`` to
4426 ``base-files``. 4426 ``base-files``.
@@ -4480,13 +4480,13 @@ The following miscellaneous changes occurred:
4480- ``arm-tunes``: Removed the "-march" option if mcpu is already added. 4480- ``arm-tunes``: Removed the "-march" option if mcpu is already added.
4481 4481
4482- ``update-alternatives``: Convert file renames to 4482- ``update-alternatives``: Convert file renames to
4483 ```PACKAGE_PREPROCESS_FUNCS`` <#var-PACKAGE_PREPROCESS_FUNCS>`__ 4483 :term:`PACKAGE_PREPROCESS_FUNCS`
4484 4484
4485- ``base/pixbufcache``: Obsolete ``sstatecompletions`` code has been 4485- ``base/pixbufcache``: Obsolete ``sstatecompletions`` code has been
4486 removed. 4486 removed.
4487 4487
4488- ```native`` <#ref-classes-native>`__ class: 4488- :ref:`native <ref-classes-native>` class:
4489 ```RDEPENDS`` <#var-RDEPENDS>`__ handling has been enabled. 4489 :term:`RDEPENDS` handling has been enabled.
4490 4490
4491- ``inetutils``: This recipe has rsh disabled. 4491- ``inetutils``: This recipe has rsh disabled.
4492 4492
@@ -4707,7 +4707,7 @@ Sanity Checks
4707 4707
4708The following sanity check changes occurred. 4708The following sanity check changes occurred.
4709 4709
4710- ```SRC_URI`` <#var-SRC_URI>`__ is now checked for usage of two 4710- :term:`SRC_URI` is now checked for usage of two
4711 problematic items: 4711 problematic items:
4712 4712
4713 - "${PN}" prefix/suffix use - Warnings always appear if ${PN} is 4713 - "${PN}" prefix/suffix use - Warnings always appear if ${PN} is
@@ -4722,10 +4722,10 @@ The following sanity check changes occurred.
4722 4722
4723 Either one of these items now trigger a warning by default. If you 4723 Either one of these items now trigger a warning by default. If you
4724 wish to disable this check, remove ``src-uri-bad`` from 4724 wish to disable this check, remove ``src-uri-bad`` from
4725 ```WARN_QA`` <#var-WARN_QA>`__. 4725 :term:`WARN_QA`.
4726 4726
4727- The ``file-rdeps`` runtime dependency check no longer expands 4727- The ``file-rdeps`` runtime dependency check no longer expands
4728 ```RDEPENDS`` <#var-RDEPENDS>`__ recursively as there is no mechanism 4728 :term:`RDEPENDS` recursively as there is no mechanism
4729 to ensure they can be fully computed, and thus races sometimes result 4729 to ensure they can be fully computed, and thus races sometimes result
4730 in errors either showing up or not. Thus, you might now see errors 4730 in errors either showing up or not. Thus, you might now see errors
4731 for missing runtime dependencies that were previously satisfied 4731 for missing runtime dependencies that were previously satisfied
@@ -4736,7 +4736,7 @@ The following sanity check changes occurred.
4736 4736
4737- Setting ``DEPENDS_${PN}`` anywhere (i.e. typically in a recipe) now 4737- Setting ``DEPENDS_${PN}`` anywhere (i.e. typically in a recipe) now
4738 triggers an error. The error is triggered because 4738 triggers an error. The error is triggered because
4739 ```DEPENDS`` <#var-DEPENDS>`__ is not a package-specific variable 4739 :term:`DEPENDS` is not a package-specific variable
4740 unlike RDEPENDS. You should set ``DEPENDS`` instead. 4740 unlike RDEPENDS. You should set ``DEPENDS`` instead.
4741 4741
4742- systemd currently does not work well with the musl C library because 4742- systemd currently does not work well with the musl C library because
@@ -4757,14 +4757,14 @@ The following miscellaneous changes have occurred.
4757 4757
4758- The ``meta/recipes-kernel/linux/linux-dtb.inc`` file has been 4758- The ``meta/recipes-kernel/linux/linux-dtb.inc`` file has been
4759 removed. This file was previously deprecated in favor of setting 4759 removed. This file was previously deprecated in favor of setting
4760 ```KERNEL_DEVICETREE`` <#var-KERNEL_DEVICETREE>`__ in any kernel 4760 :term:`KERNEL_DEVICETREE` in any kernel
4761 recipe and only produced a warning. Remove any ``include`` or 4761 recipe and only produced a warning. Remove any ``include`` or
4762 ``require`` statements pointing to this file. 4762 ``require`` statements pointing to this file.
4763 4763
4764- ```TARGET_CFLAGS`` <#var-TARGET_CFLAGS>`__, 4764- :term:`TARGET_CFLAGS`,
4765 ```TARGET_CPPFLAGS`` <#var-TARGET_CPPFLAGS>`__, 4765 :term:`TARGET_CPPFLAGS`,
4766 ```TARGET_CXXFLAGS`` <#var-TARGET_CXXFLAGS>`__, and 4766 :term:`TARGET_CXXFLAGS`, and
4767 ```TARGET_LDFLAGS`` <#var-TARGET_LDFLAGS>`__ are no longer exported 4767 :term:`TARGET_LDFLAGS` are no longer exported
4768 to the external environment. This change did not require any changes 4768 to the external environment. This change did not require any changes
4769 to core recipes, which is a good indicator that no changes will be 4769 to core recipes, which is a good indicator that no changes will be
4770 required. However, if for some reason the software being built by one 4770 required. However, if for some reason the software being built by one
@@ -4774,14 +4774,14 @@ The following miscellaneous changes have occurred.
4774 exporting is not necessary. 4774 exporting is not necessary.
4775 4775
4776- You must change the host distro identifier used in 4776- You must change the host distro identifier used in
4777 ```NATIVELSBSTRING`` <#var-NATIVELSBSTRING>`__ to use all lowercase 4777 :term:`NATIVELSBSTRING` to use all lowercase
4778 characters even if it does not contain a version number. This change 4778 characters even if it does not contain a version number. This change
4779 is necessary only if you are not using ``uninative`` and 4779 is necessary only if you are not using ``uninative`` and
4780 ```SANITY_TESTED_DISTROS`` <#var-SANITY_TESTED_DISTROS>`__. 4780 :term:`SANITY_TESTED_DISTROS`.
4781 4781
4782- In the ``base-files`` recipe, writing the hostname into 4782- In the ``base-files`` recipe, writing the hostname into
4783 ``/etc/hosts`` and ``/etc/hostname`` is now done within the main 4783 ``/etc/hosts`` and ``/etc/hostname`` is now done within the main
4784 ```do_install`` <#ref-tasks-install>`__ function rather than in the 4784 :ref:`ref-tasks-install` function rather than in the
4785 ``do_install_basefilesissue`` function. The reason for the change is 4785 ``do_install_basefilesissue`` function. The reason for the change is
4786 because ``do_install_basefilesissue`` is more easily overridden 4786 because ``do_install_basefilesissue`` is more easily overridden
4787 without having to duplicate the hostname functionality. If you have 4787 without having to duplicate the hostname functionality. If you have
@@ -4882,7 +4882,7 @@ significant increase in the number of components that will be built just
4882when building a simple image such as core-image-minimal. If you do not 4882when building a simple image such as core-image-minimal. If you do not
4883need runtime tests enabled for core components, then it is recommended 4883need runtime tests enabled for core components, then it is recommended
4884that you remove "ptest" from 4884that you remove "ptest" from
4885```DISTRO_FEATURES`` <#var-DISTRO_FEATURES>`__ to save a significant 4885:term:`DISTRO_FEATURES` to save a significant
4886amount of build time e.g. by adding the following in your configuration: 4886amount of build time e.g. by adding the following in your configuration:
4887DISTRO_FEATURES_remove = "ptest" 4887DISTRO_FEATURES_remove = "ptest"
4888 4888
@@ -4966,7 +4966,7 @@ SRC_URI checksum behaviour
4966-------------------------- 4966--------------------------
4967 4967
4968Previously, recipes by tradition included both SHA256 and MD5 checksums 4968Previously, recipes by tradition included both SHA256 and MD5 checksums
4969for remotely fetched files in ```SRC_URI`` <#var-SRC_URI>`__, even 4969for remotely fetched files in :term:`SRC_URI`, even
4970though only one is actually mandated. However, the MD5 checksum does not 4970though only one is actually mandated. However, the MD5 checksum does not
4971add much given its inherent weakness; thus when a checksum fails only 4971add much given its inherent weakness; thus when a checksum fails only
4972the SHA256 sum will now be printed. The md5sum will still be verified if 4972the SHA256 sum will now be printed. The md5sum will still be verified if
@@ -4984,7 +4984,7 @@ fetches the shrinkwrap file and the dependencies. This removes the
4984slightly awkward ``NPM_LOCKDOWN`` and ``NPM_SHRINKWRAP`` variables which 4984slightly awkward ``NPM_LOCKDOWN`` and ``NPM_SHRINKWRAP`` variables which
4985pointed to local files; the lockdown file is no longer needed at all. 4985pointed to local files; the lockdown file is no longer needed at all.
4986Additionally, the package name in ``npm://`` entries in 4986Additionally, the package name in ``npm://`` entries in
4987```SRC_URI`` <#var-SRC_URI>`__ is now specified using a ``package`` 4987:term:`SRC_URI` is now specified using a ``package``
4988parameter instead of the earlier ``name`` which overlapped with the 4988parameter instead of the earlier ``name`` which overlapped with the
4989generic ``name`` parameter. All recipes using the npm fetcher will need 4989generic ``name`` parameter. All recipes using the npm fetcher will need
4990to be changed as a result. 4990to be changed as a result.
@@ -5019,9 +5019,9 @@ Packaging changes
5019 5019
5020- The ``ldconfig`` binary built as part of glibc has now been moved to 5020- The ``ldconfig`` binary built as part of glibc has now been moved to
5021 its own ``ldconfig`` package (note no ``glibc-`` prefix). This 5021 its own ``ldconfig`` package (note no ``glibc-`` prefix). This
5022 package is in the ```RRECOMMENDS`` <#var-RRECOMMENDS>`__ of the main 5022 package is in the :term:`RRECOMMENDS` of the main
5023 ``glibc`` package if ``ldconfig`` is present in 5023 ``glibc`` package if ``ldconfig`` is present in
5024 ```DISTRO_FEATURES`` <#var-DISTRO_FEATURES>`__. 5024 :term:`DISTRO_FEATURES`.
5025 5025
5026- ``libevent`` now splits each shared library into its own package (as 5026- ``libevent`` now splits each shared library into its own package (as
5027 Debian does). Since these are shared libraries and will be pulled in 5027 Debian does). Since these are shared libraries and will be pulled in
@@ -5058,7 +5058,7 @@ circumstances:
5058 5058
5059``conf/machine/include/x86-base.inc`` (inherited by most x86 machine 5059``conf/machine/include/x86-base.inc`` (inherited by most x86 machine
5060configurations) now specifies ``wic`` instead of ``live`` by default in 5060configurations) now specifies ``wic`` instead of ``live`` by default in
5061```IMAGE_FSTYPES`` <#var-IMAGE_FSTYPES>`__. The ``live`` image type will 5061:term:`IMAGE_FSTYPES`. The ``live`` image type will
5062likely be removed in a future release so it is recommended that you use 5062likely be removed in a future release so it is recommended that you use
5063``wic`` instead. 5063``wic`` instead.
5064 5064