This is a backport, helps compiling with upcoming clang-21
(From OE-Core rev: 5b25a4fa6ab3a149e1dcf18826b78617f8c1acf7)
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>
spirv is now a separate recipe.
(From OE-Core rev: 3d0609be2240d728de27c27cbc2f17cfc264cca0)
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>
After upgrading bash to 5.3 to contain commit [1], if SIGINT was trapped in
asynchronous subshell, bash called set_signal_async_ignored to make sure
processes that are created by this asynchronous subshell to ignore SIGINT.
And it caused test case `kill/decode' failed, the signal INT was existed in
both of Blocked and Ignored
root@qemux86-64:~# cd /usr/lib/util-linux/ptest/
root@qemux86-64:/usr/lib/util-linux/ptest# ./run-ptest
...
diff-{{{
|--- /usr/lib/util-linux/ptest/tests/expected/kill/decode 2011-04-05 23:00:00.000000000 +0000
|+++ /usr/lib/util-linux/ptest/tests/output/kill/decode 2025-07-28 12:09:46.279000000 +0000
@@ -16,5 +16,5 @@
Pending (thread): INT ILL
Pending (process): USR1
Blocked: INT ILL ABRT FPE USR1 SEGV TERM
-Ignored: HUP QUIT TRAP PIPE ALRM
+Ignored: HUP INT QUIT TRAP PIPE ALRM
Caught: ILL USR1
}}}-diff
...
Explicitly reset SIGINT to default action after trapping, then the
test case `kill/decode' works on both of old (<5.3) and new (>=5.3) bash
[1] https://cgit.git.savannah.gnu.org/cgit/bash.git/commit/?h=devel&id=a5d2617c7a7e602ace1f4149987cdfd075c4e762
(From OE-Core rev: 175f5a5bba6204cbcfbdeabb6c6b98f0f7453558)
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>
It's not currently possible to set the build tree to be somewhere we
control, but we know it will always be in the build directory alongside
the pyproject.toml so we can [cleandirs] that.
(From OE-Core rev: 383862cfe4c5acf04124080827c8bc6d00b2e86d)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It's not currently possible to set the build tree to be somewhere we
control, but we know it will always be in the build directory alongside
the setup.py so we can [cleandirs] that.
(From OE-Core rev: f3854f4f60801e3b6788bee3a0a1850fc498d536)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Explicitly call the build command, as by doing this we get to pass -j.
In packages without any C extensions this is mostly a no-op as
bdist_wheel will call it anyway. However, this does make a big
difference to build time for packages with non-trivial C extensions:
python3-cython:do_compile 204.8s -> 70.9s
python3-lxml:do_compile 157.5s -> 92.4s
(From OE-Core rev: 96d13feaa881ae4d275d16f7efca92dbd075241b)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This function was untidy and has pointless logging, rewrite.
(From OE-Core rev: d508ee5c7bb03da5ae37bd098fa4ef8a5128e398)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Copy the pyproject.toml check from setuptools3.bbclass so that the legacy
class will also warn if there's a modern build framework available.
(From OE-Core rev: f524589f3d35475600954f5b27b4b74ea079e13c)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We do builds in a separate directory in this class, so add it to cleandirs
to ensure that it is empty.
(From OE-Core rev: 2575adeceedae72f6359c0a35ec5c5325a4ec363)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Move the CONFIGURE_FILES assignment from python_mesonpy to the common
class, as it isn't specific to mesonpy.
Also extend, so that it doesn't clobber existing settings.
(From OE-Core rev: 049cd6b62853c020b0c85ccee18638ec58887866)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The uninative tarball requires xz to decompress:
WARNING: Disabling uninative as unable to install uninative tarball:
WARNING: tar (child): xz: Cannot exec: No such file or directory
(From OE-Core rev: 9c0bc6edf5e6706597563924f62bbab6fdd38ac2)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Fix e2fsprogs-native do_compile error with old kernel such as 5.10
(Debian 11):
../../sources/e2fsprogs-1.47.2/debugfs/../misc/create_inode.c:600:20: error: FS_IOC_READ_VERITY_METADATA undeclared (first use in this function)
* And its version should be 1.47.3, not 1.47.2.
(From OE-Core rev: 52cd80f2c88e298d5538a9e426e681b288f39244)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Switch to my personal e-mail address for OE related work.
(From OE-Core rev: f30d945ea0983b71d84bf45c7da8603686088a5e)
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The rk-usb-loader is already enabled in the hosttools_defconfig and
targettools_defconfig and compiled by the recipe.
Add it to the BAREBOX_TOOLS list to actually install it.
(From OE-Core rev: f5e182589b46ebd862721d5e24005d56cdddbe07)
Signed-off-by: Michael Tretter <m.tretter@pengutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Rust stable version updated to 1.88.0.
https://blog.rust-lang.org/2025/06/26/Rust-1.88.0/
* Rebase existing patches with v1.88.0
* Exclude tidy and coverage-dump from OE self-tests due to test failures
Although the build completes successfully, OE self-tests fail:
tools/coverage-dump panics during test execution.
tools/tidy fails due to a mismatched GCC submodule commit.
These tests are excluded to allow successful OE self-test runs.
* Two tests from the`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.
Bugzilla link - https://bugzilla.yoctoproject.org/show_bug.cgi?id=15944
Test Results Summary:
+-----------+--------+---------+
| Machine | Passed | Ignored |
+-----------+--------+---------+
| arm-32 | 28,664 | 1,451 |
| arm-64 | 28,748 | 1,396 |
| x86-32 | 28,657 | 1,432 |
| x86-64 | 28,904 | 1,213 |
| riscv-64 | 28,722 | 1,421 |
+-----------+--------+---------+
(From OE-Core rev: 5afc9bdbabfdbcb784ceb637926111e6c7648f41)
Signed-off-by: Jayasurya Maganuru <Maganuru.Jayasurya@windriver.com>
Signed-off-by: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
`exit_if_errors` must be called explicitly at the end of the task
execution to ensure that QA issues categorized as errors fail the task.
(From OE-Core rev: acc0c57e455670501433ba4514a977e16dc88c34)
Signed-off-by: Philip Lorenz <philip.lorenz@bmw.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The variables checked for are mandatory in all cases so a QA check does
not seem to be the right choice for this. Additionally, the code never
called `exit_if_errors` so the reported QA issue didn't actually fail
the task.
(From OE-Core rev: cb69d7eba80215f9f8b74dafe40ca2289fa294aa)
Signed-off-by: Philip Lorenz <philip.lorenz@bmw.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fixes [YOCTO 15917]
When fetching a git repository the .gitattributes file is scanned, checking if LFS
support is required for the repository. This scan checks if the word "lfs" is present
in the file, however the used regex doesn't account for comments, which makes some
repositories[1] be to misidentified as requiring LFS support (which fails fetching, in case
lfs support isn't installed on the build host).
To avoid it, change the used regex to ignore lines starting with "#".
[1]: e.g. https://github.com/MicrochipTech/cryptoauthlib
(Bitbake rev: 7917a758fc328747116c7899e689171bd0efc883)
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Early in Section 1, mention that BitBake supports three related
classes directories.
(Bitbake rev: 0d5201e904b0e6f4dd9f7bb116dda508ec09b78a)
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add a couple more examples to the wildcarding section to make sure
readers understand it's not just a single character wildcard.
(Bitbake rev: 572062ba1f0a2953a62ef1974e35134fcb462f5e)
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fixes deprecation warning seen with python 3.13
DEBUG: QMP Initializing to /mnt/b/yoe/master/build/tmp/.sv4_k_q4
recipe-sysroot-native/usr/lib/qemu-python/qmp/legacy.py:89: DeprecationWarning: There is no current event loop
self._aloop = asyncio.get_event_loop()
(From OE-Core rev: 249e42a02c412454cfed9d58e27a054dfa5d2b06)
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>
tar packaging was removed some time ago.
(From OE-Core rev: 137f75d7289169f835a9f522530d8abf050e060a)
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Pick relevant part of snapshot commit 20250329, see [1].
That has:
add a buffer-limit check in postprocess_termcap (report/testcase by
Yifan Zhang).
[1] https://invisible-island.net/ncurses/NEWS.html#index-t20250329
(From OE-Core rev: fdd7b720b996d7df771fe04ff94ceb62498ac6a9)
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Update to the 5.2.2 release of the 5.2 series for buildtools
(From OE-Core rev: 9a79f2b1b81a27e740d7e5e59d07a38da12faf7d)
Signed-off-by: Aleksandar Nikolic <aleksandar.nikolic@zeiss.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
At the moment the clang recipe provides llvm, but they could be split
in the future and this makes it clear that the translator just needs
libllvm and not the clang tools.
(From OE-Core rev: bf186c6b99fa6c986abe0bf00dce22dd8a68fad6)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
These functions are useful outside of just the clang recipe, so move
them to a common .inc file so they can be used by other clang-related
recipes.
Also make the function fail if it doesn't recognise the architecture,
instead of returning the empty string and causing mysterious fails later.
(From OE-Core rev: 1d5298533e97dab7636f885ddd740352782395b0)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This variable controls how ccache determines if the cache is valid or not
for a given compiler.
By default, ccache looks at the mtime of the compiler binary. This should
be sufficient for our purposes as the mtime is preserved from sstate
and will only be changed on rebuilds if the binary is actually different.
(From OE-Core rev: 27aec0bab6fcb19c5d5be30763f4038a46922e8f)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Move some environment variables to the configuration file, so there's
less happening in the class.
Max_size was removed so that the per-recipe caches don't grown without
limit. The default cache is 5GB.
(From OE-Core rev: 8c1c38a6b3073d2dd34514f5a90805c12c0f42dd)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We add FIRMWARE_DIR via CFLAGS using escapes for string and clang
option parser flags it
<command line>:4:23: warning: missing terminating '"' character [-Winvalid-pp-token]
4 | #define FIRMWARE_DIR \"/usr/lib/firmware\"
| ^
emitting this warning during configure means some tests fail wrongly. e.g.
test for enable -fPIC -DPIC, which results in textrels in libbbluetooth.so
Pass the string definition using single quotes to avoid the shell
"eating" the quotes and other characters
This works well across gcc and clang
(From OE-Core rev: 23a87f27b1837bd35bea356f0a10816fb35826f2)
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>
The test depends on BSD extension REG_STARTEND which
is not in POSIX, glibc does implement this extention so it
works on glibc systems but musl does not and it needs to
be skipped and LIBC environment variable is used in this
test as well to run it conditionally.
(From OE-Core rev: a74eaca8e1830d09c5ff678c7d361cedbfc6f68a)
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>
Upgrade to U-Boot 2025.07.
Add patches for build race conditions.
Remove the QEMU KVM USB workaround since the issue is fixed upstream.
(From OE-Core rev: bb287fade558d0138f7254876c9029da63e3087f)
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changelog:
==========
- Fix usage of typing_extensions.TypedDict nested inside other types
(e.g., typing.Type[typing_extensions.TypedDict]). This is not allowed by the
type system but worked on older versions, so we maintain support.
(From OE-Core rev: a92c8559ea91dc5b4a37e104715d32135341c7cb)
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>
Changelog:
==========
- Fix extent-based deduplication which can cause data corruption if target images are larger than 4GiB
- Switch to on-heap temporary buffers for libzstd and libdeflate to replace on-stack VLAs
- Fix large compressed fragment handling, which could be generated by the `-Eall-fragments` option (though rare) and was rejected by mistake
- Fix corrupted small fragments introduced in erofs-utils 1.8.8
- Fix AUFS whiteout handling
- Properly handle negative GNU mtime
- Fix superblock checksum for small fs block size filesystems
- Fix temporary memory leak from small fragments
- Handle crafted Z_EROFS_COMPRESSION_INTERLACED extents
- Speed up multi-threaded `-Efragments` even further
- Fix DEFLATE due to incorrect maximum Huffman length
- Support `--fsalignblks` to align filesystem sizes
- Support `--vmdk-desc` to generate VMDK for flattened block devices
- Fix image reproducibility of `-E(all-)fragments`
- Support per-segment reaper for multi-threaded compression
- Support multi-threaded fragments
- Support extent-based deduplication for `-Efragments`
- Optimize space allocation performance
(From OE-Core rev: a29c24e540ce6cd70ae7889f69ebe14e024d5507)
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>
Changelog:
==========
- DeviceEventController: update mouse coordinates before sending button events
- Return localized role name for ATSPI_ROLE_EDITBAR
- Revert "Return localized role name for ATSPI_ROLE_EDITBAR"
- Return localized role name for ATSPI_ROLE_EDITBAR
- atspi-device-legacy: Don't crash when XkbGetMap fails
(From OE-Core rev: 9db21ce6bf37541b089751311a4b8781adb0263c)
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>
Changelog:
==========
- Fix bad parsing of lesskey file an env var is a prefix of another env var
- Fix unexpected exit using -K if a key press is received while reading the input file
(From OE-Core rev: 25f101eecdb9921bf42c99b63dd6f036ceff00b5)
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>
Changelog:
==========
- ecc: Check return value of l_getrandom()
- unit: test-ecdh: Add bytes to l_getrandom wrapper
- unit: Convert UUID test cases to use precheck feature
- unit: Convert PBKDF2 test cases to use precheck feature
- unit: Convert check for random support to use test precheck feature
- unit: Make the failed precheck test case a success
- test: Add flag for indication of inverted precheck results
- unit: Use the precheck handler for testing available key support
- unit: Use the precheck handler for testing available getrandom support
- unit: Use the precheck handler for testing available checksum support
- unit: Use the precheck handler for testing available cipher support
- test: Provide test data also to the precheck function
- unit: Add test cases for precheck of unit tests
- test: Add support for precheck handler for unsupported kernel features
- Add License variable to pkg-config file
(From OE-Core rev: 07b4a4dd2c9e109939cff5a8c58fdf1d01c4d24a)
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>