summaryrefslogtreecommitdiffstats
path: root/meta
AgeCommit message (Collapse)Author
2022-08-08rust-target-config: Make target workaround genericRichard Purdie
Ensure the 'target' data is set for both HOST and TARGET queries as appropriate to work correctly in cross configurations. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust-common: Update to match cross targetsRichard Purdie
Tweak the armv7 workaround to work for cross environments and as a host triplet and not just as a target. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust.inc: Fix for cross compilation configurationRichard Purdie
For cross compilation, build, host and target may be different. Ensure the main rust config has the appropriate sections added to match the configurations. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust-llvm: Enable nativesdk variantRichard Purdie
To allow nativesdk variants of the tools to build, enable a nativesdk variant of rust-llvm. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08cargo_common: Handle build SYS as well as HOST/TARGETRichard Purdie
Improve the common class to handle BUILD_SYS as well as host and target, removing the need to a workaround in the rust recipe. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust-common/rust: Improve bootstrap BUILD_SYS handlingRichard Purdie
Move the "unknown" vendor workaround used during bootstrap to a central location so it is applied consistently to all RUST_BUILD_SYS values rather than some subset. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust: Generate per recipe target configuration filesRichard Purdie
Instead of generating target configuration files centrally and often getting it wrong, or having trouble finding the right set, generate them dynamically from the bbclass into WORKDIR per recipe. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust-target-config: Show clear error when target isn't definedRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust/mesa: Drop obsolete YOCTO_ALTERNATE_MULTILIB_NAMERichard Purdie
This variable is no longer used by the llvm patches. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust.inc: Fix cross build llvm-config handlingRichard Purdie
We need llvm-config for the target but the cross compiled target binary is no good. We can copy the native one into the target location where it will then return the target values though. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust.inc: Rename variables to make code clearerRichard Purdie
Instead of reusing a "target_section" variable, name them host and build section instead. This patch sets things up for other improvementsm, separating out the renaming. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust: Switch to use RUST_XXX_SYS consistentlyRichard Purdie
The code was using a mixture of XXX_SYS and RUST_XXX_SYS. Use RUST_XXX_SYS consistently and add the variables to the global exclsion on signatures as they're reflected in the directory triplets and trying to filter them out the hashes separately is too painful. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust: Work around reproducibility issuesRichard Purdie
Add a patch which removes the sections of code which encode buildpaths. Whilst not ideal, the patches at least show where the problematic data is coming from and should allow more focused work to resovle it by someone who has a better understanding of rust and what this code is doing. It does look unlikely we actually need this code in our usecases anyway. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust-common: Rework wrappers to handle muslRichard Purdie
For musl we need to be able to add a library to the end of the linker commandline. Rework the wrapper code to be able to do this through a new variable. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust-common: Drop export directive from wrappersRichard Purdie
These variables don't need to be exported into the environment, which reduces the scope of rebuilds when variable values change. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust-common: Add CXXFLAGSRichard Purdie
Similarly to CC and CCLD, handle CXX flags too. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08rust-target-config: Add mips n32 target informationRichard Purdie
Add MIPS n32 target information. This appears to be correct but building libstd-rs for the target doesn't work. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08conf/distro/no-static-libs: Allow static musl for rustRichard Purdie
When building rust for musl targets we need the static library from musl, so enable it. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08selftest/reproducible: Exclude rust/rust-dbg for now until we can fixRichard Purdie
There looks to be a reproducibility issue left in one of the rust libraries. It doesn't appear to be a string issue but some binary problem. Disable rust from the reproducibility testing until we can get to the bottom of the issue (allowing wider testing of all the other improvements). Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08populate_sdk_base: Disable rust SDK for MIPS n32Richard Purdie
The n32 MIPS rust SDK doesn't quite build (libstd-rs fails with an llvm register issue). Disable it for now, someone with interest in having it working can fix if/as/when. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08nativesdk: Clear TUNE_FEATURESRichard Purdie
Similarly to what native.bbclass does, clear TUNE_FEATURES since these aren't appropriate to the nativesdk build. This saves us having to change down signature issues due to data in this variable. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-05oeqa/selftest/sstate: Ensure tests are deterministicRichard Purdie
glob.glob() depends on the order of files on disk and selecting [0] is race prone. We should cover all the nativesdk files so rework the function to do this. Spotted as some oe-selftests failed, some passed and it raised a question of why! Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-04image_types_wic.bbclass: fix cross binutils dependencyChen Qi
Enable multilib and wic at the same time and we'll meet the following error. ERROR: Nothing PROVIDES 'virtual/i686-wrsmllib32-linux-binutils' Adjust the dependency to take multilib into consideration. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-04python3-pip: upgrade 22.1.2 -> 22.2.1wangmy
reproducible.patch refreshed for new version. 0001-change-shebang-to-python3.patch removed as not needed since upstream has removed the shebang lines. License-Update: src/pip/_vendor/html5lib/LICENSE: removed since it's not it new version src/pip/_vendor/chardet/LICENSE: file format modified, change St to Street src/pip/_vendor/pygments/LICENSE: Copyright year updated to 2022 Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-04python3-pygobject: upgrade 3.42.1 -> 3.42.2wangmy
Changelog: ========= Error out instead of crashing when marshaling unsupported fundamental types in some cases !180 Add a workaround for a PyPy 3.9+ bug when threads are used !200 Fix crashes when marshaling zero terminated arrays for certain item types !191 Fix a crash/refcounting error in case marshaling a hash table fails !191 Make the test suite pass again with PyPy !191 tests: support running tests with (MSVC) CPython 3.8+ on Windows !206 interface: Fix leak when overriding GInterfaceInfo !204 setup.py: look up pycairo headers without importing the module (helps with building on Windows and MSVC CPython 3.8+) !205 Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-04python3-setuptools: upgrade 63.2.0 -> 63.3.0wangmy
Merge with pypa/distutils@129480b, including substantial delinting and cleanup, some refactoring around compiler logic, better messaging in cygwincompiler (pypa/distutils#161). Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-04python3-scons: upgrade 4.3.0 -> 4.4.0wangmy
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-04python3-jsonschema: upgrade 4.7.2 -> 4.9.0wangmy
Changelog: =========== -Fix relative $ref resolution when the base URI is a URN or other scheme (#544). -pkgutil.resolve_name is now used to retrieve validators provided on the command line. This function is only available on 3.9+, so 3.7 and 3.8 (which are still supported) now rely on the pkgutil_resolve_name backport package. Note however that the CLI itself is due to be deprecated shortly in favor of check-jsonschema. -best_match no longer traverses into anyOf and oneOf when all of the errors within them seem equally applicable. This should lead to clearer error messages in some cases where no branches were matched. Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-04python3-hatchling: upgrade 1.5.0 -> 1.6.0wangmy
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-04python3-dbusmock: upgrade 0.28.1 -> 0.28.4wangmy
Changelog: ========== setup.py: Fix ModuleNotFoundError ofono template: Fix conversion to f-strings (Debian #1015286) Ship FMF tests in release tarballs Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-04python3-cython: upgrade 0.29.30 -> 0.29.32wangmy
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-04python3-attrs: upgrade 21.4.0 -> 22.1.0wangmy
License-Update: add "and the attrs contributors" to Copyright Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-04qemu: CVE-2022-35414 can perform an uninitialized read on the translate_fail ↵Hitendra Prajapati
path, leading to an io_readx or io_writex crash Upstream-Status: Backport [https://github.com/qemu/qemu/commit/418ade7849ce7641c0f7333718caf5091a02fd4c] CVE: CVE-2022-35414 Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-04create-spdx: ignore packing control files from ipk and debJose Quaresma
Otherwise spdx can have references for data that is not packed in the package delivered because this contol data is temporarly and only exist while the package is been write. During do_package_write_ipk task in do_package_ipk the control files is cleaned up at the end. This can create a race condiction when the do_create_spdx task runs the add_package_files function and these files is been deleted at same time in the task do_package_write_ipk. ERROR: alsa-topology-conf-1.2.5.1-r0 do_create_spdx: 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:do_create_spdx(d) 0003: File: '/srv/oe/build/conf/../../layers/openembedded-core/meta/classes/create-spdx.bbclass', lineno: 567, function: do_create_spdx 0563: package_doc.add_relationship(package_doc, "DESCRIBES", spdx_package) 0564: 0565: package_archive = deploy_dir_spdx / "packages" / (package_doc.name + ".tar.zst") 0566: with optional_tarfile(package_archive, archive_packaged) as archive: *** 0567: package_files = add_package_files( 0568: d, 0569: package_doc, 0570: spdx_package, 0571: pkgdest / package, File: '/srv/oe/build/conf/../../layers/openembedded-core/meta/classes/create-spdx.bbclass', lineno: 234, function: add_package_files 0230: info.mtime = source_date_epoch 0231: 0232: archive.addfile(info, f) 0233: *** 0234: sha1 = bb.utils.sha1_file(filepath) 0235: sha1s.append(sha1) 0236: spdx_file.checksums.append(oe.spdx.SPDXChecksum( 0237: algorithm="SHA1", 0238: checksumValue=sha1, File: '/srv/oe/bitbake/lib/bb/utils.py', lineno: 559, function: sha1_file 0555: """ 0556: Return the hex string representation of the SHA1 checksum of the filename 0557: """ 0558: import hashlib *** 0559: return _hasher(hashlib.sha1(), filename) 0560: 0561:def sha384_file(filename): 0562: """ 0563: Return the hex string representation of the SHA384 checksum of the filename File: '/srv/oe/bitbake/lib/bb/utils.py', lineno: 528, function: _hasher 0524: 0525:def _hasher(method, filename): 0526: import mmap 0527: *** 0528: with open(filename, "rb") as f: 0529: try: 0530: with mmap.mmap(f.fileno(), 0, access=mmap.ACCESS_READ) as mm: 0531: for chunk in iter(lambda: mm.read(8192), b''): 0532: method.update(chunk) Exception: FileNotFoundError: [Errno 2] No such file or directory: '/srv/oe/build/tmp-lmp/work/all-lmp-linux/alsa-topology-conf/1.2.5.1-r0/packages-split/alsa-topology-conf/CONTROL/control' ERROR: Logfile of failure stored in: /srv/oe/build/tmp-lmp/work/all-lmp-linux/alsa-topology-conf/1.2.5.1-r0/temp/log.do_create_spdx.998864 INFO: recipe alsa-topology-conf-1.2.5.1-r0: task do_create_spdx: Failed Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-04lttng-modules: Fix build failure for kernel v5.15.58He Zhe
Backport from upstream d8254360c7f2ff9b3f945e9668d89c0b56b9bd91 ("fix: net: skb: introduce kfree_skb_reason() (v5.15.58..v5.16)") tmp-glibc/work/qemuarm-wrs-linux-gnueabi/lttng-modules/2.13.3-r0/ lttng-modules-2.13.3/src/probes/../../include/lttng/ tracepoint-event-impl.h:133:6: error: conflicting types for 'trace_kfree_skb'; have 'void(struct sk_buff *, void *)' 133 | void trace_##_name(_proto); | ^~~~~~ Signed-off-by: He Zhe <zhe.he@windriver.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-04classes/sanity: Add comment about github & gitlab archivesJoshua Watt
Add a comment so that users grepping for "github" or "gitlab" will find this code (since the regex wont). Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-02vim: update from 9.0.0063 to 9.0.0115Randy MacLeod
Drop crosscompile.patch which was merged as part of: 509695c1c (tag: v9.0.0065) patch 9.0.0065: \ cross-compiling doesn't work because of timer_create check Also drop: racefix.patch which may have been fixed upstream and is being tracked by: https://github.com/vim/vim/pull/10776 where upstream is asking if the different approach resolves the race condition. Let's see what's out there! Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-02repo: upgrade 2.27 -> 2.28Changhyeok Bae
Signed-off-by: Changhyeok Bae <changhyeok.bae@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-02hdparm: Fix build with glibc 2.36Khem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-02gcc-sanitizers: Fix mount.h glibc 2.36 conflictKhem Raj
backport a sanitizers upstream patch Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-02uboot-config.bbclass: Raise error for bad keyTom Hochstein
If an invalid key is used, the class ignores the error, with an indeterminate result. In my case, the problem surfaced in do_deploy: ``` | cp: cannot stat '/.../build/tmp/work/imx6qdlsabresd-fsl-linux-gnueabi/u-boot-imx-mfgtool/2022.04-r0/deploy-u-boot-imx-mfgtool/u-boot.imx': No such file or | directory ``` The root cause of this was that the uboot config key did not match a valid option. With the fix, the error is caught by the class: ``` ERROR: Nothing PROVIDES 'u-boot-imx-mfgtool' u-boot-imx-mfgtool was skipped: The selected UBOOT_CONFIG key ['mfgtool'] has no match in dict_keys(['sd-fslc', 'sd-imx', 'sd-optee-imx', 'sata-imx', 'mfgtool-imx']). ``` Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com> Acked-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-02btrfs-tools: Use linux/mount.h instead of sys/mount.hKhem Raj
This fixes the conflict thats with mount.h from glibc 2.36+ and kernel [1] [1] https://sourceware.org/glibc/wiki/Release/2.36 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-02libarchive: Avoid mount.h conflict between kernel and glibcKhem Raj
glibc 2.36 implements fsconfig_command but it now conflicts with kernel mount.h and there is no workaround, code in apps have to be adjusted to use correct API see [1] [1] https://sourceware.org/glibc/wiki/Release/2.36 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-02ltp: fix build with ld-is-gold in DISTRO_FEATURESMartin Jansa
* backport one more commit for LD call which conflicts with the 0001-kvm-use-LD-instead-of-hardcoding-ld.patch we already had and replace this 2nd patch with the rebased version which is now merged upstream * then backport additional patch which introduces KVM_LD variable which we can set to use .bfd suffix in LD when ld-is-gold is in DISTRO_FEATURES to work around gold incompatibility reported: https://github.com/linux-test-project/ltp/pull/948#issuecomment-1193138866 https://lists.openembedded.org/g/openembedded-core/message/168193 http://errors.yoctoproject.org/Errors/Details/663094/ x86_64-oe-linux-ld --sysroot=/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/ltp/20220527-r0/recipe-sysroot -z noexecstack -r -T /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/ltp/20220527-r0/git/testcases/kernel/kvm/linker/payload.lds --oformat=elf64-x86-64 -o kvm_pagefault01-payload.o kvm_pagefault01-payload.bin x86_64-oe-linux-ld: error: kvm_pagefault01-payload.bin:1:1: invalid character make: *** [Makefile:53: kvm_pagefault01-payload.o] Error 1 Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-02cmake: remove CMAKE_ASM_FLAGS variable in toolchain fileMartin Beeger
As discussied in [YOCTO #14717] cmake contains a OEToolchainConfig.cmake file to configure the toolchain correctly in cross-compile build for recipes using cmake. The CMAKE_ASM_FLAGS are the configuration are meant for assembly, but the spelling is incorrect and the Flag is ASFLAGS for gcc and other compilers. So this variable might neever have worked and it is better for recipes to specify their own. Signed-off-by: Martin Beeger <martin.beeger@online.de> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-02wic: depend on cross-binutilsRoss Burton
Wic can build an unified kernel image, but this needs the cross-objcopy from binutils. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2022-08-01oeqa/sdk/rust: Fix file deletion for multilib SDKsRichard Purdie
We need to use shutil.rmtree here since removedirs() only covers directories. Make the exception for specific too to make errors easier to catch. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-07-28ltp: Add post release runtime fixesPetr Vorel
Backport various post 20220527 release runtime fixes: * The concept of max runtime * tst_test.sh: Cleanup getopts usage * mountns0[1-3]: wait for umount completed in thread_b Signed-off-by: Petr Vorel <petr.vorel@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-07-28create-spdx: Fix supplier fieldMihai Lindner
The correct field name is "supplier" according to SPDX schema. The "supplier" field translates to "PackageSupplier", but that's for tag-value format. Signed-off-by: Mihai Lindner <mihai.lindner@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-07-28selftest/meta_ide: add a test for running SDK tests directly in a yocto buildAlexander Kanavin
There's been a recent discussion about how we can make the Yocto SDK experience better [1]. One of the ideas was to eliminate the SDK as a separate artefact altogether and simply provide everything that the SDK and eSDKs do directly in a yocto build. This does not mean that people have to 'learn Yocto', but rather that the integrators should provide a well-functioning sstate cache infrastructure (same as with minimal eSDK, really), and a few wrapper scripts for setting up the build and the SDK environment that run layer setup and bitbake behind the scenes. [1] https://lists.openembedded.org/g/openembedded-architecture/topic/thoughts_on_the_esdk/90990557 So without further ado, here's how you get a 'SDK' without building one: 1. Set up all the needed layers and a yocto build directory. 2. Run: $ bitbake meta-ide-support $ bitbake -c populate_sysroot gtk+3 (or any other target or native item that the application developer would need) $ bitbake populate-sysroots 3. Set up the SDK environment: . tmp/deploy/images/qemux86-64/environment-setup-core2-64-poky-linux (adjust accordingly) Et voila! The Unix environment is now set up to use the cross-toolchain from Yocto, exactly as in the SDK. And devtool/bitbake are available to extend it, exactly as in the eSDK. Theare are numerous benefits here: no need to produce, test, distribute and maintain separate SDK artifacts. No two separate environments for the yocto build and the SDK. Less code paths where things can go wrong. Less awkward, gigantic tarballs. Less SDK update headaches: 'updating the SDK' simply means updating the yocto layers with git fetch or layer management tooling. Built-in SDK extensibility: just run bitbake again to add more things to the sysroot, or add layers if even more things are required. How is this tested? Exactly same as the regular SDK: $ bitbake -c testsdk meta-ide-support This runs the same toolchain tests from meta/lib/oeqa/sdk/cases as the regular sdk testing does. Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>