From 370e4b223d771af98b9619148eb84e4056d00189 Mon Sep 17 00:00:00 2001 From: Scott Rifenbark Date: Wed, 23 Oct 2019 14:44:10 -0700 Subject: ref-manual: Completed the 3.0 migration section. (From yocto-docs rev: 1f996ce595b91e2dba55bdeeb2a558eb8a16c195) Signed-off-by: Scott Rifenbark Signed-off-by: Richard Purdie --- documentation/ref-manual/migration.xml | 505 +++++++++++++++++++++++++++++++-- 1 file changed, 476 insertions(+), 29 deletions(-) (limited to 'documentation/ref-manual/migration.xml') diff --git a/documentation/ref-manual/migration.xml b/documentation/ref-manual/migration.xml index aa44957894..9e329cf698 100644 --- a/documentation/ref-manual/migration.xml +++ b/documentation/ref-manual/migration.xml @@ -4739,7 +4739,7 @@ id=f4d4f99cfbc2396e49c1613a7d237b9e57f06f81'>commit message. This section provides information about packaging changes that have - ocurred: + occurred: python3 Changes: @@ -6605,6 +6605,11 @@ id=f4d4f99cfbc2396e49c1613a7d237b9e57f06f81'>commit message. + + + + +
Moving to the Yocto Project 3.0 Release @@ -6613,64 +6618,392 @@ id=f4d4f99cfbc2396e49c1613a7d237b9e57f06f81'>commit message. Yocto Project 3.0 Release from the prior release. -
- LSB Support Removed +
+ Init System Selection - LSB support has been removed. + Changing the init system manager previously required setting a + number of different variables. + You can now change the manager by setting the + INIT_MANAGER variable and the corresponding + include files + (i.e. conf/distro/include/init-manager-*.conf). + Include files are provided for four values: "none", "sysvinit", + "systemd", and "mdev-busybox". + The default value, "none", for INIT_MANAGER + should allow your current settings to continue working. + However, it is advisable to explicitly set + INIT_MANAGER.
-
- <filename>poky-lsb</filename> Replaced +
+ LSB Support Removed - poky-lsb replaced by - poky-altcfg for alternate configurations to - be tested on the autobuilder. - As well as an example of subclassing a distro config. + Linux Standard Base (LSB) as a standard is not current, and + is not well suited for embedded applications. + Support can be continued in a separate layer if needed. + However, presently LSB support has been removed from the core. + + + + As a result of this change, the poky-lsb + derivative distribution configuration that was also used for + testing alternative configurations has been replaced with a + poky-altcfg distribution that has LSB + parts removed.
-
- OpenSSL 1.0.X removed +
+ Removed Recipes - OpenSSL 1.0.X removed. + The following recipes have been removed. + + + core-image-lsb-dev: Part of removed + LSB support. + + + core-image-lsb: Part of removed + LSB support. + + + core-image-lsb-sdk: Part of removed + LSB support. + + + cve-check-tool: Functionally replaced + by the cve-update-db recipe and + cve-check class. + + + eglinfo: No longer maintained. + eglinfo from + mesa-demos is an adequate and + maintained alternative. + + + gcc-8.3: Version 8.3 removed. + Replaced by 9.2. + + + gnome-themes-standard: Only needed + by gtk+ 2.x, which has been removed. + + + gtk+: GTK+ 2 is obsolete and has been + replaced by gtk+3. + + + irda-utils: Has become obsolete. + IrDA support has been removed from the Linux kernel in + version 4.17 and later. + + + libnewt-python: + libnewt Python support merged into + main libnewt recipe. + + + libsdl: Replaced by newer + libsdl2. + + + libx11-diet: Became obsolete. + + + libxx86dga: Removed obsolete client + library. + + + libxx86misc: Removed. Library is + redundant. + + + linux-yocto: Version 5.0 removed, + which is now redundant (5.2 / 4.19 present). + + + lsbinitscripts: Part of removed LSB + support. + + + lsb: Part of removed LSB support. + + + lsbtest: Part of removed LSB support. + + + openssl10: Replaced by newer + openssl version 1.1. + + + packagegroup-core-lsb: Part of removed + LSB support. + + + python-nose: Removed the Python 2.x + version of the recipe. + + + python-numpy: Removed the Python 2.x + version of the recipe. + + + python-scons: Removed the Python 2.x + version of the recipe. + + + source-highlight: No longer needed. + + + stress: Replaced by + stress-ng. + + + vulkan: Split into + vulkan-loader, + vulkan-headers, and + vulkan-tools. + + + weston-conf: Functionality moved to + weston-init. + +
-
- Hash Equivalence Added +
+ Packaging Changes - Hash Equivalence added. - See - for setup information. + The following packaging changes have occurred. + + + The + Epiphany + browser has been dropped from + packagegroup-self-hosted as it has + not been needed inside + build-appliance-image for + quite some time and was causing resource problems. + + + libcap-ng Python support has been + moved to a separate libcap-ng-python + recipe to streamline the build process when the Python + bindings are not needed. + + + libdrm now packages the file + amdgpu.ids into a separate + libdrm-amdgpu package. + + + python3: The + runpy module is now in the + python3-core package as it is + required to support the common "python3 -m" command usage. + + + distcc now provides separate + distcc-client and + distcc-server packages as typically + one or the other are needed, rather than both. + + + python*-setuptools recipes now + separately package the pkg_resources + module in a python-pkg-resources / + python3-pkg-resources package as + the module is useful independent of the rest of the + setuptools package. + The main python-setuptools / + python3-setuptools package depends + on this new package so you should only need to update + dependencies unless you want to take advantage of the + increased granularity. + +
-
- <filename>gcc/glibc/binutls</filename> GNU Tests Added +
+ CVE Checking + + + cve-check-tool has been functionally replaced + by a new cve-update-db recipe and + functionality built into the cve-check class. + The result uses NVD JSON data feeds rather than the deprecated + XML feeds that cve-check-tool was using, + supports CVSSv3 scoring, and makes other improvements. + - gcc/glibc/binutls GNU tests added. + Additionally, the CVE_CHECK_CVE_WHITELIST + variable has been replaced by + CVE_CHECK_WHITELIST.
-
- Removed Recipes +
+ Bitbake Changes - Some topic... - + The following BitBake changes have occurred. + + + addtask statements now properly + validate dependent tasks. + Previously, an invalid task was silently ignored. + With this change, the invalid task generates a warning. + + + Other invalid addtask and + deltask usages now trigger these + warnings: "multiple target tasks arguments with + addtask / deltask", and "multiple before/after clauses". + + + The "multiconfig" prefix is now shortened to "mc". + "multiconfig" will continue to work, however it may be + removed in a future release. + + + The bitbake -g command no longer + generates a recipe-depends.dot file + as the contents (i.e. a reprocessed version of + task-depends.dot) were confusing. + + + The bb.build.FuncFailed exception, + previously raised by + bb.build.exec_func() when certain + other exceptions have occurred, has been removed. + The real underlying exceptions will be raised instead. + If you have calls to + bb.build.exec_func() in custom classes + or tinfoil-using scripts, any + references to bb.build.FuncFailed + should be cleaned up. + + + Additionally, the + bb.build.exec_func() no longer accepts + the "pythonexception" parameter. + The function now always raises exceptions. + Remove this argument in any calls to + bb.build.exec_func() in custom classes + or scripts. + + + The + BB_SETSCENE_VERIFY_FUNCTION2 + is no longer used. + In the unlikely event that you have any references to it, + they should be removed. + + + The RunQueueExecuteScenequeue and + RunQueueExecuteTasks events have been + removed since setscene tasks are now executed as part of + the normal runqueue. + Any event handling code in custom classes or scripts that + handles these two events need to be updated. + + + The arguments passed to functions used with + BB_HASHCHECK_FUNCTION + have changed. + If you are using your own custom hash check function, see + + for details. + + + Task specifications in BB_TASKDEPDATA + and class implementations used in signature generator + classes now use "<fn>:<task>" everywhere rather than + the "." delimiter that was being used in some places. + This change makes it consistent with all areas in the code. + Custom signature generator classes and code that reads + BB_TASKDEPDATA need to be updated to + use ':' as a separator rather than '.'. + + +
-
- Removed Classes +
+ Sanity Checks - Some topic... + The following sanity check changes occurred. + + + SRC_URI + is now checked for usage of two problematic items: + + + "${PN}" prefix/suffix use - Warnings always appear + if ${PN} is used. + You must fix the issue regardless of whether + multiconfig or anything else that would cause + prefixing/suffixing to happen. + + + Github archive tarballs - these are not guaranteed + to be stable. + Consequently, it is likely that the tarballs will + be refreshed and thus the SRC_URI checksums + will fail to apply. + It is recommended that you fetch either an official + release tarball or a specific revision from the + actual Git repository instead. + + + Either one of these items now trigger a warning by default. + If you wish to disable this check, remove + src-uri-bad from + WARN_QA. + + + The file-rdeps runtime dependency + check no longer expands + RDEPENDS + recursively as there is no mechanism to ensure they can be + fully computed, and thus races sometimes result in errors + either showing up or not. + Thus, you might now see errors for missing runtime + dependencies that were previously satisfied recursively. + Here is an example: package A contains a shell script + starting with #!/bin/bash but has no + dependency on bash. + However, package A depends on package B, which does depend + on bash. + You need to add the missing dependency or dependencies to + resolve the warning. + + + Setting DEPENDS_${PN} anywhere + (i.e. typically in a recipe) now triggers an error. + The error is triggered because + DEPENDS + is not a package-specific variable unlike RDEPENDS. + You should set DEPENDS instead. + + + systemd currently does not work well with the musl C + library because only upstream officially supports linking + the library with glibc. + Thus, a warning is shown when building systemd in + conjunction with musl. + +
@@ -6678,7 +7011,99 @@ id=f4d4f99cfbc2396e49c1613a7d237b9e57f06f81'>commit message. Miscellaneous Changes - Some topic... + The following miscellaneous changes have occurred. + + + The gnome + class has been removed because it now does very little. + You should update recipes that previously inherited this + class to do the following: + + inherit gnomebase gtk-icon-cache gconf mime + + + + The + meta/recipes-kernel/linux/linux-dtb.inc + file has been removed. + This file was previously deprecated in favor of setting + KERNEL_DEVICETREE + in any kernel recipe and only produced a warning. + Remove any include or + require statements pointing to this + file. + + + TARGET_CFLAGS, + TARGET_CPPFLAGS, + TARGET_CXXFLAGS, + and + TARGET_LDFLAGS + are no longer exported to the external environment. + This change did not require any changes to core recipes, + which is a good indicator that no changes will be + required. + However, if for some reason the software being built by one + of your recipes is expecting these variables to be set, + then building the recipe will fail. + In such cases, you must either export the variable or + variables in the recipe or change the scripts so that + exporting is not necessary. + + + You must change the host distro identifier used in + NATIVELSBSTRING + to use all lowercase characters even if it does not contain + a version number. + This change is necessary only if you are not using + uninative and + SANITY_TESTED_DISTROS. + + + In the base-files recipe, writing the + hostname into /etc/hosts and + /etc/hostname is now done within the + main + do_install + function rather than in the + do_install_basefilesissue function. + The reason for the change is because + do_install_basefilesissue is more + easily overridden without having to duplicate the hostname + functionality. + If you have done the latter (e.g. in a + base-files bbappend), then you should + remove it from your customized + do_install_basefilesissue function. + + + The wic --expand command now uses + commas to separate "key:value" pairs rather than hyphens. + + The wic command-line help is not updated. + + You must update any scripts or commands where you use + wic --expand with multiple + "key:value" pairs. + + + UEFI image variable settings have been moved from various + places to a central + conf/image-uefi.conf. + This change should not influence any existing configuration + as the meta/conf/image-uefi.conf + in the core metadata sets defaults that can be overridden + in the same manner as before. + + + conf/distro/include/world-broken.inc + has been removed. + For cases where certain recipes need to be disabled when + using the musl C library, these recipes now have + COMPATIBLE_HOST_libc-musl set with a + comment that explains why. + +
@@ -6694,6 +7119,28 @@ id=f4d4f99cfbc2396e49c1613a7d237b9e57f06f81'>commit message. + + + + + + + + + + + + + + + + + + + + + +