#!/bin/sh
# Run with: source win-q7s-env.sh [OPTIONS]
function help () {
	echo "source win-q7s-env.sh [options] -t|--toolchain=<toolchain path> -s|--sysroot=<sysroot path>"
}

TOOLCHAIN_PATH="/c/Xilinx/Vitis/2019.2/gnu/aarch32/nt/gcc-arm-linux-gnueabi/bin"
SYSROOT="/c/Users/${USER}/eive-software/eive-compile-rootfs"
export EIVE_Q7S_EM=1

for i in "$@"; do
  case $i in
    -t=*|--toolchain=*)
      TOOLCHAIN_PATH="${i#*=}"
      shift
      ;;
    -s=*|--sysroot=*)
      SYSROOT="${i#*=}"
      shift
      ;;
	-h|--help)
	  help
	  shift
      ;;
    -*|--*)
      echo "Unknown option $i"
	  help
      return
      ;;
    *)
      ;;
  esac
done

if [ -d "$TOOLCHAIN_PATH" ]; then
	export PATH=$PATH:"/c/Xilinx/Vitis/2019.2/gnu/aarch32/nt/gcc-arm-linux-gnueabi/bin"
	export CROSS_COMPILE="arm-linux-gnueabihf"
	echo "Set toolchain path to /c/Xilinx/Vitis/2019.2/gnu/aarch32/nt/gcc-arm-linux-gnueabi/bin"
else 
	echo "Toolchain path $TOOLCHAIN_PATH does not exist"
	return
fi

if [ -d "$SYSROOT" ]; then
	export ZYNQ_7020_SYSROOT=$SYSROOT
	echo "Set sysroot path to $SYSROOT"
else 
	echo "Sysroot path $SYSROOT does not exist"
	return
fi

if [ -d "eive-obsw" ]; then
	echo "Detected EIVE OBSW root directory at $(pwd)/eive-obsw. Setting to EIVE_OBSW_ROOT"
	export EIVE_OBSW_ROOT="$(pwd)/eive-obsw"
	echo "Adding $(pwd)/eive-obsw/cmake/scripts/q7s helper script path to PATH"
	export PATH=$PATH:"$(pwd)/eive-obsw/cmake/scripts/q7s"
	export PATH=$PATH:"$(pwd)/eive-obsw/scripts"
	cd "eive-obsw"
fi