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"