Release notes for 5.3 (whinlatter)
New Features / Enhancements in 5.3
Linux kernel 6.16, gcc 15, glibc 2.42, LLVM 21.1.1, and over 300 other recipe upgrades.
Minimum Python version required on the host: 3.9.
Host requirements changes:
The minimum disk space requirement is now 140Gbytes (previously 90Gbytes).
The minimum RAM requirement is now 32Gbytes (previously 8Gbytes).
These changes are mainly due to recent additions of the LLVM and other resource heavy recipes. For guidance on how to limit the resources used by the OpenEmbedded Build System, see the Limiting the Host Resources Usage guide.
BitBake changes:
codeparser: Add function decorators forvardepsAdds
bb.parse.vardepsandbb.parse.excludevardepsfunction decorators that can be used to explicitly add or exclude variables from a Python function parsed by BitBake.Move
vardepexcludeflag entries alongside functions for maintainability.Fetcher:
Check for
git-lfsexistence before using it.Add support for
.debsfiles containing uncompressed data tarballs.az: Add sanity check to check that AZ_SAS starts with?to mark the start of the query parameters.git:Add the tag to shallow clone tarball name.
Verify if local clones contains a tag, when the
tag=parameter is used in SRC_URI.
knotty:Pass failed task logs through the log infrastructure (use
bb.plain()instead ofprint()).Improve refresh rate of the footer progress bar.
Add support for automatically promoting class inherits to deferred inherits by listing them in the BB_DEFER_BBCLASSES variable.
“Built-in” fragments support is now added to the addfragments directive. This is the fourth parameter to this directive, and should be the name of the variable that contains definitions of built-in fragments. Refer to the documentation of addfragments to learn how to define new built-in fragments.
Listing these built-in fragments can be done with bitbake-config-build list-fragments, which could list:
Available built-in fragments: machine/... Sets MACHINE = ... distro/... Sets DISTRO = ...
In the above example, this means that the MACHINE of DISTRO can be overridden with:
OE_FRAGMENTS += "machine/qemuarm64 distro/poky-bleeding"
This would set MACHINE to
qemuarm64and the DISTRO topoky-bleeding.The
tag-parameter in URLs can now be specified alongside therev=parameter and SRCREV variable, and will ensure that the specified tag matches the specified revision.It is strongly encouraged to include the
tag=parameter to the SRC_URI definition when possible.tinfoil: add await_fordecorator to wrap a function that makes an asynchronous tinfoil call wait for event to say that the call has been successful, or an error has occurred.New
bb.utils.to_filemode()helper function which is a helper to take a variable’s content containing a filemode and convert it to the proper Python representation of the number.cooker: Use a shared counter for processing parser jobs. This allows the parser processes to run independently of needing to be feed by the parent process, and load balances them much better.cooker/process/utils: Add a-P(--profile) option to BitBake to specify what to profile. Can be “main”, “idle” or “parsing”. Split the reports in separate files.A “filtering” functionality was added and allows modifying the value of a variable before its value is returned by BitBake. The
setVarFilterAPI can be used for applying the filters, but it is not recommended for general use. It was added for internal use in the OpenEmbedded Build System in the native class. The list of filters that are allowed are derived from a select list of functions that must be added using afilter_procdecorator.tests/parse: Add tests forinclude,requireandinclude_all.
Toolchain changes:
The Clang/LLVM toolchain can now be used as part of the build.
The PREFERRED_TOOLCHAIN_TARGET, PREFERRED_TOOLCHAIN_NATIVE and PREFERRED_TOOLCHAIN_SDK variables can be used to customize the selected toolchain globally.
There are two supported toolchains: “gcc” and “clang”. See the documentation of PREFERRED_TOOLCHAIN_TARGET for more details.
The toolchain is also customizable on a per-recipe basis, using the TOOLCHAIN and TOOLCHAIN_NATIVE variables.
Warning
The TOOLCHAIN should not be set globally. For overriding the toolchain globally, use PREFERRED_TOOLCHAIN_TARGET, PREFERRED_TOOLCHAIN_NATIVE and PREFERRED_TOOLCHAIN_SDK.
Multiple recipes were pinned to use the GCC/Binutils toolchain as they do not support being built with Clang/LLVM yet. In these recipes the TOOLCHAIN variable is set to “gcc”.
Global configuration changes:
bitbake.conf/pseudo: Switch from exclusion list to inclusion list by swapping PSEUDO_IGNORE_PATHS for PSEUDO_INCLUDE_PATHS which should be easier and more explicit to maintain.bitbake.conf: Droplz4from HOSTTOOLS, as it is not required anymore, and thelz4-nativepackage is used instead.-
Add a fragment for the CDN sstate-cache mirror.
Add a
show-fragmentssub-command to the bitbake-config-build utility, to show the content of fragments from command-line.
default-distrovars: set an empty default for LICENSE_PATH.The default definition of UNPACKDIR is no longer
sources-unpackbutsources.The default value for IMAGE_FSTYPES (defined in bitbake.conf) is now
tar.zst(previouslytar.gz).Remove the
meta/conf/distro/include/distro_alias.incinclude file, which associated a recipe name to one or more Distribution package name. This file is not used and maintained anymore.A new configuration file build/conf/toolcfg.conf is now used by bitbake-config-build to manage Configuration Fragments.
bitbake.conf: add TMPDIR to theGIT_CEILING_DIRECTORIESGit variable. This avoids Git trying to find a repository higher than TMPDIR in recipes that use the build/tmp/work-shared/ directory for storing their sources. This fixes reproducibility issues.Changes to the
genericarm64machine configuration:Increase the Initramfs maximum size.
Install extra Linux firmware packages to fix Linux kernel warnings.
New variables:
The
VIRTUAL-RUNTIME_dbusvariable, to allow changing the runtime implementation of D-Bus. See VIRTUAL-RUNTIME.The
VIRTUAL-RUNTIME_libsdl2variable, to allow changing the runtime implementation of libsdl2. See VIRTUAL-RUNTIME.The SPDX_PACKAGE_URL variable can be used in recipes to set the output
software_packageUrlfield in their associated SPDX 3.0 output (default value: empty string).The KMETA_CONFIG_FEATURES variable can be used to control kernel-yocto configuration features. For now only
prefer-modulesis supported for this variable.The TESTSDK_SUITES variable can be used to control the list of tests run for the testsdk class.
The UBOOT_FIT_CONF_FIRMWARE can be used to specify a
firmwareentry in the configuration node of a FIT image.The SPDX_INCLUDE_COMPILED_SOURCES option allows the same as SPDX_INCLUDE_SOURCES but including only the sources used to compile the host tools and the target packages.
The UBOOT_VERSION variable holds the package version (PV) and revision (PR) which are part of the installed and deployed filenames. Users can now override UBOOT_VERSION to changes the output filenames.
The UBOOT_MAKE_OPTS variable specifies extra options passed to
makewhen building U-boot. Extra options can also be passed as the fourth argument of the UBOOT_CONFIG variable. See the documentation of uboot-config class for more details.
Kernel-related changes:
linux/generate-cve-exclusions: use data from CVEProject instead of the archived https://linuxkernelcves.com.kernel-yocto: allow annotated options to be modified. For example if the following kernel configuration is set:CONFIG_INET_TUNNEL=y # OVERRIDE:$MODULE_OR_Y
And if the KMETA_CONFIG_FEATURES variable contains
prefer-modules,CONFIG_INET_TUNNELwill be set tominstead ofy.kernel-devsrc: Replace the extraSystem.mapfile with symbolic link.kernel-module-split: Allow for external configuration files being assigned to the correct kernel module package.When built for the RISC-V architecture, ensure that the minimum required features set by TUNE_FEATURES are set using the features_check class.
linux-yocto: when built for RISC-V, enable features in KERNEL_FEATURES based on features listed in TUNE_FEATURES.perf: Enablecoresightif enabled in MACHINE_FEATURES.
New core recipes:
python3-pdm,python3-pdm-backendandpython3-pdm-build-locked, which are dependencies ofpython3-webcolors.python3-pdmitself depends onpython3-pdm-build-lockedbindgen-cli: a tool to generate Rust bindings.python3-colorama: Cross-platform colored terminal text, needed bypytestas a dependency.libglvnd: imported from meta-oe which provides a vendor neutral approach to handling OpenGL / OpenGL ES / EGL / GLX libraries.python3-sphinx-argparse: A sphinx extension that automatically documentsargparsecommands and options. It is part ofbuildtools-docs-tarballfor later use in the Yocto Project documentation.python3-sphinx-copybutton: A sphinx extension that adds a copy button to code blocks in Sphinx. It is part ofbuildtools-docs-tarballfor later use in the Yocto Project documentation.python3-coherent-licensed: License management tooling for Coherent System and skeleton projects. It became a new dependency ofpython3-zipp.gn: a commonly used build tool to generate ninja files.LLVM/Clang related recipes:
clang: LLVM based C/C++ compiler.compiler-rt: LLVM based C/C++ compiler Runtime.libclc: Implementation of the library requirements of the OpenCL C programming language.libcxx: new implementation of the C++ standard library, targeting C++11 and abovellvm-tblgen-native: LLVM TableGen binaries for the build host, often used to build LLVM projects.lld: the LLVM Linker.lldb: LLDB debugger for LLVM projects.llvm-project-source: canonical git mirror of the LLVM subversion repository.llvm: The LLVM Compiler Infrastructure.openmp: LLVM OpenMP compiler Runtime.
kernel-signing-keys-native: this recipe is used in the kernel-fit-image class to generate a pair of RSA public/private key. It replaces thedo_generate_rsa_keysof the kernel-fit-image class.
New DISTRO_FEATURES:
glvnd, which enables OpenGL Vendor Neutral Dispatch Library support when using recipes such asmesa.opencl: support for the OpenCL (Open Computing Language) framework.
New core classes:
The new kernel-fit-image class replaces the previous
kernel-fitimageclass. It has been rewritten and improved to fix bug 12912. See the Removed Classes section of the Migration notes for 5.3 (whinlatter) for more details on how to switch to this new class.The new go-mod-update-modules class can be used to maintain Go recipes that use a
BPN-go-mods.incandBPN-licenses.incand update these files automatically.The new python_pdm class supports building Python recipes with the PDM package and dependency manager.
Architecture-specific changes:
Rework the RISC-V TUNE_FEATURES to make them based of the RISC-V ISA (Instruction Set Architecture) implementation.
This implements the following base ISAs:
rv32i,rv64irv32e,rv64i
The following ABIs:
ilp32,ilp32e,ilp32f,ilp32dlp64,lp64e,lp64f,lp64d
The following ISA extension are also implemented:
M: Integer Multiplication and Division Extension
A: Atomic Memory Extension
F: Single-Precision Floating-Point Extension
D: Double-Precision Floating-Point Extension
C: Compressed Extension
B: Bit Manipulation Extension (implies Zba, Zbb, Zbs)
V: Vector Operations Extension
Zicsr: Control and Status Register Access Extension
Zifencei: Instruction-Fetch Fence Extension
Zba: Address bit manipulation extension
Zbb: Basic bit manipulation extension
Zbc: Carry-less multiplication extension
Zbs: Single-bit manipulation extension
Zicbom: Cache-block management extension
The existing processors tunes are preserved:
riscv64(rv64gc)riscv32(rv32gc)riscv64nf(rv64imac_zicsr_zifencei)riscv32nf(rv32imac_zicsr_zifencei)riscv64nc(rv64imafd_zicsr_zifencei)
See meta/conf/machine/include/riscv/README for more information.
Add support for new Arm64 instruction sets, which are represented as files to be included in MACHINE configuration in OpenEmbedded-Core (OE-Core). The new configuration files are:
arch-mips.inc: Use-EB/-ELfor denoting Endianness.Enable
riscv32as supported arch formuslsystems.Powerpc: Use
-maltivecin compiler flags ifaltivecis in TUNE_FEATURES.arm: add anocryptofeature to TUNE_FEATURES to complement thecryptofeature to explicitly disable cryptographic extensions via GCC flags.This lead to the creation of two new tunes:
tune-cortexa72-nocryptotune-cortexa53-nocrypto
QEMU /
runqemuchanges:Refactor qemu functions into library functions (in lib/oe/qemu.py).
The
qemux86-64MACHINE now defaults to thex86-64-v3micro-architecture level.The previous default was Core 2 era processors. This change means that the toolchain is configured to build for that level, and QEMU is configured to emulate it.
The v3 level adds support for AVX/AVX2/BMI/BMI2/F16C and other newer instructions which are seeing increasing usage in modern software and add performance benefits. Please see X86-64 Microarchitecture levels for definition of the levels and lists of Intel/AMD CPUs where support for the instructions was first added.
Note that if QEMU system emulation is used on an x86 build machine with KVM enabled, then the build machine’s CPU must also be recent enough to support these instructions natively.
runqemu:The script can now run compressed images with snapshot mode. For example, with IMAGE_FSTYPES containing
ext4.zst, you can run:runqemu snapshot ext4.zst <image-recipe>
Add support for the
erofsfilesystem.The BitBake environment is now a requirement, and the script cannot run without a successful call to
bitbake -e.The script will also raise an error with the
bitbakecommand is not found.
Documentation changes:
Add documentation on Configuration Fragments:
Part of BitBake internals are now documented at https://docs.yoctoproject.org/bitbake/bitbake-user-manual/bitbake-user-manual-library-functions.html.
A new Limiting the Host Resources Usage guide was created to help users limit the resources used by the OpenEmbedded Build System.
A new Setting up a Hash Equivalence Server guide was created to help users setting up a Hash Equivalence server.
The QA checks defined in the OpenEmbedded Build System were gathered in QA Error and Warning Messages.
Core library changes:
Add license_finder.py, which was extracted from
recipetoolto be shared for multiple users. Improve its functionalities.
Go changes:
go-mod-update-modules: Update license finding to use the new
find_licenses_uplibrary function.
Rust changes:
rust-llvm:Compile LLVM to use dynamic libraries. This reduces the size of
llvm-rustto about a third.Disable the following feature through configuration (do_configure): libedit, benchmarks.
Add the
has-thread-localoption to the rust-target-config class.
Wic Image Creator changes:
After a Python upgrade, WIC plugins containing dashes (
-) for their filenames are no longer supported. One must convert the dashed to underscores (_) and update users of the plugins accordingly.See the Wic plugins containing dashes should be renamed section of the Yocto Project 5.3 Migration Guide for more information.
wic: do not ignore IMAGE_ROOTFS_SIZE if the Rootfs is modified.Several improvements in WIC selftests.
bootimg_efi.py: fail build if no binaries are installed.Add new options to the
wicls,cp,rm, andwritecommands:--image-name: name of the image to use the artifacts from.--vars: directory with<image>.envfiles that store BitBake variables. This directory is usually found in STAGING_DIR.
Add the Wic-specific option
--extra-partition-spaceto add extra empty space after the space filled by the filesystem in the partition.The Wic-specific option
--extra-spacehas a new alias--extra-filesystem-space.bootimg_pcbios: move Syslinux install into separate functions, to make it easier to add new bootloaders.The Grub bootloader can now be installed with this Wic plugin.
Add the Wic plugin
extra_partitionto install files from the DEPLOY_DIR_IMAGE directory into an extra non-rootfs partition. See the IMAGE_EXTRA_PARTITION_FILES variable for more information.
SDK-related changes:
Include additional information about Meson setting in the SDK environment setup script (host system, CPU family, etc.).
Add Go to SDK_TOOLCHAIN_LANGS, except for the following architecture on which this is not supported:
RISC-V 32 bits (
rv32)PowerPC
Image-based SDKs can now include Zsh completions by adding the
zsh-completion-pkgsfeature to the IMAGE_FEATURES variable in the image recipe.
Testing-related changes:
bitbake/tests/fetch: Add tests forgitsmwith git-lfs.bitbake/lib/bb/tests/fetch: add a test case to ensure Git shallow fetch works for tag containing slashes.testexport: capture all tests and data from all layers (instead of the OpenEmbedded-Core (OE-Core) layer only).
OEQA:
SDK:
Add a test to sanity check that the generated SDK manifest was parsed correctly and isn’t empty.
Add a test to verify the manifests are generated correctly.
Add helpers to check for and install packages.
Add check that meson has detected the target correctly.
Simplify test specification and discovery:
Introduce the
TESTSDK_CASE_DIRSvariable to specify test directory types, replacing the need to modify thedefault_casesclass member.Discover tests from configured layers using a common discovery pattern (
<LAYER_DIR>/lib/oeqa/<dirname>/cases) where<dirname>is specified inTESTSDK_CASE_DIRS.The “buildtools” directories were renamed to follow the common discovery pattern (
<LAYER_DIR>/lib/oeqa/<dirname>/cases) for consistency across all SDK configurations.
selftest/reproducible: Limit memory used bydiffoscopeto avoid triggering OOM kills.Add tests for the devicetree class.
Tests for the kernel-fit-image class have been reworked and improved.
data.py: addskipIfNotBuildArchdecorator, to skip tests if BUILD_ARCH is not in present in the specified tuple.selftest: add new test for toolchain switching.utils/command: add a fast-pathget_bb_var()that usesbitbake-getvarinstead ofbitbake -ewhen there is notpostconfigargument passed.core/case: add file exists assertion test case.context.py: use TEST_SUITES if set.runqemu: add new test for booting compressed images.General improvements of the parallelization of tests, namely fixing some tests that could spawn an unlimited number of threads leading to OOM kills.
A new SDK test is now running for Go after
gowas added to SDK_TOOLCHAIN_LANGS.Commands sent over SSH (using the
OESSHTargetclass) will now error when an SSH failure occurs. It is possible to ignore these errors by passingignore_ssh_failswhen executing a command.
Utility script changes:
sstate-cache-management: add a--dry-runargumentyocto-check-layer:Expect success for
test_patches_upstream_status. This means that patch files must include anUpstream-Statusto pass with this script.Show the DISTRO used when running the script.
yocto-check-layer class:
Refactor to be extended easily.
Add a
check_network_flagtest that checks that no tasks other than do_fetch can access the network.
send-error-report:Respect URL scheme in server name if it exists.
Drop
--no-sslas the server URL specifies it withhttp://orhttps://.
buildstats.py:Extend disk stats support for NVMe and flexible token count.
Add tracking of network I/O per interface.
buildstats-diff: find last two Buildstats files if none are specified.pybootchartgui:visualize
/proc/net/devnetwork stats in graphs.account for network statistics when calculating extents.
Packaging changes:
Export
debugsourcesin PKGDESTWORK as JSON. The source information used during packaging can be use from other tasks to have more detailed information on the files used during the compilation and improve SPDX accuracy.When using the
ipkandrpmpackage managers, give out more possible reasons about unmatched packages.For example:
E: Package 'catch2' has no installation candidate catch2 is a recipe. Its generated packages are: ['catch2-src', 'catch2-dbg', 'catch2-staticdev', 'catch2-dev', 'catch2-doc'] Either specify a generated package or set ALLOW_EMPTY:${PN} = "1" in catch2 recipepackage.py: replace all files unconditionally when copying debug sources (passing-uto thecpiocommand incopydebugsources()). This improves reproducibility.
LLVM related changes:
Like
gcc-source, the LLVM project sources are part ofwork-sharedunder TMPDIR. The project codebase is large and sharing it offers performance improvements.
SPDX-related changes:
spdx30: Providesoftware_packageUrlfieldspdx30_tasks: Change recipe license to “declared” (instead of “concluded”)create-spdx-2.2: support to override the version of a package in SPDX 2 through SPDX_PACKAGE_VERSION.
devtoolandrecipetoolchanges:Use
lib/oe/license_finderto extract the license from source code.Calculate source paths relative to UNPACKDIR.
Allow
recipe createhandlers to specify bitbake tasks to run.Go recipes are now generated with help of the new go-mod-update-modules class.
Add a new improve_kernel_cve_report.py script in
scripts/contribfor post-processing of kernel CVE data.Handle workspaces for multiconfig.
Fix upgrade for recipes with Git submodules.
Patchtest-related changes:
Security changes:
openssl: add FIPS support. This can be enabled through thefipsPACKAGECONFIG.
cve-check class changes:
cve-update-db-native: FKIE: use Secondary metric if there is no Primary metric.
New PACKAGECONFIG options for individual recipes:
ppp:l2tp,pptpdropbear:x11(renamed fromenable-x11-forwarding)gdb:source-highlightgstreamer1.0-plugins-bad:analyticsmtd-utils:ubihealthd-serviceopenssl:fipsqemu:sdl-image,pixmanwget:pcre2mesa:asahi,amd,svga,teflon,nouveau,xmlconfigdbus:traditional-activation,message-buscmake:debuggerlibcxx:unwind-crosstiff:lercfreetype:brotligawk:pma-if-64bitx264:ffmpeg,opencl
Systemd related changes:
Enable getty generator by default by adding
serial-getty-generatorto PACKAGECONFIG.Now uses the USE_NLS variable to enable or disable building translations.
Fix deduplicated templates and instance lines in preset files when listing both template and instances in SYSTEMD_SERVICE.
Stop enabling non-standard MAC policy when using the ‘pni-names’ feature (part of DISTRO_FEATURES). Instead, follow what is provided by upstream systemd.
Install
systemd-sysv-installwhen using thesystemd-systemctl-nativerecipe.
sanity class changes:
insane: Move test for invalid PACKAGECONFIG to do_recipe_qa.
Add
unimplemented-ptestdetection for cargo-based tests, allowing to detect when a cargo package has available tests that could be enable with Ptest.Add a test for recipe naming/class mismatches.
Add a sanity test for “bad” gcc installs on Ubuntu 24.04. The host should install
libstdc++-14-devinstead oflibgcc-14-devto avoid build issues when building native with Clang.Drop the
var-undefinedQA check as it was not relevant for the variables it was checking, as those are mandatory by default.
U-boot related changes:
uboot-sign: Add support for setting firmware property in FIT configuration with UBOOT_FIT_CONF_FIRMWARE.
uboot-sign: Add support for signing U-Boot FIT image without an SPL. The SPL_DTB_BINARY variable can be set to an empty string to indicate that no SPL is present.
When built for the RISC-V architecture, read the TUNE_FEATURES variable to automatically set U-boot configuration options (for example
CONFIG_RISCV_ISA_F).Improve the way build directories are split when having multiple configurations listed in UBOOT_CONFIG. This fixes an issue where two or more of these configurations were using the same directory for building (because these were using the same defconfig file).
Miscellaneous changes:
dropbear: Thedropbearkey.servicecan now take extra arguments for key generation, through/etc/default/dropbear.initscripts: addlog_success_msg/log_failure_msg/log_warning_msgfunctions for logging in initscripts.connman:Mark
iptablesandnftablesfeature of PACKAGECONFIG mutually incompatible.Set
dns-backendautomatically tosystemd-resolvedwhensystemd-resolvedis part of DISTRO_FEATURES.
uninative: show errors if installing fails.meson: Allow user to override setup command options by exportingMESON_SETUP_OPTSin a recipe.cmake: Enhance to emit a native toolchain CMake file. This is part of improvements allowing to use
clangin an SDK.Fix the runtime version of several recipes (they now return the effective version instead of a default string like “Unknown”).
module: add
KBUILD_EXTRA_SYMBOLSto the install command.rpm-sequoia: add Ptest support.libunwind: disable installation of tests directory with--disable-tests, which can be installed with thelibunwind-ptestpackage instead.boost: addprocesslibrary to the list of built libraries.base-files: addnsswitch-resolved.conf, only installed ifsystemdandsystemd-resolvedis part of DISTRO_FEATURES.nfs-utils: don’t use signals to shut down the NFS server in the associated initscript, instead userpc.nfsd 0.readline: enable HOME, END, INSERT, and DELETE key bindings ininputrc.Switch to a new sstate-cache CDN (http://sstate.yoctoproject.org).
sstate: Apply a proper umask when fetching from SSTATE_MIRRORS.
kernel-devsrc: make package version consistent with kernel source (by inheriting kernelsrc).externalsrc: Always ask Git for location of
.gitdirectory (may be different from the default${S}/.git).features_check: Add support for REQUIRED_TUNE_FEATURES.
openssh: limit read access tosshd_configfile (set its filemode to0600).barebox-toolsnow installs therk-usb-loaderutility.The setuptools3_legacy class now supports the pep517-backend QA check.
The ccache class now supports using Ccache for native recipes when the local build configuration contains:
ASSUME_PROVIDED += "ccache-native" HOSTTOOLS += "ccache"
python_pep517: use
pyproject-buildinstead of calling the module withnativepython3.dbus-glib: include the binding tools separately into the${PN}-toolspackage.dbus: use the systemd class to handle the unit files of D-Bus.dpkg: add ptest support.shared-mime-info: Now uses the USE_NLS variable to enable building translations.p11-kit: Now uses the USE_NLS variable to enable building translations.babeltrace2: Enable Python pluginsinitramfs-framework: mount a temporary filesystem on/runand move it to the root filesystem directory before callingswitch_root.python3: PassPLATFORM_TRIPLETexplicitly when cross compiling to make the build deterministic instead of letting Python detect the platform triplet (${HOST_ARCH}-${HOST_OS}).pulseaudio: Add theaudiogroup explicitly ifpulseaudio-serveris used.oe/license_finder: Addfind_licenses_upfunction to find licenses upwards until reaching a predefined top directory (as an argument).mesa:Build Mesa’s Asahi tools when
asahiis part of the recipe’s PACKAGECONFIG variable.The
mesarecipe now declares two new PROVIDES for Vulkan and OpenCL ICD. These virtual provider are respectively namedvirtual-opencl-icdandvirtual-vulkan-icd.
mesa-demos: split info tools to a separate packagemesa-demos-info.vte: skip gobject-introspection with Clang on Arm, as it caused build failures.shadow: Increase the maximum group name length from 24 to 32 (default value provided by upstream recipe, was previously hardcoded to 24).udev-extraconf: Speed up themount.shscript by passing the block device of interest toblkidwhen getting partition label names.piglit: enable OpenCL support ifopenclis part of the DISTRO features.
Known Issues in 5.3
Recipe License changes in 5.3
The following changes have been made to the LICENSE values set by recipes:
Recipe |
Previous value |
New value |
|---|---|---|
|
Previous value |
New value |
Security Fixes in 5.3
The following CVEs have been fixed:
Recipe |
CVE IDs |
|---|---|
|
CVE-xxx-xxxx, … |
Recipe Upgrades in 5.3
The following recipes have been upgraded:
Recipe |
Previous version |
New version |
|---|---|---|
|
Previous version |
New version |
Contributors to 5.3
Thanks to the following people who contributed to this release: