@@ -51,22 +51,23 @@ do_install () {
chmod +x "$outfile"
create_sdk_wrapper "${SYS_BINDIR}/target-rust-ccld-wrapper" "CC"
- ENV_SETUP_DIR=${D}${base_prefix}/environment-setup.d
+ ENV_SETUP_DIR=${D}${base_prefix}/${TARGET_SYS}_environment-setup.d
mkdir "${ENV_SETUP_DIR}"
RUST_ENV_SETUP_SH="${ENV_SETUP_DIR}/${RUST_TARGET_SYS}_rust.sh"
RUST_TARGET_TRIPLE=`echo ${RUST_TARGET_SYS} | tr '[:lower:]' '[:upper:]' | sed 's/-/_/g'`
cat <<- EOF > "${RUST_ENV_SETUP_SH}"
- export CARGO_TARGET_${RUST_TARGET_TRIPLE}_RUSTFLAGS="--sysroot=\$OECORE_TARGET_SYSROOT/usr -C link-arg=--sysroot=\$OECORE_TARGET_SYSROOT"
+ LIB_PATH="\$OECORE_TARGET_SYSROOT/usr/lib/rustlib/${RUST_TARGET_SYS}/lib"
+ export CARGO_TARGET_${RUST_TARGET_TRIPLE}_RUSTFLAGS="--sysroot=\$OECORE_TARGET_SYSROOT/usr -C link-arg=--sysroot=\$OECORE_TARGET_SYSROOT -L \$LIB_PATH"
export RUST_TARGET_PATH="\$OECORE_NATIVE_SYSROOT/usr/lib/${TARGET_SYS}/rustlib"
EOF
chown -R root.root ${D}
- CARGO_ENV_SETUP_SH="${ENV_SETUP_DIR}/cargo.sh"
+ CARGO_ENV_SETUP_SH="${ENV_SETUP_DIR}/${RUST_TARGET_SYS}_cargo.sh"
cat <<- EOF > "${CARGO_ENV_SETUP_SH}"
- export CARGO_HOME="\$OECORE_TARGET_SYSROOT/home/cargo"
+ export CARGO_HOME="\$OECORE_TARGET_SYSROOT/home/cargo/${RUST_TARGET_SYS}"
mkdir -p "\$CARGO_HOME"
# Init the default target once, it might be otherwise user modified.
if [ ! -f "\$CARGO_HOME/config" ]; then
@@ -80,5 +81,5 @@ do_install () {
EOF
}
-FILES:${PN} += "${base_prefix}/environment-setup.d"
+FILES:${PN} += "${base_prefix}/${TARGET_SYS}_environment-setup.d"