#!/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