]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/log
thirdparty/openembedded/openembedded-core-contrib.git
12 months agopython3-setuptools-scm: remove python3-tomli dependency
Ross Burton [Tue, 23 Jul 2024 14:51:31 +0000 (15:51 +0100)] 
python3-setuptools-scm: remove python3-tomli dependency

We have Python 3.11+ so setuptools-scm can use tomllib.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-websockets: use python_setuptools_build_meta build class
Ross Burton [Tue, 23 Jul 2024 14:51:30 +0000 (15:51 +0100)] 
python3-websockets: use python_setuptools_build_meta build class

This package can be built using pep517 classes now.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-scons: use python_setuptools_build_meta build class
Ross Burton [Tue, 23 Jul 2024 14:51:29 +0000 (15:51 +0100)] 
python3-scons: use python_setuptools_build_meta build class

This package can be built using pep517 classes now.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-ruemel-yaml: use python_setuptools_build_meta build class
Ross Burton [Tue, 23 Jul 2024 14:51:28 +0000 (15:51 +0100)] 
python3-ruemel-yaml: use python_setuptools_build_meta build class

This package can be built using pep517 classes now.

Also remove the redundant RUAMEL_NO_PIP_INSTALL_CHECK assignment, this
is checked by setup.py which is no longer ran.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-pyelftools: use python_setuptools_build_meta build class
Ross Burton [Tue, 23 Jul 2024 14:51:27 +0000 (15:51 +0100)] 
python3-pyelftools: use python_setuptools_build_meta build class

This package can be built using pep517 classes now.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-pycryptodome(x): use python_setuptools_build_meta build class
Ross Burton [Tue, 23 Jul 2024 14:51:26 +0000 (15:51 +0100)] 
python3-pycryptodome(x): use python_setuptools_build_meta build class

This package can be built using pep517 classes now.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-psutil: use python_setuptools_build_meta build class
Ross Burton [Tue, 23 Jul 2024 14:51:25 +0000 (15:51 +0100)] 
python3-psutil: use python_setuptools_build_meta build class

This package can be built using pep517 classes now.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-cffi: use python_setuptools_build_meta build class
Ross Burton [Tue, 23 Jul 2024 14:51:24 +0000 (15:51 +0100)] 
python3-cffi: use python_setuptools_build_meta build class

This package can be built using pep517 classes now.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-beartype: use python_setuptools_build_meta build class
Ross Burton [Tue, 23 Jul 2024 14:51:23 +0000 (15:51 +0100)] 
python3-beartype: use python_setuptools_build_meta build class

This package can be built using pep517 classes now.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-pyasn1: use python_setuptools_build_meta build class
Ross Burton [Tue, 23 Jul 2024 14:51:22 +0000 (15:51 +0100)] 
python3-pyasn1: use python_setuptools_build_meta build class

This package can be built using pep517 classes now.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-pyasn1: merge bb/inc
Ross Burton [Tue, 23 Jul 2024 14:51:21 +0000 (15:51 +0100)] 
python3-pyasn1: merge bb/inc

As there's just a single user of the include, merge them.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-pathspec: use python_flit_core
Ross Burton [Tue, 23 Jul 2024 14:51:19 +0000 (15:51 +0100)] 
python3-pathspec: use python_flit_core

This package can be built using pep517 classes now.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-importlib-metadata: remove obsolete dependencies
Ross Burton [Tue, 23 Jul 2024 14:51:18 +0000 (15:51 +0100)] 
python3-importlib-metadata: remove obsolete dependencies

As we have Python 3.11+, tomllib will be used instead of python3-toml.

Use of pathlib2 was removed in 3.0.0.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-zipp: remove obsolete dependencies
Ross Burton [Tue, 23 Jul 2024 14:51:17 +0000 (15:51 +0100)] 
python3-zipp: remove obsolete dependencies

As we have Python 3.11+, tomllib will be used instead of toml.

more-itertools is only used by the tests, which we don't package.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-setuptools-scm: remove obsolete python3-tomli dependency
Ross Burton [Tue, 23 Jul 2024 14:51:16 +0000 (15:51 +0100)] 
python3-setuptools-scm: remove obsolete python3-tomli dependency

As we have Python 3.11+, tomllib will be used.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-setuptools-rust: remove obsolete python3-toml dependency
Ross Burton [Tue, 23 Jul 2024 14:51:15 +0000 (15:51 +0100)] 
python3-setuptools-rust: remove obsolete python3-toml dependency

As we have Python 3.11+, tomllib will be used.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-jinja2: remove obsolete python3-toml dependency
Ross Burton [Tue, 23 Jul 2024 14:51:14 +0000 (15:51 +0100)] 
python3-jinja2: remove obsolete python3-toml dependency

As we have Python 3.11+, tomllib will be used.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agogi-docgen: remove obsolete python3-toml dependency
Ross Burton [Tue, 23 Jul 2024 14:51:13 +0000 (15:51 +0100)] 
gi-docgen: remove obsolete python3-toml dependency

As we have Python 3.11+, tomllib will be used.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-scons: remove obsolete RDEPENDS
Ross Burton [Tue, 23 Jul 2024 14:51:12 +0000 (15:51 +0100)] 
python3-scons: remove obsolete RDEPENDS

scons doesn't appear to have ever imported importlib_metadata.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-pluggy: clean up RDEPENDS
Ross Burton [Tue, 23 Jul 2024 14:51:11 +0000 (15:51 +0100)] 
python3-pluggy: clean up RDEPENDS

importlib-metadata is no longer needed since 0.13.0.

more-itertools has never been imported directly by pluggy but was likely
a dependency coming via more-itertools.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-jsonschema: remove obsolete RDEPENDS
Ross Burton [Tue, 23 Jul 2024 14:51:10 +0000 (15:51 +0100)] 
python3-jsonschema: remove obsolete RDEPENDS

The backport of importlib-metadata is no longer needed as we have Python
3.8+.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-beartype: add missing RDEPENDS
Ross Burton [Tue, 23 Jul 2024 14:51:09 +0000 (15:51 +0100)] 
python3-beartype: add missing RDEPENDS

These parts of the standard library are imported by beartype.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-websockets: remove unused imports
Ross Burton [Tue, 23 Jul 2024 14:51:08 +0000 (15:51 +0100)] 
python3-websockets: remove unused imports

These modules are not imported by websockets.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-chardet: remove pytest-runner DEPENDS
Ross Burton [Tue, 23 Jul 2024 14:51:07 +0000 (15:51 +0100)] 
python3-chardet: remove pytest-runner DEPENDS

This was removed in 4.0.0[1]

[1] https://github.com/chardet/chardet/commit/6a59c4b19226231fc310a3c11e0be939a04f9b3e

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopytest-runner: remove python3-py dependency
Ross Burton [Tue, 23 Jul 2024 14:51:06 +0000 (15:51 +0100)] 
pytest-runner: remove python3-py dependency

It appears that this package has never required the `py` module.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-poetry-core: remove python3-pathlib2 dependency
Ross Burton [Tue, 23 Jul 2024 14:51:04 +0000 (15:51 +0100)] 
python3-poetry-core: remove python3-pathlib2 dependency

Poetry 1.1.0 removed pathlib2 from the dependencies entirely, and before
then it was only needed with Python 2.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-setuptools: RDEPEND on python3-unixadmin
Ross Burton [Tue, 23 Jul 2024 14:51:03 +0000 (15:51 +0100)] 
python3-setuptools: RDEPEND on python3-unixadmin

setuptools/command/register.py uses the getpass module.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-jsonschema: rename nongpl PACKAGECONFIG
Ross Burton [Tue, 23 Jul 2024 14:51:02 +0000 (15:51 +0100)] 
python3-jsonschema: rename nongpl PACKAGECONFIG

To make it clear that this is an alternative to the format PACKAGECONFIG,
rename it to format-nongpl.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3: add dependency on -compression to -core
Ross Burton [Tue, 23 Jul 2024 14:51:01 +0000 (15:51 +0100)] 
python3: add dependency on -compression to -core

importlib.metadata is part of -core, but that will import zipfile which
is part of -compression.

Obviously this shows that our packaging of the Python modules is not
optimal.  I plan to follow up with a redesign of the splitting which
focuses on simply pulling out the larger or esoteric modules and
having a more featureful core.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopseudo: Fix to work with glibc 2.40
Richard Purdie [Tue, 23 Jul 2024 14:22:40 +0000 (15:22 +0100)] 
pseudo: Fix to work with glibc 2.40

glibc 2.40 renames some internal header variables. Update our hack to
work with the new version. These kinds of problems illustrate we need to
address the issue properly.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoyocto-uninative: Update to 4.6 for glibc 2.40
Michael Halstead [Mon, 22 Jul 2024 18:10:04 +0000 (11:10 -0700)] 
yocto-uninative: Update to 4.6 for glibc 2.40

Signed-off-by: Michael Halstead <mhalstead@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoRevert "python3: drop deterministic_imports.patch"
Ross Burton [Tue, 23 Jul 2024 08:28:12 +0000 (09:28 +0100)] 
Revert "python3: drop deterministic_imports.patch"

There are still issues with importlib.metadata and empty directories,
which surface when doing builds with existing build trees.

I've raised this on the upstream ticket that Alex Kanavin has already
filed[1] so hopefully we can have a resolution soon.

This reverts commit 058c3a6e2b30103202f3995930825fc2f366274f.

[1] https://github.com/python/importlib_metadata/issues/489

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agorootfs: Ensure run-postinsts is not uninstalled for read-only-rootfs-delayed-postinsts
Gassner, Tobias.ext [Mon, 15 Jul 2024 06:35:11 +0000 (08:35 +0200)] 
rootfs: Ensure run-postinsts is not uninstalled for read-only-rootfs-delayed-postinsts

This patch ensures that pkg_postinst_ontarget task is executed for read only rootfs when
read-only-rootfs-delayed-postinsts is set as IMAGE_FEATURES. The issue was that run-postinsts
could be uninstalled at the end of rootfs construction and that shouldn't happen for
the delayed usecase.

In addition to the fix, a test in meta/lib/oeqa/selftest/cases/overlayfs.py testing
the fix has been implemented.

Signed-off-by: Gassner, Tobias.ext <tobias.gassner.ext@karlstorz.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
12 months agosystemd: Mitigate /var/tmp type mismatch issue
Niko Mauno [Thu, 4 Jul 2024 07:15:18 +0000 (07:15 +0000)] 
systemd: Mitigate /var/tmp type mismatch issue

The base-files recipe provides /var/tmp -> /var/volatile/tmp symlink
which is in conflict with systemd upstream tmpfiles.d/tmp.conf which
defines it as a directory (or subvolume on btrfs).

This generates following error in journal:

  Jul 03 15:37:21 qemux86-64 systemd-tmpfiles[158]: "/var/tmp" already exists and is not a directory.

Mitigate the issue by defining /var/tmp as symlink corresponding to
the one created by base-files.

Signed-off-by: Niko Mauno <niko.mauno@vaisala.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
12 months agooeqa/runtime/scp: requires openssh-sftp-server
Jose Quaresma [Wed, 17 Jul 2024 12:34:22 +0000 (13:34 +0100)] 
oeqa/runtime/scp: requires openssh-sftp-server

The SCP protocol was deprecated in favor of the SFTP.
For the legacy SCP protocol scp should be run with "-O".
Instead of adding "-O" on the scp_options ssh oeqa we can
require the openssh-sftp-server to be instaled on the target.

This way the test will work more deterministic regardless of
the host machine client used.
For the old fashion clients still using legacy SCP protocol
the openssh-sshd server will be used, for the new ones using
the SFTP the openssh-sftp-server will be picked.

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
12 months agotime64.inc: Add warnings exclusion for known toolchain problems for now
Richard Purdie [Mon, 22 Jul 2024 14:27:50 +0000 (15:27 +0100)] 
time64.inc: Add warnings exclusion for known toolchain problems for now

Fixing our infrastructure to show warnings for nativesdk packages resulted
in some issues with 32 bit toolchains and 32 bit time becoming clear.

For now, add INSANE_SKIP entries for these which effectively documents
the issue and allows us to at least start running the tests in the
infrastructure.

Over time we will need to try and fix these if upstream doesn't.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agowatchdog: Set watchdog_module in default config
Wadim Egorov [Mon, 22 Jul 2024 08:58:40 +0000 (10:58 +0200)] 
watchdog: Set watchdog_module in default config

systemd started to warn about used but unset environment variables.
Let us set watchdog_module=none which is used by the watchdog.service to get
rid of the following warning:

  watchdog.service: Referenced but unset environment variable evaluates to an empty string: watchdog_module

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agokernel.bbclass: add original package name to RPROVIDES for -image and -base
Martin Jansa [Mon, 22 Jul 2024 08:15:11 +0000 (10:15 +0200)] 
kernel.bbclass: add original package name to RPROVIDES for -image and -base

* -image and -base change PKG to:
  PKG:${KERNEL_PACKAGE_NAME}-image = "${KERNEL_PACKAGE_NAME}-image-${@legitimize_package_name(d.getVar(KERNEL_VERSION))}"
  PKG:${KERNEL_PACKAGE_NAME}-base = "${KERNEL_PACKAGE_NAME}-${@legitimize_package_name(d.getVar(KERNEL_VERSION))}"

* but only when debian.bbclass is inheritted they add the original package name into RPROVIDES by:
  https://git.openembedded.org/openembedded-core/commit/?id=3409c4379559afbb1d1d29045582995147a33bbc

* fixes the build if some packagegroup or something RDEPENDS on kernel-image or kernel-base
  and the DISTRO doesn't inherit debian.bbclass

* as shown in pkgdata:
  linux-raspberrypi $ egrep "^(PKG:)|(RPRO)" 6.6.36+git-*/pkgdata/runtime/kernel-image
  6.6.36+git-debian/pkgdata/runtime/kernel-image:RPROVIDES:kernel-image:  kernel-image (=6.6.36+git@PRSERV_PV_AUTOINC@+733366844f_769634f344)
  6.6.36+git-debian/pkgdata/runtime/kernel-image:PKG:kernel-image: kernel-image-6.6.36-v8
  6.6.36+git-without-debian/pkgdata/runtime/kernel-image:PKG:kernel-image: kernel-image-6.6.36-v8

  linux-raspberrypi $ egrep "^(PKG:)|(RPRO)" 6.6.36+git-*/pkgdata/runtime/kernel-image-image
  6.6.36+git-debian/pkgdata/runtime/kernel-image-image:RPROVIDES:kernel-image-image:  kernel-image-image (=6.6.36+git@PRSERV_PV_AUTOINC@+733366844f_769634f344)
  6.6.36+git-debian/pkgdata/runtime/kernel-image-image:PKG:kernel-image-image: kernel-image-image-6.6.36-v8
  6.6.36+git-without-debian/pkgdata/runtime/kernel-image-image:PKG:kernel-image-image: kernel-image-image-6.6.36-v8

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agobinutils: stable 2.42 branch updates
Deepthi Hemraj [Mon, 22 Jul 2024 05:57:15 +0000 (22:57 -0700)] 
binutils: stable 2.42 branch updates

Below commits on binutils-2.42 stable branch are updated.
29ae8b8ea71 x86-64: Skip -z mark-plt tests on MUSL
92cc764e58f hppa: Fix handling of relocations that apply to data
c439c1e1f56 elf: Add glibc version dependency only if needed
68ae8e2a849 ld: pass -g for ld-elf tests
a1e3cb45c67 aarch64: Enable +cssc for armv8.9-a

Signed-off-by: Deepthi Hemraj <Deepthi.Hemraj@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agogobject-introspection: split tools and giscanner into a separate package
Guðni Már Gilbert [Tue, 25 Jun 2024 18:50:02 +0000 (18:50 +0000)] 
gobject-introspection: split tools and giscanner into a separate package

The tools and giscanner require python3-setuptools at runtime. This increases
the image size quite a bit (on my end ~1.7MB compressed). Most users don't need
these tools in the final image so make them optional.

This commit introduces a new packcage gobject-introspection-tools

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agobootimg-partition: break out code to a common library.
Marcus Folkesson [Wed, 10 Jul 2024 08:53:09 +0000 (10:53 +0200)] 
bootimg-partition: break out code to a common library.

Break out the code that parse IMAGE_BOOT_FILES to a common library.

Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Konrad Weihmann <kweihmann@outlook.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoglibc: Remove redundant configure option --disable-werror
Khem Raj [Sun, 21 Jul 2024 18:03:36 +0000 (11:03 -0700)] 
glibc: Remove redundant configure option --disable-werror

This is applied unconditionally few lines above

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoglibc: Upgrade to 2.40
Khem Raj [Sun, 21 Jul 2024 18:03:35 +0000 (11:03 -0700)] 
glibc: Upgrade to 2.40

Major new features:

* The <stdbit.h> header type-generic macros have been changed when using
  GCC 14.1 or later to use __builtin_stdc_bit_ceil etc. built-in functions
  in order to support unsigned __int128 and/or unsigned _BitInt(N) operands
  with arbitrary precisions when supported by the target.

* The GNU C Library now supports a feature test macro _ISOC23_SOURCE to
  enable features from the ISO C23 standard.  Only some features from
  this standard are supported by the GNU C Library.  The older name
  _ISOC2X_SOURCE is still supported.  Features from C23 are also enabled
  by _GNU_SOURCE, or by compiling with the GCC options -std=c23,
  -std=gnu23, -std=c2x or -std=gnu2x.

* The following ISO C23 function families (introduced in TS
  18661-4:2015) are now supported in <math.h>.  Each family includes
  functions for float, double, long double, _FloatN and _FloatNx, and a
  type-generic macro in <tgmath.h>.

  - Exponential functions: exp2m1, exp10m1.

  - Logarithmic functions: log2p1, log10p1, logp1.

* A new tunable, glibc.rtld.enable_secure, can be used to run a program
  as if it were a setuid process. This is currently a testing tool to allow
  more extensive verification tests for AT_SECURE programs and not meant to
  be a security feature.

* On Linux, the epoll header was updated to include epoll ioctl definitions
  and the related structure added in Linux kernel 6.9.

* The fortify functionality has been significantly enhanced for building
  programs with clang against the GNU C Library.

* Many functions have been added to the vector library for aarch64:
    acosh, asinh, atanh, cbrt, cosh, erf, erfc, hypot, pow, sinh, tanh

* On x86, memset can now use non-temporal stores to improve the performance
  of large writes. This behaviour is controlled by a new tunable
  x86_memset_non_temporal_threshold.

Deprecated and removed features, and other changes affecting compatibility:

* Architectures which use a 32-bit seconds-since-epoch field in struct
  lastlog, struct utmp, struct utmpx (such as i386, powerpc64le, rv32,
  rv64, x86-64) switched from a signed to an unsigned type for that
  field.  This allows these fields to store timestamps beyond the year
  2038, until the year 2106.  Please note that applications are still
  expected to migrate off the interfaces declared in <utmp.h> and
  <utmpx.h> (except for login_tty) due to locking and session management
  problems.

* __rseq_size now denotes the size of the active rseq area (20 bytes
  initially), not the size of struct rseq (32 bytes initially).

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopybootchartgui.py: python 3.12+ regexes
Adrian Freihofer [Sun, 21 Jul 2024 12:41:25 +0000 (14:41 +0200)] 
pybootchartgui.py: python 3.12+ regexes

$ ./scripts/pybootchartgui/pybootchartgui.py
./scripts/pybootchartgui/pybootchartgui/parsing.py:460: SyntaxWarning: invalid escape sequence '\d'
  disk_regex_re = re.compile ('^([hsv]d.|mtdblock\d|mmcblk\d|cciss/c\d+d\d+.*)$')
./scripts/pybootchartgui/pybootchartgui/parsing.py:597: SyntaxWarning: invalid escape sequence '\['
  timestamp_re = re.compile ("^\[\s*(\d+\.\d+)\s*]\s+(.*)$")
./scripts/pybootchartgui/pybootchartgui/parsing.py:598: SyntaxWarning: invalid escape sequence '\S'
  split_re = re.compile ("^(\S+)\s+([\S\+_-]+) (.*)$")
./scripts/pybootchartgui/pybootchartgui/parsing.py:643: SyntaxWarning: invalid escape sequence '\@'
  p = re.match ("\@ (\d+)", rest)
./scripts/pybootchartgui/pybootchartgui/draw.py:799: SyntaxWarning: invalid escape sequence '\s'
  ('system.cpu', 'CPU', lambda s: re.sub('model name\s*:\s*', '', s, 1)),

Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoselftest-hardlink: Add additional test cases
Mark Hatle [Fri, 19 Jul 2024 18:58:18 +0000 (13:58 -0500)] 
selftest-hardlink: Add additional test cases

Additional test cases for debug symlink generation both binaries
and static libraries.

This also has the side effect of testing for race conditions in the
hardlink debug generation and stripping.

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopackage.py: Fix static library processing
Mark Hatle [Fri, 19 Jul 2024 18:58:17 +0000 (13:58 -0500)] 
package.py: Fix static library processing

When PACKAGE_STRIP_STATIC is enabled the system did not pay attention to
hardlinks.  This could trigger a race condition during stripping of static
libraries where multiple strips (through hardlinks) could run at the same
time triggering a truncated or modified file error.

The hardlink breaking code is based on the existing code for elf files, but
due to the nature of the symlinks needed to be done in a separate block of
code.

Add support for static-library debugfs hardlinking through the existing
inode processing code.

Print a note to the logs if the link target can't be found.  This isn't
strictly an error, but may be useful for debugging an issue where a file
isn't present.

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agodevtool/upgrade: use PN instead of BPN for naming newly created upgraded recipes
Alexander Kanavin [Wed, 17 Jul 2024 18:22:16 +0000 (20:22 +0200)] 
devtool/upgrade: use PN instead of BPN for naming newly created upgraded recipes

BPN isn't correct, as it is set to 'cmake' when 'cmake-native' is being upgraded
(or libva for libva-initial etc.)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agorecipeutils/get_recipe_upgrade_status: group recipes when they need to be upgraded...
Alexander Kanavin [Wed, 17 Jul 2024 18:22:15 +0000 (20:22 +0200)] 
recipeutils/get_recipe_upgrade_status: group recipes when they need to be upgraded together

This will allow 'lockstep upgrades' of such recipes, improving success
rates in automated version updating process.

devtool check-upgrade-status now prints:

These recipes need to be upgraded together {
glib-2.0                  2.80.2          2.80.4          Anuj Mittal <anuj.mittal@intel.com>
glib-2.0-initial          2.80.2          2.80.4          Anuj Mittal <anuj.mittal@intel.com>
}
These recipes need to be upgraded together {
util-linux                2.39.3          2.40.2          Chen Qi <Qi.Chen@windriver.com>
util-linux-libuuid        2.39.3          2.40.2          Chen Qi <Qi.Chen@windriver.com>
}
These recipes need to be upgraded together {
cmake                     3.29.3          3.30.0          Unassigned <unassigned@yoctoproject.org>
cmake-native              3.29.3          3.30.0          Unassigned <unassigned@yoctoproject.org>
}

etc.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agolib/recipeutils: add a function to determine recipes with shared include files
Alexander Kanavin [Wed, 17 Jul 2024 18:22:14 +0000 (20:22 +0200)] 
lib/recipeutils: add a function to determine recipes with shared include files

This functionality is needed for 'lockstep version upgrades' where several
recipes need to be upgraded at the same time to produce a buildable
outcome.

The function itself obtains BBINCLUDED for each recipe and then massages
the data until it takes the form of a list of sets:

[{'cmake','cmake-native'},
 {'qemu','qemu-native','qemu-system-native'},
... ]

There's also a selftest that checks for the above.

Unfortunately this won't detect mutually exclusive recipes like mesa and mesa-gl
as they're chosen with PREFERRED_PROVIDER and can't be enabled in the same build
at the same time. ('devtool upgrade' will also accept just one of them but not the other)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agolib/oe/recipeutils: return a dict in get_recipe_upgrade_status() instead of a tuple
Alexander Kanavin [Wed, 17 Jul 2024 18:22:13 +0000 (20:22 +0200)] 
lib/oe/recipeutils: return a dict in get_recipe_upgrade_status() instead of a tuple

Putting various things in a tuple is an anti-pattern of sorts, as the consumers
have to unpack it into local variables for readability, or access items directly
with indexes, which makes code pretty much unreadable.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopackage.py: Fix static debuginfo split
Mark Hatle [Fri, 19 Jul 2024 18:58:16 +0000 (13:58 -0500)] 
package.py: Fix static debuginfo split

Fix:
  NameError: name 'shutil' is not defined

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-attrs: drop python3-ctypes from RDEPENDS
Guðni Már Gilbert [Sat, 20 Jul 2024 13:07:24 +0000 (13:07 +0000)] 
python3-attrs: drop python3-ctypes from RDEPENDS

python3-ctypes was dropped as a dependency in v19.2.0

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agognutls: upgrade 3.8.5 -> 3.8.6
Simone Weiß [Sat, 20 Jul 2024 20:59:13 +0000 (20:59 +0000)] 
gnutls: upgrade 3.8.5 -> 3.8.6

Changelog:
** libgnutls: PBMAC1 is now supported as a MAC mechanism for PKCS#12
   To be compliant with FIPS 140-3, PKCS#12 files with MAC based on
   PBKDF2 (PBMAC1) is now supported, according to the specification
   proposed in draft-ietf-lamps-pkcs12-pbmac1.

** libgnutls: SHA3 extendable output functions (XOF) are now supported
   SHA3 XOF, SHAKE128 and SHAKE256, are now usable through a new
   public API gnutls_hash_squeeze.

** API and ABI modifications:
gnutls_pkcs12_generate_mac3: New function
gnutls_pkcs12_flags_t: New enum
gnutls_hash_squeeze: New function

Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoutil-linux: install lastlog2 volatile file
Yi Zhao [Sat, 20 Jul 2024 14:12:30 +0000 (22:12 +0800)] 
util-linux: install lastlog2 volatile file

Install lastlog2 volatile file to create /var/lib/lastlog directory to
fix runtime error:

$ lastlog2
lastlog2: Couldn't read entries for all users
lastlog2: Cannot open database (/var/lib/lastlog/lastlog2.db): unable to open database file

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agolib/spdx30_tasks: improve error message
Dmitry Baryshkov [Fri, 19 Jul 2024 17:52:37 +0000 (20:52 +0300)] 
lib/spdx30_tasks: improve error message

Improve 'unknown status' error message by including the CVE id and by
quoting status field. Otherwise it might be troublesome to understand
messages like 'do_create_spdx: Unknown CVE status ' (the status was
empty).

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoxserver-xorg: fix CVE-2023-5574 status
Dmitry Baryshkov [Fri, 19 Jul 2024 17:49:34 +0000 (20:49 +0300)] 
xserver-xorg: fix CVE-2023-5574 status

If XvFB is enabled, the CVE_STATUS for CVE-2023-5574 should be
'unpatched' rather than the empty string. Otherwise SDPX checker
complains:

xserver-xorg-2_21.1.13-r0 do_create_spdx: Unknown CVE status

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoglibc: stable 2.39 branch updates.
Deepthi Hemraj [Fri, 19 Jul 2024 08:31:04 +0000 (01:31 -0700)] 
glibc: stable 2.39 branch updates.

Below commits on glibc-2.39 stable branch are updated.
e8f5217097 Linux: Make __rseq_size useful for feature detection (bug 31965)
143a7a0623 elf: Make dl-rseq-symbols Linux only
1062ebbd19 nptl: fix potential merge of __rseq_* relro symbols
5c46e6b666 s390x: Fix segfault in wcsncmp [BZ #31934]
a036311246 stdlib: fix arc4random fallback to /dev/urandom (BZ 31612)
d2cbfcf1d9 math: Provide missing math symbols on libc.a (BZ 31781)
d473c9bb3b math: Fix isnanf128 static build (BZ 31774)
3950cbd7a1 math: Fix i386 and m68k exp10 on static build (BZ 31775)
6cb25aff85 math: Fix i386 and m68k fmod/fmodf on static build (BZ 31488)
74630b1bb7 posix: Fix pidfd_spawn/pidfd_spawnp leak if execve fails (BZ 31695)
7f9f25f255 Linux: Include <dl-symbol-redir-ifunc.h> in dl-sysdep.c
198632a05f NEWS: update list of fixed CVEs in 2.39
77bb3c7154 NEWS: update list of fixed bugs in 2.39
f05638731e x86: Properly set x86 minimum ISA level [BZ #31883]
b7f5b0a711 x86: Properly set MINIMUM_X86_ISA_LEVEL for i386 [BZ #31867]
e1d0040a6d localedata: ssy_ER: Fix syntax error
9de9cd17e7 malloc: New test to check malloc alternate path using memory obstruction
a2da98aa2a malloc: Improve aligned_alloc and calloc test coverage.
305ee48826 malloc/Makefile: Split and sort tests
00899eba26 x86/cet: fix shadow stack test scripts
6ade91c211 elf: Avoid some free (NULL) calls in _dl_update_slotinfo
70f560fc22 misc: Add support for Linux uio.h RWF_NOAPPEND flag
c9d8534406 i386: Disable Intel Xeon Phi tests for GCC 15 and above (BZ 31782)
aee37de299 Reinstate generic features-time64.h
dd535f4f19 Always define __USE_TIME_BITS64 when 64 bit time_t is used
26e7005728 socket: Use may_alias on sockaddr structs (bug 19622)
9f2b100d67 parse_fdinfo: Don't advance pointer twice [BZ #31798]

Signed-off-by: Deepthi Hemraj <Deepthi.Hemraj@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopango: upgrade 1.52.2 -> 1.54.0
Ross Burton [Fri, 19 Jul 2024 15:51:50 +0000 (16:51 +0100)] 
pango: upgrade 1.52.2 -> 1.54.0

Upstream has removed installable tests, although there is pressure to
bring them back[1].

- Build fixes
- Memory leak fixes
- Drop the install-tests build option
- Add build-examples and build-tests build options
- Require meson 0.63
- Add pango_item_get_char_offset
- Update to Unicode 15.1
- Fix wrong use of GWeakRef, leading to crashes

[1] https://gitlab.gnome.org/GNOME/pango/-/issues/799

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agogtk+3: upgrade 3.24.42 -> 3.24.43
Ross Burton [Fri, 19 Jul 2024 13:25:21 +0000 (14:25 +0100)] 
gtk+3: upgrade 3.24.42 -> 3.24.43

* Stop looking for modules in cwd (CVE-2024-6655)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoruby: upgrade 3.3.0 -> 3.3.4
Ross Burton [Fri, 19 Jul 2024 13:25:20 +0000 (14:25 +0100)] 
ruby: upgrade 3.3.0 -> 3.3.4

3.3.4:

This release fixes a regression in Ruby 3.3.3 that dependencies are missing in
the gemspec of some bundled gems: net-pop, net-ftp, net-imap, and prime [Bug
like Heroku. If your bundle install runs correctly now, you may not have this
issue.

3.3.3:

This release includes:

RubyGems 3.5.11
Bundler 2.5.11
REXML 3.2.8
strscan 3.0.9
--dump=prism_parsetree is replaced by --parser=prism --dump=parsetree
Invalid encoding symbols raise SyntaxError instead of EncodingError
Memory leak fix in Ripper parsing
Bugfixes for YJIT, **{}, Ripper.tokenize, RubyVM::InstructionSequence#to_binary,
--with-gmp, and some build environments

3.3.2:

This release includes many bug-fixes. See the GitHub releases for further details.

3.3.1:

This release includes security fixes. Please check the topics below for details.

CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search
CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc
CVE-2024-27280: Buffer overread vulnerability in StringIO

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoofono: upgrade 2.8 -> 2.9
Ross Burton [Fri, 19 Jul 2024 13:25:19 +0000 (14:25 +0100)] 
ofono: upgrade 2.8 -> 2.9

* Add support for QRTR based devices (MHI bus and SoC).

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoell: upgrade 0.66 -> 0.67
Ross Burton [Fri, 19 Jul 2024 13:25:18 +0000 (14:25 +0100)] 
ell: upgrade 0.66 -> 0.67

* Add support for handling sysctl char settings.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agogstreamer1.0-plugins-bad: add PACKAGECONFIG for gtk3
Martin Jansa [Thu, 18 Jul 2024 18:22:51 +0000 (20:22 +0200)] 
gstreamer1.0-plugins-bad: add PACKAGECONFIG for gtk3

* gtkwaylandsink was added in 1.21.1 version:
  https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1515

* gtk3+ could be autodetected (e.g. as transitive dependency from opencv)

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agooeqa/selftest/reproducibile: rename of reproducible directories
Sundeep KOKKONDA [Thu, 18 Jul 2024 17:53:51 +0000 (10:53 -0700)] 
oeqa/selftest/reproducibile: rename of reproducible directories

We do see a few reproducible issues are depending on the path length of the build directory.
https://bugzilla.yoctoproject.org/show_bug.cgi?id=15554

The current implementation of reproducible tests having different names for directories but with same length.
The build directory names are changed to have different length.

Signed-off-by: Sundeep KOKKONDA <sundeep.kokkonda@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoopenssl: rewrite ptest installation
Ross Burton [Thu, 18 Jul 2024 14:48:29 +0000 (15:48 +0100)] 
openssl: rewrite ptest installation

Rewrite (again) the openssl test suite installation.

Depend on and reuse already installed libraries and modules instead of
installing them twice.

Be more selective when installing from the build tree so we don't install
intermediate .c .d .o files.

This further reduces the size of openssl-dbg from ~120MB to ~18MB.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoopenssl: strip the test suite
Ross Burton [Thu, 18 Jul 2024 14:48:28 +0000 (15:48 +0100)] 
openssl: strip the test suite

The test suite is huge because every test binary is statically linked to
libssl and/or libcrypto. This bloats the size of the -dbg package hugely,
so strip the test suite before packaging.

This reduces the size of openssl-dbg by 90% from ~1.2GB to ~120MB, and
reduces the size of the build tree from ~1.9GB to ~800MB.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoqemu: Drop mips workaround
Richard Purdie [Wed, 17 Jul 2024 21:27:00 +0000 (22:27 +0100)] 
qemu: Drop mips workaround

In local testing this appears to not be needed any more. Since the bash dependency
is painful in many different ways, particularly being injected at do_package time,
drop it all.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agovolatile-binds: Remove workdir if OverlayFS fails
Ricardo Simoes [Thu, 18 Jul 2024 06:46:34 +0000 (08:46 +0200)] 
volatile-binds: Remove workdir if OverlayFS fails

To fulfill OverlayFS workdir requirements, the mount-copybind script
creates a workdir. But if the mount operation fails for any reason,
the workdir is left there.

Then, subsequent runs of mount-copybind will again try to
create the directory and pollute system logs with failed mkdir error
messages.

This commit mitigates the problem by unconditionally removing workdir
if the OverlayFS is not used or fails to run.

Signed-off-by: Ricardo Simoes <ricardo.simoes@pt.bosch.com>
Signed-off-by: Mark Jonas <mark.jonas@de.bosch.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agovolatile-binds: Do not create workdir if OverlayFS is disabled
Ricardo Simoes [Thu, 18 Jul 2024 06:46:33 +0000 (08:46 +0200)] 
volatile-binds: Do not create workdir if OverlayFS is disabled

When the mountpoint parameter is a directory, the mount-copybind will
first try to use OverlayFS. Because of that, it needs to create the
OverlayFS workdir (determined by the overlay_workdir).

But if the environment variable MOUNT_COPYBIND_AVOID_OVERLAYFS is set
to "1", the script uses bind mount. In that case, the overlay_workdir
is useless, leaving the spec parent directory in a dirty state.

This commit changes mount-copybind so that the overlay_workdir is only
created when MOUNT_COPYBIND_AVOID_OVERLAYFS is not set to 1.

Signed-off-by: Ricardo Simoes <ricardo.simoes@pt.bosch.com>
Signed-off-by: Mark Jonas <mark.jonas@de.bosch.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopython3-setuptools: upgrade 69.5.1 -> 70.3.0
Trevor Gamblin [Wed, 17 Jul 2024 15:59:48 +0000 (11:59 -0400)] 
python3-setuptools: upgrade 69.5.1 -> 70.3.0

Refactor 0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch
to apply on the latest codebase.

Changelog: https://github.com/pypa/setuptools/blob/main/NEWS.rst

Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agosystemd: Move the MIME file to a separate package
Peter Kjellerstedt [Wed, 17 Jul 2024 14:34:41 +0000 (16:34 +0200)] 
systemd: Move the MIME file to a separate package

The systemd-mime package is added as a recommendation for systemd so
that it is installed by default, but can be excluded, e.g., via
BAD_RECOMMENDATIONS. Excluding it avoids pulling in the MIME database
for products that have no use for it.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agosystemd: Correct the indentation in do_install()
Peter Kjellerstedt [Wed, 17 Jul 2024 14:34:40 +0000 (16:34 +0200)] 
systemd: Correct the indentation in do_install()

There was a mix of using tabs and spaces for indentation.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agosystemd: Replace deprecate udevadm command
Khem Raj [Wed, 17 Jul 2024 19:06:44 +0000 (12:06 -0700)] 
systemd: Replace deprecate udevadm command

In postinstall we run this script on target
these days systemd-hwdb is recommended

Fixes
...
Configuring udev-hwdb.
udevadm hwdb is deprecated. Use systemd-hwdb instead.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agonativesdk-libtool: sanitize the script, remove buildpaths
Denys Dmytriyenko [Wed, 17 Jul 2024 17:10:50 +0000 (13:10 -0400)] 
nativesdk-libtool: sanitize the script, remove buildpaths

Use the same sed command to sanitize libtool script for target recipe
and nativesdk one. Otherwise fails with buildpaths QA error:

ERROR: nativesdk-libtool-2.5.0-r0 do_package_qa: QA Issue: File /usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/bin/libtool in package nativesdk-libtool contains reference to TMPDIR [buildpaths]

Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agooeqa/postactions: Separate artefact collection from test result collection
Richard Purdie [Wed, 17 Jul 2024 13:29:20 +0000 (14:29 +0100)] 
oeqa/postactions: Separate artefact collection from test result collection

Combining the test result collection and artefact collection hasn't worked out
well as the data has different life cycles, the artefacts can be large and
we need to be able to clean them up on a different timescale.

Separate them out to be controlled by a separate variable, OEQA_ARTEFACT_DIR.
Also rework the code to inject a directory with a date/time and random component
to allow builds to run in parallel. Pass function arguments to avoid re-reading
variables.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agotestimage: Fix TESTIMAGE_FAILED_QA_ARTIFACTS setting
Richard Purdie [Wed, 17 Jul 2024 13:34:57 +0000 (14:34 +0100)] 
testimage: Fix TESTIMAGE_FAILED_QA_ARTIFACTS setting

MCNAME isn't defined outside our mcextend ptest images so use a wildcard in
TESTIMAGE_FAILED_QA_ARTIFACTS instead. This unbreaks the value in other images.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoopenssh: systemd sd-notify patch was rejected upstream
Jose Quaresma [Tue, 16 Jul 2024 09:29:54 +0000 (10:29 +0100)] 
openssh: systemd sd-notify patch was rejected upstream

Still side effects of the XZ backdoor.

Racional [1]:

License incompatibility and library bloatedness were the reasons.
Given recent events we're never going to take a dependency on libsystemd,
though we might implement the notification protocol ourselves if it isn't too much work.

[1] https://github.com/openssh/openssh-portable/pull/375#issuecomment-2027749729

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agomesa: fix QA warnings caused by freedreno tools
Dmitry Baryshkov [Tue, 16 Jul 2024 09:54:38 +0000 (12:54 +0300)] 
mesa: fix QA warnings caused by freedreno tools

Fix following QA warnings / errors

File /usr/bin/afuc-asm in package mesa-tools contains reference to TMPDIR [buildpaths]
File /usr/bin/afuc-disasm in package mesa-tools contains reference to TMPDIR [buildpaths]

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agobluez5: cleanup redundant backslashes
Guðni Már Gilbert [Tue, 16 Jul 2024 16:19:18 +0000 (16:19 +0000)] 
bluez5: cleanup redundant backslashes

Noticed in the installation logs a few paths have
double slashes '//'. Doesn't seem to do any harm, though
it is good to clean this up for consistency.

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agobluez5: drop modifications to Python shebangs
Guðni Már Gilbert [Tue, 16 Jul 2024 16:00:37 +0000 (16:00 +0000)] 
bluez5: drop modifications to Python shebangs

All the test scripts are by now Python 3 compatible
and the shebangs are consistently set to #!/usr/bin/env python3
since BlueZ 5.73

See:
https://github.com/bluez/bluez/commit/d31f04aa928ae8fb7a4fc5b0876dd17ea65d4513

The source code was inspected to confirm there are no more
shebangs which reference 'python' (Python 2)

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoopenssl: disable tests unless ptest is enabled
Ross Burton [Tue, 16 Jul 2024 16:11:11 +0000 (17:11 +0100)] 
openssl: disable tests unless ptest is enabled

The upstream Makefile always builds the tests unless they're explicitly
disabled. Whilst this doesn't make a difference to the final package and
sysroot output, disabling the tests for openssl-native reduces the size
of the build tree from 659M to 78M and reduces the CPU time used by 30%.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agosystemd: fix VERSION_TAG related build error
Kai Kang [Wed, 17 Jul 2024 02:27:43 +0000 (10:27 +0800)] 
systemd: fix VERSION_TAG related build error

The patch 0001-src-boot-efi-meson.build-ensure-VERSION_TAG-exists-i.patch for
systemd-boot is also required by systemd to resolve VERSION_TAG related build
error.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agollvm: extend llvm-config reproducibility fix to nativesdk class
Denys Dmytriyenko [Tue, 16 Jul 2024 22:34:06 +0000 (18:34 -0400)] 
llvm: extend llvm-config reproducibility fix to nativesdk class

It's not limited to "target", but also happens to nativesdk:

ERROR: nativesdk-llvm-18.1.8-r0 do_package_qa: QA Issue: File /usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/bin/llvm-config in package nativesdk-llvm contains reference to TMPDIR [buildpaths]

Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoclasses/kernel.bbclass: update CVE_PRODUCT
Marta Rybczynska [Mon, 15 Jul 2024 10:20:02 +0000 (12:20 +0200)] 
classes/kernel.bbclass: update CVE_PRODUCT

Add linux:linux to CVE_PRODUCT. linux:linux is used by the kernel CNA
in raw CVE entries. We can't use just linux, because of conflicts with
CPE entries of multiple distributions.

Signed-off-by: Marta Rybczynska <marta.rybczynska@syslinbit.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agooeqa/sdk: add out-of-tree kernel module building test
Ross Burton [Fri, 12 Jul 2024 18:43:58 +0000 (19:43 +0100)] 
oeqa/sdk: add out-of-tree kernel module building test

Validate that out-of-tree kernel module building using kernel-devsrc
works as expected.

This test uses cryptodev-linux as a idiomatic out of tree module. As the
latest release doesn't actually build with kernel 6.7+, use the same
commit that our recipe uses.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agocreate-sdpx-2.2.bbclass: Switch from exists to isfile checking debugsrc
Mark Hatle [Mon, 15 Jul 2024 19:56:06 +0000 (14:56 -0500)] 
create-sdpx-2.2.bbclass: Switch from exists to isfile checking debugsrc

While debugsrc is almost always a file (or link), there are apparently
cases where a directory could be returned from the dwarfsrcfiles
processing.  When this happens, the hashing fails and an error results
when building the SPDX documents.

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agopixman: update patch for fixing inline failure with -Og
Changqing Li [Tue, 16 Jul 2024 09:46:33 +0000 (17:46 +0800)] 
pixman: update patch for fixing inline failure with -Og

Previous patch works on fedora40 with gcc-14, but not works
on ubuntu2004 with gcc-9. Update the patch to fix the do_compile
failure:
    In function ‘combine_inner’,
        inlined from ‘combine_soft_light_ca_float’ at ../pixman-0.42.2/pixman/pixman-combine-float.c:655:1:
    ../pixman-0.42.2/pixman/pixman-combine-float.c:370:5: error: inlining failed in call to ‘always_inline’ ‘combine_soft_light_c’: function not
considered for inlining
      370 |     combine_ ## name ## _c (float sa, float s, float da, float d)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoopenssh: drop rejected patch fixed in 8.6p1 release
Jose Quaresma [Tue, 16 Jul 2024 14:16:37 +0000 (15:16 +0100)] 
openssh: drop rejected patch fixed in 8.6p1 release

The rationale [1] is that C11 6.5.6.9 says:
"""
When two pointers are subtracted, both shall point to elements of the
same array object, or one past the last element of the array object; the
result is the difference of the subscripts of the two array elements.
"""

In these cases the objects are arrays of char so the result is defined,
and we believe that the compiler incorrectly trapping on defined behaviour.

I also found https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63303
("Pointer subtraction is broken when using -fsanitize=undefined") which seems to support this position.

[1] https://bugzilla.mindrot.org/show_bug.cgi?id=2608

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agodistro/include: Add yocto-space-optimize, disabling debugging for large components
Richard Purdie [Wed, 10 Jul 2024 23:00:28 +0000 (00:00 +0100)] 
distro/include: Add yocto-space-optimize, disabling debugging for large components

Add an include file to allow turning off the debug compiler options
for a small set of recipes to reduce build on disk footprint and
package/sstate sizes.

This is currently applied to llvm and qemu target recipes.

The llvm-staticdev package takes up around 1.3GB alone. These three
changes lead to a reduction in TMPDIR size for a world build from
240GB to 199GB, also removing some very large sstate objects.

There is more that could and should be done but this does illustrate
one way to speed up and reduce build size in a focused way whilst we
ideally look into other approaches.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoclasses-recipe/multilib_script: Expand before splitting
Joshua Watt [Mon, 15 Jul 2024 21:52:12 +0000 (15:52 -0600)] 
classes-recipe/multilib_script: Expand before splitting

multilib_script.bbclass was unable to work correctly in the case where
e.g. a PACKAGECONFIG removed the script that it was intended to rename
(as an example, the "trace" PACKAGECONFIG in cairo). The way to fix this
would be to do something like:

 MULTILIB_SCRIPTS = "${@bb.utils.contains('PACKAGECONFIG', 'trace', '${PN}-perf-utils:${bindir}/cairo-trace', '', d)}"

but this is not possible because the variable is not expanded before
being split.

To fix this, change the class to expand the variable before splitting.
There are two cases to be considered that could possibly break:
 1) If the RHS of the ":" contains a ":", which is accounted for by
    limiting the splitting to 1 split, which will leave the ":" in the
    RHS in tact. Of note, this works because ":" isn't valid in a
    package name
 2) If the RHS of the ":" contained whitespace, however this would have
    broken the mv command written to multilibscript_rename(), so this
    isn't occurring in practice.

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agogcc-14: Mark CVE-2023-4039 as fixed in GCC14+
Khem Raj [Sun, 14 Jul 2024 18:43:44 +0000 (11:43 -0700)] 
gcc-14: Mark CVE-2023-4039 as fixed in GCC14+

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agobusybox: Add fix for CVE-2023-42366
Khem Raj [Sun, 14 Jul 2024 19:01:33 +0000 (12:01 -0700)] 
busybox: Add fix for CVE-2023-42366

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agobusybox: CVE-2023-42364 and CVE-2023-42365 fixes
Khem Raj [Sun, 14 Jul 2024 18:51:45 +0000 (11:51 -0700)] 
busybox: CVE-2023-42364 and CVE-2023-42365 fixes

backport upstream fix for CVEs and fix the regression that introduced [1]

[1] http://lists.busybox.net/pipermail/busybox/2024-May/090766.html

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agobusybox: Fix tc applet build when using kernel 6.8+
Khem Raj [Sun, 14 Jul 2024 16:59:04 +0000 (09:59 -0700)] 
busybox: Fix tc applet build when using kernel 6.8+

We now have 6.9 kernel headers in master which means
busybox builds with CONFIG_TC will fail to build due
to CBQ being dropped in kernel 6.8+

Apply a fix which is reported upstream

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agobuild-appliance-image: Update to master head revision
Richard Purdie [Tue, 16 Jul 2024 14:58:10 +0000 (15:58 +0100)] 
build-appliance-image: Update to master head revision

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoSwitch default spdx version to 3.0
Joshua Watt [Fri, 12 Jul 2024 15:58:22 +0000 (09:58 -0600)] 
Switch default spdx version to 3.0

Changes the default SPDX version to 3.0

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoclasses/create-spdx-3.0: Move tasks to library
Joshua Watt [Fri, 12 Jul 2024 15:58:20 +0000 (09:58 -0600)] 
classes/create-spdx-3.0: Move tasks to library

Move the bulk of the python code in the SPDX 3.0 classes into a library
file

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoclasses/spdx-common: Move to library
Joshua Watt [Fri, 12 Jul 2024 15:58:19 +0000 (09:58 -0600)] 
classes/spdx-common: Move to library

Moves the bulk of the code in the spdx-common bbclass into library code

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoselftest: spdx: Add SPDX 3.0 test cases
Joshua Watt [Fri, 12 Jul 2024 15:58:16 +0000 (09:58 -0600)] 
selftest: spdx: Add SPDX 3.0 test cases

Adds test cases for SPDX 3.0. Reworks the SPDX 2.2 test setup so it can
also be run even if the default is SPDX 3.0

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 months agoclasses/create-spdx-3.0: Add classes
Joshua Watt [Fri, 12 Jul 2024 15:58:13 +0000 (09:58 -0600)] 
classes/create-spdx-3.0: Add classes

Adds a class to generate SPDX 3.0 output and an image class that is used
when generating images

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>