]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/log
thirdparty/openembedded/openembedded-core-contrib.git
5 weeks agognupg: drop -unknown suffix from version number
Yi Zhao [Wed, 2 Jul 2025 07:28:52 +0000 (15:28 +0800)] 
gnupg: drop -unknown suffix from version number

For gnupg and related packages, if autogen.sh is run outside of a git
repo, the find-version function always assumes that the package is a
beta version and adds the suffix '-unknown' to the version number.

Add drop-unknow-suffix.inc file that can be included by gnupg and other
recipes. This file is used to modify autogen.sh:
1. Replace beta=yes with beta=no.
2. Replace tmp="-unknown" with tmp=""

Also remove 0004-autogen.sh-fix-find-version-for-beta-checking.patch as
it is no longer needed.

Befor the fix:
$ gpg --version
gpg (GnuPG) 2.5.5-unknown

After the fix:
$ gpg --version
gpg (GnuPG) 2.5.5

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
5 weeks agopsmisc: fix runtime version when using git shallow tarball
Yi Zhao [Tue, 1 Jul 2025 15:47:31 +0000 (23:47 +0800)] 
psmisc: fix runtime version when using git shallow tarball

Add tag to SRC_URI to fix runtime version when using git shallow
tarball.

Before the fix:
root@intel-x86-64:~# pslog -V
pslog (PSmisc) UNKNOWN

After the fix:
root@intel-x86-64:~# pslog  -V
pslog (PSmisc) 23.7

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
5 weeks agoprocps: fix runtime version when using git shallow tarball
Yi Zhao [Tue, 1 Jul 2025 15:47:30 +0000 (23:47 +0800)] 
procps: fix runtime version when using git shallow tarball

Add tag to SRC_URI to fix runtime version when using git shallow
tarball.

Before the fix:
root@intel-x86-64:~# ps -V
ps from procps-ng UNKNOWN
root@intel-x86-64:~# sysctl -V
sysctl from procps-ng UNKNOWN

After the fix:
root@intel-x86-64:~# ps -V
ps from procps-ng 4.0.5
root@intel-x86-64:~# sysctl -V
sysctl from procps-ng 4.0.5

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
5 weeks agosanity: Reference gcc/g++ directly
Richard Purdie [Tue, 1 Jul 2025 21:44:02 +0000 (22:44 +0100)] 
sanity: Reference gcc/g++ directly

BUILD_CC and BUILD_CXX can be overridden on a per recipe context now so
these tests don't make sense in this form any more. They assume gcc/g++
so lets just use those directly.

This fixes things to work with toolchain selection for the native
case.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
5 weeks agosanity/utils: Directly use gcc, not BUILD_CC
Richard Purdie [Tue, 1 Jul 2025 21:28:21 +0000 (22:28 +0100)] 
sanity/utils: Directly use gcc, not BUILD_CC

The test/helper is written assuming gcc, so just call that and stop
accessing BUILD_CC which may be set to clang.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
5 weeks agouninative/utils: Drop workarounds for gcc 4.8/4.9
Richard Purdie [Tue, 1 Jul 2025 19:38:24 +0000 (20:38 +0100)] 
uninative/utils: Drop workarounds for gcc 4.8/4.9

We require at least gcc 8.0 in sanity.bbclass so drop the 4.8/4.9
special case handling in uninative.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
5 weeks agosanity: Require minimum of bitbake 2.15.1
Richard Purdie [Tue, 1 Jul 2025 07:51:18 +0000 (08:51 +0100)] 
sanity: Require minimum of bitbake 2.15.1

This is needed for tinfoil and umask helper function changes.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agobase: Use OE_SHARED_UMASK for do_fetch
Richard Purdie [Fri, 27 Jun 2025 09:26:20 +0000 (10:26 +0100)] 
base: Use OE_SHARED_UMASK for do_fetch

The intent has always been to share DL_DIR, so set the umask accordingly
to the new OE_SHARED_UMASK variable and match expectations.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agobitbake.conf/sstate: Introduce OE_SHARED_UMASK to standarise shared area umask
Richard Purdie [Fri, 27 Jun 2025 09:25:00 +0000 (10:25 +0100)] 
bitbake.conf/sstate: Introduce OE_SHARED_UMASK to standarise shared area umask

Currently, the "shared" directory permissions of sstate are hardcoded. Since
multiple areas of the code reference this, separate it out to a variable to
allow the behaviour to be configurable. Initially this applies to SSTATE_DIR.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agopython3-wheel: upgrade 0.45.1 -> 0.46.1; add ptest
Tim Orling [Thu, 26 Jun 2025 15:25:12 +0000 (08:25 -0700)] 
python3-wheel: upgrade 0.45.1 -> 0.46.1; add ptest

* Add python3-packaging to RDEPENDS
* Enable ptest:
  - Add to ptest-packagelists.inc PTESTS_FAST
  - inherit ptest-python-pytest
  - Add python3-setuptools to ptest RDEPENDS
  - One test is skipped, but it requires the "full" python3-flit,
    not just python3-flit-core.

Comparing changes since 0.45.1:
https://github.com/pypa/wheel/compare/0.45.1...0.46.1

Release notes [1]:

0.46.1 (2025-04-08)
* Temporarily restored the wheel.macosx_libfile module (#659)

0.46.0 (2025-04-03)
* Dropped support for Python 3.8
* Removed the bdist_wheel setuptools command implementation and entry
  point. The wheel.bdist_wheel module is now just an alias to
  setuptools.command.bdist_wheel, emitting a deprecation warning on import.
* Removed vendored packaging in favor of a run-time dependency on it
* Made the wheel.metadata module private (with a deprecation warning if
  it’s imported
* Made the wheel.cli package private (no deprecation warning)
* Fixed an exception when calling the convert command with an empty
  description field

[1] https://wheel.readthedocs.io/en/stable/news.html

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agojson-c: Remove icecc specific comment
Moritz Haase [Fri, 27 Jun 2025 06:13:46 +0000 (08:13 +0200)] 
json-c: Remove icecc specific comment

6481e8b209b ("json-c: fix icecc compilation") disabled '-Werror' unconditionally
for all compilers. We want to keep it disabled to reduce efforts when updating
or adding support for new toolchains (see [0]), but since support for icecc has
been removed via ba4fd5229893 ("classes/recipes-devtools: Drop icecc from
OE-Core") recently, we can drop the comment referencing it.

[0]: https://lists.openembedded.org/g/openembedded-core/message/219364

Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
CC: quentin.schulz@cherry.de
CC: m.felsch@pengutronix.de
CC: ross.burton@arm.com
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agoninja: upgrade 1.12.1 -> 1.13.0
Randy MacLeod [Thu, 26 Jun 2025 21:28:02 +0000 (17:28 -0400)] 
ninja: upgrade 1.12.1 -> 1.13.0

Changelog:
==========
 - Ninja now automatically joins a GNU Make jobserver as a client
   (version 4.4 on non-Windows systems required for "fifo" style) #1139
 - Print exit code of failed subcommands #1507
 - ninja -t compdb accepts a target #1544
 - Support for ANSI (color) escape codes in NINJA_STATUS #713

See:
   https://github.com/ninja-build/ninja/milestone/8?closed=1
for a complete list of changes.

Add tag to SRC_URI as is now required.
Also line-wrap the DESCRIPTION.

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agooeqa/sdk: Simplify test specification and discovery
Thune Tran [Thu, 26 Jun 2025 20:57:21 +0000 (20:57 +0000)] 
oeqa/sdk: Simplify test specification and discovery

Simplify how tests are specified and discovered for different SDK configurations
to allow per-layer customization.

* Introduce `TESTSDK_CASE_DIRS` variable to specify test directory types,
  replacing the need to modify the default_cases class member

* Discover tests from configured layers using a common discovery pattern
  (`<LAYER_DIR>/lib/oeqa/<dirname>/cases`) where `<dirname>` is specified in `TESTSDK_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.

  meta/lib/oeqa/
  ├── sdk/cases/              # Standard SDK: dirname="sdk"
  ├── buildtools/cases/       # Buildtools: dirname="buildtools"
  └── buildtools-docs/cases/  # Buildtools-docs: dirname="buildtools-docs"

  meta-mingw/lib/oeqa/
  └── sdkmingw/cases/         # MinGW: dirname="sdkmingw"

  meta-foo/lib/oeqa/
  └── sdk/cases/              # Standard SDK: dirname="sdk"

Tested by:

1. Adding new tests using the default discovery pattern `<LAYER_DIR>/lib/oeqa/sdk/cases` and
   verifying they are discovered and executed.

2. Verifying existing SDK configuration tests work (requires -c populate_sdk first):
   * Standard SDK: `bitbake core-image-minimal -c testsdk`
   * Buildtools tarball: `bitbake buildtools-tarball -c testsdk`
   * Buildtools docs tarball: `bitbake buildtools-docs-tarball -c testsdk`
   * Mingw SDK: (SDKMACHINE = "x86_64-mingw32") `bitbake core-image-minimal -c testsdk`

Signed-off-by: Thune Tran <thune.a.tran@boeing.com>
Signed-off-by: Chuck Wolber <chuck.wolber@boeing.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agooeqa/selftest/devtool: update create_go test to match the new behaviour
Ross Burton [Fri, 27 Jun 2025 13:48:50 +0000 (14:48 +0100)] 
oeqa/selftest/devtool: update create_go test to match the new behaviour

Update the test now that the recipe uses go-mod-update-modules.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agooeqa/sefltest/devtool: improve assignment matching in _test_recipe_contents
Ross Burton [Fri, 27 Jun 2025 13:48:49 +0000 (14:48 +0100)] 
oeqa/sefltest/devtool: improve assignment matching in _test_recipe_contents

This function assumed that all assignments are done with just "=".

However, being able to check += or ?= is also useful, so use a regex to
split the line and be more flexible about what an assignment operator
looks like.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agorecipetool/create_go: proxy module fetching to go-mod-update-modules
Ross Burton [Fri, 27 Jun 2025 13:48:48 +0000 (14:48 +0100)] 
recipetool/create_go: proxy module fetching to go-mod-update-modules

Now that the go-mod-update-modules class exists, this Go handler can
create a stub recipe and then proxy the module handling to the class.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agoclasses/go-mod-update-modules: add class to generate module list
Ross Burton [Fri, 27 Jun 2025 13:48:47 +0000 (14:48 +0100)] 
classes/go-mod-update-modules: add class to generate module list

Almost entirely based on the create_go.py module for recipetool by
Christian Lindeberg <christian.lindeberg@axis.com>, this instead has the
logic inside a class that can be used to update the list of Go modules
that are used, both SRC_URI and LICENSE.

Integration with devtool upgrade will come shortly, but it needs a bit
more work.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agooe/licenses: move tidy_licenses from recipetool
Ross Burton [Fri, 27 Jun 2025 13:48:46 +0000 (14:48 +0100)] 
oe/licenses: move tidy_licenses from recipetool

This function, to tidy a license string, is useful outside of recipetool
so move it to oe.license.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agorecipetool: create_go: Use gomod fetcher instead of go mod vendor
Christian Lindeberg [Fri, 27 Jun 2025 13:48:45 +0000 (14:48 +0100)] 
recipetool: create_go: Use gomod fetcher instead of go mod vendor

Use the go-mod bbclass together with the gomod fetcher instead of the
go-vendor bbclass.

Signed-off-by: Christian Lindeberg <christian.lindeberg@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agorecipetool: allow recipe create handlers to specify bitbake tasks to run
Ross Burton [Fri, 27 Jun 2025 13:48:44 +0000 (14:48 +0100)] 
recipetool: allow recipe create handlers to specify bitbake tasks to run

When creating a recipe there can be cases where there is a class that
does some of the recipe creation (such as cargo-update-recipe-crates).

To avoid duplication of code, look for run_task assignments in the
extravalues dictionary returned by the handler, and if it is set then
call that task after writing the recipe.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agorecipetool: create: Support creating extra files named after the recipe
Peter Kjellerstedt [Fri, 27 Jun 2025 13:48:43 +0000 (14:48 +0100)] 
recipetool: create: Support creating extra files named after the recipe

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agogo-mod.bbclass: Calculate GO_MOD_CACHE_DIR relative to ${UNPACKDIR}
Peter Kjellerstedt [Fri, 27 Jun 2025 13:48:42 +0000 (14:48 +0100)] 
go-mod.bbclass: Calculate GO_MOD_CACHE_DIR relative to ${UNPACKDIR}

Adapt to the recent move of S from ${WORKDIR} to ${UNPACKDIR}.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agodosfstools: Use standard fsck exit codes
Ricardo Simoes [Fri, 27 Jun 2025 12:21:58 +0000 (14:21 +0200)] 
dosfstools: Use standard fsck exit codes

This commit brings in `dosfstools` patches to make `fsck.vfat` exit
codes adhere to the standard exit codes defined by `fsck`. See [1].

These will fix the interaction of `fsck.vfat` with other tools like
`systemd-fsck` which expect the exit codes to be in line with the
standard [2].

However, as of today the dosfstools maintainer(s) are invisible for over
a year [3]. Thus, if upstream ever becomes active again, these patches
should be reassessed.

[1] https://github.com/dosfstools/dosfstools/issues/89

[2] https://man7.org/linux/man-pages/man8/systemd-fsck@.service.8.html

[3] https://github.com/dosfstools/dosfstools/issues/210

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>
6 weeks agobuildtools-docs-tarball: add sphinx-argparse and sphinx-copybutton
Antonin Godard [Thu, 26 Jun 2025 15:15:45 +0000 (17:15 +0200)] 
buildtools-docs-tarball: add sphinx-argparse and sphinx-copybutton

Include these sphinx extensions in the buildtools tarball to make them
available when building the documentation.

Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
6 weeks agopython3-sphinx-copybutton: add recipe
Antonin Godard [Thu, 26 Jun 2025 15:15:44 +0000 (17:15 +0200)] 
python3-sphinx-copybutton: add recipe

The sphinx-copybutton extension can be used to add a copy button to code
blocks in the documentation.

Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
6 weeks agopython3-sphinx-argparse: add recipe
Antonin Godard [Thu, 26 Jun 2025 15:15:43 +0000 (17:15 +0200)] 
python3-sphinx-argparse: add recipe

This Sphinx extension can be used to autogenerate documentation for any
python module returning an argument parser from argparse. It can used in
places of the documentation where the --help output is currently
hardcoded, and generate formatted documentation instead.

Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
6 weeks agopython3-urllib3: upgrade 2.4.0 -> 2.5.0
Yogita Urade [Thu, 26 Jun 2025 10:27:18 +0000 (15:57 +0530)] 
python3-urllib3: upgrade 2.4.0 -> 2.5.0

Includes fix for CVE-2025-50181 and CVE-2025-50182

Changelog:
https://urllib3.readthedocs.io/en/stable/changelog.html#id1
https://github.com/urllib3/urllib3/blob/main/CHANGES.rst#250-2025-06-18

Signed-off-by: Yogita Urade <yogita.urade@windriver.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
6 weeks agomtools: upgrade 4.0.48 -> 4.0.49
Jinfeng Wang [Thu, 26 Jun 2025 01:57:45 +0000 (09:57 +0800)] 
mtools: upgrade 4.0.48 -> 4.0.49

New version includes check for overlong file names, see [1].

[1] https://lists.gnu.org/archive/html/info-mtools/2025-06/msg00005.html

Signed-off-by: Jinfeng Wang <jinfeng.wang.cn@windriver.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
6 weeks agocreate-spdx-2.2: support to override the version of a package in SPDX 2
Hongxu Jia [Wed, 25 Jun 2025 09:20:39 +0000 (17:20 +0800)] 
create-spdx-2.2: support to override the version of a package in SPDX 2

By default, still use ${PV} as the the version of a package in SPDX 2

$ echo 'INHERIT:remove = "create-spdx"' >> conf/local.conf
$ echo 'INHERIT += "create-spdx-2.2"' >> conf/local.conf
$ bitbake acl
$ jq . tmp/deploy/spdx/2.2/core2-64/recipes/recipe-acl.spdx.json
...
      "name": "acl",
      "summary": "Utilities for managing POSIX Access Control Lists",
      "supplier": "Organization: OpenEmbedded ()",
      "versionInfo": "2.3.2"
    },
...

Support to override it by setting SPDX_PACKAGE_VERSION, such as
set SPDX_PACKAGE_VERSION = "${EXTENDPKGV}" in local.conf to append
PR to versionInfo in SBOM 2
$ echo 'SPDX_PACKAGE_VERSION = "${EXTENDPKGV}"' >> conf/local.conf
$ bitbake acl
$ jq . tmp/deploy/spdx/2.2/core2-64/recipes/recipe-acl.spdx.json
...
      "name": "acl",
      "summary": "Utilities for managing POSIX Access Control Lists",
      "supplier": "Organization: OpenEmbedded ()",
      "versionInfo": "2.3.2-r0"
    },
...

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agotcf-agent: Add $@ to RANLIB
Khem Raj [Tue, 3 Jun 2025 16:11:35 +0000 (09:11 -0700)] 
tcf-agent: Add $@ to RANLIB

tcf-agent calls RANLIB ( if defined ) after calling AR to
create the archive [1], when RANLIB is set to gcc-ranlib this goes
unnoticed, since calling gcc-ranlib without any arguments silenlty
does nothing and exits with return code 0, however, calling binutils
ranlib or llvm-ranlib does demand library name as commandline option
and since it is not there it exits with code 1

aarch64-poky-linux-musl-llvm-ranlib
OVERVIEW: LLVM ranlib

Generate an index for archives

USAGE: aarch64-poky-linux-musl-llvm-ranlib archive...

OPTIONS:
   -h --help             - Display available options
   -V --version          - Display the version of this program
   -D                    - Use zero for timestamps and uids/gids (default)
   -U                    - Use actual timestamps and uids/gids
   -X{32|64|32_64|any}   - Specify which archive symbol tables should be
generated if they do not already exist (AIX OS only)
aarch64-poky-linux-musl-llvm-ranlib: error: an archive name must be
specified
make: *** [Makefile:53: obj/GNU/Linux/a64/Debug/libtcf.a] Error 1

When we add $@, to RANLIB then it becomes the make variable,
$@ - An automatic Makefile variable that expands to the target name (the
file being built)

so the makefile target now rightly adds the .a filename to RANLIB call.

Sent a patch upstream to add RANLIB for linux [2]

[1] https://gitlab.eclipse.org/eclipse/tcf/tcf.agent/-/blob/master/agent/Makefile?ref_type=heads#L53
[2] https://gitlab.eclipse.org/eclipse/tcf/tcf.agent/-/merge_requests/7

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agosystemd: Refresh patch to remove patch fuzz on musl
Khem Raj [Fri, 27 Jun 2025 07:19:03 +0000 (00:19 -0700)] 
systemd: Refresh patch to remove patch fuzz on musl

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agolocal.conf.sample: drop MIPS, PPC entries; add 64-bit RISC-V
Robert P. J. Day [Fri, 27 Jun 2025 16:26:13 +0000 (12:26 -0400)] 
local.conf.sample: drop MIPS, PPC entries; add 64-bit RISC-V

1) Drop MIPS and PPC lines since we should refer to only those arches
   tested by the autobuilder.
2) Add entry for 64-bit RISC-V.

[RP: Tweak ordering]
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agospdx30_tasks: Change recipe license to declared
Joshua Watt [Wed, 25 Jun 2025 22:29:16 +0000 (16:29 -0600)] 
spdx30_tasks: Change recipe license to declared

Per discussion with the SPDX licensing group, recipe LICENSE statements
classify as a declared license, not a concluded license.

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agoclang: multilib-header fix for llvm/Config/llvm-config.h and clang/Config/config.h
Liu Yiding [Wed, 21 May 2025 03:14:12 +0000 (11:14 +0800)] 
clang: multilib-header fix for llvm/Config/llvm-config.h and clang/Config/config.h

Error: Transaction test error:
  file /usr/include/clang/Config/config.h conflicts between attempted installs of
lib32-clang-dev-20.1.4-r0.core2_32 and clang-dev-20.1.4-r0.core2_64
  file /usr/include/llvm/Config/llvm-config.h conflicts between attempted
installs of lib32-clang-dev-20.1.4-r0.core2_32 and clang-dev-20.1.4-r0.core2_64

reproduce steps:
1. Add in local.conf the following lines:

  MACHINE ?= "qemux86-64"

  require conf/multilib.conf

  MULTILIBS ?= "multilib:lib32"

  DEFAULTTUNE:virtclass-multilib-lib32 ?= "core2-32"

2. add lib32-llvm-dev llvm-dev to core-image-minimal.bb

  IMAGE_INSTALL = "packagegroup-core-boot ${CORE_IMAGE_EXTRA_INSTALL} lib32-clang-dev clang-dev"

3. $ bitbake core-image-minimal

Signed-off-by: Liu Yiding <liuyd.fnst@fujitsu.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agonfsrootfs: disable warning message if bootargs root parameter have not been defined
Jimmy Ho [Tue, 24 Jun 2025 00:14:21 +0000 (08:14 +0800)] 
nfsrootfs: disable warning message if bootargs root parameter have not been defined

we have case that don't define root in bootargs,
if [ ${bootparam_root} != "/dev/nfs" ] will output warning "/init.d/85-nfsrootfs: line 4: [: !=: unary operator expected"
let variable expension result become string to solve this problem

Signed-off-by: Jimmy Ho <jimmy.ho@sifive.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agoimage-live.bbclass: support disable isohybrid for EFI-only boot
Hongxu Jia [Fri, 20 Jun 2025 05:44:53 +0000 (13:44 +0800)] 
image-live.bbclass: support disable isohybrid for EFI-only boot

While NO PCBIOS and EFI only for ISO 9660 image, burn the image
to SandDisk USB stick, plug it into laptop, then boot laptop and
enter UEFI mode, there are two boot options in UEFI system.

Here is the steps:

$ echo 'MACHINE = "genericx86-64"' >> conf/local.conf
$ echo 'MACHINE_FEATURES:remove = "pcbios"' >> conf/local.conf
$ echo 'IMAGE_FSTYPES:pn-core-image-minimal = " live"' >> conf/local.conf
$ bitbake core-image-minimal
$ sudo dd if=tmp/deploy/images/genericx86-64/core-image-minimal-genericx86-64.rootfs.iso of=/dev/sda

Boot laptop and entery UEFI mode
...
Boot mode is set to: UEFI

UEFI BOOT:
    UEFI: SanDisk
    UEFI: SanDisk 2
...

In this case, PCBIOS is not used, calling isohybrid for ISO 9660 image
is not necessary, and do not call isohybrid for ISO 9660 image could
remove duplicated boot option in UEFI mode.

According to [1][2], use `[ "${PCBIOS}" != "1" ] && [ "${EFI}" = "1" ]' as the
EFI-only condition, the revert condition is `[ "${PCBIOS}" = "1" ] || [ "${EFI}" != "1" ]'

[1] https://git.openembedded.org/openembedded-core/commit/?id=be3fc8c07e84c654f55c5d09934dfbdc7ff7e2b6
[2] https://git.openembedded.org/openembedded-core/commit/?id=be95f54495bf9e03062f86b929c66cab6e385a03

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agoutil-linux: replace submitted patches with a merged one
Chen Qi [Wed, 25 Jun 2025 08:34:18 +0000 (16:34 +0800)] 
util-linux: replace submitted patches with a merged one

The original PR, https://github.com/util-linux/util-linux/pull/3605,
was updated. Use the merged patch to avoid any confusion.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agooeqq/runtime/ethernet_ip_connman: remove test_set_virtual_ip reference
Mikko Rapeli [Wed, 25 Jun 2025 13:56:40 +0000 (16:56 +0300)] 
oeqq/runtime/ethernet_ip_connman: remove test_set_virtual_ip reference

It was removed. Fixes test loading after testexport.bbclass
has exported the tests:

oeqa.core.exception.OEQADependency: TestCase ethernet_ip_connman.Ethernet_Test.test_get_ip_from_dhcp depends on ethe
rnet_ip_connman.Ethernet_Test.test_set_virtual_ip and isn't available, cases available odict_keys(['apt.AptRepoTest.
test_apt_install_from_repo', 'boot.BootTest.test_reboot', 'buildcpio.BuildCpioTest.test_cpio', ...

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agoyocto-uninative: Update to 4.8 for GCC 15.1
Michael Halstead [Wed, 25 Jun 2025 18:24:04 +0000 (11:24 -0700)] 
yocto-uninative: Update to 4.8 for GCC 15.1

Signed-off-by: Michael Halstead <mhalstead@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agopython3-smartypants: upgrade 2.0.0 -> 2.0.2
Trevor Gamblin [Tue, 24 Jun 2025 16:43:01 +0000 (12:43 -0400)] 
python3-smartypants: upgrade 2.0.0 -> 2.0.2

Changelog (https://github.com/justinmayer/smartypants.py/blob/main/CHANGES.rst#releases-20-and-greater):

Release 2.0.2 (2025-06-17)

- Fix double closing quotes after an HTML block
- Fix regular expressions and tests for Python 3.12+
- Move documentation to ReadTheDocs

Release 2.0.1 (2017-12-20)

- use re.match instead of re.search to improve performance on large strings

The patch '0001-Change-hash-bang-to-python3.patch' needed a refresh to
apply on the latest version.

License-Update: Update and granularize copyright years

Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agopython3-pytest-subtests: upgrade 0.14.1 -> 0.14.2
Tim Orling [Tue, 24 Jun 2025 23:13:56 +0000 (16:13 -0700)] 
python3-pytest-subtests: upgrade 0.14.1 -> 0.14.2

Highlights from commit logs:
* Bump pypa/gh-action-pypi-publish from 1.12.2 to 1.12.3 (#177)
* Bump hynek/build-and-inspect-python-package from 2.10 to 2.11 (#178)
* Consistently use raw strings for line-matching regexes (#180)
* Ensure advertised pytest 7.4 compatibility (#182)
* Bump pypa/gh-action-pypi-publish from 1.12.3 to 1.12.4 (#185)
* Bump hynek/build-and-inspect-python-package from 2.11 to 2.12 (#186)
* Print output "dots" for successful unittest subtests (#164) (#190)
* Improve reporting in case of xfail (#194)

Comparing changes from 0.14.1 -> 0.14.2:
https://github.com/pytest-dev/pytest-subtests/compare/v0.14.1...v0.14.2

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agopython3-certifi: upgrade 2025.4.26 -> 2025.6.15
Tim Orling [Tue, 24 Jun 2025 23:13:55 +0000 (16:13 -0700)] 
python3-certifi: upgrade 2025.4.26 -> 2025.6.15

* Switch to PEP-517 backend with inherit python_setuptools_build_meta

Commit log highlights:
* Declare setuptools as the build backend in pyproject.toml (#350)
* remove code that's no longer required that 3.7 is our minimum (#351)

Comparing changes from 2025.4.26 -> 2025.6.15:
https://github.com/certifi/python-certifi/compare/2025.04.26...2025.06.15

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agopython3-cryptography{-vectors}: upgrade 45.0.3 -> 45.0.4
Tim Orling [Tue, 24 Jun 2025 23:13:54 +0000 (16:13 -0700)] 
python3-cryptography{-vectors}: upgrade 45.0.3 -> 45.0.4

https://cryptography.io/en/latest/changelog/#v45-0-4

45.0.4 - 2025-06-09
Fixed decrypting PKCS#8 files encrypted with SHA1-RC4. (This is not
considered secure, and is supported only for backwards compatibility.)

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agopython3-maturin: upgrade 1.8.7 -> 1.9.0
Tim Orling [Tue, 24 Jun 2025 23:13:53 +0000 (16:13 -0700)] 
python3-maturin: upgrade 1.8.7 -> 1.9.0

* Update crates

1.9.0
* Add full PEP 639 support for project.license and project.license-files
  in #2647.
* Add --compatiblity pypi to only build wheels with platform tags that can
  also be uploaded to PyPI. This blocks e.g. building for riscv64, which is
  supported by manylinux, but not by PyPI.

Comparing changes from v1.8.7 -> v1.9.0:
https://github.com/pyo3/maturin/compare/v1.8.7...v1.9.0

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agopython3-maturin: upgrade 1.8.6 -> 1.8.7
Tim Orling [Wed, 25 Jun 2025 04:24:39 +0000 (21:24 -0700)] 
python3-maturin: upgrade 1.8.6 -> 1.8.7

* Drop riscv32 patch as it has been fixed upstream
https://github.com/PyO3/maturin/commit/90b30a4e94e58e8d77d5d663cd2e0bbaab933f33
* Update crates

https://www.maturin.rs/changelog.html

1.8.7
Allow specifying compression method and level, in both build and develop modes, in #2625.
Fix Windows free-threaded builds on Python 3.14 in #2632

Comparing changes from v1.8.6 to v1.8.7:
https://github.com/PyO3/maturin/compare/v1.8.6...v1.8.7

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agooeqa/sstatetests: Improve/fix sstate creation tests
Richard Purdie [Wed, 25 Jun 2025 13:43:26 +0000 (14:43 +0100)] 
oeqa/sstatetests: Improve/fix sstate creation tests

There are multiple problems with the sstate creation tests. They currently both execute
twice, once to check one set of files, then another. We can do this together in one
test which makes the code easier to follow.

The common test function also has parameters which were always the same value, so
those can be simplified.

We can use the umask context manager from bb.utils to simplfy the umask code.

The badperms test was actually broken, it was detecting bad permissions, then
ignoring them. This patch fixes that regression too and allows the check to
operate (relying on a separate fix to sstate umask handling).

The result should be an easier to understand couple of test cases which should
also function correctly and be more reliable.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agooeqa/sstatetests: Fix NATIVELSBSTRING handling
Richard Purdie [Wed, 25 Jun 2025 13:39:30 +0000 (14:39 +0100)] 
oeqa/sstatetests: Fix NATIVELSBSTRING handling

The NATIVELSBSTRING variable changes value once a BuildStarted event occurs in a build
directory. This meant running some of the tests directly in a fresh build directory
would fail but they'd pass when run as a group of tests. This is clearly suboptimal.

Move the NATIVELSBSTRING handling to a location where the value is consistent
and a comment about the interesting behaviour of the variable so it hopefully doesn't
catch out others in future.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agosstate: apply proper umask when fetching from SSTATE_MIRROR
Rasmus Villemoes [Fri, 6 Jun 2025 09:39:05 +0000 (11:39 +0200)] 
sstate: apply proper umask when fetching from SSTATE_MIRROR

Currently, files and directories created under ${SSTATE_DIR} when
fetching from an sstate mirror are not created with group write,
unlike when the sstate artifacts are generated locally. That's
inconsistent, and problematic when the local sstate dir is shared
among multiple users.

Wrap the fetching in a bb.utils.umask() context manager, and for simplicity
move the mkdir of SSTATE_DIR inside that.

Signed-off-by: Rasmus Villemoes <ravi@prevas.dk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agocargo-c-native: Update 0.10.5 -> 0.10.13
Yash Shinde [Wed, 25 Jun 2025 10:20:14 +0000 (03:20 -0700)] 
cargo-c-native: Update 0.10.5 -> 0.10.13

cargo-c native version updated to stable version 0.10.13+cargo-0.88.0.
https://crates.io/crates/cargo-c

Drop the merged patch defining ioctl codes for riscv32
after the verion upgrade.

Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agorust: Upgrade 1.86.0 -> 1.87.0
Yash Shinde [Wed, 25 Jun 2025 10:20:13 +0000 (03:20 -0700)] 
rust: Upgrade 1.86.0 -> 1.87.0

Rust stable version updated to 1.87.0.
https://blog.rust-lang.org/2025/05/15/Rust-1.87.0/

* Update LLVM data-layout for arm64.
  LLVM requires matching data layouts and
  the aarch64 llvm data-layout was updated to to allow using
  32-bit signed/unsigned pointers when building 64-bit targets
  using 270, 271 and 272 address spaces.

  https://github.com/rust-lang/rust/commit/e9853961452b56997cc127b51308879b9cd09482
  https://github.com/llvm/llvm-project/commit/c9f27275c1330a325661bdf14fb3bc444a5e3648

* Rebase existing patches with v1.87.0.

* Two tests from the `ui` and `codegen` modules now fail only on riscv64.
  Enable them on arm32/64 and x86-32/64 targets, while restricting
  them on riscv64 via `only-<target_arch>` tags.

  Test Results Summary:

  +-----------+--------+---------+
  | Machine   | Passed | Ignored |
  +-----------+--------+---------+
  | arm-32    | 28,320 | 901     |
  | arm-64    | 28,400 | 849     |
  | x86-32    | 28,285 | 885     |
  | x86-64    | 28,518 | 676     |
  | riscv-64  | 27,845 | 868     |
  +-----------+--------+---------+

* Backport triagebot.patch to skip tidy linkcheck when triagebot.toml
  is not present. Distribution tarballs won't include triagebot.toml,
  which causes tidy checks to fail.
  This backport ensures tidy checks can still run successfully
  even when the file is missing.

  https://github.com/rust-lang/rust/pull/142666/commits

* During rust installation, some binaries were installed from
  'stage2-tools' built path to '${D}${bindir}'. However, from
  v1.87 the stage2-tools are no longer built by default.
  Update logic to install from `stage1-tools` instead.

Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agorust: Drop obsolete rust-lld and extended tools dependencies
Yash Shinde [Wed, 25 Jun 2025 10:20:12 +0000 (03:20 -0700)] 
rust: Drop obsolete rust-lld and extended tools dependencies

Some dependencies introduced during the v1.86 upgrade
were needed only for rust-lld and certain LLVM extended tools,
not for the Rust compiler itself.

Since rust-lld and the extended tools are now disabled, these
dependencies have become obsolete. Additionally, related tasks
such as packaging zsh files and removing cargo binaries are no longer relevant.
They can be re-enabled later if needed.

Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agooeqa/runtime/stap: fix script logic problem
Victor Kamensky [Tue, 17 Jun 2025 05:25:40 +0000 (22:25 -0700)] 
oeqa/runtime/stap: fix script logic problem

Looks as a typo introduced by "6cf4d23a2d26c2767edd93f2eb317ff759b5a992
(oeqa/runtime/stap: improve systemtap test)" - when original command was
split into two parts 'self.target.run' was missed for the second part.

Note this and previos commit issues were masked because mentioned
commit has try/except around tests, so failures that normally are
reported when test assertEqual throw an exception never reached oeqa
infra.

Effectively, this test was broken for the last 3 years. I will leave
blanket try/except around test for now, so this test will pass all
the time as long as dmesg is working. But at least with the fixes
one can inspect log.do_testimage output and check that all steps
are successful or not.

Signed-off-by: Victor Kamensky <victor.kamensky7@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agooeqa/runtime/stap: fix module name: stap-hello -> stap_hello
Victor Kamensky [Tue, 17 Jun 2025 05:25:39 +0000 (22:25 -0700)] 
oeqa/runtime/stap: fix module name: stap-hello -> stap_hello

Systemtap refuses modules names like stap-hello, it says:
> ERROR: Safety pattern mismatch for -m parameter ('stap-hello' vs. '^[a-z0-9_]+$') rc=1

'stap-hello' was introduced by:
6cf4d23a2d26c2767edd93f2eb317ff759b5a992 (oeqa/runtime/stap: improve systemtap test)
and '-m parameter' regexp check was in SystemTap from 2010,
not sure how this test case ever passed after mentioned change.

Signed-off-by: Victor Kamensky <victor.kamensky7@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agosystemtap: upgrade 5.2 -> 5.3
Victor Kamensky [Tue, 17 Jun 2025 05:25:38 +0000 (22:25 -0700)] 
systemtap: upgrade 5.2 -> 5.3

* fixed patch fuzz issue

[RP: Set tag in SRC_URI to match version]
Signed-off-by: Victor Kamensky <victor.kamensky7@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agodnf: upgrade 4.22.0 -> 4.23.0
Moritz Haase [Tue, 24 Jun 2025 09:32:47 +0000 (11:32 +0200)] 
dnf: upgrade 4.22.0 -> 4.23.0

New version includes support to build against CMake 4+, see [0].

Release notes are available at [1].

Python's 'ctypes' module is a new runtime dependency, added via [2].

[0]: https://github.com/rpm-software-management/dnf/pull/2217
[1]: https://github.com/rpm-software-management/dnf/releases/tag/4.23.0
[2]: https://github.com/rpm-software-management/dnf/commit/fa47a256ae7add2ce1c99ae8bedce7216001f396

Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
CC: richard.purdie@linuxfoundation.org
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agojson-c: Don't build unneeded apps to unblock builds with CMake 4+
Moritz Haase [Mon, 23 Jun 2025 09:56:01 +0000 (11:56 +0200)] 
json-c: Don't build unneeded apps to unblock builds with CMake 4+

Disable build of the apps, as we don't seem to package them (upstream says they
aren't ready, see [0]). They are the only part of the code that doesn't build
yet with CMake 4+. One alternative would be to apply [1], but the PR hasn't been
merged yet by upstream, so we keep it simple.

[0]: https://github.com/json-c/json-c/blob/7cee5237dc6c0831e3f9dc490394eaea44636861/apps/CMakeLists.txt#L119-L121
[1]: https://github.com/json-c/json-c/pull/888

Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agowic-image-minimal, oeqa/selftest/wic: run 'wic ls/cp/rm' in bitbake task
Hongxu Jia [Mon, 23 Jun 2025 08:03:06 +0000 (16:03 +0800)] 
wic-image-minimal, oeqa/selftest/wic: run 'wic ls/cp/rm' in bitbake task

Due to commit [2255f28b57 wic: add WIC_SECTOR_SIZE variable][1] applied,
call `wic ls|cp|rm|write' in bitbake task will hung, but we have no scenario
case to cover it

After commit [scripts/wic: fix calling wic ls|cp|rm|write hung in bitbake task] applied,
this commit run `wic cp|ls|rm' in case wic.Wic2.test_wic_image_type and wic.Wic2.test_qemu,
at post function of with do_image_wic in image wic-image-minimal, and
check if file is there

$ echo 'SANITY_TESTED_DISTROS = ""' >> conf/local.conf
$ oe-selftest -r wic.Wic2.test_wic_image_type wic.Wic2.test_qemu
...
2025-06-23 15:46:22,157 - oe-selftest - INFO - Adding: "include selftest.inc" in /buildarea5/hjia/poky/build-st/conf/local.conf
2025-06-23 15:46:22,157 - oe-selftest - INFO - Adding: "include bblayers.inc" in bblayers.conf
2025-06-23 15:46:22,157 - oe-selftest - INFO - test_qemu (wic.Wic2)
The variable 'TEST_RUNQEMUPARAMS' is not defined
2025-06-23 15:56:46,319 - oe-selftest - INFO -  ... ok
2025-06-23 15:56:46,324 - oe-selftest - INFO - test_wic_image_type (wic.Wic2)
2025-06-23 15:57:17,780 - oe-selftest - INFO -  ... ok
2025-06-23 15:57:17,781 - oe-selftest - INFO - ----------------------------------------------------------------------
2025-06-23 15:57:17,781 - oe-selftest - INFO - Ran 2 tests in 655.792s
2025-06-23 15:57:17,781 - oe-selftest - INFO - OK
2025-06-23 15:57:25,743 - oe-selftest - INFO - RESULTS:
2025-06-23 15:57:25,743 - oe-selftest - INFO - RESULTS - wic.Wic2.test_qemu: PASSED (624.16s)
2025-06-23 15:57:25,744 - oe-selftest - INFO - RESULTS - wic.Wic2.test_wic_image_type: PASSED (31.46s)
2025-06-23 15:57:25,746 - oe-selftest - INFO - SUMMARY:
2025-06-23 15:57:25,746 - oe-selftest - INFO - oe-selftest () - Ran 2 tests in 655.793s
2025-06-23 15:57:25,746 - oe-selftest - INFO - oe-selftest - OK - All required tests passed (successes=2, skipped=0, failures=0, errors=0)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agoscripts/wic: fix calling wic ls|cp|rm|write hung in bitbake task
Hongxu Jia [Mon, 16 Jun 2025 08:12:45 +0000 (16:12 +0800)] 
scripts/wic: fix calling wic ls|cp|rm|write hung in bitbake task

While calling wic ls/cp/rm/write in bitbake task along with do_image_wic,
it hung without return.

Due to commit [2255f28b57 wic: add WIC_SECTOR_SIZE variable][1] applied,
It calls get_bitbake_var in `wic ls|cp|rm|write' to define sector size.
By default, get_bitbake_var starts a `bitbake -e' to get variables which
triggers nested bitbake in this situation

Refer `wic create', adds option --vars and --image-name to support to
read bitbake variables from <image>.env files

NOTE: This commit does not add -e for `wic write' to avoid confliction
with existed option -e/--expand

[1] https://github.com/openembedded/openembedded-core/commit/2255f28b579bc5db4138bcacbb829661ae0ee721

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agolibglvnd: drop S assignment
Dmitry Baryshkov [Tue, 24 Jun 2025 21:44:13 +0000 (00:44 +0300)] 
libglvnd: drop S assignment

libglvnd recipe was sent before the OE-Core changes reworking S /
UNPACKDIR rework. Drop S assignment which is now being rejected by OE /
bitbake.

Fixes: 621e9be9663e ("libglvnd: migrate from meta-oe")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agobuildhistory: Drop BUILDHISTORY_RESET due to reliability issues
Richard Purdie [Wed, 15 Jan 2025 15:31:49 +0000 (15:31 +0000)] 
buildhistory: Drop BUILDHISTORY_RESET due to reliability issues

The implementation of BUILDHISTORY_RESET is problematic, particlarly given that
people are trying to create an API with it alongside BUILDHISTORY_PRESERVE
which simply doesn't exist and can't work reliably. Worse, the code paths with
this bolted on implementation are convoluted and near impossible to follow.

BUILDHISTORY_PRESERVE is effectively internal API, used to stop buildhistory
removing some files which are needed for data, or are created at different
parts of the build. Add a comment to explain what it is doing and why these files
are listed.

Commit 9f68a45aa238ae5fcdfaca71ba0e7015e9cb720e tried to "fix" preserve support
with the reset functionality but it didn't fully work and has just exposed futher
issues. There is a further fix however I can brely follow the code and in reviewing
it, I've concluded we shouldn't be doing this at all.

Due to the way BUILDHISTORY_RESET was implemented, horrible races were introduced
making it unclear what happens to the data if builds fail for example, or how sstate
interacts with the build since things get reset but stamps do not and tasks may not
rerun. It also interacts badly with any additions to the preserve list, due to
misunderstandings on what that variable does.

Having stared long and hard at the code, and really struggled to understand it, I',
of the view that "reset" for CI purposes should be done by the CI itself. The CI can
choose to remove some files or all files and decide how to handle failures. It has
to handle the buildhistory directory anyway.

Therefore drop BUILDHISTORY_RESET support, allowing the "old" codepaths to be dropped.
BUILDHISTORY_PRESERVE is better documented to hint that it is internal API and to
show what it is really for.

If we really do want some functionality list this, it needs to be implemented in a
way you can follow the code, and have tests.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agoimage_types_wic: Fix file-checksums for missing files in search path
Richard Purdie [Mon, 23 Jun 2025 14:23:51 +0000 (15:23 +0100)] 
image_types_wic: Fix file-checksums for missing files in search path

When we tell bitbake about file-checksums, we need to tell it both the files
we look at that exist, but also the ones we looked for but aren't present.

This means that if files appear earlier in the search path, bitbake can then
do the correct things like updating the taskhash and re-running the recipe/task.

In this case, wic was only signalling file presence. This patch adds in the
files it looked at but didn't find too.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agodefault-providers: handle GLVND-related providers
Dmitry Baryshkov [Fri, 20 Jun 2025 19:14:57 +0000 (22:14 +0300)] 
default-providers: handle GLVND-related providers

If GLVND is enabled, then libglvnd is providing all OpenGL / ES
libraries. Tune default-providers.inc to select a correct package in
this case.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agomesa: enable glvnd if it is enabled in DISTRO_FEATURES
Dmitry Baryshkov [Fri, 20 Jun 2025 19:14:56 +0000 (22:14 +0300)] 
mesa: enable glvnd if it is enabled in DISTRO_FEATURES

Let the distro to be a central authority regarding GLVND feature.
Make mesa.inc enable glvnd PACKAGECONFIG if it is enabled in
DISTRO_FEATURES.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agolibglvnd: migrate from meta-oe
Dmitry Baryshkov [Fri, 20 Jun 2025 19:14:55 +0000 (22:14 +0300)] 
libglvnd: migrate from meta-oe

libglvnd is a vendor-neutral approach to handling OpenGL / OpenGL ES /
EGL / GLX libraries. It has been proposed and initially implemented by
NVIDIA in order to simplify coinstallation of GL drivers provided by
different vendors. Major Linux distributions (Debian, Ubuntu, Fedora,
etc.) have already switched to libglvnd.

Having libglvnd in OE-Core simplifies integration of this ABI into
distro and BSP layers (e.g. it will help meta-tegra, which currently
provides its own version of the recipe).

Import recipe for libglvnd from the meta-oe layer (changes: fix virtual
package names, add add the SUMMARY data, drop git@ from SRC_URI, require
glvnd DISTRO_FEATURE).

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agoqemux86-64: drop duplicates with default-providers.inc
Dmitry Baryshkov [Fri, 20 Jun 2025 19:14:54 +0000 (22:14 +0300)] 
qemux86-64: drop duplicates with default-providers.inc

default-providers.inc already includes PREFERRED_PROVIDER values for
xserver and GL libraries. Drop the same values being set in the machine
config.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agoqemux86: drop duplicates with default-providers.inc
Dmitry Baryshkov [Fri, 20 Jun 2025 19:14:53 +0000 (22:14 +0300)] 
qemux86: drop duplicates with default-providers.inc

default-providers.inc already includes PREFERRED_PROVIDER values for
xserver and GL libraries. Drop the same values being set in the machine
config.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agoqemu.inc: drop duplicates with default-providers.inc
Dmitry Baryshkov [Fri, 20 Jun 2025 19:14:52 +0000 (22:14 +0300)] 
qemu.inc: drop duplicates with default-providers.inc

default-providers.inc already includes PREFERRED_PROVIDER values for
xserver and GL libraries. Drop the same values being set in the machine
config.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agodefault-providers: fix GLVND providers to be selected at runtime
Dmitry Baryshkov [Fri, 20 Jun 2025 19:14:51 +0000 (22:14 +0300)] 
default-providers: fix GLVND providers to be selected at runtime

The virtual-{libegl,libglx}-icd names are RPROVIDES, not PROVIDES,
because they are a runtime dependency of libglvnd. Make
default-providers follow that and specify PREFERRED_RPROVIDER instead of
PREFERRED_PROVIDER for those names.

Fixes: 9d3b4c9bc403 ("mesa: sort out PROVIDES for the glvnd case")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 weeks agomesa: fix RPROVIDEd package names
Dmitry Baryshkov [Fri, 20 Jun 2025 19:14:50 +0000 (22:14 +0300)] 
mesa: fix RPROVIDEd package names

The BCP for virtual runtime package names is virtual-foo. Make mesa
follow the established convention and change the names of the provied
packages to virtual-foo-icd.

Fixes: 9d3b4c9bc403 ("mesa: sort out PROVIDES for the glvnd case")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agou-boot: Allow for customizing installed/deployed file names
Ryan Eatmon [Mon, 23 Jun 2025 21:05:47 +0000 (16:05 -0500)] 
u-boot: Allow for customizing installed/deployed file names

When assembling all of the various filenames that are installed/deployed
from u-boot, we have been including the PV and PR in the filenames.  This
change introduces a single variable to replace these two in the
filenames.

This change should not be disruptive since the default value for the new
UBOOT_VERSION variable is "${PV}-${PR}".

In one case (UBOOT_EXTLINUX_SYMLINK [1]), PR was used without PV, this
patch assumes this was a mistake and corrects it as PR would not be of
much use alone.

[1] https://git.openembedded.org/openembedded-core/commit/?h=master-next&id=33df3a65f3e8e136811da715d0cc247ce66ae0ea

Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agorpm: Update 0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch
Robert Yang [Fri, 20 Jun 2025 06:09:32 +0000 (23:09 -0700)] 
rpm: Update 0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch

The patch merged by upstream is different, so backport the one from upstream.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agooeqa/core/case: add file exists assertion
Ross Burton [Fri, 20 Jun 2025 15:14:21 +0000 (16:14 +0100)] 
oeqa/core/case: add file exists assertion

Add assertFileExists() to simply tests that want to check that a file
exists.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agofiles/license-hashes.csv: add more hashes
Ross Burton [Fri, 20 Jun 2025 15:14:20 +0000 (16:14 +0100)] 
files/license-hashes.csv: add more hashes

Add a slew of license hashes harvested by building some Go recipes in
meta-oe.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agolib/oe/go: document map_arch, and raise an error on unknown architecture
Ross Burton [Fri, 20 Jun 2025 15:14:19 +0000 (16:14 +0100)] 
lib/oe/go: document map_arch, and raise an error on unknown architecture

Add a comment explaining what this function does and where the values
come from.

If the architecture isn't know, instead of returning an empty string
which could fail mysteriously, raise a KeyError so it fails quickly.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agoselftest/buildhistory: Move test cases to common location
Richard Purdie [Fri, 20 Jun 2025 14:06:28 +0000 (15:06 +0100)] 
selftest/buildhistory: Move test cases to common location

Having the test cases split in different places makes no sense. Move them
all to the place you'd expect to find them. Drop the base class as it
is no longer needed.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agolibarchive: upgrade 3.7.9 -> 3.8.1
Richard Purdie [Wed, 4 Jun 2025 08:45:00 +0000 (16:45 +0800)] 
libarchive: upgrade 3.7.9 -> 3.8.1

Includes bugfixes for issues introduced in 3.8.0

License-Update: Public Domain file changed from libarchive/archive_getdate.c
    to libarchive/archive_parse_date.c
    https://github.com/libarchive/libarchive/commit/c26f0377457db392bd57a640e8fe25506120f810

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agobarebox: upgrade 2025.04.0 -> 2025.06.0
Enrico Jörns [Thu, 19 Jun 2025 11:14:51 +0000 (13:14 +0200)] 
barebox: upgrade 2025.04.0 -> 2025.06.0

Changes in 2025.06.0
--------------------

* Fixed FIT image decompression regression introduced in 2025.05.0
* Fixed filesystem unmount issues caused by incorrect reference counting
* Fixed unmount failures after using findmnt
* Added eMMC HS200 support for i.MX with generic SDHCI/MCI rework

Changelog: https://lore.barebox.org/barebox/aEwKEf9V0V9tbD5p@pengutronix.de/

Migration Guide:
https://barebox.org/doc/latest/migration-guides/migration-2025.06.0.html

Changes in 2025.05.0
--------------------

* RPMB support added for eMMC, enabling AVB persistent value storage
* New commands: 'tree', 'truncate', 'varinfo' (variable inspection)
* Added board support: STM32MP1-based Linux Automation TAC, FairyTux 2,
  Protonic MECT1S
* Unified Beaglebone build now produces MLO first‐stage image
* TLSF allocator becomes the default, replacing dlmalloc
* Various filesystem, CI, and driver cleanups and improvements

Changelog: https://lore.barebox.org/barebox/aC2N-bXXRByPYqiM@pengutronix.de/

Migration Guide:
https://barebox.org/doc/latest/migration-guides/migration-2025.05.0.html

Signed-off-by: Enrico Jörns <ejo@pengutronix.de>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agoglibc: stable 2.41 branch updates
Peter Marko [Wed, 18 Jun 2025 17:58:49 +0000 (19:58 +0200)] 
glibc: stable 2.41 branch updates

$ git log --oneline 5b4c4617016d28569106549dff6f9fec73eed5ce..0c76c951620f9e12df2a89b2c684878b55bb6795
0c76c95162 ppc64le: Revert "powerpc: Optimized strcmp for power10" (CVE-2025-5702)
b48d7ab036 ppc64le: Revert "powerpc : Add optimized memchr for POWER10" (Bug 33059)
55cdcadf73 ppc64le: Revert "powerpc: Fix performance issues of strcmp power10" (CVE-2025-5702)
84bdbf8a6f ppc64le: Revert "powerpc: Optimized strncmp for power10" (CVE-2025-5745)
d952c6efaa sparc: Fix argument passing to __libc_start_main (BZ 32981)
515d4166f4 elf: Fix subprocess status handling for tst-dlopen-sgid (bug 32987)
899dd3ab2f x86_64: Fix typo in ifunc-impl-list.c.
624285af3b elf: Test case for bug 32976 (CVE-2025-4802)
2ca34d7627 support: Use const char * argument in support_capture_subprogram_self_sgid
dab44a3b2b elf: Keep using minimal malloc after early DTV resize (bug 32412)
5cf17ebc65 hurd: Fix tst-stack2 test build on Hurd

test results:
            Before After  Diff
FAIL           140   142    +2
PASS          5846  5846     0
UNSUPPORTED    243   243     0
XFAIL           16    16     0
XPASS            4     4     0

failed test changes:
-elf/tst-audit21
+elf/tst-audit-tlsdesc-dlopen2
+elf/tst-dlopen-sgid
-malloc/tst-free-errno-malloc-hugetlb1
+malloc/tst-free-errno
+malloc/tst-malloc-tcache-leak
-nptl/tst-mutex10
+nptl/tst-mutexpi8-static

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agolayer.conf: Update to whinlatter release series
Richard Purdie [Fri, 20 Jun 2025 12:04:51 +0000 (13:04 +0100)] 
layer.conf: Update to whinlatter release series

Since there are currently multiple breaking changes, update to a new
release series for the next release so layers can show compatibility
correctly.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agometa: remove consecutive blank lines
Alexander Kanavin [Mon, 16 Jun 2025 09:50:00 +0000 (11:50 +0200)] 
meta: remove consecutive blank lines

Some of them were introduced by mass-removal of S = WORKDIR/git assignments;
rather than try to fix up (or redo) just these, I've run this sed command over
the whole tree:

sed -i -z -E 's/([ \t\f\v\r]*\n){3,}/\n\n/g' `find . -name *.bb -o -name *.inc`

The rationale is that more than one empty line is wasting vertical screen space, and
does nothing for readability.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agobase.bbclass: drop compatibility moving of sources into workdir
Alexander Kanavin [Mon, 16 Jun 2025 09:49:59 +0000 (11:49 +0200)] 
base.bbclass: drop compatibility moving of sources into workdir

Potentially there could be a grace period for fixing recipes (with warnings, etc),
on the other hand, changes to git unpacking destination would already
break various layers, so we might as well make this a hard qa error and drop
the magic at the same time.

I commit to sending fixes for layers included in autobuilder testing
(meta-oe/arm/intel/virt/agl/aws/mingw/etc).

SOURCE_BASEDIR is at the same time adjusted to be calculated relative
to UNPACKDIR (previously it only worked if S was set to
WORKDIR/something/otherthing, and that is no longer working). It is also
no longer removed from the filesystem, as content of unpackdir is managed elsewhere.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agoinsane/do_qa_unpack: add checks that ensure S is set correctly
Alexander Kanavin [Mon, 16 Jun 2025 09:49:58 +0000 (11:49 +0200)] 
insane/do_qa_unpack: add checks that ensure S is set correctly

The checks are fatal, as this avoids rather more cryptic errors further
down the build. Example:

ERROR: gnu-config-native-20240823+git-r0 do_unpack: Recipes that set S = "${WORKDIR}/git" or S = "${UNPACKDIR}/git" should remove that assignment, as S set by bitbake.conf in oe-core now works.
ERROR: perlcross-native-1.6.2-r0 do_unpack: S should be set relative to UNPACKDIR, e.g. replace WORKDIR with UNPACKDIR in "S = ${WORKDIR}/perl-cross-${PV}"

Dropping the S = ${WORKDIR}/git assignment (addressing the first error) can be done
with a single sed command when there is a lot of recipes:

sed -i "/^S = \"\${WORKDIR}\/git\"/d" `find . -name *.bb -o -name *.inc -o -name *.bbclass`

Replacing WORKDIR with UNPACKDIR can be done similarly, but should be done after
the removals:

sed -i "s/^S = \"\${WORKDIR}\//S = \"\${UNPACKDIR}\//g" `find . -name *.bb -o -name *.inc -o -name *.bbclass`

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agorecipetool/devtool: calculate source paths relative to UNPACKDIR
Alexander Kanavin [Mon, 16 Jun 2025 09:49:57 +0000 (11:49 +0200)] 
recipetool/devtool: calculate source paths relative to UNPACKDIR

Now that recipes default to S in UNPACKDIR, recipetool and devtool should
do the same.

There was some discussion about changing devtool to simply setting
UNPACKDIR via bbappend to a workspace and running unpack task directly;
currently it has a bunch of convoluted path calculations, substitutions,
moving source trees around and and special casing (devtool-source.bbclass
in particular is an unpleasant hack).

This should definitely be done; but right now we can simply tweak existing
code which at least doesn't make it worse.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agometa: set S from UNPACKDIR in recipes that use only local files
Alexander Kanavin [Mon, 16 Jun 2025 09:49:56 +0000 (11:49 +0200)] 
meta: set S from UNPACKDIR in recipes that use only local files

There is no need to have two assignments; also setting S from
UNPACKDIR (and not vice versa) is more logical as unpack
task comes first, and tasks that come after unpack use S to access
unpack results.

Also adjust reference test data in selftest/recipeutils to reflect changes in test recipes.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agometa: set S to be in UNPACKDIR in recipes that explicitly set S
Alexander Kanavin [Mon, 16 Jun 2025 09:49:55 +0000 (11:49 +0200)] 
meta: set S to be in UNPACKDIR in recipes that explicitly set S

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agogcc/clang: set S to be in UNPACKDIR
Alexander Kanavin [Mon, 16 Jun 2025 09:49:54 +0000 (11:49 +0200)] 
gcc/clang: set S to be in UNPACKDIR

This and some further commits allows removing the 'backwards
compatibility magic' in do_unpack that moves unpacked sources
to where S is set to.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agobitbake.conf: set S to be in UNPACKDIR rather than WORKDIR
Alexander Kanavin [Mon, 16 Jun 2025 09:49:53 +0000 (11:49 +0200)] 
bitbake.conf: set S to be in UNPACKDIR rather than WORKDIR

This transitions most of the recipes to have their sources
in UNPACKDIR, which over time will allow more simple and logical
source code handling in various pieces of the Yocto project.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agobitbake.conf: set UNPACKDIR to just 'sources' and not 'sources-unpack'
Alexander Kanavin [Mon, 16 Jun 2025 09:49:52 +0000 (11:49 +0200)] 
bitbake.conf: set UNPACKDIR to just 'sources' and not 'sources-unpack'

This is shorter and doesn't include the unnecessary task name, just the
result of it: source trees and files.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agometa: remove S in recipes that fetch from git via setting BB_GIT_DEFAULT_DESTSUFFIX
Alexander Kanavin [Mon, 16 Jun 2025 09:49:51 +0000 (11:49 +0200)] 
meta: remove S in recipes that fetch from git via setting BB_GIT_DEFAULT_DESTSUFFIX

Removing all the S = ${WORKDIR}/git assignments works because BB_GIT_DEFAULT_DESTSUFFIX
is set to match S from bitbake.conf (which itself is set to match typical tarball
releases).

A few recipes are setting S to a sub-directory of the git tree and need
to be adjusted accordingly.

bzip2 recipe is fetching a tarball and separately cloning tests;
adjust the recipe to put the latter into 'bzip2-tests', instead of 'git'.

devupstream.bbclass no longer needs to rewrite S, and is adjusted accordingly.

Adjust scripts/lib/recipetool/append.py to not hardcode 'git' as unpack
destination.

Adjust kernel-yocto.bbclass to use the git unpack variable instead
of hardcoding 'git' (there's also removal of repetition of
string constants and a correction of workdir/unpackdir mismatch in
one of the if-else branches).

Ensure build-appliance-image recipe does not use 'git' as checkout directory for
poky repo, but rather explicitly name it 'poky'.

Ensure reproducible.py code that looks for git repositories does not
hardcode 'git' but uses the destination set by BB_GIT_DEFAULT_DESTSUFFIX.

Ensure recipetool does not write out unneeded S settings into newly
created recipes that fetch from git.

Adjust selftest to not hardcode 'git' as unpack directory.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agolib/bbconfigbuild/configfragments: add support for listing and enabling built-in...
Alexander Kanavin [Wed, 18 Jun 2025 09:21:02 +0000 (11:21 +0200)] 
lib/bbconfigbuild/configfragments: add support for listing and enabling built-in fragments

Sample output:

$ bitbake-config-build enable-fragment machine/qemuarm
Fragment machine/qemuarm added to /srv/storage/alex/yocto/build-64-alt/conf/auto.conf.

$ bitbake-config-build list-fragments
Available built-in fragments:
machine/... Sets MACHINE = ...
distro/... Sets DISTRO = ...

Enabled built-in fragments:
machine/qemuarm Sets MACHINE = "qemuarm"

... (standard on-disk fragments output follows)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agobitbake.conf: enable built-in fragments for MACHINE and DISTRO
Alexander Kanavin [Wed, 18 Jun 2025 09:21:01 +0000 (11:21 +0200)] 
bitbake.conf: enable built-in fragments for MACHINE and DISTRO

Please see the patch for bitbake for rationale. With this
setting in place, it's possible to set

OE_FRAGMENTS += "distro/poky machine/qemuarm"

and bitbake will interpret that as

DISTRO = "poky"
MACHINE = "qemuarm"

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agooeqa/utils/command: fast-path get_bb_var()
Ross Burton [Thu, 19 Jun 2025 13:20:42 +0000 (14:20 +0100)] 
oeqa/utils/command: fast-path get_bb_var()

get_bb_var() currently end up calling 'bitbake -e' and parsing the whole
output. However if postconfig isn't set then we can speed this up by
just calling bitbake-getvar.

The complication with failing bitbake-getvar calls is because we need to
be careful to return None instead of the empty string when the variable
doesn't exist.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agorust-target-config.bbclass: Update for new riscv TUNE_FEATURES
Mark Hatle [Tue, 17 Jun 2025 23:39:44 +0000 (18:39 -0500)] 
rust-target-config.bbclass: Update for new riscv TUNE_FEATURES

Add the new TUNE_FEATURES to the 'features:' list, based on matching output
with:

   rustc --target=riscv32i-unknown-none-elf -Ctarget-feature=help

Use the TUNE_RISCV_ABI instead of guessing for the ABI.

Pass the arch "as-is", since it should now be riscv32 or riscv64.

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agoriscv tunes: ISA Implementation of RISC-V tune features
Mark Hatle [Tue, 17 Jun 2025 23:39:38 +0000 (18:39 -0500)] 
riscv tunes: ISA Implementation of RISC-V tune features

This implements the following base ISAs:

* rv32i, rv64i
* rv32e, rv64i

The following ABIs:
* ilp32, ilp32e, ilp32f, ilp32d
* lp64, 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)

Previously defined feature 'big-endian' has been removed as it was not used.

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agogo: set status of CVE-2024-3566
Peter Marko [Thu, 19 Jun 2025 16:52:10 +0000 (18:52 +0200)] 
go: set status of CVE-2024-3566

NVD ([1]) tracks this as:
cpe:2.3:a:golang:go:*:*:*:*:*:*:*:*
Running on/with
  cpe:2.3:o:microsoft:windows:-:*:*:*:*:*:*:*

Yocto cve-check ignores the "Running on/with", so it needs to be ignored
explicitly.

[1] https://nvd.nist.gov/vuln/detail/CVE-2024-3566

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agopython3-pytest: upgrade 8.3.5 -> 8.4.1
Trevor Gamblin [Wed, 18 Jun 2025 13:59:33 +0000 (09:59 -0400)] 
python3-pytest: upgrade 8.3.5 -> 8.4.1

Changelog for 8.4.0: https://docs.pytest.org/en/stable/changelog.html#pytest-8-4-0-2025-06-02

Add colorama (moved to oe-core from meta-python) and pygments to
RDEPENDS.

Note that 8.4.0 accidentally removed pytest.PytestReturnNotNoneWarning,
which seems to have broken some tests (e.g. python3-pytz). See:
https://github.com/pytest-dev/pytest/releases/tag/8.4.1

Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agomaintainers.inc: sort Python recipes alphabetically
Trevor Gamblin [Tue, 17 Jun 2025 15:53:39 +0000 (11:53 -0400)] 
maintainers.inc: sort Python recipes alphabetically

There are a small number of these that are out of place, so re-sort the
entire list to clean it up.

Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agopython3: upgrade 3.13.4 -> 3.13.5
Trevor Gamblin [Tue, 17 Jun 2025 15:53:37 +0000 (11:53 -0400)] 
python3: upgrade 3.13.4 -> 3.13.5

Changelog: https://docs.python.org/3/whatsnew/changelog.html#python-3-13-5-final

ptests look OK:

|443 tests OK.
|
|Total duration: 2 min 43 sec
|Total tests: run=44,050 skipped=2,309
|Total test files: run=471/480 skipped=28 resource_denied=9
|Result: SUCCESS
|DURATION: 164
|END: /usr/lib/python3/ptest
|2025-06-17T14:05
|STOP: ptest-runner
|TOTAL: 1 FAIL: 0

Reproducibility OK:

|2025-06-17 10:34:28,071 - oe-selftest - INFO -  ... ok
|2025-06-17 10:35:04,539 - oe-selftest - INFO - ----------------------------------------------------------------------
|2025-06-17 10:35:04,539 - oe-selftest - INFO - Ran 1 test in 1429.952s
|2025-06-17 10:35:04,539 - oe-selftest - INFO - OK
|2025-06-17 10:35:08,924 - oe-selftest - INFO - RESULTS:
|2025-06-17 10:35:08,924 - oe-selftest - INFO - RESULTS - reproducible.ReproducibleTests.test_reproducible_builds: PASSED (1393.34s)
|2025-06-17 10:35:08,925 - oe-selftest - INFO - SUMMARY:
|2025-06-17 10:35:08,925 - oe-selftest - INFO - oe-selftest () - Ran 1 test in 1429.952s
|2025-06-17 10:35:08,925 - oe-selftest - INFO - oe-selftest - OK - All required tests passed (successes=1, skipped=0, failures=0, errors=0)

Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agopython3-setuptools-scm: upgrade 8.2.1 -> 8.3.1
Trevor Gamblin [Tue, 17 Jun 2025 15:53:36 +0000 (11:53 -0400)] 
python3-setuptools-scm: upgrade 8.2.1 -> 8.3.1

Changelog: https://github.com/pypa/setuptools-scm/compare/v8.3.0...v8.3.1

Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 weeks agopython3-colorama: add recipe
Trevor Gamblin [Tue, 17 Jun 2025 15:53:35 +0000 (11:53 -0400)] 
python3-colorama: add recipe

Add existing recipe from meta-python, since pytest lists it as a
dependency. This also puts it in maintainers.inc with myself as
maintainer.

[RP: Switch to use hatching directly]
Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>