# https://docs.travis-ci.com/user/customizing-the-build/ language: cpp sudo: required matrix: include: - os: linux compiler: gcc env: Tr_Compiler_Version="5" - os: linux compiler: gcc env: Tr_Compiler_Version="6" - os: linux compiler: gcc env: Tr_Compiler_Version="7" - os: linux compiler: gcc env: Tr_Compiler_Version="8" # clang - os: linux compiler: clang env: Tr_Compiler_Version="default" - os: linux compiler: clang env: Tr_Compiler_Version="6.0" # osx - os: osx osx_image: xcode9.2 env: Tr_Xcode_Version="9.2" - os: osx osx_image: xcode9.3beta env: Tr_Xcode_Version="9.3beta" git: submodules: false before_install: - if [ "$TRAVIS_OS_NAME" = "linux" ]; then ./.travis-before_install.sh "$CC" "$Tr_Compiler_Version"; fi - if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew update; fi - if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew install sdl2 lua fontconfig freetype ftgl libogg glew libvorbis cppunit glib fribidi miniupnpc wxmac; fi # ^ not on travis also needed are: cmake + pkgconfig + xquartz (find by "search") + (maybe) git + (maybe) bash - if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew outdated cmake || brew upgrade cmake; brew outdated pkgconfig || brew upgrade pkgconfig; fi - if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew link --force gettext; fi # ^ odd linking problems related with brew which is not creating links - if [ "$TRAVIS_OS_NAME" = "osx" ] && [ "$Tr_Xcode_Version" = "6.4" ]; then brew install Caskroom/cask/xquartz; fi - if [ "$Tr_Compiler_Version" != "" ] && [ "$Tr_Compiler_Version" != "default" ] && [ "$CC" = "gcc" ]; then export CXX="g++-${Tr_Compiler_Version}" CC="gcc-${Tr_Compiler_Version}"; fi - if [ "$Tr_Compiler_Version" != "" ] && [ "$Tr_Compiler_Version" != "default" ] && [ "$CC" == "clang" ]; then export CXX="clang++-${Tr_Compiler_Version}" CC="clang-${Tr_Compiler_Version}"; fi - $CC --version - $CXX --version - cmake --version script: # ALL THE BUILD COMMANDS HERE # version 6 skipped here. Below, it's used to test use of FORCE_EMBEDDED_LIBS option - if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$(echo "$CC" | grep 'clang')" = "" ] && [ $Tr_Compiler_Version != "6" ]; then mkdir build; cd build; cmake .. -DCMAKE_INSTALL_PREFIX=$PWD/local; make && make install; fi - if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$(echo "$CC" | grep 'clang')" != "" ]; then mkdir build; cd build; cmake .. -DCMAKE_INSTALL_PREFIX=$PWD/local; make && make install; fi - if [ "$TRAVIS_OS_NAME" = "osx" ]; then mkdir build; cd build; cmake .. -DCMAKE_INSTALL_PREFIX=$PWD/local; make && make install; echo 'Dependencies:'; otool -L zetaglest; fi - if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$(echo "$CC" | grep 'clang')" = "" ] && [ $Tr_Compiler_Version = "6" ]; then mkdir build; cd build; cmake .. -DFORCE_EMBEDDED_LIBS=ON -DCMAKE_INSTALL_PREFIX=$PWD/local; make && make install; fi # https://docs.travis-ci.com/user/notifications/#IRC-notification notifications: irc: channels: - "irc.freenode.org#zetaglest-dev" skip_join: true use_notice: true on_success: change on_error: always on_failure: change template: - "[%{repository_name}#%{branch}@%{commit}] %{author}: %{message} %{build_url}"