All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] Migration info for honister release
@ 2021-10-11  3:57 Paul Eggleton
  2021-10-11  3:57 ` [PATCH 1/5] migration-3.4: tweak overrides change section Paul Eggleton
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Paul Eggleton @ 2021-10-11  3:57 UTC (permalink / raw)
  To: docs

Migration info for 3.4 on top of the overrides info that was written up
previously. Please double-check for accuracy.

Note that the lz4/zstd distro-specific package names have not been
checked on the respective distros, however I used pkgs.org as a
reference so they should be correct.



The following changes since commit 444ca8900e8057562d2a71a77e6e6798aca3ce85:

  dev-manual: warn about license compliance issues when static libraries are used (2021-10-08 22:01:20 +0100)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib paule/migration-3.4
  http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=paule/migration-3.4

Paul Eggleton (5):
  migration-3.4: tweak overrides change section
  ref-manual: remove meta class
  poky.yaml: add lz4 and zstd to essential host packages
  migration-3.4: add additional migration info
  migration: tweak introduction section

 documentation/migration-guides/migration-3.4.rst   | 208 +++++++++++++++++++--
 .../migration-guides/migration-general.rst         |  26 ++-
 documentation/poky.yaml                            |  11 +-
 documentation/ref-manual/classes.rst               |   9 -
 4 files changed, 222 insertions(+), 32 deletions(-)

-- 
1.8.3.1



^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 1/5] migration-3.4: tweak overrides change section
  2021-10-11  3:57 [PATCH 0/5] Migration info for honister release Paul Eggleton
@ 2021-10-11  3:57 ` Paul Eggleton
  2021-10-11  3:57 ` [PATCH 2/5] ref-manual: remove meta class Paul Eggleton
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Paul Eggleton @ 2021-10-11  3:57 UTC (permalink / raw)
  To: docs

From: Paul Eggleton <paul.eggleton@microsoft.com>

Minor grammar and readability improvements.

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
---
 documentation/migration-guides/migration-3.4.rst | 34 +++++++++++++-----------
 1 file changed, 19 insertions(+), 15 deletions(-)

diff --git a/documentation/migration-guides/migration-3.4.rst b/documentation/migration-guides/migration-3.4.rst
index e83e936..3df5b69 100644
--- a/documentation/migration-guides/migration-3.4.rst
+++ b/documentation/migration-guides/migration-3.4.rst
@@ -7,17 +7,18 @@ Project 3.4 Release (codename "honister") from the prior release.
 Override syntax changes
 -----------------------
 
-This release requires changes to the metadata to indicate where overrides are
-being used in variable key names. This is done with the ``:`` character replacing
-the use of ``_`` previously. This means that an entry like::
+In this release, the ``:`` character replaces the use of ``_`` to
+refer to an override, most commonly when making a conditional assignment
+of a variable. This means that an entry like::
 
    SRC_URI_qemux86 = "file://somefile"
 
-becomes::
+now becomes::
 
    SRC_URI:qemux86 = "file://somefile"
 
-since ``qemux86`` is an override. This applies to any use of override syntax so::
+since ``qemux86`` is an override. This applies to any use of override
+syntax, so the following::
 
    SRC_URI_append = " file://somefile"
    SRC_URI_append_qemux86 = " file://somefile2"
@@ -29,7 +30,7 @@ since ``qemux86`` is an override. This applies to any use of override syntax so:
    SRCREV_pn-bash = "abc"
    BB_TASK_NICE_LEVEL_task-testimage = '0'
 
-becomes::
+would now become::
 
    SRC_URI:append = " file://somefile"
    SRC_URI:append:qemux86 = " file://somefile2"
@@ -63,8 +64,8 @@ suffix to variables in ``layer.conf`` files such as :term:`BBFILE_PATTERN`,
 may be the same as a :term:`DISTRO` override causing some confusion. We do
 plan to try and improve consistency as these issues are identified.
 
-To help with migration of layers there is a script in OE-Core. Once configured
-with the overrides used by a layer, this can be run as::
+To help with migration of layers, a script has been provided in OE-Core.
+Once configured with the overrides used by a layer, this can be run as::
 
    <oe-core>/scripts/contrib/convert-overrides.py <layerdir>
 
@@ -74,10 +75,13 @@ with the overrides used by a layer, this can be run as::
    expected to handle every case. In particular, it needs to be told which overrides
    the layer uses (usually machine and distro names/overrides) and the result should
    be carefully checked since it can be a little enthusiastic and will convert
-   references to ``_append``, ``_remove`` and ``_prepend`` in function and variables names.
-
-For reference, this conversion is important as it allows BitBake to know what is
-an override and what is not. This should allow us to proceed with other syntax
-improvements and simplifications for usability. It also means bitbake no longer
-has to guess and maintain large lookup lists just in case ``functionname`` in
-``my_functionname`` is an override and this should improve efficiency.
+   references to ``_append``, ``_remove`` and ``_prepend`` in function and variable
+   names.
+
+For reference, this conversion is important as it allows BitBake to more reliably
+determine what is an override and what is not, as underscores are also used in
+variable names without intending to be overrides. This should allow us to proceed
+with other syntax improvements and simplifications for usability. It also means
+BitBake no longer has to guess and maintain large lookup lists just in case
+e.g. ``functionname`` in ``my_functionname`` is an override, and thus should improve
+efficiency.
-- 
1.8.3.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/5] ref-manual: remove meta class
  2021-10-11  3:57 [PATCH 0/5] Migration info for honister release Paul Eggleton
  2021-10-11  3:57 ` [PATCH 1/5] migration-3.4: tweak overrides change section Paul Eggleton
@ 2021-10-11  3:57 ` Paul Eggleton
  2021-10-11  3:57 ` [PATCH 3/5] poky.yaml: add lz4 and zstd to essential host packages Paul Eggleton
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Paul Eggleton @ 2021-10-11  3:57 UTC (permalink / raw)
  To: docs

From: Paul Eggleton <paul.eggleton@microsoft.com>

This was recently removed so remove the reference to it.

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
---
 documentation/ref-manual/classes.rst | 9 ---------
 1 file changed, 9 deletions(-)

diff --git a/documentation/ref-manual/classes.rst b/documentation/ref-manual/classes.rst
index ffaad9b..79af45a 100644
--- a/documentation/ref-manual/classes.rst
+++ b/documentation/ref-manual/classes.rst
@@ -1494,15 +1494,6 @@ messages for various BitBake severity levels (i.e. ``bbplain``,
 This class is enabled by default since it is inherited by the ``base``
 class.
 
-.. _ref-classes-meta:
-
-``meta.bbclass``
-================
-
-The ``meta`` class is inherited by recipes that do not build any output
-packages themselves, but act as a "meta" target for building other
-recipes.
-
 .. _ref-classes-metadata_scm:
 
 ``metadata_scm.bbclass``
-- 
1.8.3.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 3/5] poky.yaml: add lz4 and zstd to essential host packages
  2021-10-11  3:57 [PATCH 0/5] Migration info for honister release Paul Eggleton
  2021-10-11  3:57 ` [PATCH 1/5] migration-3.4: tweak overrides change section Paul Eggleton
  2021-10-11  3:57 ` [PATCH 2/5] ref-manual: remove meta class Paul Eggleton
@ 2021-10-11  3:57 ` Paul Eggleton
  2021-10-11  3:57 ` [PATCH 4/5] migration-3.4: add additional migration info Paul Eggleton
  2021-10-11  3:57 ` [PATCH 5/5] migration: tweak introduction section Paul Eggleton
  4 siblings, 0 replies; 7+ messages in thread
From: Paul Eggleton @ 2021-10-11  3:57 UTC (permalink / raw)
  To: docs

From: Paul Eggleton <paul.eggleton@microsoft.com>

These are now required so update the corresponding distro-specific
lists used in the system requirements documentation.

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
---
 documentation/poky.yaml | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/documentation/poky.yaml b/documentation/poky.yaml
index feb792f..50d1f9c 100644
--- a/documentation/poky.yaml
+++ b/documentation/poky.yaml
@@ -14,23 +14,24 @@ YOCTO_RELEASE_DL_URL : "&YOCTO_DL_URL;/releases/yocto/yocto-&DISTRO;"
 UBUNTU_HOST_PACKAGES_ESSENTIAL : "gawk wget git diffstat unzip texinfo gcc \
      build-essential chrpath socat cpio python3 python3-pip python3-pexpect \
      xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev \
-     pylint3 xterm python3-subunit mesa-common-dev"
+     pylint3 xterm python3-subunit mesa-common-dev zstd lz4"
 FEDORA_HOST_PACKAGES_ESSENTIAL : "gawk make wget tar bzip2 gzip python3 unzip perl patch \
      diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath \
      ccache perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue perl-bignum socat \
      python3-pexpect findutils which file cpio python python3-pip xz python3-GitPython \
      python3-jinja2 SDL-devel xterm rpcgen mesa-libGL-devel perl-FindBin perl-File-Compare \
-     perl-File-Copy perl-locale"
+     perl-File-Copy perl-locale zstd lz4"
 OPENSUSE_HOST_PACKAGES_ESSENTIAL : "python gcc gcc-c++ git chrpath make wget python-xml \
      diffstat makeinfo python-curses patch socat python3 python3-curses tar python3-pip \
-     python3-pexpect xz which python3-Jinja2 Mesa-libEGL1 libSDL-devel xterm rpcgen Mesa-dri-devel
+     python3-pexpect xz which python3-Jinja2 Mesa-libEGL1 libSDL-devel xterm rpcgen Mesa-dri-devel \
+     zstd lz4
      \n\      $ sudo pip3 install GitPython"
 CENTOS7_HOST_PACKAGES_ESSENTIAL : "-y epel-release
      \n\      $ sudo yum makecache
      \n\      $ sudo yum install gawk make wget tar bzip2 gzip python3 unzip perl patch \
      diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath socat \
      perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue python36-pip xz \
-     which SDL-devel xterm mesa-libGL-devel
+     which SDL-devel xterm mesa-libGL-devel zstd lz4
      \n\      $ sudo pip3 install GitPython jinja2"
 CENTOS8_HOST_PACKAGES_ESSENTIAL : "-y epel-release
      \n\      $ sudo dnf config-manager --set-enabled PowerTools
@@ -39,7 +40,7 @@ CENTOS8_HOST_PACKAGES_ESSENTIAL : "-y epel-release
      diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath ccache \
      socat perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue python3-pip \
      python3-GitPython python3-jinja2 python3-pexpect xz which SDL-devel xterm \
-     rpcgen mesa-libGL-devel"
+     rpcgen mesa-libGL-devel zstd lz4"
 PIP3_HOST_PACKAGES_DOC : "$ sudo pip3 install sphinx sphinx_rtd_theme pyyaml"
 MIN_PYTHON_VERSION : "3.6.0"
 MIN_TAR_VERSION : "1.28"
-- 
1.8.3.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 4/5] migration-3.4: add additional migration info
  2021-10-11  3:57 [PATCH 0/5] Migration info for honister release Paul Eggleton
                   ` (2 preceding siblings ...)
  2021-10-11  3:57 ` [PATCH 3/5] poky.yaml: add lz4 and zstd to essential host packages Paul Eggleton
@ 2021-10-11  3:57 ` Paul Eggleton
  2021-10-11  7:27   ` [docs] " Quentin Schulz
  2021-10-11  3:57 ` [PATCH 5/5] migration: tweak introduction section Paul Eggleton
  4 siblings, 1 reply; 7+ messages in thread
From: Paul Eggleton @ 2021-10-11  3:57 UTC (permalink / raw)
  To: docs

From: Paul Eggleton <paul.eggleton@microsoft.com>

Add migration instructions gathered by combing the commits in this
release.

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
---
 documentation/migration-guides/migration-3.4.rst | 176 +++++++++++++++++++++++
 1 file changed, 176 insertions(+)

diff --git a/documentation/migration-guides/migration-3.4.rst b/documentation/migration-guides/migration-3.4.rst
index 3df5b69..4d656e8 100644
--- a/documentation/migration-guides/migration-3.4.rst
+++ b/documentation/migration-guides/migration-3.4.rst
@@ -85,3 +85,179 @@ with other syntax improvements and simplifications for usability. It also means
 BitBake no longer has to guess and maintain large lookup lists just in case
 e.g. ``functionname`` in ``my_functionname`` is an override, and thus should improve
 efficiency.
+
+
+New host dependencies
+---------------------
+
+The ``lz4c``, ``pzstd`` and ``zstd`` commands are now required to be
+installed on the build host to support LZ4 and Zstandard compression
+functionality. These are typically provided by ``lz4`` and ``zstd``
+packages in most Linux distributions. Alternatively they are available
+as part of ``buildtools-tarball`` if your distribution does not provide
+them. For more information see
+:ref:`ref-manual/system-requirements:required packages for the build host`.
+
+
+Removed recipes
+---------------
+
+The following recipes have been removed in this release:
+
+- ``assimp``: problematic from a licensing perspective and no longer
+  needed by anything else
+- ``clutter-1.0``: legacy component moved to meta-gnome
+- ``clutter-gst-3.0``: legacy component moved to meta-gnome
+- ``clutter-gtk-1.0``: legacy component moved to meta-gnome
+- ``cogl-1.0``: legacy component moved to meta-gnome
+- ``core-image-clutter``: removed along with clutter
+- ``linux-yocto``: removed version 5.4 recipes (5.14 and 5.10 still
+  provided)
+- ``mklibs-native``: not actively tested and upstream mklibs still
+  requires Python 2
+- ``mx-1.0``: obsolete (last release 2012) and isn't used by anything in
+  any known layer
+- ``packagegroup-core-clutter``: removed along with clutter
+
+
+Removed classes
+---------------
+
+- ``clutter``: moved to meta-gnome along with clutter itself
+- ``image-mklibs``: not actively tested and upstream mklibs still
+  requires Python 2
+- ``meta``: no longer useful. Recipes that need to skip installing
+  packages should inherit ``nopackages`` instead.
+
+
+Prelinking disabled by default
+------------------------------
+
+Recent tests have shown that prelinking works only when PIE is not
+enabled (see `here <https://rlbl.me/prelink-1>`__ and `here <https://rlbl.me/prelink-2>`__),
+and as PIE is both a desirable security feature, and the only
+configuration provided and tested by the Yocto Project, there is
+simply no sense in continuing to enable prelink.
+
+There's also a concern that no one is maintaining the code, and there
+are open bugs (including `this serious one <https://bugzilla.yoctoproject.org/show_bug.cgi?id=14429>`__).
+Given that prelink does intricate address arithmetic and rewriting
+of binaries the best option is to disable the feature. It is recommended
+that you consider disabling this feature in your own configuration if
+it is currently enabled.
+
+
+Virtual runtime provides
+------------------------
+
+Recipes shouldn't use the ``virtual/`` string in :term:`RPROVIDES` and
+:term:`RDEPENDS` - it is confusing because ``virtual/`` has no special
+meaning in :term:`RPROVIDES` and :term:`RDEPENDS` (unlike in the
+corresponding build-time :term:`PROVIDES` and :term:`DEPENDS`).
+
+
+Tune files moved to architecture-specific directories
+-----------------------------------------------------
+
+The tune files found in ``conf/machine/include`` have now been moved
+into their respective architecture name directories under that same
+location; e.g. x86 tune files have moved into an ``x86`` subdirectory,
+MIPS tune files have moved into a ``mips`` subdirectory, etc.
+The ARM tunes have an extra level (``armv8a``, ``armv8m``, etc.) and
+some have been renamed to make them uniform with the rest of the tunes.
+See `this commit <http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=1d381f21f5f13aa0c4e1a45683ed656ebeedd37d>`__
+for reference.
+
+If you have any references to tune files (e.g. in custom machine
+configuration files) they will need to be updated.
+
+
+Extensible SDK host extension
+-----------------------------
+
+For a normal SDK, some layers append to :term:`TOOLCHAIN_HOST_TASK`
+unconditionally which is fine, until the eSDK tries to override the
+variable to its own values. Instead of installing packages specified
+in this variable it uses native recipes instead - a very different
+approach. This has led to confusing errors when binaries are added
+to the SDK but not relocated.
+
+To avoid these issues, a new ``TOOLCHAIN_HOST_TASK_ESDK`` variable has
+been created. If you wish to extend what is installed in the host
+portion of the eSDK then you will now need to set this variable.
+
+
+Package/recipe splitting
+------------------------
+
+- ``perl-cross`` has been split out from the main ``perl`` recipe to
+  its own ``perlcross`` recipe for maintenance reasons. If you have
+  bbappends for the perl recipe then these may need extending.
+
+- The ``wayland`` recipe now packages its binaries in a
+  ``wayland-tools`` package rather than putting them into
+  ``wayland-dev``.
+
+- Xwayland has been split out of the xserver-xorg tree and thus is now
+  in its own ``xwayland`` recipe. If you need Xwayland in your image
+  then you may now need to add it explicitly.
+
+
+Image / SDK generation changes
+------------------------------
+
+- Recursive dependencies on the ``do_build`` task are now disabled when
+  building SDKs. These are generally not needed; in the unlikely event
+  that you do encounter problems then it will probably be as a result of
+  missing explicit dependencies that need to be added.
+
+- Errors during "complementary" package installation (e.g. for ``*-dbg``
+  and ``*-dev`` packages) during image construction are no longer
+  ignored. Historically some of these packages had installation problems,
+  that is no longer the case. In the unlikely event that you see errors
+  as a result, you will need to fix the installation/packaging issues.
+
+- When building an image, only packages that will be used in building
+  the image (i.e. the first entry in :term:`PACKAGE_CLASSES`) will be
+  produced if multiple package types are enabled (which is not a typical
+  configuration). If in your CI system you need to have the original
+  behaviour, use ``bitbake --runall build <target>``.
+
+- The ``-lic`` package is no longer automacally added to
+  :term:`RRECOMMENDS` for every other package when
+  :term:`LICENSE_CREATE_PACKAGE` is set to "1". If you wish all license
+  packages to be installed corresponding to packages in your image, then
+  you should instead add the new ``lic-pkgs`` feature to
+  :term:`IMAGE_FEATURES`.
+
+
+Miscellaneous
+-------------
+
+- Certificates are now properly checked when bitbake fetches sources
+  over HTTPS. If you receive errors as a result for your custom recipes,
+  you will need to use a mirror or address the issue with the operators
+  of the server in question.
+
+- ``avahi`` has had its GTK+ support disabled by default. If you wish to
+  re-enable it, set ``AVAHI_GTK = "gtk3"`` in a bbappend for the
+  ``avahi`` recipe or in your custom distro configuration file.
+
+- Setting the ``BUILD_REPRODUCIBLE_BINARIES`` variable to "0" no longer
+  uses a strangely old fallback date of April 2011, it instead disables
+  building reproducible binaries as you would logically expect.
+
+- Setting noexec/nostamp/fakeroot varflags to any value besides "1" will
+  now trigger a warning. These should be either set to "1" to enable, or
+  not set at all to disable.
+
+- The previously deprecated ``COMPRESS_CMD`` and
+  ``CVE_CHECK_CVE_WHITELIST`` variables have been removed. Use
+  ``CONVERSION_CMD`` and :term:`CVE_CHECK_WHITELIST` respectively
+  instead.
+
+- The obsolete ``oe_machinstall`` function previously provided in the
+  :ref:`utils <ref-classes-utils>` class has been removed. For
+  machine-specific installation it is recommended that you use the
+  built-in override support in the fetcher or overrides in general
+  instead.
-- 
1.8.3.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 5/5] migration: tweak introduction section
  2021-10-11  3:57 [PATCH 0/5] Migration info for honister release Paul Eggleton
                   ` (3 preceding siblings ...)
  2021-10-11  3:57 ` [PATCH 4/5] migration-3.4: add additional migration info Paul Eggleton
@ 2021-10-11  3:57 ` Paul Eggleton
  4 siblings, 0 replies; 7+ messages in thread
From: Paul Eggleton @ 2021-10-11  3:57 UTC (permalink / raw)
  To: docs

From: Paul Eggleton <paul.eggleton@microsoft.com>

Ensure we have a brief introductory section and tweak the general
migration considerations a little.

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
---
 .../migration-guides/migration-general.rst         | 26 ++++++++++++++++++----
 1 file changed, 22 insertions(+), 4 deletions(-)

diff --git a/documentation/migration-guides/migration-general.rst b/documentation/migration-guides/migration-general.rst
index 182482e..9eecf69 100644
--- a/documentation/migration-guides/migration-general.rst
+++ b/documentation/migration-guides/migration-general.rst
@@ -1,5 +1,17 @@
+Introduction
+============
+
+This guide provides a list of the backwards-incompatible changes you
+might need to adapt to in your existing Yocto Project configuration
+when upgrading to a new release.
+
+If you are upgrading over multiple releases, you will need to follow
+the sections from the version following the one you were previously
+using up to the new version you are upgrading to.
+
+
 General Migration Considerations
-================================
+--------------------------------
 
 Some considerations are not tied to a specific Yocto Project release.
 This section presents information you should consider when migrating to
@@ -26,16 +38,17 @@ any new Yocto Project release.
 
    The better solution (where practical) is to use append files
    (``*.bbappend``) to capture any customizations you want to make to a
-   recipe. Doing so, isolates your changes from the main recipe making
+   recipe. Doing so isolates your changes from the main recipe, making
    them much more manageable. However, sometimes it is not practical to
    use an append file. A good example of this is when introducing a
    newer or older version of a recipe in another layer.
 
+
 -  *Updating Append Files*:
 
-   Since append files generally only contain
+   Since append (``.bbappend``) files generally only contain
    your customizations, they often do not need to be adjusted for new
-   releases. However, if the ``.bbappend`` file is specific to a
+   releases. However, if the append file is specific to a
    particular version of the recipe (i.e. its name does not use the %
    wildcard) and the version of the recipe to which it is appending has
    changed, then you will at a minimum need to rename the append file to
@@ -50,5 +63,10 @@ any new Yocto Project release.
    this is the case and assuming the patch is still needed, you must
    modify the patch file so that it does apply.
 
+ .. tip::
+
+   You can list all append files used in your configuration by running:
+
+     bitbake-layers show-appends
 
 
-- 
1.8.3.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [docs] [PATCH 4/5] migration-3.4: add additional migration info
  2021-10-11  3:57 ` [PATCH 4/5] migration-3.4: add additional migration info Paul Eggleton
@ 2021-10-11  7:27   ` Quentin Schulz
  0 siblings, 0 replies; 7+ messages in thread
From: Quentin Schulz @ 2021-10-11  7:27 UTC (permalink / raw)
  To: docs, Paul Eggleton

Hi Paul,

On October 11, 2021 5:57:56 AM GMT+02:00, Paul Eggleton <paul.eggleton@linux.microsoft.com> wrote:
>From: Paul Eggleton <paul.eggleton@microsoft.com>
>
>Add migration instructions gathered by combing the commits in this
>release.
>
>Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
>---
> documentation/migration-guides/migration-3.4.rst | 176 +++++++++++++++++++++++
> 1 file changed, 176 insertions(+)
>
>diff --git a/documentation/migration-guides/migration-3.4.rst b/documentation/migration-guides/migration-3.4.rst
>index 3df5b69..4d656e8 100644
>--- a/documentation/migration-guides/migration-3.4.rst
>+++ b/documentation/migration-guides/migration-3.4.rst
>@@ -85,3 +85,179 @@ with other syntax improvements and simplifications for usability. It also means
> BitBake no longer has to guess and maintain large lookup lists just in case
> e.g. ``functionname`` in ``my_functionname`` is an override, and thus should improve
> efficiency.
>+
>+
>+New host dependencies
>+---------------------
>+
>+The ``lz4c``, ``pzstd`` and ``zstd`` commands are now required to be
>+installed on the build host to support LZ4 and Zstandard compression
>+functionality. These are typically provided by ``lz4`` and ``zstd``
>+packages in most Linux distributions. Alternatively they are available
>+as part of ``buildtools-tarball`` if your distribution does not provide
>+them. For more information see
>+:ref:`ref-manual/system-requirements:required packages for the build host`.
>+
>+
>+Removed recipes
>+---------------
>+
>+The following recipes have been removed in this release:
>+
>+- ``assimp``: problematic from a licensing perspective and no longer
>+  needed by anything else
>+- ``clutter-1.0``: legacy component moved to meta-gnome
>+- ``clutter-gst-3.0``: legacy component moved to meta-gnome
>+- ``clutter-gtk-1.0``: legacy component moved to meta-gnome
>+- ``cogl-1.0``: legacy component moved to meta-gnome
>+- ``core-image-clutter``: removed along with clutter
>+- ``linux-yocto``: removed version 5.4 recipes (5.14 and 5.10 still
>+  provided)
>+- ``mklibs-native``: not actively tested and upstream mklibs still
>+  requires Python 2
>+- ``mx-1.0``: obsolete (last release 2012) and isn't used by anything in
>+  any known layer
>+- ``packagegroup-core-clutter``: removed along with clutter
>+
>+
>+Removed classes
>+---------------
>+
>+- ``clutter``: moved to meta-gnome along with clutter itself
>+- ``image-mklibs``: not actively tested and upstream mklibs still
>+  requires Python 2
>+- ``meta``: no longer useful. Recipes that need to skip installing
>+  packages should inherit ``nopackages`` instead.
>+
>+
>+Prelinking disabled by default
>+------------------------------
>+
>+Recent tests have shown that prelinking works only when PIE is not
>+enabled (see `here <https://rlbl.me/prelink-1>`__ and `here <https://rlbl.me/prelink-2>`__),
>+and as PIE is both a desirable security feature, and the only
>+configuration provided and tested by the Yocto Project, there is
>+simply no sense in continuing to enable prelink.
>+
>+There's also a concern that no one is maintaining the code, and there
>+are open bugs (including `this serious one <https://bugzilla.yoctoproject.org/show_bug.cgi?id=14429>`__).
>+Given that prelink does intricate address arithmetic and rewriting
>+of binaries the best option is to disable the feature. It is recommended
>+that you consider disabling this feature in your own configuration if
>+it is currently enabled.
>+
>+
>+Virtual runtime provides
>+------------------------
>+
>+Recipes shouldn't use the ``virtual/`` string in :term:`RPROVIDES` and
>+:term:`RDEPENDS` - it is confusing because ``virtual/`` has no special
>+meaning in :term:`RPROVIDES` and :term:`RDEPENDS` (unlike in the
>+corresponding build-time :term:`PROVIDES` and :term:`DEPENDS`).
>+
>+
>+Tune files moved to architecture-specific directories
>+-----------------------------------------------------
>+
>+The tune files found in ``conf/machine/include`` have now been moved
>+into their respective architecture name directories under that same
>+location; e.g. x86 tune files have moved into an ``x86`` subdirectory,
>+MIPS tune files have moved into a ``mips`` subdirectory, etc.
>+The ARM tunes have an extra level (``armv8a``, ``armv8m``, etc.) and
>+some have been renamed to make them uniform with the rest of the tunes.
>+See `this commit <http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=1d381f21f5f13aa0c4e1a45683ed656ebeedd37d>`__
>+for reference.
>+
>+If you have any references to tune files (e.g. in custom machine
>+configuration files) they will need to be updated.
>+
>+
>+Extensible SDK host extension
>+-----------------------------
>+
>+For a normal SDK, some layers append to :term:`TOOLCHAIN_HOST_TASK`
>+unconditionally which is fine, until the eSDK tries to override the
>+variable to its own values. Instead of installing packages specified
>+in this variable it uses native recipes instead - a very different
>+approach. This has led to confusing errors when binaries are added
>+to the SDK but not relocated.
>+
>+To avoid these issues, a new ``TOOLCHAIN_HOST_TASK_ESDK`` variable has
>+been created. If you wish to extend what is installed in the host
>+portion of the eSDK then you will now need to set this variable.
>+
>+
>+Package/recipe splitting
>+------------------------
>+
>+- ``perl-cross`` has been split out from the main ``perl`` recipe to
>+  its own ``perlcross`` recipe for maintenance reasons. If you have
>+  bbappends for the perl recipe then these may need extending.
>+
>+- The ``wayland`` recipe now packages its binaries in a
>+  ``wayland-tools`` package rather than putting them into
>+  ``wayland-dev``.
>+
>+- Xwayland has been split out of the xserver-xorg tree and thus is now
>+  in its own ``xwayland`` recipe. If you need Xwayland in your image
>+  then you may now need to add it explicitly.
>+
>+
>+Image / SDK generation changes
>+------------------------------
>+
>+- Recursive dependencies on the ``do_build`` task are now disabled when
>+  building SDKs. These are generally not needed; in the unlikely event
>+  that you do encounter problems then it will probably be as a result of
>+  missing explicit dependencies that need to be added.
>+
>+- Errors during "complementary" package installation (e.g. for ``*-dbg``
>+  and ``*-dev`` packages) during image construction are no longer
>+  ignored. Historically some of these packages had installation problems,
>+  that is no longer the case. In the unlikely event that you see errors
>+  as a result, you will need to fix the installation/packaging issues.
>+
>+- When building an image, only packages that will be used in building
>+  the image (i.e. the first entry in :term:`PACKAGE_CLASSES`) will be
>+  produced if multiple package types are enabled (which is not a typical
>+  configuration). If in your CI system you need to have the original
>+  behaviour, use ``bitbake --runall build <target>``.
>+

I think we should also update the comment in the local.conf.sample and local.conf.sample.extended in meta-poky to reflect that.

https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta-poky/conf/local.conf.sample#n95

>+- The ``-lic`` package is no longer automacally added to

s/automacally/automatically/

Otherwise, looks good to me. Thanks for the patches!

Cheers,
Quentin

>+  :term:`RRECOMMENDS` for every other package when
>+  :term:`LICENSE_CREATE_PACKAGE` is set to "1". If you wish all license
>+  packages to be installed corresponding to packages in your image, then
>+  you should instead add the new ``lic-pkgs`` feature to
>+  :term:`IMAGE_FEATURES`.
>+
>+
>+Miscellaneous
>+-------------
>+
>+- Certificates are now properly checked when bitbake fetches sources
>+  over HTTPS. If you receive errors as a result for your custom recipes,
>+  you will need to use a mirror or address the issue with the operators
>+  of the server in question.
>+
>+- ``avahi`` has had its GTK+ support disabled by default. If you wish to
>+  re-enable it, set ``AVAHI_GTK = "gtk3"`` in a bbappend for the
>+  ``avahi`` recipe or in your custom distro configuration file.
>+
>+- Setting the ``BUILD_REPRODUCIBLE_BINARIES`` variable to "0" no longer
>+  uses a strangely old fallback date of April 2011, it instead disables
>+  building reproducible binaries as you would logically expect.
>+
>+- Setting noexec/nostamp/fakeroot varflags to any value besides "1" will
>+  now trigger a warning. These should be either set to "1" to enable, or
>+  not set at all to disable.
>+
>+- The previously deprecated ``COMPRESS_CMD`` and
>+  ``CVE_CHECK_CVE_WHITELIST`` variables have been removed. Use
>+  ``CONVERSION_CMD`` and :term:`CVE_CHECK_WHITELIST` respectively
>+  instead.
>+
>+- The obsolete ``oe_machinstall`` function previously provided in the
>+  :ref:`utils <ref-classes-utils>` class has been removed. For
>+  machine-specific installation it is recommended that you use the
>+  built-in override support in the fetcher or overrides in general
>+  instead.


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-10-11  7:27 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-11  3:57 [PATCH 0/5] Migration info for honister release Paul Eggleton
2021-10-11  3:57 ` [PATCH 1/5] migration-3.4: tweak overrides change section Paul Eggleton
2021-10-11  3:57 ` [PATCH 2/5] ref-manual: remove meta class Paul Eggleton
2021-10-11  3:57 ` [PATCH 3/5] poky.yaml: add lz4 and zstd to essential host packages Paul Eggleton
2021-10-11  3:57 ` [PATCH 4/5] migration-3.4: add additional migration info Paul Eggleton
2021-10-11  7:27   ` [docs] " Quentin Schulz
2021-10-11  3:57 ` [PATCH 5/5] migration: tweak introduction section Paul Eggleton

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.