summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* insane/do_qa_unpack: add checks that ensure S is set correctlyAlexander Kanavin2025-06-201-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | 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` (From OE-Core rev: 46480a5e66747a673041fe4452a0ab14a1736d5e) 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>
* recipetool/devtool: calculate source paths relative to UNPACKDIRAlexander Kanavin2025-06-208-31/+31
| | | | | | | | | | | | | | | | | | | | 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. (From OE-Core rev: c326ca8aeb2bf0f7719e43921d10efd5dedc7b2a) 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>
* meta: set S from UNPACKDIR in recipes that use only local filesAlexander Kanavin2025-06-2086-172/+87
| | | | | | | | | | | | | | | 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. (From OE-Core rev: f64b7e5fb3181734c8dde87b27e872a026261a74) 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>
* meta: set S to be in UNPACKDIR in recipes that explicitly set SAlexander Kanavin2025-06-20109-109/+109
| | | | | | | | (From OE-Core rev: 7321cc17ae5483f17fe9cdffea7b62acd9d9c3a2) 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>
* gcc/clang: set S to be in UNPACKDIRAlexander Kanavin2025-06-204-5/+8
| | | | | | | | | | | | This and some further commits allows removing the 'backwards compatibility magic' in do_unpack that moves unpacked sources to where S is set to. (From OE-Core rev: 6b2f14cd2d110113f1065bdc818ec4e9dbd4b054) 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>
* bitbake.conf: set S to be in UNPACKDIR rather than WORKDIRAlexander Kanavin2025-06-201-1/+1
| | | | | | | | | | | | 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. (From OE-Core rev: 50439f56b2d94769de928c70eebdfd4b47794fb4) 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>
* bitbake.conf: set UNPACKDIR to just 'sources' and not 'sources-unpack'Alexander Kanavin2025-06-201-1/+1
| | | | | | | | | | | This is shorter and doesn't include the unnecessary task name, just the result of it: source trees and files. (From OE-Core rev: f19ea21c8ebf8ce211b14e69b27c82faf080185a) 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>
* meta: remove S in recipes that fetch from git via setting ↵Alexander Kanavin2025-06-20200-239/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. (From OE-Core rev: f80c07019ddadaf9c5fb890faabfda7920ecd15e) 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>
* lib/bbconfigbuild/configfragments: add support for listing and enabling ↵Alexander Kanavin2025-06-201-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | 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) (From OE-Core rev: 47cb11db810bef36e791af84be1d680fd99301c7) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: enable built-in fragments for MACHINE and DISTROAlexander Kanavin2025-06-201-1/+2
| | | | | | | | | | | | | | | | | 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" (From OE-Core rev: e959f916b4d2bb8af2e6a04116de9430bbde0c9f) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: parse/ast: add support for 'built-in' fragmentsAlexander Kanavin2025-06-203-5/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When reviewing proposed fragments to add settings for DISTRO and MACHINE, RP noted that such fragments only add clutter and overhead, and there's no need to maintain them as separate files. Rather when bitbake sees 'fragmentvar/fragmentvalue' it can expand that into FRAGMENTVAR = "fragmentvalue". To achieve that, 'addfragments' directive is extended with a parameter that sets the name of the variable that holds definitions of such built-in fragments, for example like this: "machine:MACHINE distro:DISTRO" Then each enabled fragment name is matched against these definitions and the respective variable is set, e.g. 'machine/qemuarm' would match 'machine:MACHINE' and result in MACHINE set to 'qemuarm'. This happens before any fragment files are looked up on disk, and no such lookup happens if there was a match, which should prevent possible misuse of the feature. So the builtin fragment definition is also an allowlist for them. Please also see the patches for oe-core that show an application of the feature. (Bitbake rev: 3b9d7bea915dc7f10e845854f1dae325743f9456) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2/git: allow overriding default unpack directory with a variableAlexander Kanavin2025-06-201-1/+1
| | | | | | | | | | | This will allow setting the variable in oe-core such that it matches S, which in turn will allow dropping S from almost all git:// fetching recipes, and not having to set it in newly written ones. (Bitbake rev: 378db0fdd95f8704fccd852452555bfddcad384d) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/utils/command: fast-path get_bb_var()Ross Burton2025-06-201-1/+14
| | | | | | | | | | | | | | | 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. (From OE-Core rev: fafe77879aa6225aa8b5187ff590bb4998cbf987) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rust-target-config.bbclass: Update for new riscv TUNE_FEATURESMark Hatle2025-06-202-26/+41
| | | | | | | | | | | | | | | | 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. (From OE-Core rev: 88b59db87d2c65e5be0f3fee1ebf4ee64ef05f18) Signed-off-by: Mark Hatle <mark.hatle@amd.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* riscv tunes: ISA Implementation of RISC-V tune featuresMark Hatle2025-06-206-38/+349
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. (From OE-Core rev: bcaf298a146dfd10e4c8f44223ea083bc4baf45c) Signed-off-by: Mark Hatle <mark.hatle@amd.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Add SPDX_INCLUDE_COMPILED_SOURCES documentationDaniel Turull2025-06-202-0/+25
| | | | | | | | | | | | | | | Adding documentation for the new feature to store in SPDX only the compiled sources. Merged in oe-core: c6a2f1fca76fae4c3ea471a0c63d0b453beea968 - spdx: add option to include only compiled sources CC: Antonin Godard <antonin.godard@bootlin.com> (From yocto-docs rev: 4dbc63ed1381fe47723d6ba5b7baf2a3b7fd19aa) Signed-off-by: Daniel Turull <daniel.turull@ericsson.com> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bsp-guide: update all of section 1.8.2 to reflect current beaglebone conf fileRobert P. J. Day2025-06-201-18/+9
| | | | | | | | (From yocto-docs rev: 5fc7794e9ae326eead16552726d74ea801fe535b) Signed-off-by: "Robert P. J. Day" <rpjday@crashcourse.ca> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bsp-guide: update lonely "4.12" kernel reference to "6.12"Robert P. J. Day2025-06-201-1/+1
| | | | | | | | | | | To accompany earlier updating of kernel version, update this lonely reference to be consistent. (From yocto-docs rev: e26c2018cd663de91ee08e0cba55eda1a4c30210) Signed-off-by: "Robert P. J. Day" <rpjday@crashcourse.ca> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* document how to use :doc: directiveQuentin Schulz2025-06-202-1/+20
| | | | | | | | | | | Let's specify that we are only expecting "absolute" paths in the docs directive for local document referencing. (From yocto-docs rev: 2729250bf1068814e5106d1e71796e8a505963d7) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tree-wide: make the :doc: directive use absolute pathsQuentin Schulz2025-06-2014-24/+24
| | | | | | | | | | | | | | | | | | | This makes all :doc: directives use an absolute paths (with the root directory being documentation/ in the repo). This is then consistent across the whole source and is easier to review and move files around, you just need to know where a file is located relative to documentation/ directory and use that. This gets rid of paths looking in parent directory with '..' as well as expecting a file to be in the same directory as the other file it points to via the :doc: directive. (From yocto-docs rev: b9457f2005b0bea49c54e9727eb30e9458084886) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bsp guide: update kernel version example to 6.12Robert P. J. Day2025-06-201-8/+13
| | | | | | | | | | | | Change the sample kernel version being used from 4.4 to a more modern 6.12. (From yocto-docs rev: 1bad12b6ccfe1c0d26918926176a0c743568de26) Signed-off-by: "Robert P. J. Day" <rpjday@crashcourse.ca> Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* yp-intro: new doc reference is missing leading slashRobert P. J. Day2025-06-201-1/+1
| | | | | | | | | | | The new ":doc:" reference for yocto-project-supported-features appears to be missing a leading slash, causing HTML generation to fail. (From yocto-docs rev: 4114399711ff82893a10c9eba0ff66c9af7b1c9e) Signed-off-by: "Robert P. J. Day" <rpjday@crashcourse.ca> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* migration-guide: add release notes for 5.0.10Lee Chee Yang2025-06-202-0/+209
| | | | | | | | (From yocto-docs rev: 5bc4c98987ff809294541657b20d2e44f70e1d2c) Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* overview-manual: small number of pedantic cleanupsRobert P. J. Day2025-06-201-13/+12
| | | | | | | | | | | | | | | | In Sections 4.3.1 and 4.3.2 of the Overview Manual, a bit of tidying including: - provide full list of packaging options - add monospaced rendering where appropriate - fix broken "ref" - make capitalization consistent (From yocto-docs rev: 1cf769e3c8a8442cd05449dc97e91ad482d635f3) Signed-off-by: "Robert P. J. Day" <rpjday@crashcourse.ca> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* migration-5.3: replace kernel-fitimage by kernel-fit-imageAdrian Freihofer2025-06-201-0/+42
| | | | | | | | | | | Add migration documentation for users moving from the removed kernel-fitimage.bbclass to the new kernel-fit-image.bbclass. (From yocto-docs rev: 4c3552940a6ff89824845473317b7f5d741d4635) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* release-notes: drop references to kernel-fitimageAdrian Freihofer2025-06-202-3/+3
| | | | | | | | | | | This commit drops references to the kernel-fitimage.bbclass to prevent from build errors when the label is no longer available. (From yocto-docs rev: 3610cfd76d1491d9ecff9816ab36df8d1b2a83c6) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ref-manual: replace kernel-fitimage by kernel-fit-imageAdrian Freihofer2025-06-202-100/+179
| | | | | | | | (From yocto-docs rev: 93c92dd2837708ba00a4ca47667e60d7bb09430b) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ref-manual: classes: nativesdk: move note to appropriate sectionQuentin Schulz2025-06-201-10/+10
| | | | | | | | | | | | | | The nativesdk- prefix to the recipe filename should only be used when using the inherit method as the BBCLASSEXTEND method will do some magic when generating the "implicit" name of the recipe. This matches the instructions for the native class. (From yocto-docs rev: 15fe239e1e62b9add737aa732dd7f5e9948ee03d) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ref-manual: classes: reword to clarify that native/nativesdk options are ↵Quentin Schulz2025-06-201-2/+4
| | | | | | | | | | | | | | | | | | exclusive We explain how to create a native (nativesdk) recipe in two different ways via a bullet list but reading quickly the instructions may mislead one into doing both options whereas they are incompatible. This rewords both the nativesdk and native sections so that the second bullet point starts with an Or and explicit that this applies to target recipes. (From yocto-docs rev: 6d0d338a5f2686ddeee5eed7b6e05f3db800d33a) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* go: set status of CVE-2024-3566Peter Marko2025-06-192-0/+2
| | | | | | | | | | | | | | | | | 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 (From OE-Core rev: c8ce6710d864d237fdf67d2c3d3aa0f0970a2a05) Signed-off-by: Peter Marko <peter.marko@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3-pytest: upgrade 8.3.5 -> 8.4.1Trevor Gamblin2025-06-191-2/+4
| | | | | | | | | | | | | | | | | 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 (From OE-Core rev: 908c5535506592af654e7efac5b4a28a05da23f6) 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>
* maintainers.inc: sort Python recipes alphabeticallyTrevor Gamblin2025-06-191-10/+10
| | | | | | | | | | | There are a small number of these that are out of place, so re-sort the entire list to clean it up. (From OE-Core rev: 76d681c4b17c9169238c571bae7e25df2040960c) 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>
* python3: upgrade 3.13.4 -> 3.13.5Trevor Gamblin2025-06-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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) (From OE-Core rev: 10a6b07637ac818a28da5117b1f46f9563453486) 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>
* python3-setuptools-scm: upgrade 8.2.1 -> 8.3.1Trevor Gamblin2025-06-191-1/+1
| | | | | | | | | | Changelog: https://github.com/pypa/setuptools-scm/compare/v8.3.0...v8.3.1 (From OE-Core rev: 7ebc8e0b7a18ec28c9c89e3986bd479085abe9dd) 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>
* python3-colorama: add recipeTrevor Gamblin2025-06-192-0/+11
| | | | | | | | | | | | | 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] (From OE-Core rev: 8c06239fdcf983dac759c7d80d6326807c993622) 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>
* oeqa/selftest: add new test for toolchain switchingRoss Burton2025-06-191-0/+71
| | | | | | | | | | | | | | Add a basic test for the toolchain switching code: set the toolchain to GCC by default but Clang for a specific recipe, and verify that two recipes are built with the expected compiler. This works because before we strip the installed binaries there is a .comment segment that contains the list of toolchains used. (From OE-Core rev: 7988c32191927f1c6db422c959eab7a03dfeda04) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/esdk: remove postconfig argumentRoss Burton2025-06-191-5/+1
| | | | | | | | | | | | | | | | Discovered when looking for users of get_bb_var()'s postconfig argument, this wrapper around runCmd() has a postconfig argument that has odd behaviour: it _appends_ the new configuration to local.conf instead of having them used for this specific run (unlike the other functions in commands.py) None of the eSDK tests use this functionality, so remove it. Future test cases that need to write further configuration should do so directly. (From OE-Core rev: 6196d096b95b36f8b72b4049d5479f8f23e7891d) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/test-remote-image: remove useless postconfig argumentsRoss Burton2025-06-191-6/+3
| | | | | | | | | | I can't see a reason for this script to need to use postconfig files to bounce a variable assignment through another, so remove them. (From OE-Core rev: 4a919459feb90ab8a8b9d10381486b77ad5aec52) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cmake: Correctly handle cost data of tests with arbitrary chars in nameMoritz Haase2025-06-193-1/+204
| | | | | | | | | | | | | | | | | | | | | ctest automatically optimizes the order of (parallel) test execution based on historic test case runtime via the COST property (see [0]), which can have a significant impact on overall test run times. Sadly this feature is broken in CMake < 4.0.0 for test cases that have spaces in their name (see [1]). This commit backports the upstream fix. As repeated test runs are expected to mainly take place inside the SDK, the patch is only applied to 'nativesdk' builds. [0]: https://cmake.org/cmake/help/latest/prop_test/COST.html [1]: https://gitlab.kitware.com/cmake/cmake/-/issues/26594 Reported-By: John Drouhard <john@drouhard.dev> (From OE-Core rev: dcbaf42dd74cc0bda7254856589613718ed3f057) Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dropbear: add xauth runtime recommends dependency on x11 DISTRO_FEATUREAndrej Valek2025-06-191-3/+3
| | | | | | | | | | | | Change enable-x11-forwarding PACKAGECONFIG to x11, while we can rely directly on X11 DISTRO_FEATURE. Previously when enable-x11-forwarding was used, the XAUTH_COMMAND failed due to missing xauth. So add xauth to runtime recommends dependency and enable this behavior as default. (From OE-Core rev: f0d2374b94a0e5d60ceed17998cd97f85b0486f6) Signed-off-by: Andrej Valek <andrej.v@skyrain.eu> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gst-examples: correct upstream version checkAlexander Kanavin2025-06-191-1/+1
| | | | | | | | | | If start-of-line is not enforced, then bogus tag 'gstreamer-sharp-1.13.0.1' would match as 13.0.1. (From OE-Core rev: 094cbd4f6a9f57eb146207355a921eaae44012ab) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-selftest: fitimage: Add test for signing U-Boot FIT image without SPLJamin Lin2025-06-191-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a new selftest case `test_sign_uboot_fit_image_without_spl` to verify that the build can correctly generate and sign a U-Boot FIT image in a scenario where no SPL is used. Background: - Some boards build only the U-Boot proper FIT image and do not require an SPL. - The signing flow must handle this case gracefully: generate the ITS, sign the FIT image, and skip signing/injecting a key into the SPL DTB. What this test does: 1) Enables `UBOOT_FITIMAGE_ENABLE` and `SPL_SIGN_ENABLE` but explicitly sets `SPL_DTB_BINARY` to an empty string to indicate that no SPL is present. 2) Verifies that the U-Boot ITS and FIT image are built successfully. 3) Confirms that the generated ITS file includes signature metadata as requested. 4) Dumps the FIT image to ensure that the signature nodes exist. 5) Confirms that the log for `do_uboot_assemble_fitimage` shows the expected mkimage/mkimage_sign invocation. This ensures that signing works correctly even when only the U-Boot proper is built, which matches real-world configurations that do not require an SPL. (From OE-Core rev: cdb4f4249a386113bebc65918a1b088c64e59182) Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uboot-sign.bbclass: Refactor condition checks to use && and || instead of -a ↵Jamin Lin2025-06-191-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | and -o This commit cleans up and modernizes the shell condition expressions in `uboot-sign.bbclass` to follow best practices for portable and reliable shell usage. Key changes: - Replace legacy `[ -a ]` and `[ -o ]` with explicit `[ ] && [ ]` and `[ ] || [ ]`. Modern POSIX and busybox sh recommend using `&&` and `||` instead of `-a` and `-o` because `-a` and `-o` are less robust and can cause parsing ambiguities in some shells. - Simplify `concat_dtb()` by moving the DTB existence check to the top and using early `return` to avoid deep nesting. - Remove redundant fallback `else` blocks; use clearer control flow with direct checks. This improves maintainability, reduces shell syntax pitfalls, and aligns with current shell scripting best practices. References: - POSIX recommends avoiding `-a` and `-o` in `[ ]` and using explicit `&&` and `||`: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/test.html (From OE-Core rev: d2740e39800a044d557b620e38ca0ac1b8c6d030) Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uboot-sign: Support signing U-Boot FIT image without SPLJamin Lin2025-06-191-21/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the signing flow in "uboot-sign.bbclass" assumed that SPL was always present and that the FIT signing process must inject the public key into the SPL DTB. This made it inflexible for use cases where only the U-Boot proper FIT image is built and signed, with no SPL binary at all. This change introduces the following adjustments: - The `SPL_DTB_BINARY` variable can be explicitly set to an empty string to indicate that no SPL is present. - The signing logic checks `SPL_DTB_BINARY` and skips injecting the key or verifying the SPL DTB if it is empty. - The FIT image generation and deployment are always performed if `UBOOT_FITIMAGE_ENABLE` is enabled, regardless of the SPL settings. - The deploy helper now uses a single check on `SPL_DTB_BINARY` to decide whether to deploy the signed SPL DTB. Now the sign step checks if SPL_DTB_BINARY is empty: If present, it signs the FIT image and injects the public key into the SPL DTB, then verifies both. If empty, it only signs the FIT image and generates the ITS with the signature node, but does not attempt to verify or add the key to a non-existent SPL DTB. Key Behavior Explained If SPL_DTB_BINARY is empty, we assume there is no SPL. If UBOOT_FITIMAGE_ENABLE=1, we always create the FIT image and ITS. If SPL_SIGN_ENABLE=1, we always sign the FIT image, but only inject the key into the SPL DTB if it exists. Example usage: UBOOT_FITIMAGE_ENABLE = "1" SPL_SIGN_ENABLE = "1" SPL_DTB_BINARY = "" This means: - Generate and sign the FIT image. - Do not attempt to sign or deploy an SPL DTB. This aligns the implementation with real scenarios where some boards do not require an SPL. (From OE-Core rev: 7ad6acd8841752a5b75b8e2666bca5b609347cc1) Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libpng: Add ptestPoonam Jadhav2025-06-193-2/+48
| | | | | | | | | | | | Install libpng test-suite to run it as a ptest. As the test-suite takes more than 30 seconds to run, add libpng-ptest to PTESTS_SLOW in ptest-packagelists.inc (From OE-Core rev: 8dca5305c950e6a06b3f344ffdbbb7386d802095) Signed-off-by: Poonam Jadhav <poonam.jadhav@kpit.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* improve_kernel_cve_report: add script for postprocesing of kernel CVE dataDaniel Turull2025-06-191-0/+467
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adding postprocessing script to process data from linux CNA that includes more accurate metadata and it is updated directly by the source. Example of enhanced CVE from a report from cve-check: { "id": "CVE-2024-26710", "status": "Ignored", "link": "https://nvd.nist.gov/vuln/detail/CVE-2024-26710", "summary": "In the Linux kernel, the following vulnerability [...]", "scorev2": "0.0", "scorev3": "5.5", "scorev4": "0.0", "modified": "2025-03-17T15:36:11.620", "vector": "LOCAL", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H", "detail": "not-applicable-config", "description": "Source code not compiled by config. ['arch/powerpc/include/asm/thread_info.h']" }, And same from a report generated with vex: { "id": "CVE-2024-26710", "status": "Ignored", "link": "https://nvd.nist.gov/vuln/detail/CVE-2024-26710", "detail": "not-applicable-config", "description": "Source code not compiled by config. ['arch/powerpc/include/asm/thread_info.h']" }, For unpatched CVEs, provide more context in the description: Tested with 6.12.22 kernel { "id": "CVE-2025-39728", "status": "Unpatched", "link": "https://nvd.nist.gov/vuln/detail/CVE-2025-39728", "summary": "In the Linux kernel, the following vulnerability has been [...], "scorev2": "0.0", "scorev3": "0.0", "scorev4": "0.0", "modified": "2025-04-21T14:23:45.950", "vector": "UNKNOWN", "vectorString": "UNKNOWN", "detail": "version-in-range", "description": "Needs backporting (fixed from 6.12.23)" }, CC: Peter Marko <peter.marko@siemens.com> CC: Marta Rybczynska <rybczynska@gmail.com> (From OE-Core rev: e60b1759c1aea5b8f5317e46608f0a3e782ecf57) Signed-off-by: Daniel Turull <daniel.turull@ericsson.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* build-appliance-image: Update to master head revision5.3_M1Richard Purdie2025-06-181-1/+1
| | | | | | (From OE-Core rev: 826ab8dde34882c3ef705f715d8808e46bbedcde) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libcheck: disable subunit supportRoss Burton2025-06-182-2/+46
| | | | | | | | | | | | | | | We don't have a recipe for subunit in core (or any layer in the layer index), and unfortunately a bug in the CMakeLists means that the native build can detect subunit on the host (so host contamination) and only half-enable it, so the build fails. Take a patch from upstream's github to add an option for subunit, and explicitly disable it. (From OE-Core rev: 155f0f65fa0f08a4586d3c9a02976f43a10b08aa) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libcheck: remove obsolete patchRoss Burton2025-06-182-21/+1
| | | | | | | | | | This patch is specific to the autotools build of libcheck, but we use CMake now. (From OE-Core rev: 98091331829bd88b57fef5b811a4117b8db16032) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* coreutils: fix CVE-2025-5278Chen Qi2025-06-182-0/+113
| | | | | | | | | | Backport patch to fix CVE-2025-5278. (From OE-Core rev: 1bada55b3e76d9e5e7989f7229d5f25c8fd5ea89) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>