Skip to content
Snippets Groups Projects
Forked from ogs / ogs
23561 commits behind the upstream repository.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
.travis.yml 2.31 KiB
language: cpp

compiler:
  - gcc
  - clang

cache:
  - apt

env:
  - CASE=CLI CMAKE_ARGS="-DOGS_BUILD_GUI=OFF -DOGS_BUILD_UTILS=ON"
  - CASE=CLI_PETSC CMAKE_ARGS="-DOGS_BUILD_GUI=OFF -DOGS_BUILD_UTILS=OFF -DOGS_USE_PETSC=ON -DPETSC_DIR=/usr/lib/petscdir/3.4.2/"
  - CASE=GUI CMAKE_ARGS="-DOGS_BUILD_GUI=ON -DVTK_DIR=`pwd`/VTK-Install/lib/cmake/vtk-6.1/"

before_install:
  # -- External package sources --
  - travis_retry sudo add-apt-repository --yes ppa:boost-latest
  - travis_retry sudo apt-get install python-software-properties
  - travis_retry sudo add-apt-repository --yes ppa:ubuntu-toolchain-r/test
  - if [[ "$CASE" == "CLI_PETSC" ]]; then sudo add-apt-repository --yes ppa:fenics-packages/fenics-dev; fi
  - travis_retry sudo apt-get update;

  # GCC 4.8
  - travis_retry sudo apt-get install gcc-4.8 g++-4.8
  - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50
  - sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50

  # -- Install packages --
  - travis_retry sudo apt-get install libeigen3-dev

  # Boost
  - travis_retry sudo apt-get install libboost1.55-dev libboost-date-time1.55-dev libboost-filesystem1.55-dev libboost-program-options1.55-dev libboost-system1.55-dev

  # CMake
  - sudo apt-get remove cmake-data cmake
  - travis_retry wget http://www.opengeosys.org/images/dev/cmake-2.8.12.2-Linux-x86_64.deb
  - sudo sudo dpkg --install cmake-2.8.12.2-Linux-x86_64.deb

  # Qt and VTK
  - if [[ "$CASE" == "GUI" ]]; then travis_retry sudo apt-get install qt4-dev-tools libshp-dev libgeotiff-dev libxt-dev; fi
  - if [[ "$CASE" == "GUI" ]]; then travis_retry wget http://www.opengeosys.org/images/dev/vtk-6.1.0.tar.gz; fi
  - if [[ "$CASE" == "GUI" ]]; then tar -xf vtk-6.1.0.tar.gz; fi

  # PetSc
  - if [[ "$CASE" == "CLI_PETSC" ]]; then travis_retry sudo apt-get install libpetsc3.4.2 libpetsc3.4.2-dev; fi

script:
  - echo $CMAKE_ARGS
  - "pwd & mkdir build && cd build && cmake $CMAKE_ARGS .. && cmake .. && make"
  - ./bin/testrunner --gtest_filter=-MPITest* --gtest_shuffle --gtest_repeat=3
  # PetSc
  - if [[ "$CASE" == "CLI_PETSC" ]]; then make tests_mpi; fi

notifications:
  hipchat:
    rooms:
      secure: kmLyt50IGFuK96xbD+VzWRRzF6UU6SdVpsn1bolKQaTCCj1rz4H1np1iUML0jeGn86DAkkHPWmFXaS2JN0EoX8L74HavJSkUfIa49cegk0je986fxucaUV1fnhFIRh6EGkpqvqE+uXs/wKHkzrkYbpHaRvJgmxQSV9kR4yRuAmw=