summaryrefslogtreecommitdiffstats
path: root/meta
Commit message (Collapse)AuthorAgeFilesLines
* classes/create-spdx-2.2: Handle empty packagesJoshua Watt2024-07-131-41/+42
| | | | | | | | | | When combining an SPDX document, the package list might be empty (e.g. a baremetal image). Handle this case instead of erroring out (From OE-Core rev: baf4e360f6e65a5e9aff2def69d2a720f38f92b2) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* selftest: sstatetests: Exclude all SPDX tasksJoshua Watt2024-07-131-2/+1
| | | | | | | | | | | SPDX 3.0 introduces a bunch of new SPDX tasks. Instead of explicitly enumerating them all, modify the regex to match 'create_.*spdx' which will cover all of the SPDX 2.0 and SPDX 3.0 tasks (From OE-Core rev: 1d007eaf0155b5ac1c90a15634f7b1473743a4bd) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes-recipe/baremetal-image: Add image file manifestJoshua Watt2024-07-131-3/+29
| | | | | | | | | | | Downstream tasks may want to know what image files were written so write out a manifest in do_image_complete. The format of the manifest is the same as the one in image.bbclass (From OE-Core rev: 4c4f1e020533c26f90e95960745f6de90d77e64e) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes-recipe: nospdx: Add classJoshua Watt2024-07-133-6/+15
| | | | | | | | | Adds a class that allows recipes to opt out of generating SPDX (From OE-Core rev: 170277da0dc34e3f797451473ebfbde82922f593) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes-recipe/image_types: Add SPDX_IMAGE_PURPOSE to imagesJoshua Watt2024-07-132-0/+3
| | | | | | | | | | Adds the variable overrides to set the SPDX image purpose for various image types (From OE-Core rev: e1a8f59462d88c92dfdb3632ca95ded094c9472a) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes-global/staging: Exclude do_create_spdx from automatic sysroot extensionJoshua Watt2024-07-131-1/+8
| | | | | | | | | | | | | | | | do_create_spdx is a outlier in that it doesn't need the RSS to be extended just because it depends on do_populate_sysroot. In fact, it only depends on do_populate_sysroot so it can see the actual recipes sysroot, and attempting to extend the sysroot can cause problems for some recipes (e.g. if a recipe does do_populate_sysroot[noexec] = "1") As such, explicitly exclude do_create_spdx from extending the sysroot just because it depends on do_populate_sysroot. (From OE-Core rev: 8b506f327838b885bfeb2cf144f43c8be68b8591) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes-recipe/image: Add image file manifestJoshua Watt2024-07-131-0/+58
| | | | | | | | | | | | Downstream tasks may want to know what image files were written by the do_image family of tasks (e.g. SPDX) so have each task write out a manifest file that describes the files it produced, then aggregate them in do_image_complete (From OE-Core rev: 5e55ed4c5b9d5af3c96b82805af34af1512fc3d1) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* busybox: reconfigure wget https support by default for securityRichard Purdie2024-07-131-3/+3
| | | | | | | | | | | | | | | | | | | | | The default busybox wget https support is suboptimal, it silently ignores checking certificate validity which isn't great for security. Switch our defaults to disable the internal busybox tls code and the https support using it and configure the openssl backend instead. This this is done by spawning an openssl command, we don't need dependencies on openssl for build. For runtime, we can assume people would install openssl if they need/want this. These changes put our default busybox configuration in a more secure initial set of settings. [YOCTO #14125] (From OE-Core rev: 5d4ad13462f12355ff0f2bc1773ab4b1814b165a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meson: Fix native meson configRichard Purdie2024-07-131-1/+1
| | | | | | | | | | | | | When the optimization flags were reduced to a single option, a different and clearly untested codepath was used where the output was unquoted. This caused errors when testing meson in the SDK. Use repr() in the single item case as per the multiple item case to correctly quote the output and fix build failures. (From OE-Core rev: 7c2b573e6cbe518f54ea5c3539fc91ed63b80ebf) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/locale: Ensure tests work with ERROR_QA changesRichard Purdie2024-07-131-1/+1
| | | | | | | | | | | | | The recent ERROR_QA changes adding build_deps exposed what were warnings in thi test as it restricts the locales, then builds recipes with locale requirements that were not met (in bash, gawk and python3). Increase the list of generated locales to ensure this patches the recipes being built and hence allowing the build to succeed. (From OE-Core rev: ebe2df8ab6e9d4087f8ddbffbc84eea6c4405738) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/incompatible_lic: Ensure tests work with ERROR_QA changesRichard Purdie2024-07-131-3/+3
| | | | | | | | | Recent changes to ERROR_QA meant that the build was failing in ways the test wasn't expecting. Tweak the tests to ensure those failures don't impact the test. (From OE-Core rev: c206a87f2e7128308e38a046b1dcd8cc43c91125) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: Add packageconfig knob to control tegra gallium driverKhem Raj2024-07-131-0/+3
| | | | | | | (From OE-Core rev: f7c9a635b933b3bfc87c686faa7df00bdbf4d9b5) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* multilib.conf: remove appending to PKG_CONFIG_PATHChangqing Li2024-07-131-9/+0
| | | | | | | | | | | | | | | * Since commit [a23c482cab allarch: only enable allarch when multilib is not used], allarch recipes will also be installed into ${MLPREFIX}recipe-sysroot, so this appending is not needed. * This appending also causes some QA errors. Eg: for lib32-php, the recipe will use 's@${RECIPE_SYSROOT}@@g' to remove host specific path, this appending makes not all the host specific path are matched. (From OE-Core rev: e6e6076f1956c711814c14d76194794d950e45f8) Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Further cleanup compiler optimization flagsRichard Purdie2024-07-136-16/+16
| | | | | | | | | | | | | | Move the -pipe option out of the optimization flags and directly into the flags variables since we always use it now. Also move the debug prefix mapping there to match the nativesdk case which already does this. Fix the documentation and two recipe usages to match the change. (From OE-Core rev: 9badf68d78d995f7d5d4cf27e045f029fc6d4044) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Drop obsolete debug compiler optionsRichard Purdie2024-07-131-3/+2
| | | | | | | | | | eliminate-unused-debug-types is a compiler default so we no longer need to specify this. Drop the option. Also drop an obsolete comment about another debug flag. (From OE-Core rev: 1d5162689fbfeddb10fa60e4150ca87f1fa2243e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3-pytest-subtests: upgrade 0.12.1 -> 0.13.0Trevor Gamblin2024-07-131-1/+3
| | | | | | | | | | | | | | | | Changelog (https://github.com/pytest-dev/pytest-subtests/blob/main/CHANGELOG.rst): - Dropped support for EOL Python 3.7. - Added support for -x/--exitfirst (#134). - Hide the traceback inside the SubTests.test() method (#131). The tarball changed to use an underscore instead of a dash, so use PYPI_PACKAGE to account for it. (From OE-Core rev: a02e208d6c4935fe1c0707ec1b79934ef2a3cd30) Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* openssh: factor out sshd hostkey setup to separate functionRasmus Villemoes2024-07-131-22/+26
| | | | | | | | | | | | | | | | | | | | | | | | | Commit 0827c29566 (openssh: allow configuration of hostkey type) broke our setup. We make use of the 'Include /etc/ssh/sshd_config.d/*.conf' and put a hostkeys.conf file in there, configuring the types and locations of the sshd host keys. With that commit, we now get an extra "HostKey /etc/ssh/ssh_host_ecdsa_key" line in the sshd_config. And while we could avoid that by removing all hostkey-* items from PACKAGECONFIG, other people providing their own sshd_config via a .bbappend now have their HostKey settings unconditionally removed by the 'sed' invocations, regardless of PACKAGECONFIG. To make it easier for downstream layers and BSPs to define (and preserve) their own logic for placement and type of sshd host keys, factor out the new logic to a separate shell function. Downstream layers can then simply override that by an empty function and keep the behaviour they used to have. (From OE-Core rev: 09dd5cceecfaa2046f7ed070690b000181723fd2) Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* iptables: remove /etc/ethertypesRasmus Villemoes2024-07-131-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When building an image including iptable built with the libnftnl PACKAGECONFIG, one hits Downloading file:.../oe-rootfs-repo/armv8a/libkmod2 * check_data_file_clashes: Package iptables wants to install file .../rootfs/etc/ethertypes But that file is already provided by package * netbase This used to be handled by 0003-Makefile.am-do-not-install-etc-ethertypes.patch, but that patch got removed with the 1.8.9->1.8.10 upgrade (commit 4616ada82e70). I think the rationale for dropping the patch was wrong; the commit log talks about xtables.conf, which is indeed gone from upstream, but said patch didn't change anything about xtables.conf, it did -dist_conf_DATA = etc/ethertypes etc/xtables.conf +dist_conf_DATA = etc/xtables.conf However, instead of patching iptables to not install ethertypes, and having to forward-port that patch, it is much simpler to just remove the file in this do_install:append. (From OE-Core rev: 3b9c8d5c26a48123d3845c93f6e04d430569e6a2) Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: Drop generating a static libpythonRichard Purdie2024-07-131-0/+1
| | | | | | | | | | | This currently puts a 60MB binary into the recipe sysroots in the native case as well as the implications for the target. Since as far as I know, we don't need/use this, stop generating it by adding a PACKAGECONFIG. It can be enabled by anyone who does actually need to use it. (From OE-Core rev: e42abd3b82c7bac93541b2cf87b553c1a31346cd) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libssh2: remove util-linux-col from ptest dependenciesChen Qi2024-07-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | After util-linux upgrade to 2.40.1, we got the following QA issue on musl: WARNING: libssh2-1.11.0-r0 do_package_qa: QA Issue: libssh2-ptest rdepends on util-linux-col, but it isn't a build dependency? [build-deps] The issue appeared because new version util-linux has disabled building out col on musl[1]. In short, the reason is that col in util-linux requires something that musl does not provide. This 'util-linux-col' dependency was added in 2021, at that time the libssh2's version is 1.9.0. Now the version is 1.11.0 and I tested its ptest, it does not require util-linux-col to succeed. [1] https://github.com/util-linux/util-linux/commit/8886d84e25a457702b45194d69a47313f76dc6bc (From OE-Core rev: 9007de7e388e269028c7c1722f0d7ee76bc5d251) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* util-linux/util-linux-libuuid: upgrade from 2.39.3 to 2.40.1Chen Qi2024-07-139-136/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | License-Update: =============== GPL-2.0 is changed to GPL-2.0-only in README.licensing. The following two patches are removed as they've been there in new release: 0001-login-utils-include-libgen.h-for-basename-API.patch mit-license.patch Other existing patches are refreshed to avoid patch-fuzz error. A new PACKAGECONFIG, lastlog2, is added, which serves as a switch to build Y2038 safe lastlog pam module. This is a new functionality added in 2.40. This 2.40.1 version has the problem of unnecessary remake, causing intermmittent errors at parallel make. The do_compile:prepend is a workaround for this. Upstream issue and PR are: https://github.com/util-linux/util-linux/issues/3061 https://github.com/util-linux/util-linux/pull/3064 do_install is changed to do_install:append, the legacy codes are removed. They've been there since the born of oe-core. I tested with ccache, there's no error. A new dependency, diffutils, is added to ptest. Because the mkswap-offset test case needs 'cmp' from diffutils. The tests/ts/misc/enosys test case is deleted for musl. This is because the test case is comparing error description output and that's libc specific. Results below can demonstrate the case. ''' root@qemux86-64:/usr/lib/util-linux/ptest# cat /usr/lib/util-linux/ptest/tests/expected/misc/enosys-ioctl test_enosys: ioctl r=0 errno=Success test_enosys: ioctl r=-1 errno=Function not implemented test_enosys: ioctl r=-1 errno=Inappropriate ioctl for device test_enosys: ioctl r=-1 errno=Inappropriate ioctl for device test_enosys: ioctl r=-1 errno=Function not implemented root@qemux86-64:/usr/lib/util-linux/ptest# cat /usr/lib/util-linux/ptest/tests/output/misc/enosys-ioctl test_enosys: ioctl r=0 errno=No error information test_enosys: ioctl r=-1 errno=Function not implemented test_enosys: ioctl r=-1 errno=Not a tty test_enosys: ioctl r=-1 errno=Not a tty test_enosys: ioctl r=-1 errno=Function not implemented ''' (From OE-Core rev: 2c5f70e7e73362502a7d8d0773fbd04520b26eef) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd-boot: upgrade from 255.6 to 256Chen Qi2024-07-133-0/+34
| | | | | | | | | | Patch 0001-src-boot-efi-meson.build-ensure-VERSION_TAG-exists-i.patch is added to resolve build time error. (From OE-Core rev: c3f53f641d04109bf88e51e44debb6c74582b5d0) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: upgrade from 255.6 to 256Chen Qi2024-07-1331-1027/+564
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The 'cgroupv2' PACKAGECONFIG is dropped as systemd now only supports cgroupv2. The 'kmod' PACKAGECONFIG is now added 'libkmod' as a runtime dependency. This is because systemd 256 uses dlopen to make use of libkmod, and there's no way for our library detection codes to know this and add such dependency automatically. So we add it explicitly. mime is now inherited because ${datadir}/mime/packages/io.systemd.xml is a mime type file. For musl specific patches, most are refreshed. One old patch is dropped, and four new ones are added. Newly added: build-path.c: avoid boot time segfault for musl adjust header inclusion order to avoid redeclaration undef stdin for references using stdin as a struct member include signal.h to avoid the 'undeclared' error Dropped: src/basic/missing.h: check for missing strndupa (drop reason: systemd does not use strndupa any more) (From OE-Core rev: 89b75b46371d5e9172cb496b461824d8551a2af5) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-fitimage: fix handling of empty default dtbAdrian Freihofer2024-07-131-1/+1
| | | | | | | | | | | Fix error in run.do_assemble_fitimage_initramfs.2779256: line 238: [: =: unary operator expected if FIT_CONF_DEFAULT_DTB is empty. (From OE-Core rev: 19a6eea0951404403dcb5d0deeda8558b1337f82) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-selftest: fitimage fix test_initramfs_bundleAdrian Freihofer2024-07-131-25/+32
| | | | | | | | | | | | | | | | | | | | It looks like most of the assertions of this tests were by-passed because of combinations of invalid regexes and inverted assert statement. Try to fix. Use the variables from the kernel recipe instead of potentially invalid values from get_bb_vars with undefined recipe. Use one get_bb_vars statement instead of many seaparate calls mainly to improve the duration of this test case. Make the test working for an its file with an absolute path to the kernel binary. This will be needed with one of the following commits and does not harm in general. (From OE-Core rev: 741f0cfa4f0025a2823581cab09e0bf14382e54d) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-selftest: fitimage cleanup assertsAdrian Freihofer2024-07-131-55/+21
| | | | | | | | | | | | Use more specific assert statements to make the code more readable and the error messages more verbose. Cleanup the asserts of the test case test_initramfs_bundle. (From OE-Core rev: c7901004138d215612816072f20d367d638d2669) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-selftest: fitimage drop test-mkimage-wrapperAdrian Freihofer2024-07-131-41/+77
| | | | | | | | | | | | | | | | Rather than writing hints into log files and verify the hints can be found, the tests should verify that the artifacts in the deploy folder are correctly signed. This is a much better test. u-boot-tools provide a utility fit_check_sign which can verify the signatures in fit images. Lets use it. grepping in temp/run. or temp/log. files also does not work if the tasks runs from sstate and the corresponding run file is not even generated. (From OE-Core rev: 86e504b4f792eeadd67ea57dd71a62bcb4f16f02) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-selftest: fitimage refactor u-boot-tools-nativeAdrian Freihofer2024-07-131-12/+11
| | | | | | | | | | Eliminate code duplication with a new function. Use get_bb_var instead of bitbake -e | grep. (From OE-Core rev: 0c7b7c5c98217b5f139058533159f61d1989d46e) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* vulkan-samples: fix do_compile error when -Og enabledChangqing Li2024-07-102-0/+53
| | | | | | | | | | | | | | | | | | | | | | When debug build is enabled(-Og is used), vulkan-samples do_compile failed with error: In function 'ZSTD_compressBlock_lazy_generic', inlined from 'ZSTD_compressBlock_greedy' at TOPDIR/tmp-glibc/work/core2-32-wrs-linux/vulkan-samples/git/git/third_party/ktx/lib/basisu/zstd/zstd.c:21914:12: TOPDIR/tmp-glibc/work/core2-32-wrs-linux/vulkan-samples/git/git/third_party/ktx/lib/basisu/zstd/zstd.c:21551:30: error: inlining failed in call to 'always_inline' 'ZSTD_HcFindBestMatch_selectMLS': function not considered for inlining | FORCE_INLINE_TEMPLATE size_t ZSTD_HcFindBestMatch_selectMLS ( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ TOPDIR/tmp-glibc/work/core2-32-wrs-linux/vulkan-samples/git/git/third_party/ktx/lib/basisu/zstd/zstd.c:21736:32: note: called from here | size_t const ml2 = searchMax(ms, ip, iend, &offsetFound); Refer [1], always_inline is not suggested to use with indirect function call, replace always_inline with inline to fix the issue [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107931 (From OE-Core rev: 246de52fe59de0612d1145357c5e904a51363c8c) Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icu: fix make-icudata package configStefan Mueller-Klieser2024-07-101-2/+2
| | | | | | | | | | The location of files changed during unpackdir transition. Adapt dirs to fix custom icu data generation. (From OE-Core rev: bb24c965a55d7e757c1e2a6e76bdb68d2bfb6ce3) Signed-off-by: Stefan Müller-Klieser <s.mueller-klieser@phytec.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* pciutils: remove textrel INSANE_SKIPChen Qi2024-07-101-2/+0
| | | | | | | | | The current pciutils does not have this textrel problem any more. (From OE-Core rev: 48fd3134097ce81c94c1ce67f218d83f1a5c2f6f) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* testimage/postactions: Allow artifact collection to be skippedRichard Purdie2024-07-101-0/+5
| | | | | | | | | | | | | It does not always make sense to collect artifacts and data from the target on failure, e.g. if testing firmware or if the target is not running an SSH server. Allow this by setting TESTIMAGE_FAILED_QA_ARTIFACTS to an empty value. (From OE-Core rev: 7036f814baa6550e0b1ac2db37fcd51960ee9e48) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* hdparm: drop NO_GENERIC_LICENSE[hdparm]Martin Jansa2024-07-101-1/+0
| | | | | | | | | | | | | * the hdparm license text was added in: https://git.openembedded.org/openembedded-core/commit/?id=e9c1f48af10ccb58251ecc7e041babb99b94d6df and now the NO_GENERIC_LICENSE was causing: ERROR: hdparm-9.65-r0 do_populate_lic: QA Issue: hdparm: hdparm is a generic license, please don't use NO_GENERIC_LICENSE for it. [license-no-generic] (From OE-Core rev: 64759473f3e6f3a9f3424575591b83ce9cd14e6c) Signed-off-by: Martin Jansa <martin.jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mc: fix source URLBenjamin Szőke2024-07-101-1/+1
| | | | | | | | | new URL for sources: http://ftp.midnight-commander.org/ (From OE-Core rev: 03c4052718a9b8392b25e1770630317b8cf29fbe) Signed-off-by: Benjamin Szőke <egyszeregy@freemail.hu> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dnf/mesa: Fix missing leading whitespace with ':append'Niko Mauno2024-07-092-2/+2
| | | | | | | | | | | Mitigate occurrences where ':append' operator is used and leading whitespace character is obviously missing, risking inadvertent string concatenation. (From OE-Core rev: 314041fd126a4800a5a5d9fcd84c525319479256) Signed-off-by: Niko Mauno <niko.mauno@vaisala.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/utils/postactions: transfer whole archive over ssh instead of doing ↵Alexis Lothoré2024-07-081-10/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | individual copies Fixes [YOCTO 15536] The postactions retrieval actions currently rely on scp executed individually on any file or directory expanded from TESTIMAGE_FAILED_QA_ARTIFACTS. Unfortunately, symlinks are not preserved with this mechanism, which lead to big storage space consumption. Things may go even worse if those symlinks create some circular chains. This mechanism then needs to be updated to preserve symlinks instead of following them during copy. There are multiple ways to do it: - create a local archive on the target and execute scp on this file - use rsync instead of scp for all files - create an archive and pipe it to ssh instead of storing it onto the target The first solution may create pressure on targets storage space, while the second assumes that rsync is installed on the target, which may not be true. So the third one is a compromise: tar is very likely present, at least through busybox, and no disk space is used on the target. Replace the current per-file scp call by a single call to tar run on the target. Retrieve the generated compressed archive directly from SSH output, and feed it to another tar process but on host, to uncompress and extract it at the same place as before. (From OE-Core rev: 4aeb10aa38efc6768928fbb74985e36e972b8e46) Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/ssh: allow to retrieve raw, unformatted ouputAlexis Lothoré2024-07-081-8/+8
| | | | | | | | | | | | | | | | | | | | The ssh target is currently well tailored to easily retrieve textual output from a command run on a remote target. It could also be used to retrieve raw data from a command run onto a remote target (for example, to feed this data directly to another program), but it currently suffers two minor issues preventing such use case: - stderr is piped to stdout, so any error log will be mixed in the program output - the final output is decoded as utf-8 and stripped Allow to return the raw, unmodified output by adding an optional "raw" parameter. Keep it to False by default to preserve the current behavior. When enabled, do not return a string but the raw output as bytes. (From OE-Core rev: 8d05dc6e2284b7ed7c32a8215b9c8bf6f7dabf00) Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* pixman: fix do_compile errorChangqing Li2024-07-082-0/+37
| | | | | | | | | | | | | | | | | | | When debug build is enabled(-Og is used), pixman-native do_compile failed with error: In function ‘combine_inner’, inlined from ‘combine_soft_light_ca_float’ at ../pixman-0.42.2/pixman/pixman-combine-float.c:655:1: ../pixman-0.42.2/pixman/pixman-combine-float.c:370:5: error: inlining failed in call to ‘always_inline’ ‘combine_soft_light_c’: function not considered for inlining 370 | combine_ ## name ## _c (float sa, float s, float da, float d) Refer [1], always_inline is not suggested to use with indirect function call, replace always_inline with __inline__ to fix the issue [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107931 (From OE-Core rev: 4ab0d5c24b32a80432d9cfa6c904027b8a6710b5) Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* testexport: fallback for empty IMAGE_LINK_NAMEKonrad Weihmann2024-07-081-1/+1
| | | | | | | | | | | | if IMAGE_LINK_NAME is set empty to disable the symlinking for image artifacts in deploy, testexport fails, as the path assembly is incorrect. In that case fallback to IMAGE_NAME (From OE-Core rev: 0c1d098e6dd08fa3a5aafca656457ac6badcef89) Signed-off-by: Konrad Weihmann <kweihmann@outlook.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* go: upgrade 1.22.4 -> 1.22.5Jose Quaresma2024-07-0816-66/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - refresh patches with devtool Upgrade to latest 1.22.x release [1]: $ git --no-pager log --oneline go1.22.4..go1.22.5 8e1fdea831 (tag: go1.22.5, origin/release-branch.go1.22) [release-branch.go1.22] go1.22.5 c2d4f852ce [release-branch.go1.22] cmd/link: handle dynamic import variables on Darwin in plugin mode 3222951439 [release-branch.go1.22] net/http: send body or close connection on expect-100-continue requests ceaf26ecce [release-branch.go1.22] cmd/compile: mark pointer to noalg type as noalg dfe4dbf8c0 [release-branch.go1.22] os/exec: on Windows look for extensions in Run if not already done 3560cf0afb [release-branch.go1.22] runtime: always update stack bounds on cgocallback 5159a7193a [release-branch.go1.22] cmd/compile: put constants before variables in initialization order 11b861e459 [release-branch.go1.22] go/types, types2: report error for floating-point iteration variable 81fc616267 [release-branch.go1.22] crypto/tls: don't call tlsrsakex.IncNonDefault with FIPS 14f0251867 [release-branch.go1.22] cmd/cgo/internal/swig: force use of lld for LTO tests on the builders ab60a7bc18 [release-branch.go1.22] cmd/cgo/internal/testsanitizers: make the libfuzzer tests all short 4c97e883b5 [release-branch.go1.22] cmd/link: put runtime.end in the last section of data segment 179ccb7042 [release-branch.go1.22] cmd/go: fix go list -u -m all with too new retractions dependency fe9b3c3399 [release-branch.go1.22] net: add GODEBUG=netedns0=0 to disable sending EDNS0 header b515c5208b [release-branch.go1.22] go/internal/gccgoimporter: recognize "any" as a builtin type [1] https://github.com/golang/go/compare/go1.22.4...go1.22.5 (From OE-Core rev: 0a1d4a42282bd9f0bdc8dd53c7865aa81d4a5821) Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/ssh: check for all errors at the endJon Mason2024-07-081-3/+3
| | | | | | | | | | | | | | | With the retry for the -SIGTERM, it is possible to still see that error after the 5th attempt and mark the run a success. Check for any non-zero status in the final check and error out to close the gap. While there, make the error print match the one above and be a little more verbose. Also, I'm seeing it take roughly 6 attempts on my local (very slow) system to pass. So, increasing the number of attempts to 10. (From OE-Core rev: 3c3ebe591eef6e0479d623ec2237cfea16db5c80) Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* abi_version/package: Bump hashequiv version and package class versionRichard Purdie2024-07-052-2/+2
| | | | | | | | | | | | | | The recent pkgconfig change and subsqeuent fixes have left the hash equivalence server in a corrupted state with hashes linking the changes beofore and after the pkgconfig change, breaking reproducibile builds. Bump the appropriate version numbers to allow us to move on and avoid build failures and corrupt equivalence data now the underlying issue was fixed. (From OE-Core rev: 7b2cdd257132645534642a1461fe14b835eee6e8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libinput: update 1.25.0 -> 1.26.1Markus Volk2024-07-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Release notes libinput 1.26.1 is now available. A few semi-exciting things, the rest the usual bugfixes you'd expect for a point release. Touchpads now special-case Shift for disable-while-typing, so typing keys with shift down will trigger DWT. Tablets can now be calibrated if libwacom says the tablet is a display tablet. The hid-uclogic kernel driver doesn't set INPUT_PROP_DIRECT so any device handled by that driver didn't have calibration available. Fixed now, provided your tablet is recognised by libwacom. The direction of the first tablet pad relative dial was fixed, it was upside-down. Our debugging tools now support --set-pressure-range for the new tablet tool pressure range configuration added in 1.26 and --set-calibration for the calibration matrix that's been around for a while. The libinput debug-tablet tool now also supports all commandline options that debug-events and debug-gui support. And of course a varied assortment of device specific quirks and fixes. Release notes libinput 1.26.0 is now available. It's been a while since the last release but we have a few notable changes in here: Touchpads can now configure a clickfinger button map, so you can change whether two- or three-finger click means a right or middle click. See libinput_device_config_click_set_clickfinger_button_map Tablet pads now have an API for relative dials. These are typically wheel-like (e.g. Huion Inspiroy 2) or ring-like (e.g. Huion Inspiroy Dial 2) physical devices that send REL_WHEEL and REL_HWHEEL. libinput now provides these via libinput_event_tablet_pad_get_dial_delta_v120() in much the same manner as the v120-based scroll wheel API. A new configuration option for tablet tools allow reducing the available logical range. This is useful for users that want the tool to register only when some physical pressure value is reached, or to reduce the maximum amount of pressure needed to reach the logical maximum pressure. See libinput_tablet_tool_config_pressure_range_set() and friends. Tablet tools can now use BTN_STYLUS3 too and tablet pad strip support should now work for non-Wacom devices, where the kernel driver implements it. Huion tablets (well, and all vendors that use the 256C vendor id) now have a fallback resolution set. This is going to be wrong on most devices but at least it will make those tablets work out of the box, instead of failing with the "missing tablet capabilities: resolution" log message. And of course a varied assortment of device specific quirks and fixes. (From OE-Core rev: 341578e76de1189a2373672e76034e1c99c6783e) Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/reproducibile: Explicitly list virtual targetsRichard Purdie2024-07-041-1/+2
| | | | | | | | | | | | | | | | We're seeing reproducibility failures where some packages don't appear in the "from sstate" builds. The common factor is these are all recipes with PROVIDES = "virtual/XXX". In a full build from scratch, these are build but in a build from sstate, there are situations where they aren't. For now, to try and keep builds working, work around the problem until we can better look into the problem. It is likely recent taskhash imrovements have caused this to occur more regularly. (From OE-Core rev: 68086a333acc54390e4e589ef928dc90da3edb48) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* openssh: fix CVE-2024-6387Jose Quaresma2024-07-042-0/+28
| | | | | | | | | | | | | | | | | | | | | sshd(8) in Portable OpenSSH versions 8.5p1 to 9.7p1 (inclusive). Race condition resulting in potential remote code execution. A race condition in sshd(8) could allow remote code execution as root on non-OpenBSD systems. This attack could be prevented by disabling the login grace timeout (LoginGraceTime=0 in sshd_config) though this makes denial-of service against sshd(8) considerably easier. For more information, please refer to the release notes [1] and the report from the Qualys Security Advisory Team [2] who discovered the bug. [1] https://www.openssh.com/txt/release-9.8 [2] https://www.qualys.com/2024/07/01/cve-2024-6387/regresshion.txt References: https://www.openssh.com/security.html (From OE-Core rev: 7ba7c96f31bd81c5d1352136e405e99c3df29ea7) Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/ssh: In case of failure, show exit code and handle -15 (SIGTERM)Richard Purdie2024-07-041-2/+5
| | | | | | | | | | | Ensure we show the failing exit code in case of failures. We're seeing autobuilder failures with -15 (SIGTERM) which is probably from slow boot/init. Retry in these cases for now. (From OE-Core rev: 127d3bd8d5509ae17e359c1365859fd362ffc74f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuboot: Trigger write_qemuboot_conf task on changes of kernel image realpathWeisser, Pascal.ext2024-07-041-1/+2
| | | | | | | | | | | | | | | | | | | The qemuboot.conf file contains the realpath of the kernel image referenced by QB_DEFAULT_KERNEL. So, it must be recreated in case the realpath of the referenced kernel image changes. The variables KERNEL_IMAGE_NAME and KERNEL_IMAGE_BIN_EXT determine the realpath of the kernel image relative to DEPLOY_DIR_IMAGE. Adding both of them to the vardeps of the write_qemuboot_conf task triggers the write_qemuboot_conf task in case the realpath of the kernel image referenced by QB_DEFAULT_KERNEL changes. Fixes: [YOCTO 15525] (From OE-Core rev: f8b3975a9ce36ea7af5fd76243a823da2842415b) Signed-off-by: "Weisser, Pascal" <pascal.weisser.ext@karlstorz.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* less: upgrade 643 -> 661Yi Zhao2024-07-041-3/+3
| | | | | | | | | | | | | | ChangeLog: https://www.greenwoodsoftware.com/less/news.661.html License-Update: Update copyright year to 2024 Add perl-module-file-basename to ptest runtime dependency. (From OE-Core rev: 16f4ebc02857567509610e4d350c451440d44930) Signed-off-by: Yi Zhao <yi.zhao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildhistory: fix typosUlrich Ölmann2024-07-041-7/+7
| | | | | | | | | Fix some simple typos found while looking through the code. (From OE-Core rev: c23cb2d89fcd014d1f08944468c7e2d8a7f3e8b0) Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-libc-headers: remove redundant install_headers patchRoss Burton2024-07-042-42/+0
| | | | | | | | | | | | | | | | | This was added in the upgrade to 4.19[1] which included three patches that were taken from the series at [2]. What merged was the second iteration of this series[3] which dropped the install_headers patch, so we can drop this obsolete patch. [1] oe-core 11f02b7c6f9854eecd3a49ea47833c8cbffb1581 [2] https://lore.kernel.org/linux-arm-kernel/1544556407-19897-1-git-send-email-Dave.Martin@arm.com/ [3] https://lore.kernel.org/linux-arm-kernel/1546607391-3850-1-git-send-email-Dave.Martin@arm.com/ (From OE-Core rev: 13e1c0d3881d6c9e4057096d41d8b4f4db1b6b97) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>