rustlib: libdir may be different between build and host
With multilib, we may want to install under lib64 but the rust libraries get published in the build sysroot under the libdir for the build machine which is usually just lib. Support these being different.
This commit is contained in:
committed by
Steven Walter
parent
f0ea28ae30
commit
aaaeaeed3f
@@ -36,7 +36,11 @@ OVERLAP_DEPS = "${@get_overlap_deps(d)}"
|
||||
# See https://github.com/rust-lang/rust/issues/19680
|
||||
RUSTC_FLAGS += "-C prefer-dynamic"
|
||||
|
||||
rustlib="${libdir}/${TUNE_ARCH}${TARGET_VENDOR}-${TARGET_OS}/rustlib/${HOST_SYS}/lib"
|
||||
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"
|
||||
|
||||
@@ -9,7 +9,7 @@ DEPENDS += "virtual/${TARGET_PREFIX}rust"
|
||||
RUSTLIB_DEP = ""
|
||||
|
||||
do_install () {
|
||||
for f in ${STAGING_DIR_NATIVE}/${rustlib}/*.so; do
|
||||
for f in ${STAGING_DIR_NATIVE}/${rustlib_src}/*.so; do
|
||||
echo Installing $f
|
||||
install -D -m 755 $f ${D}/${rustlib}/$(basename $f)
|
||||
done
|
||||
|
||||
Reference in New Issue
Block a user