cargo: Apply uninative fix to snapshot as with rust

Also add the interpreter relocation trick from uninative to the prebuilt
cargo binary to match rust-native, just in case that causes other problems
later too.

(From OE-Core rev: e3cb3958cc14672feef5d4d8953131f55db68573)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2021-09-01 11:37:38 +01:00
parent 1603585cd2
commit 640136a72b

View File

@@ -20,6 +20,11 @@ inherit cargo
do_cargo_setup_snapshot () {
${WORKDIR}/rust-snapshot-components/${CARGO_SNAPSHOT}/install.sh --prefix="${WORKDIR}/${CARGO_SNAPSHOT}" --disable-ldconfig
# Need to use uninative's loader if enabled/present since the library paths
# are used internally by rust and result in symbol mismatches if we don't
if [ ! -z "${UNINATIVE_LOADER}" -a -e "${UNINATIVE_LOADER}" ]; then
patchelf-uninative ${WORKDIR}/${CARGO_SNAPSHOT}/bin/cargo --set-interpreter ${UNINATIVE_LOADER}
fi
}
addtask cargo_setup_snapshot after do_unpack before do_configure