diff --git a/documentation/ref-manual/migration.xml b/documentation/ref-manual/migration.xml
index 2998fbe437..a4b3aede32 100644
--- a/documentation/ref-manual/migration.xml
+++ b/documentation/ref-manual/migration.xml
@@ -5241,7 +5241,7 @@ id=f4d4f99cfbc2396e49c1613a7d237b9e57f06f81'>commit message.
This section provides information about packaging changes that have
- ocurred:
+ occurred:
bind-libs:
@@ -5366,25 +5366,6 @@ id=f4d4f99cfbc2396e49c1613a7d237b9e57f06f81'>commit message.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -5438,34 +5421,41 @@ id=f4d4f99cfbc2396e49c1613a7d237b9e57f06f81'>commit message.
BitBake Changes
- The following are changes BitBake:
+ The following are BitBake changes:
- The --runall option has changed behaviour slightly.
- There are in fact two different behaviours people may want:
+ The --runall option has changed.
+ There are two different behaviors people might want:
For a given target (or set of targets) look through
- the task graph and run task X only if its present
- and would have been built.
+ the task graph and run task X only if it is present
+ and will be built.
For a given target (or set of targets) look through
the task graph and run task X if any recipe in the
- taskgraph has such a target even if it wasn't in the
- original task graph.
+ taskgraph has such a target, even if it is not in
+ the original task graph.
- The --runall option now performs (b), previously it behaved
- like (a). A --runonly option has been added to retain the
- ability to perform (a).
+ The --runall option now performs
+ list item (b) mentioned in the previous bullet point.
+ Previously --runall behaved like list
+ item (a) mentioned in the previous bullet point.
+ A --runonly option now exists to
+ retain the ability to perform list item (a).
Several explicit "run this task for all recipes in the
- dependency tree" tasks (such as fetchall, checkuriall, and
- the *all tasks provided by the distrodata and archiver
- classes) have now been removed as there is a bitbake option
- to do this for any arbitrary task, for example:
+ dependency tree" tasks have been removed (e.g.
+ fetchall,
+ checkuriall, and the
+ *all tasks provided by the
+ distrodata and
+ archiver classes).
+ There is a BitBake option to complete this for any arbitrary
+ task. For example:
bitbake <target> -c fetchall
@@ -5486,159 +5476,223 @@ id=f4d4f99cfbc2396e49c1613a7d237b9e57f06f81'>commit message.
The following are additional changes:
- The kernel class now supports building packages for multiple
- kernels. If your kernel recipe/bbappend mentions packaging
- at all, then you are advised to replace references to kernel
- in package names with ${KERNEL_PACKAGE_NAME}. For example,
- if you disable automatic installation of the kernel image
- using RDEPENDS_kernel-base = "" then to avoid warnings you
- will now need to use
- RDEPENDS_${KERNEL_PACKAGE_NAME}-base = "" instead.
+ The kernel class supports building
+ packages for multiple kernels.
+ If your kernel recipe or .bbappend file
+ mentions packaging at all, you should replace references to
+ the kernel in package names with
+ ${KERNEL_PACKAGE_NAME}.
+ For example, if you disable automatic installation of the
+ kernel image using
+ RDEPENDS_kernel-base = "" you can avoid
+ warnings using
+ RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
+ instead.
- The buildhistory class now commits changes to the repository
- by default, so setting BUILDHISTORY_COMMIT = "1" is no
- longer necessary. If you wish commits to be disabled, then
- you will now need to set BUILDHISTORY_COMMIT = "0" in your
+ The buildhistory class commits changes
+ to the repository by default so you no longer need to set
+ BUILDHISTORY_COMMIT = "1".
+ If you want to disable commits you need to set
+ BUILDHISTORY_COMMIT = "0" in your
configuration.
- The beaglebone reference machine has been renamed to
- beaglebone-yocto. The beaglebone-yocto BSP is a reference
+ The beaglebone reference machine has
+ been renamed to beaglebone-yocto.
+ The beaglebone-yocto BSP is a reference
implementation using only mainline components available in
- OpenEmbedded-Core and meta-yocto-bsp, whereas Texas
- Instruments maintain a full-featured BSP in the meta-ti
- layer, and the rename avoids the previous name clash that
- existed between the two BSPs.
+ OpenEmbedded-Core and meta-yocto-bsp,
+ whereas Texas Instruments maintains a full-featured BSP in
+ the meta-ti layer.
+ This rename avoids the previous name clash that existed
+ between the two BSPs.
- The update-alternatives class will now no longer work with
- SysV init scripts as such usage has been proven to be
- problematic.
- Related to this, the sysklogd recipe no longer uses
- update-alternatives as it is incompatible with other
- implementations.
+ The update-alternatives class no longer
+ works with SysV init scripts because
+ this usage has been problematic.
+ Also, the sysklogd recipe no longer
+ uses update-alternatives because it is
+ incompatible with other implementations.
- The cmake class now uses ninja instead of make by default
- for building in order to improve build performance. If a
- recipe is broken with ninja then the recipe can set
- OECMAKE_GENERATOR = "Unix Makefiles" to change back to make.
+ By default, the cmake class uses
+ ninja instead of
+ make for building.
+ This improves build performance.
+ If a recipe is broken with ninja, then
+ the recipe can set
+ OECMAKE_GENERATOR = "Unix Makefiles"
+ to change back to make.
- python: Restructure python packaging and replace it with
- autopackaging
+ python:
+ This command restructures
+ Python packaging and replaces it with autopackaging.
- python3: Restructure python3 packaging and replace it with
- autopackaging
+ python3:
+ This command restructures Python3 packaging and replaces it
+ with autopackaging.
- The previously deprecated base_* functions have now removed,
- in favour of their replacements in meta/lib/oe and
- bitbake/lib/bb.
- These are typically used from recipes and classes and any
- references to the old functions will now need to be updated.
- The full list along with each of their replacements:
+ The previously deprecated base_*
+ functions have been removed in favor of their replacements
+ in meta/lib/oe and
+ bitbake/lib/bb.
+ These are typically used from recipes and classes.
+ Any references to the old functions should be updated.
+ The following is a full list, along with each of their
+ replacements:
- base_path_join() -> oe.path.join()
-
- base_path_relative() -> oe.path.relative()
-
- base_path_out() -> oe.path.format_display()
+ base_path_join()
+ is replaced by
+ oe.path.join().
- base_read_file() -> oe.utils.read_file()
+ base_path_relative()
+ is replaced by
+ oe.path.relative().
- base_ifelse() -> oe.utils.ifelse()
+ base_path_out()
+ is replaced by
+ oe.path.format_display().
- base_conditional() -> oe.utils.conditional()
+ base_read_file()
+ is replaced by
+ oe.utils.read_file().
- base_less_or_equal() -> oe.utils.less_or_equal()
+ base_ifelse()
+ is replaced by
+ oe.utils.ifelse().
- base_version_less_or_equal() -> oe.utils.version_less_or_equal()
+ base_conditional()
+ is replaced by
+ oe.utils.conditional().
- base_contains() -> bb.utils.contains()
+ base_less_or_equal()
+ is replaced by
+ oe.utils.less_or_equal().
- base_both_contain() -> oe.utils.both_contain()
+ base_version_less_or_equal()
+ is replaced by
+ oe.utils.version_less_or_equal().
- base_prune_suffix() -> oe.utils.prune_suffix()
+ base_contains()
+ is replaced by
+ bb.utils.contains().
- oe_filter() -> oe.utils.str_filter()
+ base_both_contain()
+ is replaced by
+ oe.utils.both_contain().
- oe_filter_out() -> oe.utils.str_filter_out()
- (or use the _remove operator)
+ base_prune_suffix()
+ is replaced by
+ oe.utils.prune_suffix().
+
+
+ oe_filter()
+ is replaced by
+ oe.utils.str_filter().
+
+
+ oe_filter_out()
+ is replaced by
+ oe.utils.str_filter_out()
+ (or use the _remove
+ operator).
- Using exit 1 as a means of explicitly deferring a
- postinstall script until first boot is now deprecated, as
+ Using exit 1 to explicitly defer a
+ postinstall script until first boot is now deprecated since
it is not an obvious mechanism and can mask actual errors.
If you want to explicitly defer a postinstall to first boot
- on the target rather than possibly at rootfs creation time,
- use pkg_postinst_ontarget() or alternatively call
- postinst-intercepts defer_to_first_boot from pkg_postinst().
- Any failure of a pkg_postinst() script (including exit 1)
- will now trigger a warning during do_rootfs.
+ on the target rather than at rootfs
+ creation time, use
+ pkg_postinst_ontarget()
+ or call
+ postinst-intercepts defer_to_first_boot
+ from pkg_postinst().
+ Any failure of a pkg_postinst()
+ script (including exit 1)
+ will trigger a warning during
+ do_rootfs.
- The elf image type has been removed, as the mkelfimage tool
+ The elf image type has been removed.
+ This image type was removed because the
+ mkelfimage tool
that was required to create it is no longer provided by
- coreboot upstream, and required updating every time binutils
- got updated.
+ coreboot upstream and required updating every time
+ binutils updated.
- Support for .iso image compression (previously enabled via
- COMPRESSISO = "1") has been removed, since the userspace
- tools (zisofs-tools) are unmaintained and squashfs provides
+ Support for .iso image compression (previously enabled
+ through COMPRESSISO = "1") has been
+ removed.
+ The userspace tools (zisofs-tools) are
+ unmaintained and squashfs provides
better performance and compression.
In order to build a live image with squashfs+lz4 compression
- enabled you would set LIVE_ROOTFS_TYPE = "squashfs-lz4"
- and ensure that live is in IMAGE_FSTYPES.
+ enabled you set
+ LIVE_ROOTFS_TYPE = "squashfs-lz4"
+ and ensure that live
+ is in IMAGE_FSTYPES.
- Recipes having an unconditional dependency on libpam will
- now only be buildable with pam in DISTRO_FEATURES.
+ Recipes with an unconditional dependency on
+ libpam are only buildable with
+ pam in
+ DISTRO_FEATURES.
If the dependency is truly optional then it is recommended
- that the dependency be made conditional upon pam being in
- DISTRO_FEATURES.
+ that the dependency be conditional upon
+ pam being in
+ DISTRO_FEATURES.
- For EFI-based machines, the bootloader (grub-efi by default)
- is now installed into the image at /boot. wic can be used to
- split this into separate boot and rootfs partitions if
- desired.
+ For EFI-based machines, the bootloader
+ (grub-efi by default) is installed into
+ the image at /boot.
+ Wic can be used to split the bootloader into separate boot
+ and rootfs partitions if necessary.
Patches whose context does not match exactly (i.e. where
- patch reports "fuzz" when applying) will now generate a
+ patch reports "fuzz" when applying) will generate a
warning.
- See http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=cc97bc08125b63821ce3f616771830f77c456f57
+ For an example of this see
+ this commit.
- Layers are now expected to set LAYERSERIES_COMPAT_layername
+ Layers are expected to set
+ LAYERSERIES_COMPAT_layername
to match the version(s) of OpenEmbedded-Core they are
- compatible with (specified as codenames using spaces to
- separate multiple values, e.g. "rocko sumo").
- If a layer does not set this, a warning will be shown.
+ compatible with.
+ This is specified as codenames using spaces to separate
+ multiple values (e.g. "rocko sumo").
+ If a layer does not set
+ LAYERSERIES_COMPAT_layername, a warning
+ will is shown.
If a layer sets a value that does not include the current
- version, then an error will be produced.
+ version, then an error is be produced.
- The TZ environment variable is now set to "UTC" within the
- build environment in order to fix reproducibility problems
- in some recipes.
+ The TZ environment variable is set to
+ "UTC" within the build environment in order to fix
+ reproducibility problems in some recipes.