summaryrefslogtreecommitdiffstats
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* kernel: Delete unused KERNEL_LOCALVERSION variableAlex Kiernan2022-04-141-2/+0
| | | | | | | | | | | | | | | | | | This has been unused since: commit fb61dc1430f81ae2ee59766ffab8404fd79ff1b1 Author: Richard Purdie <richard@openedhand.com> Date: Mon Jan 8 21:05:18 2007 +0000 kernel.bbclass: Drop KERNEL_RELEASE variable git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1123 311d38ba-8fff-0310-9ca6-ca027cbcb966 (From OE-Core rev: 320da1c2b9add9fecd74e7f33ddc5418b326c786) Signed-off-by: Alex Kiernan <alexk@zuma.ai> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: Show a warning that make 4.2.1 is buggy on non-ubuntu systemsRichard Purdie2022-04-141-0/+6
| | | | | | | | | | | | | | | | | We keep seeing hangs on the autobuilder with make 4.2.1 on Centos8, Alma8 and OpenSuse workers. The hang occurs in perl and kernel builds in particular. The issue is fixed in 4.3 and has been patched on Ubuntu systems: https://git.savannah.gnu.org/cgit/make.git/commit/?id=78b5fec6898c26956d00548427cda1101cb80f8a https://savannah.gnu.org/bugs/?51400 Add a sanity test for make 4.2.1 and error for non-ubuntu systems. We're making a buildtools-make-tarball available which can be used to allow systems with the broken version to use the project. (From OE-Core rev: ad5829aa1f8a7369509542b913bfd8d21d1b1bc3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* externalsrc/devtool: Fix to work with fixed export funcition flags handlingRichard Purdie2022-04-141-9/+10
| | | | | | | | | | | | | If we fix bitbake to correctly handle the cleandirs and fakeroot flags for tasks handled by EXPORT_FUNCTIONS, we break devtool since it only considers these for top level functions. Add in extra code to intercept the cleandirs flags for commonly used sub functions too. [YOCTO #8621] (From OE-Core rev: 67fad829f37ed0a8e20c599d2b65635158591d06) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: Fix the do_strip() malfunctionKevin Hao2022-04-121-1/+1
| | | | | | | | | | | | The BB variable can't be referenced directly in a python function, this misusage of the variable reference causes strip function to be always skipped. Fixed: b9c3db4953e4 ("kernel.bbclass: Use KERNEL_IMAGEDEST instead of hardcoded boot path") (From OE-Core rev: c405cb4f421a8c964fa59123ee41879ebd5f829c) Signed-off-by: Kevin Hao <kexin.hao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* license_image.bbclass: close package.manifest fileMartin Jansa2022-04-101-2/+2
| | | | | | | | | | | | | | | | | * fixes: NOTE: Executing write_package_manifest ... DEBUG: Executing python function write_package_manifest /OE/build/oe-core/openembedded-core/meta/classes/license_image.bbclass:23: ResourceWarning: unclosed file <_io.TextIOWrapper name='/OE/build/oe-core/tmp-glibc/deploy/licenses/core-image-minimal-qemux86-64/package.manifest' mode='w+' encoding='UTF-8'> 'w+').write(output) ResourceWarning: Enable tracemalloc to get the object allocation traceback DEBUG: Python function write_package_manifest finished [YOCTO #14772] (From OE-Core rev: b3114d5d438b7a63a276b4e825b62f3b1ebceed6) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_ipk/deb: Fix specific version handlingRichard Purdie2022-04-102-2/+12
| | | | | | | | | | | | | | | | | | | We recently added a "xxx (= 1.2.3)" style dependency to a recipe and have been having trouble with the opkg and debian backends with it. The issues is that for debian, "=" really does mean equals and includes the PR field. One bitbake recipe does not know the PR of another, nor shoud it. In other words 1.2.3 != 1.2.3-r0. Debian defaults to a PR of "0", not our "r0". The only way I can think of to make this work is to change "=" dependencies without revision information (no "-r" in the version) into things like: "xxx (>= 1.2.3), xxx (<< 1.2.3.0)". This appears to work even if it is a pretty horrible workaround. (From OE-Core rev: 3ba177a1b8e553716f45606aa65b0a74e55d94c1) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Fix condition for install_spl_helperSean Anderson2022-04-051-1/+1
| | | | | | | | | | | | | | | The condition for calling install_spl_helper when compiling multiple configs does not match the condition for a single config. This causes compilation failures when ${UBOOT_FITIMAGE_ENABLE} is 1 but ${SPL_SIGN_ENABLE} is not. Fixes: 5af4dfe83c2 ("u-boot: Add infrastructure to SPL verified boot") (From OE-Core rev: 7dc155961649c022d33cf7c6a5155cdfa5dc2969) Signed-off-by: Sean Anderson <sean.anderson@seco.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: Make changes to QA_EMPTY_DIRS trigger package_qa to rerunPeter Kjellerstedt2022-04-031-0/+1
| | | | | | | | | | If "empty-dirs" is in ERROR_QA, then changes to QA_EMPTY_DIRS should trigger the package_qa tasks to be rerun. (From OE-Core rev: 9f21f9b613c5aaf1883b3ad6eb6463014c2764cd) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: Make do_qa_patch() depend on if patch-fuzz is in ERROR_QAPeter Kjellerstedt2022-04-031-2/+2
| | | | | | | | | | | | | Adding "patch-fuzz" to ERROR_QA should trigger the patch tasks to rerun to make sure any already existing fuzz is caught. This is achieved by using bb.utils.filter() to see if "patch-fuzz" is in ERROR_QA/WARN_QA as it adds whether the filtered strings are set or not to the task hash. (From OE-Core rev: 19a88df166862eb04fe6bee487796ef460d08771) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mirrors: Switch glibc and binutils to use shallow mirror tarballsRichard Purdie2022-04-031-0/+11
| | | | | | | | | | | | | These two repositories are large and overload our downloads server as a premirror but the recipes are easier to maintain as git urls. Compromise and use shallow clones for them. In order to be effective, we need premirror entries on where to find the shallow mirror tarballs. (From OE-Core rev: 757c09a687a30063041a83dd756f5be769631eee) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: Use KERNEL_IMAGEDEST instead of hardcoded boot pathAlessio Igor Bogani2022-04-031-8/+7
| | | | | | | | | | | The behaviour doesn't change because KERNEL_IMAGEDEST is defined as 'boot' in the same file (line 215). (From OE-Core rev: b9c3db4953e4e7b423ba9ec5b618fd990c378bc1) Signed-off-by: Alessio Igor Bogani <alessio.bogani@elettra.eu> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* testimage: inline updateTestData()Ross Burton2022-04-011-2/+2
| | | | | | | | | | | updateTestData() is just a simple loop that is only used here, so just inline it. (From OE-Core rev: 2dfe2f68307a441fff2f5018408558bca63f7d03) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image_types: hddimg and iso only work on x86Ross Burton2022-04-011-2/+3
| | | | | | | | | | | These image types use syslinux which is only available on x86, so only add them to IMAGE_TYPES on x86. (From OE-Core rev: 2ea047a026dd61a8e0a24c6bbe278849485a2c27) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base: Clean up module import compatibility codeRichard Purdie2022-04-011-9/+2
| | | | | | | | | | | This code was for old versions of bitbake which we're now long past. Drop it and simplify the code. (From OE-Core rev: d5301d008a5cc02a08d660691fce2c18ed8028d7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base: Don't add duplicates to sys.pathRichard Purdie2022-04-011-2/+2
| | | | | | | | | | | | We can re-trigger this code and there is little point in stacking a ton of duplicate paths which just waste time during searches for modules. This could in theory alter layer module search order but that seems unlikely in common use. (From OE-Core rev: dadce8468db1c0fd0e04801cdc6cf287c2808477) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cmake: support to create per-toolchain cmake file in SDKJagadeesh Krishnanjanappa2022-03-311-0/+1
| | | | | | | | | | | | | | | | | | | | | | The patch creates ${MULTIMACH_TARGET_SYS}-toolchain.cmake file at ${SDK_INSTALL_DIR}/sysroots/${SDK_SYS}/usr/share/cmake/, which is per-toolchain CMake toolchain file containing arch-specific values and independent of OE environment variables. The file gets created after installing SDK toolchain installer ined by running "bitbake -c populate_sdk <image>". The changes are similar to meson-setup.py which is used to create arch-specific ${SDK_INSTALL_DIR}/sysroots/${SDK_SYS}/usr/share/meson/*-meson.cross [YOCTO #14644] Tested-by: Jan Dorniak <jaskij@gmail.com> (From OE-Core rev: 42e68397ec74b3cd8ae5df45355c8f6254b48cd8) Signed-off-by: Jagadeesh Krishnanjanappa <workjagadeesh@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mirrors: Add missing gitsm entries for yocto/oe mirrorsRichard Purdie2022-03-311-0/+2
| | | | | | | | The missing gitsm:// mappings looks like an oversight, add them. (From OE-Core rev: 6600b9fca7888fb41647cd000b9efb7f0762dfde) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cve-check: add coverage statistics on recipes with/without CVEsMarta Rybczynska2022-03-301-11/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | Until now the CVE checker was giving information about CVEs found for a product (or more products) contained in a recipe. However, there was no easy way to find out which products or recipes have no CVEs. Having no reported CVEs might mean there are simply none, but can also mean a product name (CPE) mismatch. This patch adds CVE_CHECK_COVERAGE option enabling a new type of statistics. Then we use the new JSON format to report the information. The legacy text mode report does not contain it. This option is expected to help with an identification of recipes with mismatched CPEs, issues in the database and more. This work is based on [1], but adding the JSON format makes it easier to implement, without additional result files. [1] https://lists.openembedded.org/g/openembedded-core/message/159873 (From OE-Core rev: d1849a1facd64fa0bcf8336a0ed5fbf71b2e3cb5) 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>
* cve-check: add json formatMarta Rybczynska2022-03-301-1/+143
| | | | | | | | | | | | | | | | | | | | | Add an option to output the CVE check in a JSON-based format. This format is easier to parse in software than the original text-based one and allows post-processing by other tools. Output formats are now handed by CVE_CHECK_FORMAT_TEXT and CVE_CHECK_FORMAT_JSON. Both of them are enabled by default. The JSON output format gets generated in a similar way to the text format with the exception of the manifest: appending to JSON arrays requires parsing the file. Because of that we first write JSON fragments and then assemble them in one pass at the end. (From OE-Core rev: df567de36ae5964bee433ebb97e8bf702034994a) 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>
* kernel-fitimage.bbclass: introduce FIT_SUPPORTED_INITRAMFS_FSTYPESMing Liu2022-03-291-1/+9
| | | | | | | | | | | | | | | | | It was found when a end user wants to build a squashfs type initramfs into fitimage, it just fails without printing out any error or warning messages, which is not right. Introduce a FIT_SUPPORTED_INITRAMFS_FSTYPES variable to avoid hard-coding the supported initramfs types, and it could be overridden in config files. Also break the build when none of a supported initramfs type is found. (From OE-Core rev: b0f8d8a4c063936b50d3ec7c066b29157b3c3544) Signed-off-by: Ming Liu <liu.ming50@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-fitimage.bbclass: change 'echo' to 'bbnote'Ming Liu2022-03-291-13/+12
| | | | | | | | | | Change 'echo' usages to 'bbnote' for better logging. (From OE-Core rev: 3d05ba04824c7f08e42b1972bc0de538164b61ea) Signed-off-by: Ming Liu <liu.ming50@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* create-spdx: Avoid regex warning by quoting correctlyRichard Purdie2022-03-291-1/+1
| | | | | | | | | | | create-spdx.bbclass:43: DeprecationWarning: invalid escape sequence \W lic_regex = re.compile(b'^\W*SPDX-License-Identifier:\s*([ \w\d.()+-]+?)(?:\s+\W*)?$', re.MULTILINE) (From OE-Core rev: 5dfb26d45f69c4d5dc4b6fcef084b830ef9dbf4c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rust-common: override RUST_LIBC for crosssdkChristian Eggers2022-03-261-0/+1
| | | | | | | | | | | For nativesdk/crosssdk, always glibc is used. Fixes build of rust-crosssdk if TCLIBC is set to musl. (From OE-Core rev: 67b4e0fdb13c81ab7e79109b6366fd7705b253ba) Signed-off-by: Christian Eggers <ceggers@arri.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: avoid config changes based on the availability of paholeMichael Olbrich2022-03-261-2/+2
| | | | | | | | | | | | | | | | | | | CONFIG_PAHOLE_HAS_SPLIT_BTF shows up in the config only when pahole is installed on the host system. As a result, the config changes depending on whether pahole is installed or not. Set PAHOLE=false to ensure that it is never found. If this is actually needed in the future, then we can add an option for it and create a host package for pahole. (From OE-Core rev: 43b0eca2f3fc41a0d2ba7c7679687a3e0eb54b45) Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> [afa: ported from PTXdist 0c0cec2288 to OE-core] Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* license.bbclass: Remove the available_licenses() functionPeter Kjellerstedt2022-03-241-15/+0
| | | | | | | | | | It is no longer used in OE-Core. (From OE-Core rev: aa662aae352c65cb5d13172bf98ed4ae3cb46c26) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* create-spdx.bbclass: Simplify extraction of license textPeter Kjellerstedt2022-03-241-15/+10
| | | | | | | | | | | | | There is no reason to first search for all available licenses using avail_licenses() and then search through the same paths looking for the actual license texts. Just look for the license texts directly instead. (From OE-Core rev: 59eb405a80f0a0acf9b754b2b78399bacb0094ae) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: Add warning for local hasheqiv server with remote sstate mirrorsRichard Purdie2022-03-241-0/+5
| | | | | | | | | | | | We're seeing a lot of users configuring an sstate mirror but not realising that the default hash equivalenve setting will make this ineffective. Add a warning to highlight this to the user for the common case. (From OE-Core rev: ae4eb33b5a6a037348e8f66e3d4f19b58dba8fa2) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-fitimage.bbclass: introduce get_fit_replacement_type functionMing Liu2022-03-231-9/+7
| | | | | | | | | | | | | | | Avoid to set KERNEL_IMAGETYPE_REPLACEMENT in anonymous python function, otherwise it chould not be overridden in config files, for instance, it's being set now in meta/lib/oeqa/selftest/cases/fitimage.py. Introduce a get_fit_replacement_type function to get the default value of KERNEL_IMAGETYPE_REPLACEMENT, and it could be overridden in config files. (From OE-Core rev: 5238facb2f067b65959ac51695d100c0e849d3ee) Signed-off-by: Ming Liu <liu.ming50@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toaster: Fix broken overrides usageRichard Purdie2022-03-211-3/+3
| | | | | | | | | This fixes data corruption issues with toaster where image data wasn't being processed correct. (From OE-Core rev: 95cc2d041ad651cfb81b2e55251acf1b86f9ddfc) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/setuptools_build_meta: rename to python_setuptools_build_metaRoss Burton2022-03-201-0/+0
| | | | | | | | | | Rename this class to be python-prefixed to match the other new Python build system classes. (From OE-Core rev: 25d6bf8079797906bde7c0cf63a0466c981ba5bb) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cargo: Add missing nativesdk supportRichard Purdie2022-03-171-0/+1
| | | | | | | | | Copy the target definition for nativesdk to allow nativesdk builds to work. (From OE-Core rev: 40b02f496d6bb9162f9fa36335b047c06937f2f3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/python_pep517: consolidate stub do_configureRoss Burton2022-03-174-19/+7
| | | | | | | | | | As PEP517 doesn't have an explicit configure step, we can stub out the do_configure task once instead of the calling classes doing it. (From OE-Core rev: fd17edbd00f1583eb9e1912ab269dd4dc2631a6f) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/flit_core: rename to python_flit_coreRoss Burton2022-03-171-1/+1
| | | | | | | | | | To be more uniform with the other new Python classes, rename this to python_flit_core and update the recipes that use it. (From OE-Core rev: c0e4ca3c7841028a658f21c11619228022d425b4) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/setuptools_build_meta: use python_pep517_do_compileRoss Burton2022-03-171-8/+3
| | | | | | | | | | Instead of implementing our own do_compile, set PEP517_BUILD_API and use the generic do_compile. (From OE-Core rev: 39a05e44f232775560ad79e49ffe4fb17ed6533c) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/python_pep517: add more commentsRoss Burton2022-03-171-3/+6
| | | | | | | | | | | Remove mention of prebuilt wheels, this is for the full PEP517 build process and recipes that want to install prebuilt wheels can use pypa/installer directly. (From OE-Core rev: d42664a5b5fb460185be996428dbaba6bb81ec3f) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/python_poetry_core: use python_pep517_do_compileRoss Burton2022-03-171-7/+3
| | | | | | | | | | Instead of implementing our own do_compile, set PEP517_BUILD_API and use the generic do_compile. (From OE-Core rev: e38afe528f25038f5adb7a7a94a1e007011696ee) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/python_pep517: implement a standard do_compileRoss Burton2022-03-171-1/+12
| | | | | | | | | | | | As all PEP517-compliant build systems have a universal API, we can ask that users of this class set PEP517_BUILD_API to the class that implements this API and call it ourselves, instead of users needing to implement near-identical do_compile tasks themselves. (From OE-Core rev: 862f68f3a05ce48834f4903d9f9a213684061779) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/flit_core: use python_pep517_do_compileRoss Burton2022-03-171-8/+3
| | | | | | | | | | Instead of implementing our own do_compile, set PEP517_BUILD_API and use the generic do_compile. (From OE-Core rev: 0d3e07177e99d925f2807b85d16596455944d0a5) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* license: Drop AVAILABLE_LICENSESRichard Purdie2022-03-161-4/+0
| | | | | | | | | | This variable is a performance liability and is highly dependent on which layers are added to the configuration which can cause signature issues for users. We have no users left in OE-Coreso remove it. (From OE-Core rev: bf08d9ccb9cbc749a571af3d33140bcae0e252a6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate: Allow optimisation of do_create_spdx task dependenciesRichard Purdie2022-03-161-1/+1
| | | | | | | | | do_create_spdx tasks don't need their dependencies so we can optimistion this as we do for some other tasks. (From OE-Core rev: 6723a045c3a46537bb76111f8306b5960e532522) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* create-spdx: Use function rather than AVAILABLE_LICENSESRichard Purdie2022-03-161-4/+4
| | | | | | | | | | We can directly call the function rather than using the variable indirection. As this is the last user of the variable, it then allows removal of it in a followup patch. (From OE-Core rev: 3ed84651b2f4eff9409bfecba2a080e244124880) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-fitimage: allow overriding FIT configuration prefixAhmad Fatoum2022-03-161-3/+6
| | | | | | | | | | | | | | | | | | | | | | | The prefix was recently changed to play ball with the CVE-2021-27138 workaround in U-Boot. Already deployed bootloaders though may still expect a configuration name containing @ or they may not be affected by this issue. Also, uses may want to customize it beyond the [@-] issue: When device trees are built from a recipe using kernel-devicetree.bbclass the configuration nodes will contain the parent directories, e.g. KERNEL_DEVICETREE = "freescale/imx8mm-myboard.dtb" will become "conf-freescale_imx8mm-myboard.dtb". When moving to devicetree.bbclass, this prefix go away. With this change here, users can restore it easily by setting FIT_CONF_PREFIX = "conf-freescale_", ensuring backwards compatibility. (From OE-Core rev: 7892ee3dc37d302c8eb9c13cd8bb4b7b6e103949) Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devupstream: fix handling of SRC_URIRoss Burton2022-03-161-2/+3
| | | | | | | | | | | | | | | | As the class handler runs before overrides are actually applied we need to check both SRC_URI:class-devupstream and SRC_URI, otherwise the automatic assignment of S="${WORKDIR}/git" for git repositories does not work if the base recipe uses http: but :class-devupstream has a git:// entry instead. Also, there's no need to set S:class-devupstream, we can just assign to S here. (From OE-Core rev: d0edb03088d0d1c20c899daed1bb3a7110b19670) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python_pep517: use installer instead of pipRoss Burton2022-03-161-23/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of battling pip to install a wheel, use installer. Installer does one thing, so it's faster and easier to work with. This means setuptools, pip, and wheel are no longer part of the bootstrap phase, so they can be built normally. To avoid sysroot file conflicts these three recipes can't install .pyc files to the native sysroot. We currently patch pypa/installer to allow us to override the interpreter used, which means we can drop the interpreter seding. We don't need to recompile any Python which is found in $bindir as Python doesn't actually load those files. Across a build of oe-core, the only differences between using pip and installer are: - the .dist-info/RECORD files are ordered differently - the .dist-info/REQUESTED and INSTALLER files are not created - the hashbang in native scripts is "/usr/bin/env nativepython" instead of pointing directly at the native sysroot python3. (From OE-Core rev: f780f6d920d8bbfb674d6066a8b899417decf8d2) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* poetry_core: update for renamed class pip_install_wheel to python_pep517Ross Burton2022-03-161-3/+3
| | | | | | | (From OE-Core rev: 69014d91fd6a3fba2b68703f587a4fc5aa1d8bcc) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* poetry_core: Rename to python_poetry_coreRichard Purdie2022-03-161-2/+2
| | | | | | (From OE-Core rev: 241ebe35afb0ae9cd2713ef19a78746f0ab5ca5d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* setuptools3_rust: Rename to python_setuptools3_rustRichard Purdie2022-03-161-2/+2
| | | | | | (From OE-Core rev: 57bef31cdcafeef2d1ca5ff3aee7b2e2181a0514) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* py3o: Rename to python_py3oRichard Purdie2022-03-162-2/+2
| | | | | | (From OE-Core rev: e9b030eab6d4c18482aaa7f0166686e16ba8e779) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* poetry_core.bbclass: move from meta-pythonTim Orling2022-03-161-0/+15
| | | | | | | | | poetry.core.masonry.api is one of the common PEP-517 build backends. (From OE-Core rev: b1d2626a501f33c289ecfc557b998982665f84ae) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* setuptools3_rust.bbclass: move from meta-pythonTim Orling2022-03-161-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | setuptools-rust is a plugin for setuptools to build Rust Python extensions implemented with PyO3 or rust-cpython. Compile and distribute Python extensions written in Rust as easily as if they were written in C. This class inherits pyo3.bbclass (and therefore cargo.bbclass) and setuptools3.bbclass to make it easier to build Python modules with Rust extensions. Need to call pyo3_do_configure to properly setup the PyO3 environment for cross-compiling. Need to call cargo_common_do_configure to setup cargo_home/config so that the linker properly finds e.g. crti.o and crtbeginS.o It is strongly recommended to provide crates needed for your recipe using the crate:// fetcher. This can be helped with the cargo-bitbake command [1]. If you choose not to use the crate fetcher, bitbake vendoring will not work with setuptools-rust, as it errors out immediately because it cannot find pyo3 or some other crate. The (strongly discouraged) workaround for this is to set: CARGO_DISABLE_BITBAKE_VENDORING = "1" [1] https://crates.io/crates/cargo-bitbake (From OE-Core rev: de3e166cf6f0de4fe0681ddb4b209fb9b8b06811) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>