From 1f17e68d1e92ce45b9e0f81d9ba17b20cb2343c7 Mon Sep 17 00:00:00 2001 From: Tyler Hall Date: Mon, 11 Jul 2016 15:14:53 -0400 Subject: [PATCH] Move basic variables from rust-bin to rust class rust-bin.bbclass now only contains what is necessary to build crates using the rust compiler directly and rust.bbclass contains information shared between rust-bin and cargo. Signed-off-by: Tyler Hall --- classes/rust-bin.bbclass | 14 +------------- classes/rust.bbclass | 13 ++++++++++++- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/classes/rust-bin.bbclass b/classes/rust-bin.bbclass index 337a0a2..7238003 100644 --- a/classes/rust-bin.bbclass +++ b/classes/rust-bin.bbclass @@ -1,15 +1,8 @@ inherit rust -RUSTLIB_DEP ?= " rustlib" -DEPENDS .= "${RUSTLIB_DEP}" -RDEPENDS_${PN} .= "${RUSTLIB_DEP}" +RDEPENDS_${PN} += "${RUSTLIB_DEP}" DEPENDS += "patchelf-native" -export rustlibdir = "${libdir}/rust" -FILES_${PN} += "${rustlibdir}/*.so" -FILES_${PN}-dev += "${rustlibdir}/*.rlib" -FILES_${PN}-dbg += "${rustlibdir}/.debug" - RUSTC_ARCHFLAGS += "-C opt-level=3 -g -L ${STAGING_DIR_HOST}/${rustlibdir}" EXTRA_OEMAKE += 'RUSTC_ARCHFLAGS="${RUSTC_ARCHFLAGS}"' @@ -37,11 +30,6 @@ OVERLAP_DEPS = "${@get_overlap_deps(d)}" RUSTC_PREFER_DYNAMIC = "-C prefer-dynamic" RUSTC_FLAGS += "${RUSTC_PREFER_DYNAMIC}" -rustlib_suffix="${TUNE_ARCH}${TARGET_VENDOR}-${TARGET_OS}/rustlib/${HOST_SYS}/lib" -# Native sysroot standard library path -rustlib_src="${prefix}/lib/${rustlib_suffix}" -# Host sysroot standard library path -rustlib="${libdir}/${rustlib_suffix}" CRATE_NAME ?= "${@d.getVar('BPN', True).replace('-rs', '').replace('-', '_')}" BINNAME ?= "${BPN}" LIBNAME ?= "lib${CRATE_NAME}-rs" diff --git a/classes/rust.bbclass b/classes/rust.bbclass index 0e92991..619c80b 100644 --- a/classes/rust.bbclass +++ b/classes/rust.bbclass @@ -3,13 +3,14 @@ RUSTC = "rustc" # FIXME: --sysroot might be needed RUSTC_ARCHFLAGS += "--target=${TARGET_SYS} -C rpath -C crate_hash=${BB_TASKHASH}" +RUSTLIB_DEP ?= "rustlib" def rust_base_dep(d): # Taken from meta/classes/base.bbclass `base_dep_prepend` and modified to # use rust instead of gcc deps = "" if not d.getVar('INHIBIT_DEFAULT_RUST_DEPS', True): if (d.getVar('HOST_SYS', True) != d.getVar('BUILD_SYS', True)): - deps += " virtual/${TARGET_PREFIX}rust" + deps += " virtual/${TARGET_PREFIX}rust ${RUSTLIB_DEP}" else: deps += " rust-native" return deps @@ -84,3 +85,13 @@ HOST_CXXFLAGS ?= "${CXXFLAGS}" HOST_CPPFLAGS ?= "${CPPFLAGS}" EXTRA_OECONF_remove = "--disable-static" + +rustlib_suffix="${TUNE_ARCH}${TARGET_VENDOR}-${TARGET_OS}/rustlib/${HOST_SYS}/lib" +# Native sysroot standard library path +rustlib_src="${prefix}/lib/${rustlib_suffix}" +# Host sysroot standard library path +rustlib="${libdir}/${rustlib_suffix}" +export rustlibdir = "${libdir}/rust" +FILES_${PN} += "${rustlibdir}/*.so" +FILES_${PN}-dev += "${rustlibdir}/*.rlib" +FILES_${PN}-dbg += "${rustlibdir}/.debug"