-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Description
Brief
While meta-rust-bin works quite well, it has the disadvantage to require network for the compile task to download the crates. This is not ideal and alternatives shall be explored.
Detail
The recipes with meta-rust-bin requite do_compile[network] = "1" to be set. Alternatives are:
meta-rustcargo bitbakedoes not work well with cargo workspacescargo bitbakeis used to create the list of crate dependencies{ workspace = true }does not work withcargo bitbakeand all values must be duplicated in the respectiveCargo.toml- a virtual workspace also does not work with
cargo bitbakebut only on the members, e.g.iceoryx2-ffi/c
meta-rustmust be placed beforemetainbblayers.conf- if not placed before
meta, it conflicts with the shipped Rust 1.75 compiler -> rust-native fails in do_compile with poky mickeldore meta-rust/meta-rust#427
- if not placed before
- compiler version can set by adding
RUST_VERSION ?= "1.82.0andrequire conf/distro/include/rust_versions.inctolocal.conf - if it turns out that
meta-rustis the only viable options, one solution would be to have a recipe that only builds theiceoryx2-ffi-ccrate. That recipe would need to carry a patch to remove theworkspacereferences from theCargo.tomloficeoryx2-ffi-c. In order to not have two sets of recipes, theiceoryx2-crecipe should depend on eithericeoryx2-devor the new package created by theiceoryx2-ffi-crecipe.
cargo.bbclass- https://git.openembedded.org/openembedded-core/tree/meta/classes-recipe/cargo.bbclass
- https://git.openembedded.org/openembedded-core/tree/meta-selftest/recipes-extended/hello-rs/hello-rs_0.1.0.bb
- https://git.openembedded.org/openembedded-core/tree/meta-selftest/recipes-extended/hello-rs/hello-rs-crates.inc
- looks promising
- check if
ptest-cargoworks with the alternative approach- with
meta-rust-binit seems,ptest-cargoinvokesmeta-rust
- with
rajesh6115
Metadata
Metadata
Assignees
Labels
No labels