This repository has been archived on 2025-09-06. You can view files and clone it, but cannot push or open issues/pull-requests.
container-images/rust-cross.sh

38 lines
815 B
Bash
Executable File

#!/bin/sh
set -e
target=$1
ln -s /var/db/repos/gentoo/sys-devel/rust-std /var/db/repos/crossdev/cross-${target}/
case ${target%%-*} in
aarch64)
llvm_target=AArch64
;;
arm*)
llvm_target=ARM
;;
*)
printf 'Unknown LLVM target: %s' "${target%%-*}"
exit 1
;;
esac
mkdir -p \
/etc/portage/env/dev-lang \
/etc/portage/package.accept_keywords \
/etc/portage/package.use \
&& :
printf 'cross-%s/rust-std **\n' "${target}" \
> /etc/portage/package.accept_keywords/rust-cross
printf 'dev-lang/rust rust-src LLVM_TARGETS: %s\n' \
"${llvm_target}" \
> /etc/portage/package.use/rust-src
printf 'RUST_CROSS_TARGETS=( %s:%s:%s )\n' \
"${llvm_target}" \
"${target}" \
"${target}" \
>> /etc/portage/env/dev-lang/rust
emerge -vbknj cross-${target}/rust-std