diff options
Diffstat (limited to 'documentation/migration-guides')
| -rw-r--r-- | documentation/migration-guides/migration-5.3.rst | 47 | ||||
| -rw-r--r-- | documentation/migration-guides/release-notes-5.3.rst | 335 |
2 files changed, 357 insertions, 25 deletions
diff --git a/documentation/migration-guides/migration-5.3.rst b/documentation/migration-guides/migration-5.3.rst index 985712cb22..e59bc8c638 100644 --- a/documentation/migration-guides/migration-5.3.rst +++ b/documentation/migration-guides/migration-5.3.rst | |||
| @@ -134,10 +134,20 @@ To set back the "mac" policy in systemd (version 257.8 at the time of writing | |||
| 134 | this note), you should set the ``NamePolicy`` and ``AlternativeNamesPolicy`` as | 134 | this note), you should set the ``NamePolicy`` and ``AlternativeNamesPolicy`` as |
| 135 | detailed in :manpage:`systemd.link(5)`. | 135 | detailed in :manpage:`systemd.link(5)`. |
| 136 | 136 | ||
| 137 | Removal of unlicensed Linux kernel firmware | ||
| 138 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| 139 | |||
| 140 | By default, the ``linux-firmware`` recipe now excludes firmware that do not | ||
| 141 | provide any license information. The recipe holds an internal list of firmware | ||
| 142 | to exclude via a variable named ``REMOVE_UNLICENSED``, this variable may be | ||
| 143 | overridden if unlicensed firmware is needed. See :oe_git:`the recipe | ||
| 144 | </openembedded-core/tree/meta/recipes-kernel/linux-firmware>` for a complete | ||
| 145 | overview of the removed firmware. | ||
| 146 | |||
| 137 | Supported kernel versions | 147 | Supported kernel versions |
| 138 | ~~~~~~~~~~~~~~~~~~~~~~~~~ | 148 | ~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 139 | 149 | ||
| 140 | The :term:`OLDEST_KERNEL` setting is XXX in this release, meaning that | 150 | The :term:`OLDEST_KERNEL` setting is 5.15 in this release, meaning that |
| 141 | out the box, older kernels are not supported. See :ref:`4.3 migration notes | 151 | out the box, older kernels are not supported. See :ref:`4.3 migration notes |
| 142 | <migration-4.3-supported-kernel-versions>` for details. | 152 | <migration-4.3-supported-kernel-versions>` for details. |
| 143 | 153 | ||
| @@ -147,7 +157,9 @@ Supported distributions | |||
| 147 | Compared to the previous releases, running BitBake is supported on new | 157 | Compared to the previous releases, running BitBake is supported on new |
| 148 | GNU/Linux distributions: | 158 | GNU/Linux distributions: |
| 149 | 159 | ||
| 150 | - XXX | 160 | - Debian 13 (Trixie) |
| 161 | - Fedora 42 | ||
| 162 | - Ubuntu 25.04 | ||
| 151 | 163 | ||
| 152 | On the other hand, some earlier distributions are no longer supported: | 164 | On the other hand, some earlier distributions are no longer supported: |
| 153 | 165 | ||
| @@ -174,6 +186,10 @@ The following variables have been removed: | |||
| 174 | :term:`BitBake` invocation and replace it with information about what was | 186 | :term:`BitBake` invocation and replace it with information about what was |
| 175 | built during the build. This was partly broken and hard to maintain. | 187 | built during the build. This was partly broken and hard to maintain. |
| 176 | 188 | ||
| 189 | - ``GPE_MIRROR``: this variable used to contain the | ||
| 190 | "http://gpe.linuxtogo.org/download/source" URL, but was not used by any | ||
| 191 | recipe in OE-Core. | ||
| 192 | |||
| 177 | Removed recipes | 193 | Removed recipes |
| 178 | ~~~~~~~~~~~~~~~ | 194 | ~~~~~~~~~~~~~~~ |
| 179 | 195 | ||
| @@ -195,6 +211,11 @@ The following recipes have been removed in this release: | |||
| 195 | - ``xf86-input-vmmouse``: It has a runtime dependency on ``xf86-input-mouse``, | 211 | - ``xf86-input-vmmouse``: It has a runtime dependency on ``xf86-input-mouse``, |
| 196 | which stopped supporting Linux. | 212 | which stopped supporting Linux. |
| 197 | 213 | ||
| 214 | - ``babeltrace``: Removed in favour of ``babeltrace2``. | ||
| 215 | |||
| 216 | - ``cwautomacros``: A long-obsolete set of custom :ref:`ref-classes-autotools` | ||
| 217 | macros, not used by any other recipe. | ||
| 218 | |||
| 198 | Removed :term:`PACKAGECONFIG` entries | 219 | Removed :term:`PACKAGECONFIG` entries |
| 199 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | 220 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 200 | 221 | ||
| @@ -206,6 +227,8 @@ Removed :term:`PACKAGECONFIG` entries | |||
| 206 | 227 | ||
| 207 | - ``mesa``: ``kmsro``, ``osmesa``, ``xa`` | 228 | - ``mesa``: ``kmsro``, ``osmesa``, ``xa`` |
| 208 | 229 | ||
| 230 | - ``systemd``: ``dbus`` | ||
| 231 | |||
| 209 | Removed classes | 232 | Removed classes |
| 210 | ~~~~~~~~~~~~~~~ | 233 | ~~~~~~~~~~~~~~~ |
| 211 | 234 | ||
| @@ -269,4 +292,22 @@ Miscellaneous changes | |||
| 269 | - ``xserver-xorg``: remove sub-package ``${PN}-xwayland``, as ``xwayland`` is | 292 | - ``xserver-xorg``: remove sub-package ``${PN}-xwayland``, as ``xwayland`` is |
| 270 | now its own recipe. | 293 | now its own recipe. |
| 271 | 294 | ||
| 272 | - The Wic-specific option ``--extra-space`` has been renamed to ``--extra-filesystem-space``. \ No newline at end of file | 295 | - ``gdk-pixbuf``: drop the ``GDK_PIXBUF_LOADERS`` variable, which was part of |
| 296 | the recipe's :term:`PACKAGECONFIG`. Instead the :term:`PACKAGECONFIG` can be | ||
| 297 | modified directly to achieve the same result. | ||
| 298 | |||
| 299 | - Remove the ``meta/conf/distro/include/distro_alias.inc`` include file, | ||
| 300 | which associated a recipe name to one or more Distribution package name. | ||
| 301 | This file is not used and maintained anymore. | ||
| 302 | |||
| 303 | - Remove the ``nghttp2-proxy`` package from the ``nghttp2`` recipe as the | ||
| 304 | ``nghttp2-proxy`` package became empty after an upgrade that makes it a | ||
| 305 | library recipe only (due to | ||
| 306 | :term:`EXTRA_OEMAKE` containing ``-DENABLE_APP=OFF`` by default in the | ||
| 307 | recipe). | ||
| 308 | |||
| 309 | - Remove the ``util-linux-fcntl-lock`` package (in the ``util-linux`` recipe) as | ||
| 310 | ``util-linux`` now supports the ``--fcntl`` flag for the ``flock`` command. | ||
| 311 | |||
| 312 | Recipes currently using the ``fcntl-lock`` command should replace these by | ||
| 313 | ``flock --fcntl``. | ||
diff --git a/documentation/migration-guides/release-notes-5.3.rst b/documentation/migration-guides/release-notes-5.3.rst index 66c88fcb48..5cd875e9b5 100644 --- a/documentation/migration-guides/release-notes-5.3.rst +++ b/documentation/migration-guides/release-notes-5.3.rst | |||
| @@ -11,10 +11,21 @@ Release notes for |yocto-ver| (|yocto-codename|) | |||
| 11 | New Features / Enhancements in |yocto-ver| | 11 | New Features / Enhancements in |yocto-ver| |
| 12 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | 12 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 13 | 13 | ||
| 14 | - Linux kernel XXX, gcc 15, glibc XXX, LLVM XXX, and over XXX other | 14 | - Linux kernel 6.16, gcc 15, glibc 2.42, LLVM 21.1.1, and over 300 other |
| 15 | recipe upgrades. | 15 | recipe upgrades. |
| 16 | 16 | ||
| 17 | - Minimum Python version required on the host: XXX. | 17 | - Minimum Python version required on the host: 3.9. |
| 18 | |||
| 19 | - Host requirements changes: | ||
| 20 | |||
| 21 | - The minimum disk space requirement is now 140Gbytes (previously 90Gbytes). | ||
| 22 | |||
| 23 | - The minimum RAM requirement is now 32Gbytes (previously 8Gbytes). | ||
| 24 | |||
| 25 | - These changes are mainly due to recent additions of the LLVM and other | ||
| 26 | resource heavy recipes. For guidance on how to limit the resources used by | ||
| 27 | the :term:`OpenEmbedded Build System`, see the | ||
| 28 | :doc:`/dev-manual/limiting-resources` guide. | ||
| 18 | 29 | ||
| 19 | - BitBake changes: | 30 | - BitBake changes: |
| 20 | 31 | ||
| @@ -36,10 +47,18 @@ New Features / Enhancements in |yocto-ver| | |||
| 36 | - ``az``: Add sanity check to check that :term:`AZ_SAS` starts with ``?`` | 47 | - ``az``: Add sanity check to check that :term:`AZ_SAS` starts with ``?`` |
| 37 | to mark the start of the query parameters. | 48 | to mark the start of the query parameters. |
| 38 | 49 | ||
| 39 | - ``git``: Add the tag to shallow clone tarball name. | 50 | - ``git``: |
| 51 | |||
| 52 | - Add the tag to shallow clone tarball name. | ||
| 53 | - Verify if local clones contains a tag, when the ``tag=`` parameter | ||
| 54 | is used in :term:`SRC_URI`. | ||
| 55 | |||
| 56 | - ``knotty``: | ||
| 57 | |||
| 58 | - Pass failed task logs through the log infrastructure (use | ||
| 59 | ``bb.plain()`` instead of ``print()``). | ||
| 40 | 60 | ||
| 41 | - ``knotty``: pass failed task logs through the log infrastructure (use | 61 | - Improve refresh rate of the footer progress bar. |
| 42 | ``bb.plain()`` instead of ``print()``) | ||
| 43 | 62 | ||
| 44 | - Add support for automatically promoting class inherits to deferred | 63 | - Add support for automatically promoting class inherits to deferred |
| 45 | inherits by listing them in the :term:`BB_DEFER_BBCLASSES` variable. | 64 | inherits by listing them in the :term:`BB_DEFER_BBCLASSES` variable. |
| @@ -92,6 +111,17 @@ New Features / Enhancements in |yocto-ver| | |||
| 92 | :term:`BitBake` to specify what to profile. Can be "main", "idle" or | 111 | :term:`BitBake` to specify what to profile. Can be "main", "idle" or |
| 93 | "parsing". Split the reports in separate files. | 112 | "parsing". Split the reports in separate files. |
| 94 | 113 | ||
| 114 | - A "filtering" functionality was added and allows modifying the value of a | ||
| 115 | variable before its value is returned by :term:`BitBake`. The | ||
| 116 | ``setVarFilter`` API can be used for applying the filters, but it is | ||
| 117 | **not** recommended for general use. It was added for internal use in | ||
| 118 | the :term:`OpenEmbedded Build System` in the :ref:`ref-classes-native` | ||
| 119 | class. The list of filters that are allowed are derived from a select | ||
| 120 | list of functions that must be added using a ``filter_proc`` decorator. | ||
| 121 | |||
| 122 | - ``tests/parse``: Add tests for ``include``, ``require`` and | ||
| 123 | ``include_all``. | ||
| 124 | |||
| 95 | - Toolchain changes: | 125 | - Toolchain changes: |
| 96 | 126 | ||
| 97 | - The Clang/LLVM toolchain can now be used as part of the build. | 127 | - The Clang/LLVM toolchain can now be used as part of the build. |
| @@ -106,6 +136,12 @@ New Features / Enhancements in |yocto-ver| | |||
| 106 | The toolchain is also customizable on a per-recipe basis, using the | 136 | The toolchain is also customizable on a per-recipe basis, using the |
| 107 | :term:`TOOLCHAIN` and :term:`TOOLCHAIN_NATIVE` variables. | 137 | :term:`TOOLCHAIN` and :term:`TOOLCHAIN_NATIVE` variables. |
| 108 | 138 | ||
| 139 | .. warning:: | ||
| 140 | |||
| 141 | The :term:`TOOLCHAIN` should **not** be set globally. For overriding | ||
| 142 | the toolchain globally, use :term:`PREFERRED_TOOLCHAIN_TARGET`, | ||
| 143 | :term:`PREFERRED_TOOLCHAIN_NATIVE` and :term:`PREFERRED_TOOLCHAIN_SDK`. | ||
| 144 | |||
| 109 | - Multiple recipes were pinned to use the GCC/Binutils toolchain as they do | 145 | - Multiple recipes were pinned to use the GCC/Binutils toolchain as they do |
| 110 | not support being built with Clang/LLVM yet. In these recipes the | 146 | not support being built with Clang/LLVM yet. In these recipes the |
| 111 | :term:`TOOLCHAIN` variable is set to "gcc". | 147 | :term:`TOOLCHAIN` variable is set to "gcc". |
| @@ -119,14 +155,42 @@ New Features / Enhancements in |yocto-ver| | |||
| 119 | - ``bitbake.conf``: Drop ``lz4`` from :term:`HOSTTOOLS`, as it is not | 155 | - ``bitbake.conf``: Drop ``lz4`` from :term:`HOSTTOOLS`, as it is not |
| 120 | required anymore, and the ``lz4-native`` package is used instead. | 156 | required anymore, and the ``lz4-native`` package is used instead. |
| 121 | 157 | ||
| 122 | - ``conf/fragments``: add a fragment for the CDN :ref:`sstate-cache | 158 | - :term:`Configuration Fragments <Configuration Fragment>`: |
| 123 | <overview-manual/concepts:shared state cache>` mirror. | 159 | |
| 160 | - Add a fragment for the `CDN` :ref:`sstate-cache | ||
| 161 | <overview-manual/concepts:shared state cache>` mirror. | ||
| 162 | |||
| 163 | - Add a ``show-fragments`` sub-command to the | ||
| 164 | :oe_git:`bitbake-config-build </bitbake/tree/bin/bitbake-config-build>` | ||
| 165 | utility, to show the content of fragments from command-line. | ||
| 124 | 166 | ||
| 125 | - ``default-distrovars``: set an empty default for :term:`LICENSE_PATH`. | 167 | - ``default-distrovars``: set an empty default for :term:`LICENSE_PATH`. |
| 126 | 168 | ||
| 127 | - The default definition of :term:`UNPACKDIR` is no longer | 169 | - The default definition of :term:`UNPACKDIR` is no longer |
| 128 | ``sources-unpack`` but ``sources``. | 170 | ``sources-unpack`` but ``sources``. |
| 129 | 171 | ||
| 172 | - The default value for :term:`IMAGE_FSTYPES` (defined in | ||
| 173 | :oe_git:`bitbake.conf </openembedded-core/tree/meta/conf/bitbake.conf>`) | ||
| 174 | is now ``tar.zst`` (previously ``tar.gz``). | ||
| 175 | |||
| 176 | - Remove the ``meta/conf/distro/include/distro_alias.inc`` include file, | ||
| 177 | which associated a recipe name to one or more Distribution package name. | ||
| 178 | This file is not used and maintained anymore. | ||
| 179 | |||
| 180 | - A new configuration file :ref:`structure-build-conf-toolcfg.conf` is now | ||
| 181 | used by :oe_git:`bitbake-config-build </bitbake/tree/bin/bitbake-config-build>` | ||
| 182 | to manage :term:`Configuration Fragments <Configuration Fragment>`. | ||
| 183 | |||
| 184 | - ``bitbake.conf``: add :term:`TMPDIR` to the ``GIT_CEILING_DIRECTORIES`` | ||
| 185 | Git variable. This avoids Git trying to find a repository higher than | ||
| 186 | :term:`TMPDIR` in recipes that use the :ref:`structure-build-work-shared` | ||
| 187 | directory for storing their sources. This fixes reproducibility issues. | ||
| 188 | |||
| 189 | - Changes to the ``genericarm64`` machine configuration: | ||
| 190 | |||
| 191 | - Increase the :term:`Initramfs` maximum size. | ||
| 192 | - Install extra Linux firmware packages to fix Linux kernel warnings. | ||
| 193 | |||
| 130 | - New variables: | 194 | - New variables: |
| 131 | 195 | ||
| 132 | - The ``VIRTUAL-RUNTIME_dbus`` variable, to allow changing the runtime | 196 | - The ``VIRTUAL-RUNTIME_dbus`` variable, to allow changing the runtime |
| @@ -159,6 +223,11 @@ New Features / Enhancements in |yocto-ver| | |||
| 159 | deployed filenames. Users can now override :term:`UBOOT_VERSION` to | 223 | deployed filenames. Users can now override :term:`UBOOT_VERSION` to |
| 160 | changes the output filenames. | 224 | changes the output filenames. |
| 161 | 225 | ||
| 226 | - The :term:`UBOOT_MAKE_OPTS` variable specifies extra options passed to | ||
| 227 | ``make`` when building U-boot. Extra options can also be passed as the | ||
| 228 | fourth argument of the :term:`UBOOT_CONFIG` variable. See the | ||
| 229 | documentation of :ref:`ref-classes-uboot-config` class for more details. | ||
| 230 | |||
| 162 | - Kernel-related changes: | 231 | - Kernel-related changes: |
| 163 | 232 | ||
| 164 | - ``linux/generate-cve-exclusions``: use data from CVEProject instead of | 233 | - ``linux/generate-cve-exclusions``: use data from CVEProject instead of |
| @@ -186,6 +255,8 @@ New Features / Enhancements in |yocto-ver| | |||
| 186 | - ``linux-yocto``: when built for RISC-V, enable features in | 255 | - ``linux-yocto``: when built for RISC-V, enable features in |
| 187 | :term:`KERNEL_FEATURES` based on features listed in :term:`TUNE_FEATURES`. | 256 | :term:`KERNEL_FEATURES` based on features listed in :term:`TUNE_FEATURES`. |
| 188 | 257 | ||
| 258 | - ``perf``: Enable ``coresight`` if enabled in :term:`MACHINE_FEATURES`. | ||
| 259 | |||
| 189 | - New core recipes: | 260 | - New core recipes: |
| 190 | 261 | ||
| 191 | - ``python3-pdm``, ``python3-pdm-backend`` and ``python3-pdm-build-locked``, | 262 | - ``python3-pdm``, ``python3-pdm-backend`` and ``python3-pdm-build-locked``, |
| @@ -210,6 +281,13 @@ New Features / Enhancements in |yocto-ver| | |||
| 210 | to code blocks in Sphinx. It is part of ``buildtools-docs-tarball`` for later | 281 | to code blocks in Sphinx. It is part of ``buildtools-docs-tarball`` for later |
| 211 | use in the Yocto Project documentation. | 282 | use in the Yocto Project documentation. |
| 212 | 283 | ||
| 284 | - ``python3-coherent-licensed``: License management tooling for `Coherent | ||
| 285 | System` and skeleton projects. It became a new dependency of | ||
| 286 | ``python3-zipp``. | ||
| 287 | |||
| 288 | - ``gn``: a commonly used build tool to generate `ninja | ||
| 289 | <https://ninja-build.org/>`__ files. | ||
| 290 | |||
| 213 | - LLVM/Clang related recipes: | 291 | - LLVM/Clang related recipes: |
| 214 | 292 | ||
| 215 | - ``clang``: LLVM based C/C++ compiler. | 293 | - ``clang``: LLVM based C/C++ compiler. |
| @@ -225,11 +303,15 @@ New Features / Enhancements in |yocto-ver| | |||
| 225 | - ``llvm-tblgen-native``: LLVM TableGen binaries for the build host, | 303 | - ``llvm-tblgen-native``: LLVM TableGen binaries for the build host, |
| 226 | often used to build LLVM projects. | 304 | often used to build LLVM projects. |
| 227 | 305 | ||
| 306 | - ``lld``: the LLVM Linker. | ||
| 307 | |||
| 228 | - ``lldb``: LLDB debugger for LLVM projects. | 308 | - ``lldb``: LLDB debugger for LLVM projects. |
| 229 | 309 | ||
| 230 | - ``llvm-project-source``: canonical git mirror of the LLVM subversion | 310 | - ``llvm-project-source``: canonical git mirror of the LLVM subversion |
| 231 | repository. | 311 | repository. |
| 232 | 312 | ||
| 313 | - ``llvm``: The LLVM Compiler Infrastructure. | ||
| 314 | |||
| 233 | - ``openmp``: LLVM OpenMP compiler Runtime. | 315 | - ``openmp``: LLVM OpenMP compiler Runtime. |
| 234 | 316 | ||
| 235 | - ``kernel-signing-keys-native``: this recipe is used in the | 317 | - ``kernel-signing-keys-native``: this recipe is used in the |
| @@ -242,6 +324,9 @@ New Features / Enhancements in |yocto-ver| | |||
| 242 | - ``glvnd``, which enables OpenGL Vendor Neutral Dispatch Library | 324 | - ``glvnd``, which enables OpenGL Vendor Neutral Dispatch Library |
| 243 | support when using recipes such as ``mesa``. | 325 | support when using recipes such as ``mesa``. |
| 244 | 326 | ||
| 327 | - ``opencl``: support for the :wikipedia:`OpenCL (Open Computing Language) | ||
| 328 | <OpenCL>` framework. | ||
| 329 | |||
| 245 | - New core classes: | 330 | - New core classes: |
| 246 | 331 | ||
| 247 | - The new :ref:`ref-classes-kernel-fit-image` class replaces the previous | 332 | - The new :ref:`ref-classes-kernel-fit-image` class replaces the previous |
| @@ -255,6 +340,10 @@ New Features / Enhancements in |yocto-ver| | |||
| 255 | maintain Go recipes that use a ``BPN-go-mods.inc`` and | 340 | maintain Go recipes that use a ``BPN-go-mods.inc`` and |
| 256 | ``BPN-licenses.inc`` and update these files automatically. | 341 | ``BPN-licenses.inc`` and update these files automatically. |
| 257 | 342 | ||
| 343 | - The new :ref:`ref-classes-python_pdm` class supports building Python | ||
| 344 | recipes with the `PDM <https://pdm-project.org/>`__ package and dependency | ||
| 345 | manager. | ||
| 346 | |||
| 258 | - Architecture-specific changes: | 347 | - Architecture-specific changes: |
| 259 | 348 | ||
| 260 | - Rework the RISC-V :term:`TUNE_FEATURES` to make them based of the RISC-V | 349 | - Rework the RISC-V :term:`TUNE_FEATURES` to make them based of the RISC-V |
| @@ -299,6 +388,16 @@ New Features / Enhancements in |yocto-ver| | |||
| 299 | </openembedded-core/tree/meta/conf/machine/include/riscv/README>` for more | 388 | </openembedded-core/tree/meta/conf/machine/include/riscv/README>` for more |
| 300 | information. | 389 | information. |
| 301 | 390 | ||
| 391 | - Add support for new Arm64 instruction sets, which are represented as files | ||
| 392 | to be included in :term:`MACHINE` configuration in :term:`OpenEmbedded-Core | ||
| 393 | (OE-Core)`. The new configuration files are: | ||
| 394 | |||
| 395 | - :oe_git:`conf/machine/include/arm/arch-armv8-7a.inc </openembedded-core/tree/meta/conf/machine/include/arm/arch-armv8-7a.inc>` | ||
| 396 | - :oe_git:`conf/machine/include/arm/arch-armv8-8a.inc </openembedded-core/tree/meta/conf/machine/include/arm/arch-armv8-8a.inc>` | ||
| 397 | - :oe_git:`conf/machine/include/arm/arch-armv9-1a.inc </openembedded-core/tree/meta/conf/machine/include/arm/arch-armv9-1a.inc>` | ||
| 398 | - :oe_git:`conf/machine/include/arm/arch-armv9-2a.inc </openembedded-core/tree/meta/conf/machine/include/arm/arch-armv9-2a.inc>` | ||
| 399 | - :oe_git:`conf/machine/include/arm/arch-armv9-3a.inc </openembedded-core/tree/meta/conf/machine/include/arm/arch-armv9-3a.inc>` | ||
| 400 | |||
| 302 | - ``arch-mips.inc``: Use ``-EB``/``-EL`` for denoting Endianness. | 401 | - ``arch-mips.inc``: Use ``-EB``/``-EL`` for denoting Endianness. |
| 303 | 402 | ||
| 304 | - Enable ``riscv32`` as supported arch for ``musl`` systems. | 403 | - Enable ``riscv32`` as supported arch for ``musl`` systems. |
| @@ -306,6 +405,15 @@ New Features / Enhancements in |yocto-ver| | |||
| 306 | - Powerpc: Use ``-maltivec`` in compiler flags if ``altivec`` is in | 405 | - Powerpc: Use ``-maltivec`` in compiler flags if ``altivec`` is in |
| 307 | :term:`TUNE_FEATURES`. | 406 | :term:`TUNE_FEATURES`. |
| 308 | 407 | ||
| 408 | - ``arm``: add a ``nocrypto`` feature to :term:`TUNE_FEATURES` to complement | ||
| 409 | the ``crypto`` feature to explicitly disable cryptographic extensions via | ||
| 410 | `GCC` flags. | ||
| 411 | |||
| 412 | This lead to the creation of two new tunes: | ||
| 413 | |||
| 414 | - ``tune-cortexa72-nocrypto`` | ||
| 415 | - ``tune-cortexa53-nocrypto`` | ||
| 416 | |||
| 309 | - QEMU / ``runqemu`` changes: | 417 | - QEMU / ``runqemu`` changes: |
| 310 | 418 | ||
| 311 | - Refactor :ref:`ref-classes-qemu` functions into library functions (in | 419 | - Refactor :ref:`ref-classes-qemu` functions into library functions (in |
| @@ -330,19 +438,40 @@ New Features / Enhancements in |yocto-ver| | |||
| 330 | machine's CPU must also be recent enough to support these instructions | 438 | machine's CPU must also be recent enough to support these instructions |
| 331 | natively. | 439 | natively. |
| 332 | 440 | ||
| 333 | - ``runqemu`` can now run compressed images with snapshot mode. For example, | 441 | - ``runqemu``: |
| 334 | with ``IMAGE_FSTYPES = "... ext4.zst ..."``, you can run:: | 442 | |
| 443 | - The script can now run compressed images with snapshot mode. For | ||
| 444 | example, with :term:`IMAGE_FSTYPES` containing ``ext4.zst``, you can run:: | ||
| 445 | |||
| 446 | runqemu snapshot ext4.zst <image-recipe> | ||
| 335 | 447 | ||
| 336 | runqemu snapshot ext4.zst <image-recipe> | 448 | - Add support for the ``erofs`` filesystem. |
| 449 | |||
| 450 | - The :term:`BitBake` environment is now a requirement, and the script | ||
| 451 | cannot run without a successful call to ``bitbake -e``. | ||
| 452 | |||
| 453 | The script will also raise an error with the ``bitbake`` command is not | ||
| 454 | found. | ||
| 337 | 455 | ||
| 338 | - Documentation changes: | 456 | - Documentation changes: |
| 339 | 457 | ||
| 458 | - Add documentation on :term:`Configuration Fragments <Configuration | ||
| 459 | Fragment>`: | ||
| 460 | |||
| 461 | - :doc:`/ref-manual/fragments` | ||
| 462 | - :doc:`/dev-manual/creating-fragments` | ||
| 463 | |||
| 340 | - Part of :term:`BitBake` internals are now documented at | 464 | - Part of :term:`BitBake` internals are now documented at |
| 341 | :yocto_docs:`/bitbake/bitbake-user-manual/bitbake-user-manual-library-functions.html`. | 465 | :yocto_docs:`/bitbake/bitbake-user-manual/bitbake-user-manual-library-functions.html`. |
| 342 | 466 | ||
| 343 | - A new :doc:`/dev-manual/limiting-resources` guide was created to help | 467 | - A new :doc:`/dev-manual/limiting-resources` guide was created to help |
| 344 | users limit the host resources used by the :term:`OpenEmbedded Build | 468 | users limit the resources used by the :term:`OpenEmbedded Build System`. |
| 345 | System`. | 469 | |
| 470 | - A new :doc:`/dev-manual/hashequivserver` guide was created to help users | ||
| 471 | setting up a :ref:`overview-manual/concepts:Hash Equivalence` server. | ||
| 472 | |||
| 473 | - The QA checks defined in the :term:`OpenEmbedded Build System` were | ||
| 474 | gathered in :doc:`/ref-manual/qa-checks`. | ||
| 346 | 475 | ||
| 347 | - Core library changes: | 476 | - Core library changes: |
| 348 | 477 | ||
| @@ -352,6 +481,9 @@ New Features / Enhancements in |yocto-ver| | |||
| 352 | 481 | ||
| 353 | - Go changes: | 482 | - Go changes: |
| 354 | 483 | ||
| 484 | - :ref:`ref-classes-go-mod-update-modules`: Update license finding to use | ||
| 485 | the new ``find_licenses_up`` library function. | ||
| 486 | |||
| 355 | - Rust changes: | 487 | - Rust changes: |
| 356 | 488 | ||
| 357 | - ``rust-llvm``: | 489 | - ``rust-llvm``: |
| @@ -362,6 +494,9 @@ New Features / Enhancements in |yocto-ver| | |||
| 362 | - Disable the following feature through configuration | 494 | - Disable the following feature through configuration |
| 363 | (:ref:`ref-tasks-configure`): libedit, benchmarks. | 495 | (:ref:`ref-tasks-configure`): libedit, benchmarks. |
| 364 | 496 | ||
| 497 | - Add the ``has-thread-local`` option to the | ||
| 498 | :ref:`ref-classes-rust-target-config` class. | ||
| 499 | |||
| 365 | - Wic Image Creator changes: | 500 | - Wic Image Creator changes: |
| 366 | 501 | ||
| 367 | - After a Python upgrade, WIC plugins containing dashes (``-``) for their | 502 | - After a Python upgrade, WIC plugins containing dashes (``-``) for their |
| @@ -387,17 +522,36 @@ New Features / Enhancements in |yocto-ver| | |||
| 387 | :term:`BitBake` variables. This directory is usually found in | 522 | :term:`BitBake` variables. This directory is usually found in |
| 388 | :term:`STAGING_DIR`. | 523 | :term:`STAGING_DIR`. |
| 389 | 524 | ||
| 390 | - Add the Wic-specific option ``--extra-partiton-space`` to add extra empty | 525 | - Add the Wic-specific option ``--extra-partition-space`` to add extra empty |
| 391 | space after the space filled by the filesystem in the partition. | 526 | space after the space filled by the filesystem in the partition. |
| 527 | |||
| 528 | - The Wic-specific option ``--extra-space`` has a new alias | ||
| 529 | ``--extra-filesystem-space``. | ||
| 530 | |||
| 531 | - ``bootimg_pcbios``: move Syslinux install into separate functions, to make | ||
| 532 | it easier to add new bootloaders. | ||
| 533 | |||
| 534 | The Grub bootloader can now be installed with this Wic plugin. | ||
| 392 | 535 | ||
| 393 | - Add the Wic plugin ``extra_partition`` to install files from the | 536 | - Add the Wic plugin ``extra_partition`` to install files from the |
| 394 | :term:`DEPLOY_DIR_IMAGE` directory into an extra non-rootfs partition. | 537 | :term:`DEPLOY_DIR_IMAGE` directory into an extra non-rootfs partition. See the |
| 538 | :term:`IMAGE_EXTRA_PARTITION_FILES` variable for more information. | ||
| 395 | 539 | ||
| 396 | - SDK-related changes: | 540 | - SDK-related changes: |
| 397 | 541 | ||
| 398 | - Include additional information about Meson setting in the SDK environment | 542 | - Include additional information about Meson setting in the SDK environment |
| 399 | setup script (host system, CPU family, etc.). | 543 | setup script (host system, CPU family, etc.). |
| 400 | 544 | ||
| 545 | - Add Go to :term:`SDK_TOOLCHAIN_LANGS`, except for the following | ||
| 546 | architecture on which this is not supported: | ||
| 547 | |||
| 548 | - RISC-V 32 bits (``rv32``) | ||
| 549 | - PowerPC | ||
| 550 | |||
| 551 | - Image-based SDKs can now include `Zsh` completions by adding the | ||
| 552 | ``zsh-completion-pkgs`` feature to the :term:`IMAGE_FEATURES` variable in | ||
| 553 | the image recipe. | ||
| 554 | |||
| 401 | - Testing-related changes: | 555 | - Testing-related changes: |
| 402 | 556 | ||
| 403 | - ``bitbake/tests/fetch``: Add tests for ``gitsm`` with git-lfs. | 557 | - ``bitbake/tests/fetch``: Add tests for ``gitsm`` with git-lfs. |
| @@ -405,6 +559,9 @@ New Features / Enhancements in |yocto-ver| | |||
| 405 | - ``bitbake/lib/bb/tests/fetch``: add a test case to ensure Git shallow | 559 | - ``bitbake/lib/bb/tests/fetch``: add a test case to ensure Git shallow |
| 406 | fetch works for tag containing slashes. | 560 | fetch works for tag containing slashes. |
| 407 | 561 | ||
| 562 | - :ref:`ref-classes-testexport`: capture all tests and data from all layers | ||
| 563 | (instead of the :term:`OpenEmbedded-Core (OE-Core)` layer only). | ||
| 564 | |||
| 408 | - OEQA: | 565 | - OEQA: |
| 409 | 566 | ||
| 410 | - SDK: | 567 | - SDK: |
| @@ -455,8 +612,16 @@ New Features / Enhancements in |yocto-ver| | |||
| 455 | 612 | ||
| 456 | - ``runqemu``: add new test for booting compressed images. | 613 | - ``runqemu``: add new test for booting compressed images. |
| 457 | 614 | ||
| 458 | - :ref:`ref-classes-testexport`: capture all tests and data from all layers | 615 | - General improvements of the parallelization of tests, namely fixing |
| 459 | (instead of the :term:`OpenEmbedded-Core (OE-Core)` layer only). | 616 | some tests that could spawn an unlimited number of threads leading to |
| 617 | OOM kills. | ||
| 618 | |||
| 619 | - A new SDK test is now running for Go after ``go`` was added to | ||
| 620 | :term:`SDK_TOOLCHAIN_LANGS`. | ||
| 621 | |||
| 622 | - Commands sent over SSH (using the ``OESSHTarget`` class) will now error | ||
| 623 | when an SSH failure occurs. It is possible to ignore these errors by | ||
| 624 | passing ``ignore_ssh_fails`` when executing a command. | ||
| 460 | 625 | ||
| 461 | - Utility script changes: | 626 | - Utility script changes: |
| 462 | 627 | ||
| @@ -468,6 +633,8 @@ New Features / Enhancements in |yocto-ver| | |||
| 468 | patch files *must* include an ``Upstream-Status`` to pass with this | 633 | patch files *must* include an ``Upstream-Status`` to pass with this |
| 469 | script. | 634 | script. |
| 470 | 635 | ||
| 636 | - Show the :term:`DISTRO` used when running the script. | ||
| 637 | |||
| 471 | - :ref:`ref-classes-yocto-check-layer` class: | 638 | - :ref:`ref-classes-yocto-check-layer` class: |
| 472 | 639 | ||
| 473 | - Refactor to be extended easily. | 640 | - Refactor to be extended easily. |
| @@ -490,7 +657,11 @@ New Features / Enhancements in |yocto-ver| | |||
| 490 | 657 | ||
| 491 | - ``buildstats-diff``: find last two Buildstats files if none are specified. | 658 | - ``buildstats-diff``: find last two Buildstats files if none are specified. |
| 492 | 659 | ||
| 493 | - ``pybootchartgui``: visualize ``/proc/net/dev`` network stats in graphs. | 660 | - ``pybootchartgui``: |
| 661 | |||
| 662 | - visualize ``/proc/net/dev`` network stats in graphs. | ||
| 663 | |||
| 664 | - account for network statistics when calculating extents. | ||
| 494 | 665 | ||
| 495 | - Packaging changes: | 666 | - Packaging changes: |
| 496 | 667 | ||
| @@ -499,6 +670,19 @@ New Features / Enhancements in |yocto-ver| | |||
| 499 | detailed information on the files used during the compilation and improve | 670 | detailed information on the files used during the compilation and improve |
| 500 | SPDX accuracy. | 671 | SPDX accuracy. |
| 501 | 672 | ||
| 673 | - When using the ``ipk`` and ``rpm`` package managers, give out more possible | ||
| 674 | reasons about unmatched packages. | ||
| 675 | |||
| 676 | For example:: | ||
| 677 | |||
| 678 | E: Package 'catch2' has no installation candidate | ||
| 679 | catch2 is a recipe. Its generated packages are: ['catch2-src', 'catch2-dbg', 'catch2-staticdev', 'catch2-dev', 'catch2-doc'] | ||
| 680 | Either specify a generated package or set ALLOW_EMPTY:${PN} = "1" in catch2 recipe | ||
| 681 | |||
| 682 | - ``package.py``: replace all files unconditionally when copying debug | ||
| 683 | sources (passing ``-u`` to the ``cpio`` command in | ||
| 684 | ``copydebugsources()``). This improves reproducibility. | ||
| 685 | |||
| 502 | - LLVM related changes: | 686 | - LLVM related changes: |
| 503 | 687 | ||
| 504 | - Like ``gcc-source``, the LLVM project sources are part of ``work-shared`` | 688 | - Like ``gcc-source``, the LLVM project sources are part of ``work-shared`` |
| @@ -535,14 +719,26 @@ New Features / Enhancements in |yocto-ver| | |||
| 535 | 719 | ||
| 536 | - Handle workspaces for multiconfig. | 720 | - Handle workspaces for multiconfig. |
| 537 | 721 | ||
| 722 | - Fix upgrade for recipes with Git submodules. | ||
| 723 | |||
| 538 | - Patchtest-related changes: | 724 | - Patchtest-related changes: |
| 539 | 725 | ||
| 726 | - Multiple improvements to the tool's :oe_git:`README | ||
| 727 | </openembedded-core/tree/scripts/patchtest.README>`. | ||
| 728 | |||
| 729 | - Don't match :term:`BitBake` Python expansions as GitHub usernames | ||
| 730 | (``${@...}`` syntax). | ||
| 731 | |||
| 540 | - Security changes: | 732 | - Security changes: |
| 541 | 733 | ||
| 542 | - ``openssl``: add FIPS support. This can be enabled through the ``fips`` | 734 | - ``openssl``: add FIPS support. This can be enabled through the ``fips`` |
| 543 | :term:`PACKAGECONFIG`. | 735 | :term:`PACKAGECONFIG`. |
| 544 | 736 | ||
| 545 | - :ref:`ref-classes-cve-check` changes: | 737 | - :ref:`ref-classes-cve-check` class changes: |
| 738 | |||
| 739 | |||
| 740 | - ``cve-update-db-native``: FKIE: use Secondary metric if there is no | ||
| 741 | Primary metric. | ||
| 546 | 742 | ||
| 547 | - New :term:`PACKAGECONFIG` options for individual recipes: | 743 | - New :term:`PACKAGECONFIG` options for individual recipes: |
| 548 | 744 | ||
| @@ -554,13 +750,34 @@ New Features / Enhancements in |yocto-ver| | |||
| 554 | - ``openssl``: ``fips`` | 750 | - ``openssl``: ``fips`` |
| 555 | - ``qemu``: ``sdl-image``, ``pixman`` | 751 | - ``qemu``: ``sdl-image``, ``pixman`` |
| 556 | - ``wget``: ``pcre2`` | 752 | - ``wget``: ``pcre2`` |
| 557 | - ``mesa``: ``asahi``, ``amd``, ``svga``, ``teflon``, ``nouveau`` | 753 | - ``mesa``: ``asahi``, ``amd``, ``svga``, ``teflon``, ``nouveau``, |
| 754 | ``xmlconfig`` | ||
| 755 | - ``dbus``: ``traditional-activation``, ``message-bus`` | ||
| 756 | - ``cmake``: ``debugger`` | ||
| 757 | - ``libcxx``: ``unwind-cross`` | ||
| 758 | - ``tiff``: ``lerc`` | ||
| 759 | - ``freetype``: ``brotli`` | ||
| 760 | - ``gawk``: ``pma-if-64bit`` | ||
| 761 | - ``x264``: ``ffmpeg``, ``opencl`` | ||
| 558 | 762 | ||
| 559 | - Systemd related changes: | 763 | - Systemd related changes: |
| 560 | 764 | ||
| 561 | - Enable getty generator by default by adding ``serial-getty-generator`` to | 765 | - Enable getty generator by default by adding ``serial-getty-generator`` to |
| 562 | :term:`PACKAGECONFIG`. | 766 | :term:`PACKAGECONFIG`. |
| 563 | 767 | ||
| 768 | - Now uses the :term:`USE_NLS` variable to enable or disable building | ||
| 769 | translations. | ||
| 770 | |||
| 771 | - Fix deduplicated templates and instance lines in preset files when listing | ||
| 772 | both template and instances in :term:`SYSTEMD_SERVICE`. | ||
| 773 | |||
| 774 | - Stop enabling non-standard MAC policy when using the 'pni-names' feature | ||
| 775 | (part of :term:`DISTRO_FEATURES`). Instead, follow what is provided by | ||
| 776 | upstream systemd. | ||
| 777 | |||
| 778 | - Install ``systemd-sysv-install`` when using the | ||
| 779 | ``systemd-systemctl-native`` recipe. | ||
| 780 | |||
| 564 | - :ref:`ref-classes-sanity` class changes: | 781 | - :ref:`ref-classes-sanity` class changes: |
| 565 | 782 | ||
| 566 | - :ref:`ref-classes-insane`: Move test for invalid :term:`PACKAGECONFIG` to | 783 | - :ref:`ref-classes-insane`: Move test for invalid :term:`PACKAGECONFIG` to |
| @@ -576,6 +793,9 @@ New Features / Enhancements in |yocto-ver| | |||
| 576 | install ``libstdc++-14-dev`` instead of ``libgcc-14-dev`` to avoid build | 793 | install ``libstdc++-14-dev`` instead of ``libgcc-14-dev`` to avoid build |
| 577 | issues when building :ref:`ref-classes-native` with Clang. | 794 | issues when building :ref:`ref-classes-native` with Clang. |
| 578 | 795 | ||
| 796 | - Drop the ``var-undefined`` QA check as it was not relevant for the | ||
| 797 | variables it was checking, as those are mandatory by default. | ||
| 798 | |||
| 579 | - U-boot related changes: | 799 | - U-boot related changes: |
| 580 | 800 | ||
| 581 | - :ref:`ref-classes-uboot-sign`: Add support for setting firmware property | 801 | - :ref:`ref-classes-uboot-sign`: Add support for setting firmware property |
| @@ -589,6 +809,11 @@ New Features / Enhancements in |yocto-ver| | |||
| 589 | variable to automatically set U-boot configuration options (for example | 809 | variable to automatically set U-boot configuration options (for example |
| 590 | ``CONFIG_RISCV_ISA_F``). | 810 | ``CONFIG_RISCV_ISA_F``). |
| 591 | 811 | ||
| 812 | - Improve the way build directories are split when having multiple | ||
| 813 | configurations listed in :term:`UBOOT_CONFIG`. This fixes an issue where | ||
| 814 | two or more of these configurations were using the same directory for | ||
| 815 | building (because these were using the same defconfig file). | ||
| 816 | |||
| 592 | - Miscellaneous changes: | 817 | - Miscellaneous changes: |
| 593 | 818 | ||
| 594 | - ``dropbear``: The ``dropbearkey.service`` can now take extra arguments for | 819 | - ``dropbear``: The ``dropbearkey.service`` can now take extra arguments for |
| @@ -648,12 +873,78 @@ New Features / Enhancements in |yocto-ver| | |||
| 648 | - :ref:`ref-classes-externalsrc`: Always ask Git for location of ``.git`` | 873 | - :ref:`ref-classes-externalsrc`: Always ask Git for location of ``.git`` |
| 649 | directory (may be different from the default ``${S}/.git``). | 874 | directory (may be different from the default ``${S}/.git``). |
| 650 | 875 | ||
| 651 | - :ref:`ref-classes-features_check`: Add support for required | 876 | - :ref:`ref-classes-features_check`: Add support for :term:`REQUIRED_TUNE_FEATURES`. |
| 652 | :term:`TUNE_FEATURES`. | ||
| 653 | 877 | ||
| 654 | - ``openssh``: limit read access to ``sshd_config`` file (set its filemode | 878 | - ``openssh``: limit read access to ``sshd_config`` file (set its filemode |
| 655 | to ``0600``). | 879 | to ``0600``). |
| 656 | 880 | ||
| 881 | - ``barebox-tools`` now installs the ``rk-usb-loader`` utility. | ||
| 882 | |||
| 883 | - The :ref:`ref-classes-setuptools3_legacy` class now supports the | ||
| 884 | :ref:`qa-check-pep517-backend` QA check. | ||
| 885 | |||
| 886 | - The :ref:`ref-classes-ccache` class now supports using `Ccache` for native | ||
| 887 | recipes when the local build configuration contains:: | ||
| 888 | |||
| 889 | ASSUME_PROVIDED += "ccache-native" | ||
| 890 | HOSTTOOLS += "ccache" | ||
| 891 | |||
| 892 | - :ref:`ref-classes-python_pep517`: use ``pyproject-build`` instead of | ||
| 893 | calling the module with ``nativepython3``. | ||
| 894 | |||
| 895 | - ``dbus-glib``: include the binding tools separately into the | ||
| 896 | ``${PN}-tools`` package. | ||
| 897 | |||
| 898 | - ``dbus``: use the :ref:`ref-classes-systemd` class to handle the unit | ||
| 899 | files of D-Bus. | ||
| 900 | |||
| 901 | - ``dpkg``: add :ref:`ptest <test-manual/ptest:testing packages with ptest>` | ||
| 902 | support. | ||
| 903 | |||
| 904 | - ``shared-mime-info``: Now uses the :term:`USE_NLS` variable to enable | ||
| 905 | building translations. | ||
| 906 | |||
| 907 | - ``p11-kit``: Now uses the :term:`USE_NLS` variable to enable building | ||
| 908 | translations. | ||
| 909 | |||
| 910 | - ``babeltrace2``: Enable Python plugins | ||
| 911 | |||
| 912 | - ``initramfs-framework``: mount a temporary filesystem on ``/run`` and move | ||
| 913 | it to the root filesystem directory before calling ``switch_root``. | ||
| 914 | |||
| 915 | - ``python3``: Pass ``PLATFORM_TRIPLET`` explicitly when cross compiling to | ||
| 916 | make the build deterministic instead of letting Python detect the platform | ||
| 917 | triplet (``${HOST_ARCH}-${HOST_OS}``). | ||
| 918 | |||
| 919 | - ``pulseaudio``: Add the ``audio`` group explicitly if | ||
| 920 | ``pulseaudio-server`` is used. | ||
| 921 | |||
| 922 | - ``oe/license_finder``: Add ``find_licenses_up`` function to find licenses | ||
| 923 | upwards until reaching a predefined top directory (as an argument). | ||
| 924 | |||
| 925 | - ``mesa``: | ||
| 926 | |||
| 927 | - Build Mesa's Asahi tools when ``asahi`` is part of the recipe's | ||
| 928 | :term:`PACKAGECONFIG` variable. | ||
| 929 | |||
| 930 | - The ``mesa`` recipe now declares two new :term:`PROVIDES` for Vulkan | ||
| 931 | and OpenCL ICD. These virtual provider are respectively named | ||
| 932 | ``virtual-opencl-icd`` and ``virtual-vulkan-icd``. | ||
| 933 | |||
| 934 | - ``mesa-demos``: split info tools to a separate package ``mesa-demos-info``. | ||
| 935 | |||
| 936 | - ``vte``: skip :ref:`ref-classes-gobject-introspection` with Clang on Arm, | ||
| 937 | as it caused build failures. | ||
| 938 | |||
| 939 | - ``shadow``: Increase the maximum group name length from 24 to 32 (default | ||
| 940 | value provided by upstream recipe, was previously hardcoded to 24). | ||
| 941 | |||
| 942 | - ``udev-extraconf``: Speed up the ``mount.sh`` script by passing the block | ||
| 943 | device of interest to ``blkid`` when getting partition label names. | ||
| 944 | |||
| 945 | - ``piglit``: enable OpenCL support if ``opencl`` is part of the | ||
| 946 | :term:`DISTRO` features. | ||
| 947 | |||
| 657 | Known Issues in |yocto-ver| | 948 | Known Issues in |yocto-ver| |
| 658 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ | 949 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 659 | 950 | ||
