From 4b54f5f52b33db4d2fe95c5faef033b6c6b37b7d Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 5 Aug 2022 13:53:53 +0100 Subject: rust: Drop cross/crosssdk Now that target config json is provided by rust-target-config.bbclass, the need for the cross and crosssdk recipes is removed. Drop them and simplify dependencies accordingly. Signed-off-by: Richard Purdie --- meta/classes/cargo.bbclass | 4 +- meta/classes/rust.bbclass | 2 +- meta/conf/distro/include/maintainers.inc | 2 - meta/recipes-devtools/rust/rust-cross.inc | 47 ---------------------- meta/recipes-devtools/rust/rust-cross_1.62.0.bb | 8 ---- meta/recipes-devtools/rust/rust-crosssdk_1.62.0.bb | 8 ---- 6 files changed, 3 insertions(+), 68 deletions(-) delete mode 100644 meta/recipes-devtools/rust/rust-cross.inc delete mode 100644 meta/recipes-devtools/rust/rust-cross_1.62.0.bb delete mode 100644 meta/recipes-devtools/rust/rust-crosssdk_1.62.0.bb diff --git a/meta/classes/cargo.bbclass b/meta/classes/cargo.bbclass index 2475d05b3d..4bfcfe5fc6 100644 --- a/meta/classes/cargo.bbclass +++ b/meta/classes/cargo.bbclass @@ -13,8 +13,8 @@ CARGO = "cargo" BASEDEPENDS:append = " cargo-native" # Ensure we get the right rust variant -DEPENDS:append:class-target = " virtual/${TARGET_PREFIX}rust ${RUSTLIB_DEP}" -DEPENDS:append:class-nativesdk = " virtual/${TARGET_PREFIX}rust ${RUSTLIB_DEP}" +DEPENDS:append:class-target = " rust-native ${RUSTLIB_DEP}" +DEPENDS:append:class-nativesdk = " rust-native ${RUSTLIB_DEP}" DEPENDS:append:class-native = " rust-native" # Enable build separation diff --git a/meta/classes/rust.bbclass b/meta/classes/rust.bbclass index f20e063c5b..2639cecfd4 100644 --- a/meta/classes/rust.bbclass +++ b/meta/classes/rust.bbclass @@ -10,7 +10,7 @@ def rust_base_dep(d): deps = "" if not d.getVar('INHIBIT_DEFAULT_RUST_DEPS'): if (d.getVar('HOST_SYS') != d.getVar('BUILD_SYS')): - deps += " virtual/${TARGET_PREFIX}rust ${RUSTLIB_DEP}" + deps += " rust-native ${RUSTLIB_DEP}" else: deps += " rust-native" return deps diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc index b563c51796..80dfd6eb47 100644 --- a/meta/conf/distro/include/maintainers.inc +++ b/meta/conf/distro/include/maintainers.inc @@ -717,8 +717,6 @@ RECIPE_MAINTAINER:pn-rt-tests = "Alexander Kanavin " RECIPE_MAINTAINER:pn-ruby = "Ross Burton " RECIPE_MAINTAINER:pn-run-postinsts = "Ross Burton " RECIPE_MAINTAINER:pn-rust = "Randy MacLeod " -RECIPE_MAINTAINER:pn-rust-cross-${TUNE_PKGARCH}-${TCLIBC} = "Randy MacLeod " -RECIPE_MAINTAINER:pn-rust-crosssdk-${SDK_ARCH}-glibc = "Randy MacLeod " RECIPE_MAINTAINER:pn-rust-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Randy MacLeod " RECIPE_MAINTAINER:pn-rust-hello-world = "Randy MacLeod " RECIPE_MAINTAINER:pn-rust-llvm = "Randy MacLeod " diff --git a/meta/recipes-devtools/rust/rust-cross.inc b/meta/recipes-devtools/rust/rust-cross.inc deleted file mode 100644 index ab538e6659..0000000000 --- a/meta/recipes-devtools/rust/rust-cross.inc +++ /dev/null @@ -1,47 +0,0 @@ -RUST_TARGETGENS = "BUILD HOST TARGET" - -# Otherwise we'll depend on what we provide -INHIBIT_DEFAULT_RUST_DEPS = "1" - -# Unlike native (which nicely maps it's DEPENDS) cross wipes them out completely. -# Generally, we (and cross in general) need the same things that native needs, -# so it might make sense to take it's mapping. For now, though, we just mention -# the bits we need explicitly. -DEPENDS += "rust-llvm-native" -DEPENDS += "rust-native" - -# In the cross compilation case, rustc doesn't seem to get the rpath quite -# right. It manages to include '../../lib/${TARGET_PREFIX}', but doesn't -# include the '../../lib' (ie: relative path from cross_bindir to normal -# libdir. As a result, we end up not being able to properly reference files in normal ${libdir}. -# Most of the time this happens to work fine as the systems libraries are -# subsituted, but sometimes a host system will lack a library, or the right -# version of a library (libtinfo was how I noticed this). -# -# FIXME: this should really be fixed in rust itself. -# FIXME: using hard-coded relative paths is wrong, we should ask bitbake for -# the relative path between 2 of it's vars. -HOST_POST_LINK_ARGS:append = " -Wl,-rpath=../../lib" -BUILD_POST_LINK_ARGS:append = " -Wl,-rpath=../../lib" - -# We need the same thing for the calls to the compiler when building the runtime crap -TARGET_CC_ARCH:append = " --sysroot=${STAGING_DIR_TARGET}" - -do_rust_setup_snapshot () { -} - -do_configure () { -} - -do_compile () { -} - -do_install () { - mkdir -p ${D}${prefix}/${base_libdir_native}/rustlib - cp ${WORKDIR}/targets/${TARGET_SYS}.json ${D}${prefix}/${base_libdir_native}/rustlib -} - -rust_cross_sysroot_preprocess() { - sysroot_stage_dir ${D}${prefix}/${base_libdir_native}/rustlib ${SYSROOT_DESTDIR}${prefix}/${base_libdir_native}/rustlib -} -SYSROOT_PREPROCESS_FUNCS += "rust_cross_sysroot_preprocess" diff --git a/meta/recipes-devtools/rust/rust-cross_1.62.0.bb b/meta/recipes-devtools/rust/rust-cross_1.62.0.bb deleted file mode 100644 index 5358d98da8..0000000000 --- a/meta/recipes-devtools/rust/rust-cross_1.62.0.bb +++ /dev/null @@ -1,8 +0,0 @@ -require rust.inc -inherit cross -require rust-cross.inc -require rust-source.inc - -DEPENDS += "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}compilerlibs virtual/libc" -PROVIDES = "virtual/${TARGET_PREFIX}rust" -PN = "rust-cross-${TUNE_PKGARCH}-${TCLIBC}" diff --git a/meta/recipes-devtools/rust/rust-crosssdk_1.62.0.bb b/meta/recipes-devtools/rust/rust-crosssdk_1.62.0.bb deleted file mode 100644 index 6ea8cb09b2..0000000000 --- a/meta/recipes-devtools/rust/rust-crosssdk_1.62.0.bb +++ /dev/null @@ -1,8 +0,0 @@ -require rust.inc -inherit crosssdk -require rust-cross.inc -require rust-source.inc - -DEPENDS += "virtual/${TARGET_PREFIX}gcc-crosssdk virtual/nativesdk-${TARGET_PREFIX}compilerlibs virtual/nativesdk-libc" -PROVIDES = "virtual/nativesdk-${TARGET_PREFIX}rust" -PN = "rust-crosssdk-${TUNE_PKGARCH}-${RUST_LIBC}" -- cgit 1.2.3-korg