Home | History | Annotate | Download | only in scripts
      1 #!/bin/bash
      2 
      3 case "$1" in
      4     "before_install")
      5 	;;
      6     "install")
      7 	case "${TRAVIS_OS_NAME}" in
      8 	    "osx")
      9 		brew update
     10 		brew install binutils
     11 
     12 		case "${CC}" in
     13 		    "gcc-"*)
     14 			which ${CC} || brew install homebrew/versions/gcc$(echo "${CC#*-}" | sed 's/\.//')
     15 			;;
     16 		esac
     17 
     18 		case "${BUILD_SYSTEM}" in
     19 		    "bazel")
     20 			brew install bazel
     21 			;;
     22 		esac
     23 		;;
     24 	    "linux")
     25 		case "${CC}" in
     26 		    "pgcc")
     27 			wget 'https://raw.githubusercontent.com/nemequ/pgi-travis/de6212d94fd0e7d07a6ef730c23548c337c436a7/install-pgi.sh'
     28 			echo 'acd3ef995ad93cfb87d26f65147395dcbedd4c3c844ee6ec39616f1a347c8df5  install-pgi.sh' | sha256sum -c --strict || exit 1
     29 			/bin/sh install-pgi.sh
     30 			;;
     31 		esac
     32 		;;
     33 	esac
     34 	;;
     35     "script")
     36 	case "${BUILD_SYSTEM}" in
     37 	    "cmake")
     38 		mkdir builddir && cd builddir
     39 		CMAKE_FLAGS=
     40 		if [ "${CROSS_COMPILE}" = "yes" ]; then
     41 		    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}"
     42 		fi
     43 		cmake ${CMAKE_FLAGS} -DCMAKE_C_COMPILER="$CC" -DCMAKE_CXX_COMPILER="$CXX" -DENABLE_SANITIZER="${SANITIZER}" -DCMAKE_C_FLAGS="${CFLAGS}" ..
     44 		make VERBOSE=1
     45 		ctest -V
     46 		;;
     47 	    "python")
     48 		python setup.py test
     49 		;;
     50 	    "maven")
     51 		cd java/org/brotli
     52 		mvn install && cd integration && mvn verify
     53 		;;
     54 	    "bazel")
     55 		bazel test -c opt ...:all
     56 		;;
     57 	esac
     58 	;;
     59     "after_success")
     60 	;;
     61     "before_deploy")
     62 	case "${BUILD_SYSTEM}" in
     63 	    "bazel")
     64 		export RELEASE_DATE=`date +%Y-%m-%d`
     65 		perl -p -i -e 's/\$\{([^}]+)\}/defined $ENV{$1} ? $ENV{$1} : $&/eg' scripts/.bintray.json
     66 		zip -j9 brotli.zip bazel-bin/libbrotli*.a bazel-bin/libbrotli*.so bazel-bin/brotli
     67 		;;
     68 	esac
     69 	;;
     70 esac
     71