summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/cargo
AgeCommit message (Collapse)Author
2022-12-28cargo: Include crossbeam-utils patchAlex Kiernan
We need patched crossbeam-utils in cargo as well as rust, move cargo alongside rust so they can both use the same patch. (From OE-Core rev: 39402790724014a39b265ee1978396a0514fdc98) Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-28cargo: Extend DEBUG_PREFIX_MAP to cover vendorAlex Kiernan
The cargo build builds vendored libgit and curl, but these exist outside ${S} which DEBUG_PREFIX_MAP covers. (From OE-Core rev: c874ef5eafb88d361b96e014739d7a3a640536d9) Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-28cargo: Merge .inc into .bbAlex Kiernan
(From OE-Core rev: 15170dbc0579f57436730b1fc1c2f471aa0dea54) Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-17rust: update 1.65.0 -> 1.66.0Alex Kiernan
Drop backported patch ENOTSUP constant for riscv32/musl. Release notes: https://blog.rust-lang.org/2022/12/15/Rust-1.66.0.html License-Update: Upstream has added Unicode Terms of Use license (Unicode-TOU). (From OE-Core rev: e6a9e1ea7be842dcde109e952fbc7dc08d1577a2) Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-07rust: update 1.64.0 -> 1.65.0Alex Kiernan
Release notes: https://blog.rust-lang.org/2022/11/03/Rust-1.65.0.html (From OE-Core rev: fa8890188e8971a5707bae1504cb010b54ed3cae) Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-26rust: update 1.63.0 -> 1.64.0Alex Kiernan
Release notes: https://blog.rust-lang.org/2022/09/22/Rust-1.64.0.html (From OE-Core rev: 1d81fb264580b96c405075fcfd2a82a6f74b9630) Signed-off-by: Alex Kiernan <alexk@zuma.ai> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-31rust: update from 1.62.1 to 1.63.0Randy MacLeod
Release notes: https://blog.rust-lang.org/2022/08/11/Rust-1.63.0.html This is a standard upgrade aside from the path for the stage2 tools binaries (clippy, et.al.) changing. (From OE-Core rev: 9f390accf5fd174c430928cf841728d0456fc1b7) Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com> 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>
2022-08-14rust: update 1.62.0 -> 1.62.1Alexander Kanavin
(From OE-Core rev: 6baa224158f40b9754c3f10e11966d02e1337ae7) 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>
2022-08-12rust: Remove unneeded RUST_TARGETGENS settingsRichard Purdie
These match the default from the class so drop them. We then always generate all targets so remove the configuration from the class. (From OE-Core rev: e4d56256936c55bab2bf2934ccbde9157ef7dc57) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-09cargo: Work around host system library conflictsRichard Purdie
cargo ends up running target-rust-ccld with LD_LIBRARY_PATH set to libdir but not base_libdir which breaks the SDK. You see errors like: /bin/sh: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory On such a system, this would fail: LD_LIBRARY_PATH="<path>/testimage-sdk/sysroots/x86_64-pokysdk-linux/usr/lib" cargo build but this would work: LD_LIBRARY_PATH="<path>/testimage-sdk/sysroots/x86_64-pokysdk-linux/usr/lib:<path>/testimage-sdk/sysroots/x86_64-pokysdk-linux/lib" cargo build so wrap cargo with both paths in LD_LIBRARY_PATH. The error depends on the versions of the host system, it reproduced on tumbleweed-ty-3. (From OE-Core rev: 388e7cac9f90e79ce8c3c1683d8ee0f4df1bc907) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-08-08cargo: Drop cross-canadian variant and fix/use nativesdkRichard Purdie
The cargo-cross-candian variant made no sense as one version of cargo in the SDK can work for all targets. Replace it with nativesdk-cargo instead. Move the SDK env to rust-cross-canadian. (From OE-Core rev: 6d6d135924eff5993736ee58ba8cc5d00ca635f3) 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. (From OE-Core rev: 9160e4a37561d8ac882057450a818621bec13bed) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-07-28rust-target-config: Allow the targets generated to be configurableRichard Purdie
Remove further code duplication by allowing the main function to be configurable. (From OE-Core rev: 2d4b35a0db1220e7a7f1b6776223aa4d40a3f246) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-07-28rust-target-config: Create new class to contain target json config generationRichard Purdie
Currently most of the rust recipes use this code but it is all piecemeal. Turn the code into a class where things can start to be rationalised. Ultimately some of the data and python code should be moved to a python library but one step at a time. No functionality changes. (From OE-Core rev: 3795285cbf362e13b8151bfdbe1bce999ac28641) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-07-28rust-common/rust-cross: Clean up target json generation codeRichard Purdie
Some of the subtleties in the different codepaths for target rust json generation were not easy to spot. Start to simplfy the code to make this clearer. This patch should not have any functionality change although ABIEXTENSION has to be excluded from the function signature, the triplet would normally cover anything set there. (From OE-Core rev: 0f83d959465e0d99f98ade6803281585931d1b02) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-07-28cargo-cross-canadian: Use SDK's flags during target linkingOtavio Salvador
(From OE-Core rev: abb1f3f12b4a02d644414b1af0623894984bb4cd) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-07-08rust: update 1.60.0 -> 1.62.0Alexander Kanavin
Drop the two libstdc patches as they've finally appeared upstream. Disable the use of libstdc++.a from the host distributions, as it results in cross-distro contamination in rust-native. (From OE-Core rev: 94760bc118952160865352c10ca7693680b5ce7e) 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>
2022-05-21rust-common: Drop LLVM_TARGET and simplifyRichard Purdie
This all seems over complicated for something which is basically always one of two values. This might even help cross-canadian work on something which isn't x86-64. (From OE-Core rev: bd36593ba3db758b3eacc974e48468a665967961) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-04-27rust: update 1.59.0 -> 1.60.0Pgowda
Rust has been upgraded to rust-1.60.0 that uses LLVM 14. Please refer the following link for more detailed features. https://blog.rust-lang.org/2022/04/07/Rust-1.60.0.html https://github.com/rust-lang/rust/blob/master/RELEASES.md (From OE-Core rev: 786a9a66486cf179ee4c9e295569fcd8c37fef78) Signed-off-by: pgowda <pgowda.cve@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-03-09rust: update 1.58.1 -> 1.59.0Alexander Kanavin
Drop libstd-rs patches as they're merged upstream. (From OE-Core rev: 05f4a09899aa8dbb22ef1adb494abac41d5b96b7) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-01rust: update 1.58.0 -> 1.58.1Alexander Kanavin
(From OE-Core rev: 855ec0af1b3c7c2664e68ac89cad839d480c43db) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-20rust: update 1.57.0 -> 1.58.0Alexander Kanavin
(From OE-Core rev: 43895e2967b2c80f4ee353b33ffe422ea7590ff1) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-08rust: update 1.56.1 -> 1.57.0Alexander Kanavin
(From OE-Core rev: 295b9d51bad0b0da3ba9acec875972bf5e5ca4d7) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-11rust: update 1.56.0 -> 1.56.1Alexander Kanavin
This update includes fixes for the 'trojan source' vulnerability: https://blog.rust-lang.org/2021/11/01/Rust-1.56.1.html Drop two unused patches. (From OE-Core rev: 5ff0b0d8c6c37ebf916062f03a378fe0e34b1c53) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-23rust: Upgrade to 1.56.0Khem Raj
This is latest major release, changes are here [1] Forward port libstd-rs patches and refresh musl/rv64 port [1] https://github.com/rust-lang/rust/releases/tag/1.56.0 (From OE-Core rev: 183204cbc70a4ef418b16df48bc7eb6e3a75a114) Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Randy MacLeod <Randy.MacLeod@windriver.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-14rust/cargo: exclude UNINATIVE_LOADER from task signatureAlexander Kanavin
(From OE-Core rev: 8915dfa2034d939b504f134e83811ed2ba18a6f1) 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>
2021-10-14rust: update 1.54.0 -> 1.55.0Alexander Kanavin
(From OE-Core rev: a21705c33a6a69e9a625b8a75d76b76bd078aba2) 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>
2021-10-14rust: drop PV from include file namesAlexander Kanavin
This complicates (semi) automated upgrades, and isn't necessary as we carry only a single version of the toolchain. (From OE-Core rev: f7a6b23d99fba5855cfb34788199877a14206293) 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>
2021-09-21recipes: Add missing pkgconfig inheritRichard Purdie
Various recipes were missing a pkgconfig inherit or pkgconfig-native dependency despite using pkgconfig. Add the inherit to igt-gpu-tools/gdb/libmodulemd/libwpe/xwayland/waffle shaderc/iputils/wpebackend-fdo/lttng-ust/cargo. (From OE-Core rev: 777d9744570c2dc119dc5d04985896bbb1da5885) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-09-02cargo: Apply uninative fix to snapshot as with rustRichard Purdie
Also add the interpreter relocation trick from uninative to the prebuilt cargo binary to match rust-native, just in case that causes other problems later too. (From OE-Core rev: e3cb3958cc14672feef5d4d8953131f55db68573) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-26cargo: Ensure cargo-cross-canadian doesn't have native/nativesdk versionsRichard Purdie
native/nativesdk variants of a cross-canadian recipe don't make any sense so avoid these recipe variants. (From OE-Core rev: 4ba7fb0b6a5021bca73aade4af390e8e017b491a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-26rust: remove Rust version 1.51.0 toolchainRandy MacLeod
We typically only have one version so remove the older rust toolchain. This also fixes a maintainers oe-selftest. (From OE-Core rev: d8ff9672d2686801d535a91fa28a92e38d8f0409) Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-26cargo/rust/rustfmt: exclude from worldRandy MacLeod
cargo, rust, and rustfmt can't be built for the targets yet so exclude them from world builds. (From OE-Core rev: 3ade1015b5bbd6aac9dd9974a6a5712958a5f5ed) Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-26rust: initial merge of most of meta-rustRandy MacLeod
In the meta-rust repo at commit: 448047c Upgrade to 1.54.0 (#359) Make the required directories: mkdir ../oe-core/meta/recipes-devtools/rust mkdir ../oe-core/meta/recipes-devtools/cargo mkdir ../oe-core/meta/recipes-example and then: cp recipes-devtools/rust/* ../oe-core/meta/recipes-devtools/rust cp recipes-devtools/cargo/* ../oe-core/meta/recipes-devtools/cargo cp lib/crate.py ../oe-core/meta/lib cp recipes-example/* ../oe-core/meta/recipes-example cp conf/distro/include/rust_* ../oe-core/meta/conf/distro/include/ cp classes/* ../oe-core/meta/classes/ cp recipes-core/packagegroups/packagegroup-rust-cross-canadian.bb ../oe-core/meta/recipes-core/packagegroups (From OE-Core rev: 3ed57578cca93ff1ba4e0bf3f25566e10659a2f9) Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>