summaryrefslogtreecommitdiffstats
path: root/meta/classes-recipe/cargo_common.bbclass
Commit message (Collapse)AuthorAgeFilesLines
* recipes: Start WORKDIR -> UNPACKDIR transitionRichard Purdie6 days1-2/+2
| | | | | | | | | Replace references of WORKDIR with UNPACKDIR where it makes sense to do so in preparation for changing the default value of UNPACKDIR. (From OE-Core rev: 1f18b9a512800860d5153d89eb82b56388efad6f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cargo: Add CARGO_LOCK_PATH for path to Cargo.lockAlex Kiernan2023-12-091-2/+4
| | | | | | | | | | | When building a workspace enabled project, the Cargo.lock is found at the root of the project, not alongside the Cargo.toml. Expose CARGO_LOCK_PATH so it can be explicitly configured. (From OE-Core rev: 30159f88a97c73d234f69c5800ba2adb0e26ad44) Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rust: cargo: Convert single-valued variables to weak defaultsAlex Kiernan2023-12-091-3/+3
| | | | | | | | | | All of these variables are single-valued, so we can use weak-defaults for them and only see the final assignment after parsing. (From OE-Core rev: 3221e82a35a149fdf38fe66dcd5de758ac1b9185) Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cargo: Move CARGO_MANIFEST_PATH/CARGO_SRC_DIR to cargo_commonAlex Kiernan2023-12-091-0/+7
| | | | | | | | | | cargo_common_do_configure uses CARGO_MANIFEST_PATH (which depends on CARGO_SRC_DIR), but their definition was in cargo.bbclass. (From OE-Core rev: 740374a13ad5359767b421666decf50c158ea0df) Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cargo: Rename MANIFEST_PATH -> CARGO_MANIFEST_PATHAlex Kiernan2023-12-081-1/+1
| | | | | | | | | | | This variable is a piece of recipe configurable interface, scope it with the class name to make that clear. (From OE-Core rev: 0101de25832fbed3d08cd522512784133c628cad) 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>
* cargo_common.bbclass: Handle Cargo.lock modifications for git dependenciesFrederic Martinsons2023-08-091-0/+41
| | | | | | | | | | | | | Now we use --frozen, Cargo.lock cannot be modified by cargo build. These patched git dependencies requires that the git url is removed from Cargo.lock. Fixes #15104 (From OE-Core rev: b80f756dd480fc92f58d7e10105d3a2427a32795) Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* time64.inc: annotate and clean up recipe-specific Y2038 exceptionsAlexander Kanavin2023-06-281-0/+12
| | | | | | | | | | | | | | | Additionally: - drop pseudo from INSANE_SKIP for 32bit time API check (pseudo passes the check; it's not clear where the issue may have been) - move rust exceptions to the cargo class, as the problem is common across the ecosystem, and needs to be fixed in the libc crate. (From OE-Core rev: d3d406bf636e579c17708b408e11c12d252533ee) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cargo.bbclass: set up cargo environment in common do_compileAlexander Kanavin2023-06-271-0/+4
| | | | | | | | | | | | | | | cargo_do_compile runs only if the recipe is built using cargo as the top level tool. Some recipes hide usage of cargo inside setuptools (or autoconf) and use do_compile definitions specific to those, and so the environment isn't properly set up. This was exposed by latest versions of python3-cryptography. (From OE-Core rev: 9f4ff643a028d7f5670d80861f2ce19ca2d90faa) 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>
* cargo_common.bbclass: add support of user in url for patchFrederic Martinsons2023-04-011-1/+4
| | | | | | | | | To handle url like git://git@repo/project (From OE-Core rev: ad99ede096aff03c974b8725d90d3c9d1056bae0) Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cargo_common.bbclass: Support local github reposAlex Kiernan2023-04-011-0/+30
| | | | | | | | | | | | | | | | | | | | | | Since disable network was added cargo configurations which reference git repos fail as they attempt to fetch across the network as part of do_compile, even if EXTRA_OECARGO_PATHS to add them as part of `paths` is used, as this is documented as only working for packages which exist in crates.io. Add parsing of the SRC_URIs for git repos and include `[patch]` sections to redirect to the checked out source repos which the bitbake fetcher has already populated. There are still cases which don't work - if you have multiple copies of the same repo with different revisions, there's currently no way to represent that and anything using a repo which has a virtual manifest will fail to build (see https://github.com/rust-lang/cargo/issues/4934). (From OE-Core rev: 684a8af41c5bb70db68e75f72bdc4c9b09630810) Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cargo_common.bbclass: Fix typosAlex Kiernan2022-11-011-2/+2
| | | | | | | | (From OE-Core rev: c7a92180b21e75a84f632e4c16e63dc1f4861a00) 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>
* cargo_common.bbclass: Add missing space in shell conditional codeKhem Raj2022-08-211-1/+1
| | | | | | | | | | | | Fixes cofigure errors in rust recipes e.g. tmp/work/riscv32-yoe-linux-musl/rust/1.62.1-r0/temp/run.setup_cargo_environment.3047487: line 215: [: missing `]' (From OE-Core rev: 9ff2817536f4b568e702470789efeab0008d73a0) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: Update classes to match new bitbake class scope functionalityRichard Purdie2022-08-121-0/+139
Move classes to classes-global or classes-recipe as appropriate to take advantage of new bitbake functionality to check class scope/usage. (From OE-Core rev: f5c128008365e141082c129417eb72d2751e8045) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>