summaryrefslogtreecommitdiffstats
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* npm: take 'version' directly from 'package.json'Enrico Scholz2022-06-281-6/+1
| | | | | | | | | | We know the content of 'package.json' from earlier patches; there is no need to parse the tarball name to extract the version. (From OE-Core rev: f553e528e76f7e3925ed1c0950d96e73aec37da9) Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* npm: return content of 'package.json' in 'npm_pack'Enrico Scholz2022-06-281-4/+4
| | | | | | | | | | We have to read 'package.json' to calculate the name of the tarball. This content is interesting for later patches. (From OE-Core rev: d67367e389c492ae90f9021066d6a4d5ebcf68e5) Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* npm: replace 'npm pack' call by 'tar czf'Enrico Scholz2022-06-281-6/+29
| | | | | | | | | | | | | | | | | | | | | 'npm pack' is a maintainer tool which tries to execute 'prepare' and similar scripts. This fails usually in OE because it requires completely installed 'node_modules'. Earlier nodejs versions supported an undocumented 'ignore-scripts' option. This has been removed in nodejs 16. We could patch 'package.json' and remove the unwanted scripts. But this might complicate local workflows (applying patches) and installed packages will contain the modified 'package.json'. Instead of, package it manually by 'tar czf'. As a sideeffect, 'do_configure' is running much faster now. (From OE-Core rev: 68b480d64ffb6750699cc8fa00d2ac0bc6a2e58a) Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base.bbclass: Correct the test for obsolete license exceptionsPeter Kjellerstedt2022-06-271-2/+2
| | | | | | | | | | | The test for obsolete licenses used in INCOMPATIBLE_LICENSE_EXCEPTIONS tried to match the "<package>:<license>" tuples with the obsolete licenses and thus never matched anything. (From OE-Core rev: 3ad994d95815eefed2a72b675c7a323b3ed38191) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: Add ftps to accepted URI protocols for mirrors sanityDavid Bagonyi2022-06-251-1/+1
| | | | | | | | (From OE-Core rev: 10f3a9d5173ef4bf92ff4a7d8aef0cd2cb23e4d4) Signed-off-by: David Bagonyi <david.bagonyi@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ptest.bbclass: Honor PARALLEL_MAKE, PARALLEL_MAKEINSTniko.mauno@vaisala.com2022-06-251-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since oe_runmake wrapper doesn't by default involve PARALLEL_MAKE outside do_compile() nor PARALLEL_MAKEINST outside do_install(), enable parallellized make by default when oe_runmake is invoked from do_compile_ptest() or do_install_ptest() by declaring wrapper task specific EXTRA_OEMAKE overrides in fashion similar to do_compile and do_install overrides in meta/conf/bitbake.conf. Parallel make can still be disabled by resetting bbclass specific PTEST_PARALLEL_MAKE and PTEST_PARALLEL_MAKEINST variables in recipe e.g. if a race issue needs to be avoided without modifying source code. Tested by issuing following command sequence on a 32-core build host: $ bitbake -c clean util-linux && bitbake --skip-setscene -c compile util-linux && time bitbake --skip-setscene -c compile_ptest_base util-linux and found that before this change the result was real 0m34.684s user 0m0.753s sys 0m0.131s and after this change real 0m9.868s user 0m0.749s sys 0m0.150s (From OE-Core rev: 5c09d2a017add8bd34142c6c1543e2d0f9ead286) Signed-off-by: Niko Mauno <niko.mauno@vaisala.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: host-user-contaminated: Correct per package home pathAhmed Hossam2022-06-251-1/+1
| | | | | | | | | | | | | The current home path that is compared against is incorrect as it is missing the package name, this patch adds it. [YOCTO #14553] (From OE-Core rev: ae8f22d9e2694eea5ede3b31c6f3bca404ea4a5a) Signed-off-by: Ahmed Hossam <Ahmed.Hossam@opensynergy.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-uboot.bbclass: Use vmlinux.initramfs when INITRAMFS_IMAGE_BUNDLE setRaju Kumar Pothuraju2022-06-251-0/+6
| | | | | | | | | | | | | | vmlinux file doesnot have the initramfs image when INITRAMFS_IMAGE_BUNDLE was set. Use vmlinux.initramfs in uboot_prep_kimage when INITRAMFS_IMAGE_BUNDLE set based on the implementation in kernel.bbclass do_bundle_initramfs function, https://github.com/openembedded/openembedded-core/blob/master/meta/classes/kernel.bbclass#L316-L317 to be able to use proper linux.bin file in creation of fitImage. (From OE-Core rev: e0a4e45e067d9fdb67a7d223aea463f259469035) Signed-off-by: Raju Kumar Pothuraju <raju.kumar-pothuraju@xilinx.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Add python3-hatchling (from meta-oe)Ross Burton2022-06-221-0/+5
| | | | | | | | | | | Recipes in core are now needing to use the Hatch build system, so move the hatchling recipe and class from meta-oe to oe-core. (From OE-Core rev: 846e806181f1349be29cbce78c5041735dfd7e6f) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs-postcommands.bbclass: correct commentsMichael Opdenacker2022-06-171-4/+4
| | | | | | | | (From OE-Core rev: 41ade8e9a14c867e146a545be8d2d9c151b6855f) Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cve-check: add support for Ignored CVEsMarta Rybczynska2022-06-171-13/+30
| | | | | | | | | | | | | | | | Ignored CVEs aren't patched, but do not apply in our configuration for some reason. Up till now they were only partially supported and reported as "Patched". This patch adds separate reporting of Ignored CVEs. The variable CVE_CHECK_REPORT_PATCHED now manages reporting of both patched and ignored CVEs. (From OE-Core rev: c773102d4828fc4ddd1024f6115d577e23f1afe4) Signed-off-by: Marta Rybczynska <marta.rybczynska@huawei.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* archiver: don't use machine variables in shared recipesJose Quaresma2022-06-151-2/+7
| | | | | | | | | | | | | | | | | | | | When using multiconfig with the same TMP folder we can have races because the shared recipes like gcc-source run twice. ARCHIVER_OUTDIR = ${ARCHIVER_TOPDIR}/${TARGET_SYS}/${PF}/ which includes TARGET_SYS and between the two different MACHINE values, this changes from 'arm-poky-linux-gnueabi' to 'aarch64-poky-linux'. This leads to the task running twice, once for each multiconfig. To solve this we need to store the shared output in a common place for all machines and in this way the stamps will be the same for each machine so the gcc-source will on run once regardless of the machine used. (From OE-Core rev: 5abe497aad39a6ce8d72556fcdda1938a0f8c1bc) Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Add SPDX_PRETTY optionJoshua Watt2022-06-151-6/+16
| | | | | | | | | | | Adds an option to make the SPDX more human-readable (at the expense of a larger files) (From OE-Core rev: 4799594b26f77ed259dc661bf077519b338390c8) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image-buildinfo: Improve and extend to SDK coverage tooRichard Purdie2022-06-111-6/+22
| | | | | | | | | | | | Rename the default file from "build" to "buildinfo" since this is more obvious to anyone looking in an image. Add SDK_BUILDINFO_FILE and allow the same information to be written into SDK images. This will be useful for buildtools-tarball and uninative-tarball. (From OE-Core rev: 38b9525f1d5377288922e7cbac3f30afe6046242) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base/buildhistory/image-buildinfo: Use common buildcfg functionRichard Purdie2022-06-113-18/+7
| | | | | | | | Reduce code duplication to a common function in oe.buildcfg. (From OE-Core rev: 0b191a1df4c3722defb09dde0c16b1d9e7fe7ef6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib/buildcfg: Share common clean/dirty layer functionRichard Purdie2022-06-112-34/+2
| | | | | | | | | The comments even say this was copy/paste code. Move to a shared library function. (From OE-Core rev: ac3de2f850a418673b87e1c454970cb099e191b0) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/buildcfg: Move git/layer revision code into new OE module buildcfgRichard Purdie2022-06-115-50/+12
| | | | | | | | | There is a load of duplicated git/layer/revision code which makes most sesne as a python library, not bbclass code. Start to refactor as such. (From OE-Core rev: 439cdf8a1e52fd2c4dc81dc40ce7e6af282ce7ac) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* archiver: use bb.note instead of echoJose Quaresma2022-06-111-1/+1
| | | | | | | | (From OE-Core rev: 6420c8a6a8143f53ccad7ab2d56b2ba06db83099) Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meson.bbclass: add cython binary to cross/native toolchain configJack Mitchell2022-06-111-0/+2
| | | | | | | | | | | | | This allows building Cython based Python modules with the native meson support which has been present since meson version 0.59. https://mesonbuild.com/Cython.html (From OE-Core rev: b1dcb1eb69032c30f5a8faf4d7120fc6c4ecd051) Signed-off-by: Jack Mitchell <ml@embed.me.uk> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uboot-sign: Fix potential index error issuesRichard Purdie2022-06-111-0/+2
| | | | | | | | | | | | | Someone reported that if some other shell function has left i or j set, the concat_dtb_helper function could fail. Add a small tweak to avoid this. [YOCTO #14815] (From OE-Core rev: d219c97bdf5d30be89795fbf9b66ddc367bef384) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildhistory.bbclass: fix shell syntax when using dashMartin Jansa2022-06-081-1/+1
| | | | | | | | | | | | | | | | | | * fix: run.buildhistory_get_image_installed.791888: 198: [: unexpected operator introduced in: commit 82e6172c1df378dff4e503aa878501c08937b5bb Author: Andres Beltran <abeltran@linux.microsoft.com> Date: Tue Oct 5 00:34:15 2021 +0000 buildhistory: Fix package output files for SDKs (From OE-Core rev: 9852bedcb9eb8306a3f82f805ec4f76abbbbdd0f) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* baremetal-image: fix broken symlink in do_rootfsDavide Gardenal2022-06-071-3/+4
| | | | | | | | | | | | If IMAGE_LINK_NAME and IMAGE_MANIFEST are equal don't create a link otherwise it will create it to itself. (From OE-Core rev: 8fd1a37c38dbfc688d840d12c61d76f151f9f605) Signed-off-by: Davide Gardenal <davide.gardenal@huawei.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: Switch to make 4.0 as a minimum versionRichard Purdie2022-06-061-27/+3
| | | | | | | | | | We can't build glibc without make 4.0 and we don't work on older distros with older versions of make without buildtools tarball so increase the minimum version to 4.0. (From OE-Core rev: e9a449aeec72a698206323c3471c9268f949b1ae) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* license.bbclass: Bound beginline and endline in copy_license_files()Peter Kjellerstedt2022-06-061-4/+4
| | | | | | | | | | | | | Ensure that begin_idx (i.e., beginline - 1) and end_idx (i.e., endline) are positive numbers in copy_license_files(). This makes sure the same lines are copied as populate_lic_qa_checksum() uses when it calculates the checksum. Before, beginline=0 would typically lead to that no lines were copied at all. (From OE-Core rev: ab3cc3651d08d226675c461da760cda0bb6c0ce0) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cve-check: fix return type in check_cvesMarta Rybczynska2022-06-061-1/+1
| | | | | | | | | Make empty return types in check_cvs the same for all code paths. (From OE-Core rev: f86393c93dec47b24e837d0c4c5761a716ecdbb6) Signed-off-by: Marta Rybczynska <marta.rybczynska@huawei.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cve-check: write empty fragment files in the text modeMarta Rybczynska2022-06-061-14/+13
| | | | | | | | | | | | | | | | | In the cve-check text mode output, we didn't write fragment files if there are no CVEs (if CVE_CHECK_REPORT_PATCHED is 1), or no unpached CVEs otherwise. However, in a system after multiple builds, cve_check_write_rootfs_manifest might find older files and use them as current, what leads to incorrect reporting. Fix it by always writing a fragment file, even if empty. (From OE-Core rev: f1b7877acd0f6e3626faa57d9f89809cfcdfd0f1) Signed-off-by: Marta Rybczynska <marta.rybczynska@huawei.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cve-check: move update_symlinks to a libraryMarta Rybczynska2022-06-061-8/+3
| | | | | | | | | Move the function to a library, it could be useful in other places. (From OE-Core rev: debd37abcdde8788761ebdb4a05bc61f7394cbb8) Signed-off-by: Marta Rybczynska <marta.rybczynska@huawei.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_ext: Fix second bb_unihashes referenceRichard Purdie2022-06-061-4/+4
| | | | | | | | | | A previous fix for zero length bb_unihashes.dat files wasn't complete as there is a second copy of the unihashes file made. Change this second call site to match the first to fully fix the zero length file issue. (From OE-Core rev: 962bd78af1acc86b3d900dce9081ed310616e0fa) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-yocto.bbclass: Reset to exiting on non-zero return code at end of taskStefan Wiehler2022-06-041-0/+8
| | | | | | | | | | | | | Several tasks deactivate exiting on non-zero return codes via set +e because they run subcommands that have legitimate non-zero return codes. However when appending to those tasks, this behavior is not expected and can lead to builds silently proceeding in case of an error. Therefore reset the default behavior at the end of the respective tasks via set -e. (From OE-Core rev: 83a6f28d2e464f00202090e998a63045adba9e4e) Signed-off-by: Stefan Wiehler <stefan.wiehler@nokia.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* files: rootfs-postcommands: move helper commands to scriptVyacheslav Yurkov2022-06-041-1/+12
| | | | | | | | | | | | OverlayFS systemd helper unit might require more pre-processing commands. It gets more complicated to embed them in a unit file, because systemd shell subset is limited and might require additional escaping. Move the command to a separate script, thus simplifying systemd unit. (From OE-Core rev: 86a457016e7f3fc7acacf86cd87f5d8d882132dd) Signed-off-by: Vyacheslav Yurkov <v.yurkov@precitec.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_ext: Fix race condition on bb_unihashes.datRichard Purdie2022-06-021-4/+3
| | | | | | | | | | | | | There is a race were the bb_unihashes.dat file may end up zero sized due to concurrent builds. Use recently added API within bitbake to copy the file safely. Also use the opportunity to remove hardcoded filepaths internal to bitbake from OE-Core. Bump the minimum bitbake version to match the API being used. (From OE-Core rev: 106a7e07057e4681e6fb06dfe9e28d2e183d667d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cve-check: Allow warnings to be disabledRichard Purdie2022-05-291-1/+2
| | | | | | | | | | When running CVE checks in CI we're usually not interested in warnings on the console for any CVEs present. Add a configuration option CVE_CHECK_SHOW_WARNINGS to allow this to be disabled (it is left enabled by default). (From OE-Core rev: 1054d3366ba528f2ad52585cf951e508958c5c68) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* setuptools3: clean up classRoss Burton2022-05-291-3/+2
| | | | | | | | | Remove a commented-out B, re-order DEPENDS< and add comments. (From OE-Core rev: 046db6d8bbcad3962a9585ef7ebd10d428953ccb) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* go.bbclass: fix path to linker in native Go buildsDmitry Baryshkov2022-05-281-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Building native Go tools results in the tool pointing to the wrong location of dynamic linker (see below). The linker is looked up in the temporary dir, which can be removed if rm_work is inherited. This results in being unable to execute the program with the 'No such file or directory' error. Override linker specificiation for native recipes (and let Go build environment to pick up a correct one on it's own). The error is observed in case the distro doesn't use uninative.bbclass. If uninative.bbclass is used, the binary will be patched automatically to use the uninative loader instead of the system one. Without this patch: $ ldd tmp-rpb-glibc/sysroots-components/x86_64/go-md2man-native/usr/bin/go-md2man linux-vdso.so.1 (0x00007ffe945ec000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f3a7490e000) /home/lumag/Projects/RPB/build-rpb/tmp-rpb-glibc/work/x86_64-linux/go-md2man-native/1.0.10+gitAUTOINC+f79a8a8ca6-r0/recipe-sysroot-native/usr/lib/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x00007f3a74d13000) $ tmp-rpb-glibc/sysroots-components/x86_64/go-md2man-native/usr/bin/go-md2man --help -bash: tmp-rpb-glibc/sysroots-components/x86_64/go-md2man-native/usr/bin/go-md2man: No such file or directory With the patch $ ldd tmp-rpb-glibc/sysroots-components/x86_64/go-md2man-native/usr/bin/go-md2man linux-vdso.so.1 (0x00007ffd19dbf000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f2d44181000) /lib64/ld-linux-x86-64.so.2 (0x00007f2d44586000) $ tmp-rpb-glibc/sysroots-components/x86_64/go-md2man-native/usr/bin/go-md2man --help Usage of tmp-rpb-glibc/sysroots-components/x86_64/go-md2man-native/usr/bin/go-md2man: -in string Path to file to be processed (default: stdin) -out string Path to output processed file (default: stdout) (From OE-Core rev: 44b397daa68b4d0a461225fe9ff7db8b5fcfdb7b) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* staging.bbclass: process direct dependencies in deterministic orderMartin Jansa2022-05-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | * this doesn't fix any issue (at least AFAIK), just keeps the log files more deterministic to avoid unnecessary churn like in: --- /OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/keymaps/1.0-r31/temp/log.do_patch.2213051 2022-05-26 11:35:44.110063749 +0200 +++ /OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/keymaps/1.0-r31/temp/log.do_patch.2213372 2022-05-26 11:35:54.553062630 +0200 @@ -1,7 +1,7 @@ DEBUG: Executing python function extend_recipe_sysroot -NOTE: Direct dependencies are ['virtual:native:/OE/build/oe-core/openembedded-core/meta/recipes-devtools/patch/patch_2.7.6.bb:do_populate_sysroot', '/OE/build/oe-core/openembedded-core/meta/recipes-devtools/quilt/quilt-native_0.67.bb:do_populate_sysroot'] +NOTE: Direct dependencies are ['/OE/build/oe-core/openembedded-core/meta/recipes-devtools/quilt/quilt-native_0.67.bb:do_populate_sysroot', 'virtual:native:/OE/build/oe-core/openembedded-core/meta/recipes-devtools/patch/patch_2.7.6.bb:do_populate_sysroot'] NOTE: Installed into sysroot: [] -NOTE: Skipping as already exists in sysroot: ['patch-native', 'quilt-native', 'attr-native', 'libtool-native', 'gettext-minimal-native', 'texinfo-dummy-native'] +NOTE: Skipping as already exists in sysroot: ['quilt-native', 'patch-native', 'attr-native', 'libtool-native', 'gettext-minimal-native', 'texinfo-dummy-native'] DEBUG: Python function extend_recipe_sysroot finished DEBUG: Executing python function do_patch DEBUG: Executing python function patch_do_patch (From OE-Core rev: d3ebb37b97da15166d452bf51f5f7e0c312ae42e) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: make sure to close .patch filesMartin Jansa2022-05-281-8/+10
| | | | | | | | | | | | | | * fixes: DEBUG: Executing python function do_qa_patch /OE/build/oe-core/openembedded-core/meta/classes/insane.bbclass:1189: ResourceWarning: unclosed file <_io.TextIOWrapper name='/OE/build/oe-core/openembedded-core/meta/recipes-bsp/keymaps/files/GPLv2.patch' mode='r' encoding='utf-8'> content = open(fullpath, encoding='utf-8', errors='ignore').read() ResourceWarning: Enable tracemalloc to get the object allocation traceback DEBUG: Python function do_qa_patch finished (From OE-Core rev: 61be3668d866834adfff688620aee7e29f6d8c44) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Revert "meson.bblcass: Remove empty egg-info directories before running meson"Richard Purdie2022-05-281-10/+0
| | | | | | | | This reverts commit 47d9d90b4ec7d04d6f3f1a9b97c0ab7f1264a88e. This is no longer needed with a patch to fix importlib in python. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cve-check: Only include installed packages for rootfs manifestErnst Sjöstrand2022-05-271-15/+54
| | | | | | | | | | | | | | Before this the rootfs manifest and the summary were identical. We should separate the summary and rootfs manifest more clearly, now the summary is for all CVEs and the rootfs manifest is only for things in that image. This is even more useful if you build multiple images. (From OE-Core rev: 3b8cc6fc45f0ea5677729ee2b1819bdc7a441ab1) Signed-off-by: Ernst Sjöstrand <ernstp@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cve-check: Add helper for symlink handlingErnst Sjöstrand2022-05-271-21/+13
| | | | | | | | (From OE-Core rev: 5046d54df2c3057be2afa4143a2833183fca0d67) Signed-off-by: Ernst Sjöstrand <ernstp@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: Do not overwrite recipe's custom postinstRaphael Teller2022-05-231-1/+1
| | | | | | | | | | | | | Allow recipe to set a custom postinst for kernel image. Use prependVar in order to allow custom postinst to be ran after default postinst, potentially modifying the installed file/symlink. (From OE-Core rev: 579906b9f4ea32c8d4e0e11a87ee6c9e27cdf0dc) Signed-off-by: Raphael Teller <raphael.teller@se.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cve-check.bbclass: Added do_populate_sdk[recrdeptask].leimaohui2022-05-231-0/+1
| | | | | | | | | | As product, sdk should do cve check as well as rootfs. (From OE-Core rev: cc17753935c5f9e08aaa6c5886f059303147c07b) Signed-off-by: Lei Maohui <leimaohui@fujitsu.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rust-common: Fix sstate signatures between arm hf and non-hfRichard Purdie2022-05-211-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | Building with MACHINE=qemuarm and MACHINE=qemux86-64 causes rust-native to rebuild. The reason is all the ingredients into the RUST_*_SYS variables are being tracked but that doesn't really make sense in this case: $ bitbake-diffsigs tmp/stamps/x86_64-linux/rust-native/1.60.0-r0.do_rust_gen_targets.sigdata.63* tmp/stamps/x86_64-linux/rust-native/1.60.0-r0.do_rust_gen_targets.sigdata.34* NOTE: Starting bitbake server... basehash changed from 860b8f11b10182dc5b2737f62cdb697477f714adb63eeb4d4b932d67cac8eec2 to 9379e8b9df9696e8056fec7d1534661f34dda073f6d816e241b09a2dff76ae2d Variable rust_base_triple value changed: @@ -36,4 +36,4 @@ # In some cases uname and the toolchain differ on their idea of the arch name -TUNE_FEATURES{callconvention-hard} = Set +TUNE_FEATURES{callconvention-hard} = Unset Switch to using the final variable value for sstate signature purposes which avoids this issue. (From OE-Core rev: 38b61aeaf877f6a34c3c0060c175119975ebd782) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* images_types: isolate the write of UBI configurationKory Maincent2022-05-211-12/+19
| | | | | | | | | | | | | | Isolate the writing of the UBI configuration in a separate function. This allows to use a custom configuration easily by overriding the function. Replace the echo functions by a cat to have a more readable configuration. (From OE-Core rev: 601294b35c83faa134e26844c65db59b42d5052f) Signed-off-by: Kory Maincent <kory.maincent@bootlin.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cargo_common.bbclass: enable bitbake vendoring for externalsrcChanho Park2022-05-201-1/+1
| | | | | | | | | | | | | To support crate:// fetcher on externalsrc, we need to remove "-z ${EXTERNALSRC} check of bitbake vendoring. It is possible to disable vendoring by CARGO_DISABLE_BITBAKE_VENDORING = "1" if externalsrc-ed project does not want to enablt it. (From OE-Core rev: 3d8a388ba540598fec83d505d62ac36642bb90c7) Signed-off-by: Chanho Park <chanho61.park@samsung.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* externalsrc.bbclass: support crate fetcher on externalsrcChanho Park2022-05-201-1/+1
| | | | | | | | | | | To support crate:// fetcher on externalsrc, we need to make pass-through the URIs in SRC_URI. (From OE-Core rev: c55c79507f63a4e758a486537aacfc13009161c7) Signed-off-by: Chanho Park <chanho61.park@samsung.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cve-check: Fix report generationMarta Rybczynska2022-05-171-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The addition of summary output caused two issues: error when building an image and the fact that JSON output was generated even when CVE_CHECK_FORMAT_JSON. When generating an image it caused an error like: ERROR: core-image-minimal-1.0-r0 do_rootfs: Error executing a python function in exec_func_python() autogenerated: The stack trace of python calls that resulted in this exception/failure was: File: 'exec_func_python() autogenerated', lineno: 2, function: <module> 0001: *** 0002:cve_check_write_rootfs_manifest(d) 0003: File: '/home/alexk/poky/meta/classes/cve-check.bbclass', lineno: 213, function: cve_check_write_rootfs_manifest 0209: 0210: link_path = os.path.join(deploy_dir, "%s.json" % link_name) 0211: manifest_path = d.getVar("CVE_CHECK_MANIFEST_JSON") 0212: bb.note("Generating JSON CVE manifest") *** 0213: generate_json_report(json_summary_name, json_summary_link_name) 0214: bb.plain("Image CVE JSON report stored in: %s" % link_path) 0215:} 0216: 0217:ROOTFS_POSTPROCESS_COMMAND:prepend = "${@'cve_check_write_rootfs_manifest; ' if d.getVar('CVE_CHECK_CREATE_MANIFEST') == '1' else ''}" Exception: NameError: name 'json_summary_name' is not defined The fix is to pass the d variable to the pure python function generate_json_report to get correct values of variables and add conditions for the JSON output where needed. In addition clarify the message presenting the summary JSON file, which isn't related to an image. Uses partial fixes from Alex Kiernan, Ernst Sjöstrand (ernstp), and Davide Gardenal. Fixes: f2987891d315 ("cve-check: add JSON format to summary output") (From OE-Core rev: 9015dec93233c7d45fd0c9885ff5d4ec23ad377d) Signed-off-by: Marta Rybczynska <marta.rybczynska@huawei.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* staging: Fix rare sysroot corruption issueRichard Purdie2022-05-161-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We've seen failures on the autobuilder in oe-selftest where things which should be in the sysroot aren't. The exact steps to reproduce the exact failure are elusive and probably hash equivalance dependency but this set of steps does reproduce corruption which is probably of the same origin: Add DISTRO_FEATURES += "systemd" bitbake dbus Remove DISTRO_FEATURES += "systemd" bitbake dbus bitbake dbus -c clean bitbake dbus -c configure Add DISTRO_FEATURES += "systemd" bitbake quilt-native bitbake dbus -c populate_sysroot Remove DISTRO_FEATURES += "systemd" bitbake dbus -c compile Where dbus will now fail as the compiler was no longer in the sysroot. This works by clearing x11 and other values out of DISTRO_FEATURES so the x11 dependencies are removed from the sysroot. The configure stamp remains valid so when the original configuration is restored, it becomes valid again but a load of the sysroot disappeared and build failures result. Fix this by removing stamps when we remove things from the sysroot. Depends on a change to bitbake build.py to add the clean_stamp API. [YOCTO #14790] (From OE-Core rev: f4b1cecc82435b71135d7b65f6ea67be0e4f8c66) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* npm.bbclass: Don't create /usr/lib/node symlinkZoltán Böszörményi2022-05-151-4/+0
| | | | | | | | | | When a recipe DEPENDS on multiple other npm based recipes, the symlink will create a conflict. (From OE-Core rev: 9896a7e3a9bdbc6bf3bb67b5f5d5c8ae8225ed0f) Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* npm.bbclass: Fix file permissions before opening it for writingZoltán Böszörményi2022-05-151-0/+2
| | | | | | | | | | | | Some node module archives in npmjs.org contain wrong permissions. I found a case with package.json in the archive being r-xr-xr-x for which open(..., "w") fails. Modify the manifest file permissions to add the write bit for the owner. (From OE-Core rev: c6740091cb7336aaa3bb9b692fe4dc6fc92aa3a8) Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image_types/runqemu-addptable2image: Fix a minor typoLeon Anavi2022-05-151-1/+1
| | | | | | | | | Fix a minor typo and replace "partion" with "partition". (From OE-Core rev: 186df231f95096c0ee0f29f1080deb351701374f) Signed-off-by: Leon Anavi <leon.anavi@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>