#!/bin/bash

case "$1" in
    "before_install")
	;;
    "install")
	case "${TRAVIS_OS_NAME}" in
	    "osx")
		brew update >/dev/null
		brew install binutils

		case "${CC}" in
		    "gcc-"*)
			which ${CC} || brew install $(echo "${CC}" | sed 's/\-/@/') || brew link --overwrite $(echo "${CC}" | sed 's/\-/@/')
			;;
		esac

		case "${BUILD_SYSTEM}" in
		    "bazel")
			brew cask install homebrew/cask-versions/adoptopenjdk8
			brew install bazel
			;;
		esac
		;;
	    "linux")
		case "${CC}" in
		    "pgcc")
			wget 'https://raw.githubusercontent.com/nemequ/pgi-travis/de6212d94fd0e7d07a6ef730c23548c337c436a7/install-pgi.sh'
			echo 'acd3ef995ad93cfb87d26f65147395dcbedd4c3c844ee6ec39616f1a347c8df5  install-pgi.sh' | sha256sum -c --strict || exit 1
			/bin/sh install-pgi.sh
			;;
		esac
		;;
	esac
	;;
    "script")
	case "${BUILD_SYSTEM}" in
	    "cmake")
		mkdir builddir && cd builddir
		CMAKE_FLAGS=
		if [ "${CROSS_COMPILE}" = "yes" ]; then
		    CMAKE_FLAGS="-DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY -DCMAKE_SYSTEM_NAME=Windows -DCMAKE_RC_COMPILER=${RC_COMPILER}"
		fi
		cmake ${CMAKE_FLAGS} -DCMAKE_C_COMPILER="$CC" -DCMAKE_CXX_COMPILER="$CXX" -DENABLE_SANITIZER="${SANITIZER}" -DCMAKE_C_FLAGS="${CFLAGS}" .. || exit 1
		make VERBOSE=1 || exit 1
		ctest -V || exit 1
		;;
	    "python")
		python setup.py test
		;;
	    "maven")
		cd java/org/brotli
		mvn install && cd integration && mvn verify
		;;
	    "autotools")
		./bootstrap && ./configure && make
		;;
	    "fuzz")
		./c/fuzz/test_fuzzer.sh
		;;
	    "bazel")
		bazel build -c opt ...:all &&
		cd go && bazel test -c opt ...:all && cd .. &&
		cd java && bazel test -c opt ...:all && cd .. &&
		echo "bazelbuild/rules_closure seems to be dead; js build is skipped" &&
		echo "cd js && bazel test -c opt ...:all && cd .." &&
		cd research && bazel build -c opt ...:all && cd ..
		;;
	esac
	;;
    "after_success")
	;;
    "before_deploy")
	case "${BUILD_SYSTEM}" in
	    "bazel")
		export RELEASE_DATE=`date +%Y-%m-%d`
		perl -p -i -e 's/\$\{([^}]+)\}/defined $ENV{$1} ? $ENV{$1} : $&/eg' scripts/.bintray.json
		zip -j9 brotli.zip bazel-bin/libbrotli*.a bazel-bin/libbrotli*.so bazel-bin/brotli
		;;
	esac
	;;
esac
