[PATCH v2] rust: Use variable to specify extra tools to install

Khem Raj
2022-09-08T18:42:46Z

All architectures may not support same set of tools, therefore use a
variable to specify this. E.g. on riscv32 rustfmt is not buildable
right now.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
v2: fix typo and only exclude rustfmt on rv32 since thats what does not
build

meta/recipes-devtools/rust/rust_1.63.0.bb | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-devtools/rust/rust_1.63.0.bb b/meta/recipes-devtools/rust/rust_1.63.0.bb
index cf6468d212..3de6eea0c1 100644
--- a/meta/recipes-devtools/rust/rust_1.63.0.bb
+++ b/meta/recipes-devtools/rust/rust_1.63.0.bb
@@ -62,13 +62,15 @@ rust_do_install:class-nativesdk() {
rm ${D}${libdir}/rustlib/manifest*
}

+EXTRA_TOOLS ?= "cargo-clippy clippy-driver rustfmt"
+EXTRA_TOOLS:remove:riscv32 = "rustfmt"
rust_do_install:class-target() {
export PSEUDO_UNLOAD=1
rust_runx install
unset PSEUDO_UNLOAD

install -d ${D}${bindir}
- for i in cargo-clippy clippy-driver rustfmt; do
+ for i in ${EXTRA_TOOLS}; do
cp build/${RUST_BUILD_SYS}/stage2-tools/${RUST_HOST_SYS}/release/$i ${D}${bindir}
chrpath -r "\$ORIGIN/../lib" ${D}${bindir}/$i
done
--
2.37.3