summaryrefslogtreecommitdiffstats
path: root/meta
Commit message (Collapse)AuthorAgeFilesLines
...
* meson: upgrade to 1.7.0Ross Burton2025-01-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Summary of changes: - New custom dependency for atomic - --cap-lints allow used for Cargo subprojects - Cargo features are resolved globally - Meson can run "clippy" on Rust projects - Devenv support in external project module - Fixed sizeof and find_library methods for Fortran compilers - format command now accept stdin argument - "machine" entry in target introspection data - Add new language Linear Asm - Control the number of child processes with an environment variable - Support for Rust 2024 - Support TASKING VX-Toolset - Test targets no longer built by default - Install vcs_tag() output (From OE-Core rev: 37d4a5b2653b94d5030b5026b1ecf979420cfb20) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* efivar: enable support for riscv64Ricardo Salveti2025-01-291-1/+1
| | | | | | | | | Release 39 includes support for riscv64. (From OE-Core rev: 2644e59b0973ddb4039c8b4184842ecf310bd8d8) Signed-off-by: Ricardo Salveti <ricardo@foundries.io> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-yocto: move the cp of ${KBUILD_DEFCONFIG} file outside if bodySlawomir Stepien2025-01-271-7/+1
| | | | | | | | | | | | In both true/false cases, we will cp the file, so move the invocation after the if body. In addition, misleading comment has been removed. (From OE-Core rev: fdd7fec29314b3cd07a98943bbbf6996877e90f4) Signed-off-by: Slawomir Stepien <sst@poczta.fm> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: Add test for functional c++ toolchainChristos Gavros2025-01-271-0/+25
| | | | | | | | | | | | Users reported issues caused by missing the right libstdc++-version-dev. A new function 'check_cpp_toolchain' added in sanity.bbclass to test linking libstdc++ [YOCTO #15712] (From OE-Core rev: 611c1a26212dfbfe8d0640d9fefe5df49f7b69b8) Signed-off-by: Christos Gavros <gavrosc@yahoo.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gnupg: remove obsolete patchGuðni Már Gilbert2025-01-272-34/+0
| | | | | | | | | | | | | Remove a patch which is already merged in v2.5.1 See for reference: https://github.com/gpg/gnupg/commit/1d5cfa9b7fd22e1c46eeed5fa9fed2af6f81d34f https://dev.gnupg.org/T7193 (From OE-Core rev: 79c10b2ad17bacec024427693eb025659f455a20) Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* busybox: Correct SPDX license referenceBastian Germann2025-01-271-1/+1
| | | | | | | | | | | | | | | | Commit 6238ee3ecd (recipes-core/busybox: fixup licensing information) claims that there is no applicable license identifier in SPDX, so a bzip2-1.0.4 is made up. There is no bzip2-1.0.4 license defined in SPDX. However, bzip2-1.0.6 is the same license. License-Update: wrong SPDX identifier (From OE-Core rev: 1b51a0cbfbb64d85756ef231c81aeff02b74bd52) Signed-off-by: Bastian Germann <bage@debian.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base-files: Drop /bin/sh dependencyMarek Vasut2025-01-271-23/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove /bin/sh from bash RPROVIDES as this has a side-effect which confuses rpm package manager when also busybox provides /bin/sh and base-files depend on /bin/sh . The problem is broken down below. First, bash depends on base-files and bash pkg_postinst must run after base-files was installed, because it requires /etc/shells provided by base-files to be in place. Second, base-files depends on /bin/sh, which is provided by either bash or busybox in this case. This is the actual problem here, if bash is selected as /bin/sh provider, then there is cyclic dependency between bash and base-files, and that confuses dnf which may install the packages in the wrong order, bash first and base-files second . To make this worse, if busybox is also /bin/sh provider, it can and does happen that some systems pick busybox as the /bin/sh provider, while others pick bash as the /bin/sh provider, and that cyclic dependency does not always appear. Attempt to break this dependency, remove pre-inst script from the base-files recipe, which removes its dependency on /bin/sh and allows it to be installed very early, and always before bash. (From OE-Core rev: e71b64a9b22c7db316e92e78a4bce8b9f994a4ae) Signed-off-by: Marek Vasut <marex@denx.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* util-linux: Document more specific BSD-4-Clause-UCBastian Germann2025-01-271-1/+1
| | | | | | | | | | | | | LIC_FILES_CHKSUM in the util-linux recipe already contains the more specific license reference BSD-4-Clause-UC that takes a copyright addendum by University of California into account. License-Update: reference can be more specific (From OE-Core rev: 7cc73cb77e6e783a903978221cb502bb359412f6) Signed-off-by: Bastian Germann <bage@debian.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* man-pages: Document more specific BSD-4-Clause-UCBastian Germann2025-01-271-1/+1
| | | | | | | | | | | | | LIC_FILES_CHKSUM in the man-pages recipe already contains the more specific license reference BSD-4-Clause-UC that takes a copyright addendum by University of California into account. License-Update: reference can be more specific (From OE-Core rev: af9c90ea01ad7272d7dc50888ff7723f1a7816b6) Signed-off-by: Bastian Germann <bage@debian.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libxfont2: Document more specific BSD-4-Clause-UCBastian Germann2025-01-271-1/+1
| | | | | | | | | | | | | COPYING in libxfont2 upstream contains only one BSD-4-Clause text variant, which is explicitly covered by the copyright addendum by University of California. Change the SPDX license reference to BSD-4-Clause-UC. License-Update: reference can be more specific (From OE-Core rev: d40647566d6c4b39a657942cabcba17df0ed0c84) Signed-off-by: Bastian Germann <bage@debian.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libbsd: Drop licenses that were removed upstreamBastian Germann2025-01-271-5/+2
| | | | | | | | | | | | The libbsd project has gotten rid of BSD-4-Clause licensed material. Version 0.11.8 is the first not to contain any such material anymore. License-Update: removed upstream (From OE-Core rev: 362435b0aec5c2610690fe2f39eb5bdb28a36e14) Signed-off-by: Bastian Germann <bage@debian.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* font-util: Correct SPDX expressionBastian Germann2025-01-271-1/+1
| | | | | | | | | | | | The BSD-4-Clause license is not contained in version 1.4.1. But MIT and X11 are listed in the COPYING file. License-Update: upstream has changed (From OE-Core rev: a367bf2fb704695078753bae3c129d2ad050bf83) Signed-off-by: Bastian Germann <bage@debian.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gdb: Upgrade 15.2 -> 16.1Yash Shinde2025-01-278-319/+5
| | | | | | | | | | | | | | | | | * Drop 0001-Fix-Wenum-constexpr-conversion-in-enum-flags.h.patch, its already applied to gdb 16.1 Detailed release notes: https://sourceware.org/pipermail/gdb-announce/2025/000143.html https://sourceware.org/gdb/news/ https://lwn.net/Articles/1005562/ https://www.sourceware.org/gdb/download/ANNOUNCEMENT (From OE-Core rev: 31a536ed8c4d03db250766fe701126dd14d084c0) Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* go: upgrade 1.22.10 -> 1.22.11Peter Marko2025-01-277-4/+4
| | | | | | | | | | | | | | | | | | | | | Upgrade to latest 1.22.x release [1]: $ git --no-pager log --oneline go1.22.10..go1.22.11 f072884354 (tag: go1.22.11) [release-branch.go1.22] go1.22.11 b72d56f98d [release-branch.go1.22] net/http: persist header stripping across repeated redirects 19d2103415 [release-branch.go1.22] crypto/x509: properly check for IPv6 hosts in URIs ae9996f965 [release-branch.go1.22] runtime: hold traceAcquire across casgstatus in injectglist 223260bc63 [release-branch.go1.22] crypto/tls: fix Config.Time in tests using expired certificates Fixes CVE-2024-45336 and CVE-2024-45341 [1] https://github.com/golang/go/compare/go1.22.10...go1.22.11 (From OE-Core rev: 4589986602319f9ed61e381b333bb53b731eb8d8) 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>
* go: upgrade 1.22.9 -> 1.22.10Peter Marko2025-01-277-4/+4
| | | | | | | | | | | | | | | | | | Upgrade to latest 1.22.x release [1]: $ git --no-pager log --oneline go1.22.9..go1.22.10 8f3f22eef8 (tag: go1.22.10) [release-branch.go1.22] go1.22.10 6d7a95abca [release-branch.go1.22] runtime: reserve 4kB for system stack on windows-386 6f05fa7a4f [release-branch.go1.22] syscall: mark SyscallN as noescape 3355db9690 [release-branch.go1.22] time: accept "+01" in TestLoadFixed on OpenBSD [1] https://github.com/golang/go/compare/go1.22.9...go1.22.10 (From OE-Core rev: e357c93b39df938dc36195dbd779a58b2951b8e6) 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>
* go: upgrade 1.22.8 -> 1.22.9Peter Marko2025-01-277-4/+4
| | | | | | | | | | | | | | | | | Upgrade to latest 1.22.x release [1]: $ git --no-pager log --oneline go1.22.8..go1.22.9 8af39d30a4 (tag: go1.22.9) [release-branch.go1.22] go1.22.9 c19e5887f4 [release-branch.go1.22] cmd/cgo/internal/testcarchive: remove 1-minute timeout e3fd4ba7f9 [release-branch.go1.22] cmd/link: generate Mach-O UUID when -B flag is specified 29252e4c5a [release-branch.go1.22] runtime: fix TestGdbAutotmpTypes on gdb version 15 [1] https://github.com/golang/go/compare/go1.22.8...go1.22.9 (From OE-Core rev: 4f2f202506bcefb4d6c46a11738e159e261a4a4b) Signed-off-by: Peter Marko <peter.marko@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: go-vendor: Change symlink creation.Alexander Yurkov2025-01-271-2/+6
| | | | | | | | | | | | Create missing directories required to create the symlink. Use relative symlinks to stay in the build directory scope (to avoid sstate issue with absolute paths). (From OE-Core rev: 6c4e3206b6537f714416688cf8c921dd21cdfc20) Signed-off-by: Alexander Yurkov <alexander.v.yurkov@gmail.com> Signed-off-by: Vyacheslav Yurkov <uvv.mail@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/recipetool: Update create_go test.Alexander Yurkov2025-01-271-196/+16
| | | | | | | | | | | | Adjust test_recipetool_go_create test to a smaller repository. Combine test_recipetool_go_create and test_recipetool_go_replace_modules tests into test_recipetool_go_create, the new test performs both tests. (From OE-Core rev: d1256f8ff4a94d4f32b2b9ca855359dd2d691beb) Signed-off-by: Alexander Yurkov <alexander.v.yurkov@gmail.com> Signed-off-by: Vyacheslav Yurkov <uvv.mail@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* llvm: set LLVM_HOST_TRIPLE for cross-compilationHaseeb Ashraf2025-01-271-0/+2
| | | | | | | | | | | | | | | | | | | The correct way to configure cmake for cross-compilation includes setting the LLVM_HOST_TRIPLE as well. Documentation Ref: https://github.com/llvm/llvm-project/blob/llvmorg-19.1.6/llvm/docs/HowToCrossCompileLLVM.rst#configuring-cmake This fixes bug when LLVM is cross-compiled for AAarch64 but it was getting built with the triple of native build system instead of the TARGET_SYS (aarch64-oe-linux) in my case. `No available targets are compatible with triple "x86_64-unknown-linux-gnu"` (From OE-Core rev: 19f649f47352f7e12508abd88a862e95979d152d) Signed-off-by: Haseeb Ashraf <haseeb.ashraf@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Handle empty BB_CURRENT_MCRichard Purdie2025-01-252-2/+2
| | | | | | | | | | | | | | | | | | | Bitbake is about to change the default value of this from "default" to "". The original reason for this was to make this kind of include file usage easier. Instead we were going to complicate bitbake code having to map one value into the other. Instead, stop using "default" and put a slightly horrible bit of code in bitbake.conf as an alternative. This means a "default.conf" in the multiconfig directory will stop working but this was never something anyone was expected to use. The eSDK code also needs updating for this change. (From OE-Core rev: ff469ab2e865063bbc529031bbfd76cba5040073) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sshcontrol: Handle empty readsRichard Purdie2025-01-251-2/+4
| | | | | | | | | | | | | | Looking at some of the autobuilder failures, it seems that somehow empty reads might be possible despite not being EOF. Tweak the code to be a little more robust in handling this. In theory this shouldn't be possible but python does handle signals a bit differently (e.g. transparrently retrying syscalls for EINTR) so adding this check and a bit of code safety at least rules out this problem. (From OE-Core rev: 9d91a5674c515a43ae76d8615f72e5e2dc16c961) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* build-appliance-image: Update to master head revision5.2_M2Ross Burton2025-01-231-1/+1
| | | | | | (From OE-Core rev: 3ca9192cf16e15e95ba1c3db4ba28fc6130de8e0) Signed-off-by: Ross Burton <ross.burton@arm.com>
* rust-common: add LDFLAGS to 'build-rust-cc' wrapperEnrico Scholz2025-01-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Although rust differs between compiling (--> 'rust-cc' wrapper) and linking (--> 'rust-ccld' wrapper), some core crates are using only the 'rust-cc' wrapper to check for available compiler options [1] and libraries [2]. Not having LDFLAGS can break the build in subtle ways. E.g. 'cargo-native' can fail to build with | = note: .../hosttools/ld: .../liblibz_sys-....rlib(deflate.o): | relocation R_X86_64_32S against hidden symbol `_length_code' can not be used when making a PIE object because it does not find '-lz' (added by "DEPENDS = zlib") and builds a static libz.a with missing PIC flags. Add LDFLAGS to the 'build-rust-cc' wrapper as it is done already for the target one. [1] https://github.com/rust-lang/cc-rs/pull/1322 [2] https://github.com/rust-lang/libz-sys/blob/12a32798c6bd18986cb5cd603359b03c96f0eb4c/build.rs#L228-L234 (From OE-Core rev: 49b37575b548f0ab082c700f91fdd856740dc829) Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
* cmake: upgrade 3.31.3 -> 3.31.4Trevor Gamblin2025-01-236-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Release notes: https://cmake.org/cmake/help/latest/release/3.31.html#id17 commit log: |tgamblin@megalith ~/workspace/git/cmake (master)$ git log --oneline v3.31.3..v3.31.4 |569b821a13 (tag: v3.31.4) CMake 3.31.4 |92b260387d Merge topic 'duplicate-source-behavior' into release-3.31 |3df8890638 Merge topic 'lfortran-generate-object-code' into release-3.31 |8f45140baf Merge topic 'revert-genex-tco-subgraph' into release-3.31 |3e15419bd4 target_sources: Restore toleration of duplicate CXX_MODULES sources |5cfb8ae790 Tests/CXXModules: add a test with duplicate sources |daf6cc89ee LFortran: Remove hard-coded --generate-object-code flag |a6b84a438f GenEx: Revert "Limit TARGET_PROPERTY transitive closure optimization" |627d710570 Merge topic 'FindBoost-1.87' into release-3.31 |d29855f985 Merge topic 'codegen-help' into release-3.31 |f485f94d1a FindBoost: Add support for Boost 1.87 |45726d93a8 Makefile: List codegen target in help |e7153c29ac Merge topic 'Help-FindPython-Fix-typo' into release-3.31 |e7ea2998fb Help: FindPython: fix typo Reproducibility OK: |2025-01-20 13:52:30,296 - oe-selftest - INFO - Ran 1 test in 1949.827s |2025-01-20 13:52:30,296 - oe-selftest - INFO - OK |2025-01-20 13:52:34,885 - oe-selftest - INFO - RESULTS: |2025-01-20 13:52:34,886 - oe-selftest - INFO - RESULTS - reproducible.ReproducibleTests.test_reproducible_builds: PASSED (1874.21s) |2025-01-20 13:52:34,886 - oe-selftest - INFO - SUMMARY: |2025-01-20 13:52:34,886 - oe-selftest - INFO - oe-selftest () - Ran 1 test in 1949.827s |2025-01-20 13:52:34,886 - oe-selftest - INFO - oe-selftest - OK - All required tests passed (successes=1, skipped=0, failures=0, errors=0) (From OE-Core rev: 729611f8284a4b408b8c65a6407daf667571c415) Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
* systemd: Remove /var/log/README using a patchPeter Kjellerstedt2025-01-232-4/+31
| | | | | | | | | | | | | | Commit f82d9c997ba (systemd: enable create-log-dirs) removed the creation of the /var/log/README symbolic link by using sed. However, the update to 257 changed the target line and the sed expression no longer matches. Rather than correcting the sed expression, use a patch to remove /var/log/README so that any future changes do not go unnoticed. (From OE-Core rev: 76cf5994262f9fd76cf27e111eb67ad1645541f1) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
* linux-firmware: split amdgpu firmwares in separate packagesMarc Ferland2025-01-231-3/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces the following packages for AMD gpu chips: - linux-firmware-amdgpu-aldebaran - linux-firmware-amdgpu-carrizo - linux-firmware-amdgpu-cezanne - linux-firmware-amdgpu-fiji - linux-firmware-amdgpu-hawaii - linux-firmware-amdgpu-navi10 - linux-firmware-amdgpu-navi14 - linux-firmware-amdgpu-navi21 - linux-firmware-amdgpu-navi22 - linux-firmware-amdgpu-navi23 - linux-firmware-amdgpu-navi24 - linux-firmware-amdgpu-navi31 - linux-firmware-amdgpu-navi32 - linux-firmware-amdgpu-oland - linux-firmware-amdgpu-polaris10 - linux-firmware-amdgpu-polaris11 - linux-firmware-amdgpu-polaris12 - linux-firmware-amdgpu-raven - linux-firmware-amdgpu-rembrandt - linux-firmware-amdgpu-renoir - linux-firmware-amdgpu-stoney - linux-firmware-amdgpu-tonga - linux-firmware-amdgpu-topaz - linux-firmware-amdgpu-vega10 - linux-firmware-amdgpu-vega12 - linux-firmware-amdgpu-misc: catches all firmwares that are not already included in the other -amdgpu- packages. This list was partly inspired from: https://wiki.gentoo.org/wiki/AMDGPU#Known_firmware_blobs Many other firmware packages could be created out of what is in -misc. Looking at the different commits in the linux-firmware repository gives a very good idea of which firmware goes with each chip. Note: Altough this patch might break some installations that assumed that _all_ firmwares where installed by the linux-firmware-amdgpu package, I think it is a step in the right direction as the number of firmwares under amdgpu is constantly increasing (currently ~103MB). Tested with a renoir gpu. (From OE-Core rev: 4bcb1cd5803d7b664140f177730af3c0e0b60968) Signed-off-by: Marc Ferland <marc.ferland@sonatest.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
* linux-firmware: split ath11k firmwares in separate packagesMarc Ferland2025-01-231-4/+48
| | | | | | | | | | | | | | | | | | | | | | | | This patch introduces the following packages for ath11k based chips: - linux-firmware-ath11k-ipq5018 - linux-firmware-ath11k-ipq6018 - linux-firmware-ath11k-ipq8074 - linux-firmware-ath11k-qca2066 - linux-firmware-ath11k-qca6390 - linux-firmware-ath11k-qcn9074 - linux-firmware-ath11k-wcn6750 - linux-firmware-ath11k-wcn6855 - linux-firmware-ath11k-misc: catches all firmwares that are not already included in the other -ath11k- packages (currently empty). linux-firmware-ath11k is now a meta package that depends on all of the split-out ath11k packages. (From OE-Core rev: 635f0cc49f91b79b1cee40e2825514d7ce474d32) Signed-off-by: Marc Ferland <marc.ferland@sonatest.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
* linux-firmware: split ath10k firmwares in separate packagesMarc Ferland2025-01-231-8/+48
| | | | | | | | | | | | | | | | | | | | | | | | This patch introduces the following packages for ath10k based chips: - linux-firmware-ath10k-qca4019 - linux-firmware-ath10k-qca6174 - linux-firmware-ath10k-qca9377 - linux-firmware-ath10k-qca9887 - linux-firmware-ath10k-qca9888 - linux-firmware-ath10k-qca988x - linux-firmware-ath10k-qca9984 - linux-firmware-ath10k-qca99x0 - linux-firmware-ath10k-misc: catches all firmwares that are not already included in the other -ath10k- packages (currently empty). linux-firmware-ath10k is now a meta package that depends on all of the split-out ath10k packages. (From OE-Core rev: 18b0b076e749bf8684958acf1a97504a69f73edd) Signed-off-by: Marc Ferland <marc.ferland@sonatest.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
* create-spdx: support line numbersDenis OSTERLAND-HEIM2025-01-231-2/+8
| | | | | | | | | | | | LIC_FILES_CHKSUM supports begin-/endline for licenses included in for instance header files. This patch adds support for line numbers to NO_GENERIC_LICENSE, too. (From OE-Core rev: 8e7ee19fc9e74cf042880f4bc317782482ba6f66) Signed-off-by: Denis Osterland-Heim <denis.osterland@diehl.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
* ofono: patch CVE-2024-7540, CVE-2024-7541, CVE-2024-7542Peter Marko2025-01-232-0/+53
| | | | | | | | | | | Cherry-pick commit https://git.kernel.org/pub/scm/network/ofono/ofono.git/commit/?id=29ff6334b492504ace101be748b256e6953d2c2f (From OE-Core rev: 2513c7504a270c7a079f4e942252f92d0e48bd32) Signed-off-by: Peter Marko <peter.marko@siemens.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
* files: overlayfs-create-dirs: Improve mount unit dependencyEsben Haabendal2025-01-231-2/+1
| | | | | | | | | | | | | | | | | | | The RequiresMountsFor configuration option of systemd.unit (added in systemd version 201) not only adds the Requires and After options for the required mount unit, but it adds them for all mount units required to access the specified path. So this change is both a simplification, and an improvement. Not only will all needed mount units be added to Requires and After, but the overlay path does not have to be a mountpoint, but can be at any directory level beneath a mountpoint. (From OE-Core rev: fa2422232a143b21aeea3728abca82100946dbc4) Signed-off-by: Esben Haabendal <esben@geanix.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
* man-db: fix broken requirement for flexRoss Burton2025-01-232-0/+37
| | | | | | | | | | | | | | | | | | | | Normally flex-native in the sysroot via the toolchain, but different toolchains may not depend on flex-native (eg, external-arm-toolchain). This results in a configure error: checking for flex... no configure: error: flex is required when building from revision control Now we're not building from revision control, but the configure script is broken with out-of-tree builds and checks the (empty) build tree for pre-generated sources. Apply a fix to look in the source tree instead. (From OE-Core rev: 544d8ee19b5ac74a841722a3e000019d2e6ab4f8) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@arm.com>
* python3-numpy: upgrade 2.2.1 -> 2.2.2Trevor Gamblin2025-01-233-3/+3
| | | | | | | | | | | | | | | | | | | | Changelog: https://github.com/numpy/numpy/releases/tag/v2.2.2 Reproducibility looks OK: |2025-01-20 16:40:52,428 - oe-selftest - INFO - Ran 1 test in 2125.833s |2025-01-20 16:40:52,428 - oe-selftest - INFO - OK |2025-01-20 16:40:57,146 - oe-selftest - INFO - RESULTS: |2025-01-20 16:40:57,146 - oe-selftest - INFO - RESULTS - reproducible.ReproducibleTests.test_reproducible_builds: PASSED (2065.94s) |2025-01-20 16:40:57,147 - oe-selftest - INFO - SUMMARY: |2025-01-20 16:40:57,147 - oe-selftest - INFO - oe-selftest () - Ran 1 test in 2125.834s |2025-01-20 16:40:57,147 - oe-selftest - INFO - oe-selftest - OK - All required tests passed (successes=1, skipped=0, failures=0, errors=0) (From OE-Core rev: 8ba751635a333ba0ccdeaff7b135131de99292a9) Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@arm.com>
* gcc-sanitizers.inc: Workaround for aarch64Thomas Roos2025-01-231-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | When using the -fsanitize=address CXX_FLAG for a program compiled for aarch64 / arm64 This is happing: MemorySanitizer: CHECK failed: sanitizer_allocator_primary64.h:133 "((kSpaceBeg)) == ((address_range.Init(TotalSpaceSize, PrimaryAllocatorName, kSpaceBeg)))" (0xe00000000000, 0xfffffffffffffff4) (tid=51745) With -DSANITIZER_CAN_USE_ALLOCATOR64=0 this is not happening and potenial bugs are detected. ARM32 does not require this patch. More info about the issue in this thread: https://github.com/llvm/llvm-project/issues/65144 (From OE-Core rev: 12442b9b6df06317174066854935b1d6a4f1865d) Signed-off-by: Thomas Roos <throos@amazon.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@arm.com>
* selftest/virgl: add a link to RHEL merge request to address the missing vgem ↵Alexander Kanavin2025-01-231-0/+2
| | | | | | | | | | module (From OE-Core rev: ee674a0494a667a9fd2a3691618f736f6a58fb76) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@arm.com>
* tcl8: add a patch to address Y2038 issues (tcl 9.x doesn't need it)Alexander Kanavin2025-01-232-0/+34
| | | | | | | | (From OE-Core rev: 50731c5233f1531b1a7a9ac94c08235e06be8c2d) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@arm.com>
* tcl: disable 'zipfs' featureAlexander Kanavin2025-01-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | zipfs is a new facility in tcl 9.x where various data files are bundled into a zip archive, rather being separately installed. Then that zip is embedded into libtcl.so from Makefile, thusly: cat ${TCL_ZIP_FILE} >> ${LIB_FILE} This is a major case of face meeting palm: any binary object processing on the resulting .so file discards the extra data at the end, and that's exactly what happens in do_package(), resulting in a tcl installation without any language libraries. This is not caught by ptest because it runs against a private copy of the source tree. Additionally, it helps to have data files on target systems as files that can be viewed and edited. (From OE-Core rev: 05e31be56498123b177f363c700c96b20958585c) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@arm.com>
* u-boot: kernel-fitimage: Fix dependency loop if UBOOT_SIGN_ENABLE and ↵Marek Vasut2025-01-223-64/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | UBOOT_ENV enabled In case both UBOOT_SIGN_ENABLE and UBOOT_ENV are enabled and kernel-fitimage.bbclass is in use to generate signed kernel fitImage, there is a circular dependency between uboot-sign and kernel-fitimage bbclasses . The loop looks like this: kernel-fitimage.bbclass: - do_populate_sysroot depends on do_assemble_fitimage - do_assemble_fitimage depends on virtual/bootloader:do_populate_sysroot - virtual/bootloader:do_populate_sysroot depends on virtual/bootloader:do_install => The virtual/bootloader:do_install installs and the virtual/bootloader:do_populate_sysroot places into sysroot an U-Boot environment script embedded into kernel fitImage during do_assemble_fitimage run . uboot-sign.bbclass: - DEPENDS on KERNEL_PN, which is really virtual/kernel. More accurately - do_deploy depends on do_uboot_assemble_fitimage - do_install depends on do_uboot_assemble_fitimage - do_uboot_assemble_fitimage depends on virtual/kernel:do_populate_sysroot => do_install depends on virtual/kernel:do_populate_sysroot => virtual/bootloader:do_install depends on virtual/kernel:do_populate_sysroot virtual/kernel:do_populate_sysroot depends on virtual/bootloader:do_install Attempt to resolve the loop. Pull fitimage configuration options into separate new configuration file image-fitimage.conf so these configuration options can be shared by both uboot-sign.bbclass and kernel-fitimage.bbclass, and make use of mkimage -f auto-conf / mkimage -f auto option to insert /signature node key-* subnode into U-Boot control DT without depending on the layout of kernel fitImage itself. This is perfectly valid to do, because the U-Boot /signature node key-* subnodes 'required' property can contain either of two values, 'conf' or 'image' to authenticate either selected configuration or all of images when booting the fitImage. For details of the U-Boot fitImage signing process, see: https://docs.u-boot.org/en/latest/usage/fit/signature.html For details of mkimage -f auto-conf and -f auto, see: https://manpages.debian.org/experimental/u-boot-tools/mkimage.1.en.html#EXAMPLES Fixes: 5e12dc911d0c ("u-boot: Rework signing to remove interdependencies") Reviewed-by: Adrian Freihofer <adrian.freihofer@siemens.com> (From OE-Core rev: 259bfa86f384206f0d0a96a5b84887186c5f689e) Signed-off-by: Marek Vasut <marex@denx.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc: make include poisoning fatal again in gcc/g++Ross Burton2025-01-221-10/+27
| | | | | | | | | | | | | | | | | | | | | We have a patch to allow us to 'poison' system include directories, which are warnings by default but we make them fatal in cross builds. However, in the 13.1 upgrade[1] the patch to make the warnings fatal was dropped in the compiler invocation, so it only took effect for pure preprocessor calls. This was not noticed at the time as the test case was flawed, but this has now been fixed. Add back the fatal poisoning, and restructure the patch slightly so it is less invasive. [1] oe-core bea46612fd9106cc5b46eb1d81623b6492563c13 [RP: Tweak to fix gcc/gcc-cross-canadian failure] (From OE-Core rev: 56f21a02c009cb74072ee79467a5bcab3c4643a5) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/poisoning: fix gcc include poisoning testRoss Burton2025-01-221-3/+2
| | | | | | | | | | | | | | | | | | | | | The test code in poison was flawed: as long as one CPP/CC/CXX has fatal poisoning enabled then the test passes. However, at the moment due to a bad rebase only CPP has fatal poisoning and CC/CXX do not. Rewrite the do_compile() task to more carefully check the output so the test harness itself just has to bitbake the recipe. Note that this results in the test failing: ERROR: poison-1.0-r0 do_compile: C Compiler is not poisoned. Exit status 0, output: cc1: warning: include location "/usr/include" is unsafe for cross-compilation [-Wpoison-system-directories] ERROR: poison-1.0-r0 do_compile: C++ Compiler is not poisoned. Exit status 0, output: cc1plus: warning: include location "/usr/include" is unsafe for cross-compilation [-Wpoison-system-directories] (From OE-Core rev: 5b413d1fdb4bdbaec86d630bb52c3ccf68aae789) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3-cffi: Add missing pkgconfig dependencyRichard Purdie2025-01-221-1/+1
| | | | | | | | | | With gcc posioning fixed, this recipe showed errors, using an incorrect include path looking at the host system. If pkgconfig is present, the correct include paths are used. Therefore add the missing dependency. (From OE-Core rev: 6cf0aaa3af276694709369b6007f629862e21559) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base: Switch virtual/cross-XXX to be under recipe specific providersRichard Purdie2025-01-215-4/+7
| | | | | | | | | | | | | | | Currently, providers are set on a global config basis. This change allows for a select set of providers to be configured using BB_RECIPE_VIRTUAL_PROVIDERS on a per recipe basis. This would allow for the selection of virtual/cross-cc as gcc or clang for example. The PROVIDERS are removed from the recipes so that if a version of the dependency accidentally slips through, the build will fail and the user can correct the issue. (From OE-Core rev: 6eeab1a5d7f23917b94c130e417d59afb757b546) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/recipes: Switch virtual/XXX-gcc to virtual/cross-cc (and c++/binutils)Richard Purdie2025-01-2132-62/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The idea of the base class dependency is to say "yes, I need a C cross compiler" and this was never meant to be gcc specific. Looking at the codebase, whilst we code triplets into this, it does overcomplicate things as there are only ever limited, "target", "sdk" and the class extended versions like mutlilib. After much thought, we can simplify this to virtual/cross-cc and virtual/nativesdk-cross-cc. This lets us remove the "gcc" specific element as well as removing the over complicated triplet usage. At the same time, change the much less widely used "g++" variant to "c++" for similar reasons and remove the triplet from virtual/XXX-binutils too. Backwards compatibility mappings could be left but are just going to confuse things in future so we'll just require users to update. This simplification, whilst disruptive for any toolchain focused layers, will make improved toolchain selection in the future much easier. Since we no longer have overlapping variables, some code for that can just be removed. The class extension code does need to start remapping some variables but not the crosssdk target recipe names. This patch is in two pieces, this one handles the renaming with the functional changes separate in a second for easier review even if this breaks bisection. (From OE-Core rev: 4ccc3bc8266c327bcc18c9a3faf7536210dfb9f0) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-yocto: make kernel commits reproducibleEnrico Jörns2025-01-212-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The git commit hashes for the kernel checkout are not reproducible under certain conditions: - If the git repository is initialized on an archive (rather than a git), the initial git commit not only has the current user name set, it also uses the current system time as committer and author date. This will affect the initial git hash and thus all subsequent ones. - The patches applied by the kern-tools have a valid author and date. However, their committer again depends on the user building the BSP. This is an issue, for example, if one compiles a kernel with CONFIG_LOCALVERSION_AUTO enabled where the commit hash lands into the kernel and thus the package version. This not only makes the package version non-reproducible, but also leads to version mismatches between kernel modules built against a fresh kernel checkout and the kernel retrieved from the sstate cache. The class uses 'check_git_config' from utils.bbclass, but this only sets the git user and only if none existed before. Thus it doesn't really help here. Since in Git the committer information can be set only from the environment variables GIT_COMMITTER_NAME, GIT_COMMITTER_EMAIL, and GIT_COMMITTER_DATE, we introduce a helper function to set those and apply the author settings in the same way. As values simply use PATCH_GIT_USER_NAME, PATCH_GIT_USER_EMAIL (from patch.bbclass) and SOURCE_DATE_EPOCH. For convenience, put the new helper 'reproducible_git_committer_author' into utils.bbclass next to 'check_git_config' so others can use it, too. Using this helper in kernel-yocto.bbclass makes the committer and author date/name/email for the initial commit reproducible, as well as the committer name/email for the patches applied with kern-tools. For debugging purpose, allow disabling the reproducibility features by setting KERNEL_DEBUG_TIMESTAMPS to "1". Suggested-by: Felix Klöckner <F.Kloeckner@weinmann-emt.de> (From OE-Core rev: aab4517b4649917abd519ea85a20fd9d51bf3d99) Signed-off-by: Enrico Jörns <ejo@pengutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* fmt: fix build with GCC 9.4Ross Burton2025-01-212-1/+28
| | | | | | | | | | | fmt-native is needed to build ccache-native, and the compile fails on hosts with GCC 9.4 (such as Ubuntu 20.04). Backport a patch to fix this issue. (From OE-Core rev: 7dbb984f86d04e79d2311411cd8b775e2674b5f3) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-firmware: upgrade 20241210 -> 20250109Dmitry Baryshkov2025-01-211-2/+5
| | | | | | | | | | | | | | The linux-firmware now requires GNU Parallel in order to run parallel builds. As the GNU Parallel is not a part of oe-core (the recipe is present in meta-oe) disable parallel builds. License-Update: additional files (From OE-Core rev: 16e86b63696177a6f8b8f73b41e55dd6389f9e1c) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image.bbclass: enable systemd user servicesArtur Kowalski2025-01-211-0/+1
| | | | | | | | | | Run systemctl preset-all with --global flag so user unit's are enabled the same way system units are. (From OE-Core rev: cdc3b3028f6d71788b5fdd99436f69fbf18f613e) Signed-off-by: Artur Kowalski <arturkow2000@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd.bbclass: support user units in postinst and prerm hooksArtur Kowalski2025-01-211-0/+14
| | | | | | | | | | | | | Handle user units in a manner similar to system units where possible. Not everything is supported by systemd, but systemd limitations only affect runtime package management - during update user services are not reloaded/restart and each user must re-login or manually restart services. (From OE-Core rev: ce62b88d8f71368e356b6409ada46a34a6017ddf) Signed-off-by: Artur Kowalski <arturkow2000@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd.bbclass: update postinst and prerm hooksArtur Kowalski2025-01-211-6/+12
| | | | | | | | | | | | Since SYSTEMD_SERVICE_ESCAPED may contain both system and user services we need to filter out user services in call to systemctl. Introduce helper systemd_filter_services() which takes space-separated list of services and returns services of requested type. (From OE-Core rev: ec548b274d56b2c7a2663b70200df95a49e7452c) Signed-off-by: Artur Kowalski <arturkow2000@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd.bbclass: properly handle user units in systemd_create_presetsArtur Kowalski2025-01-211-4/+25
| | | | | | | | | | | Previously user units were handled the same way as system units, that is all preset files were created in system-preset directory, but user presets should be in user-preset directory. (From OE-Core rev: 0218542d80723ec314a648af8e9649806c3a51aa) Signed-off-by: Artur Kowalski <arturkow2000@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>