#!/bin/bash
set -u -e

BASENAME=arm-gnu-toolchain
VER=${VER:-13.2.Rel1}
HOST_ARCH=${HOST_ARCH:-$(uname -m)}

# Use the standard kas container locations if nothing is passed into the script
DOWNLOAD_DIR="${1:-/builds/persist/downloads/}"
TOOLCHAIN_DIR="${2:-/builds/persist//toolchains/}"
TOOLCHAIN_LINK_DIR="${3:-build/toolchains/}"

# These should be already created by .gitlab-ci.yml, but do here if run outside of that env
mkdir -p $DOWNLOAD_DIR $TOOLCHAIN_DIR $TOOLCHAIN_LINK_DIR

download() {
	TRIPLE=$1
	URL=https://developer.arm.com/-/media/Files/downloads/gnu/$VER/binrel/$BASENAME-$VER-$HOST_ARCH-$TRIPLE.tar.xz
	wget -P $DOWNLOAD_DIR -nc $URL
}

if [ $HOST_ARCH = "aarch64" ]; then
	# AArch64 Linux hosted cross compilers

	# AArch32 target with hard float
	download arm-none-linux-gnueabihf
elif [ $HOST_ARCH = "x86_64" ]; then
	# x86_64 Linux hosted cross compilers

	# AArch32 target with hard float
	download arm-none-linux-gnueabihf

	# AArch64 GNU/Linux target
	download aarch64-none-linux-gnu
else
	echo "ERROR - Unknown build arch of $HOST_ARCH"
	exit 1
fi

for i in arm aarch64; do
	if [ ! -d $TOOLCHAIN_DIR/$BASENAME-$VER-$HOST_ARCH-$i-none-linux-gnu*/ ]; then
		if [ ! -f $DOWNLOAD_DIR/$BASENAME-$VER-$HOST_ARCH-$i-none-linux-gnu*.tar.xz ]; then
			continue
		fi

		tar -C $TOOLCHAIN_DIR -axvf $DOWNLOAD_DIR/$BASENAME-$VER-$HOST_ARCH-$i-none-linux-gnu*.tar.xz
	fi

	# Setup a link for the toolchain to use local to the building machine (e.g., not in a shared location)
	ln -s $TOOLCHAIN_DIR/$BASENAME-$VER-$HOST_ARCH-$i-none-linux-gnu* $TOOLCHAIN_LINK_DIR/$i
done
