mirror of
https://github.com/flatcar/scripts.git
synced 2025-09-22 14:11:07 +02:00
build_library: deal with both virtual/rust and dev-lang/rust
Toolchain utils have installed only `dev-lang/rust`. It could result in version mismatch between `virtual/rust` and `dev-lang/rust`, because `dev-lang/rust` does not automatically pull in `virtual/rust`. So install `virtual/rust` instead of `dev-lang/rust`.
This commit is contained in:
parent
8047522874
commit
b13976285e
@ -39,7 +39,7 @@ build_target_toolchain() {
|
||||
export clst_myemergeopts="$( echo "$clst_myemergeopts" | sed -e 's/--newuse//' )"
|
||||
|
||||
PORTAGE_CONFIGROOT="$ROOT" \
|
||||
run_merge --root="$ROOT" --sysroot="$ROOT" dev-lang/rust
|
||||
run_merge --root="$ROOT" --sysroot="$ROOT" virtual/rust
|
||||
}
|
||||
|
||||
configure_crossdev_overlay / /tmp/crossdev
|
||||
|
@ -335,9 +335,9 @@ install_cross_toolchain() {
|
||||
# because the standard Rust packages don't include the arm64 cross target.
|
||||
FILTERED="$(echo $PORTAGE_BINHOST | tr ' ' '\n' | grep toolchain | sed 's#toolchain/#toolchain-arm64/#g' | xargs echo)"
|
||||
# If no aarch64 folder exists, try to remove any existing Rust packages.
|
||||
[ ! -d /usr/lib/rust-*/rustlib/aarch64-unknown-linux-gnu ] && ($sudo emerge -C dev-lang/rust || true)
|
||||
[ ! -d /usr/lib/rust-*/rustlib/aarch64-unknown-linux-gnu ] && ($sudo emerge -C virtual/rust dev-lang/rust || true)
|
||||
# Building from source is also ok because the cross-compiler got installed.
|
||||
$sudo PORTAGE_BINHOST="$FILTERED" emerge "${emerge_flags[@]}" dev-lang/rust
|
||||
$sudo PORTAGE_BINHOST="$FILTERED" emerge "${emerge_flags[@]}" virtual/rust
|
||||
fi
|
||||
fi
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user