#!/bin/sh
TARGET=$1
DIR=build-"$TARGET"
CONFIGURE=do-"$TARGET"-configure
shift

# Put only the relevant toolchain in PATH for specific CI targets.
# Fallback to previous behavior for other targets.
case "$TARGET" in
    *clang-thumb*)
        for p in /opt/LLVM-ET-Arm*/bin /opt/*/models/*; do
            [ -d "$p" ] && PATH="$p":$PATH
        done
        ;;
    *)
        for p in /opt/*/bin /opt/*/models/*; do
            PATH="$p":$PATH
        done
        ;;
esac

mkdir $DIR
trap 'rm -rf "$DIR"' 0
(cd $DIR || exit 1
 echo '##################################################'
 echo '##########' ../scripts/"$CONFIGURE" "$@"
 echo '##################################################'
 ../scripts/$CONFIGURE "$@"
 case $? in
     0)
	 echo 'Configuration succeeded'
	 ;;
     77)
	 echo 'Configuration skipped'
	 exit 0
	 ;;
     *)
	 echo 'Configuration failed'
	 exit 1
	 ;;
 esac
 cat CMakeFiles/CMakeOutput.log
 ninja --quiet && ninja --quiet test) || exit 1
