matrix:
  fast_finish: true
  include:
    # QT5 based build with Python 3 // using container based builds and prebuild binary dependencies in osgeo4travis
    - os: linux
      language: python # This lets us use newer python versions from virtualenv
      env:
        - BUILD=qt5
        - QT_VERSION=5
        - LLVM_VERSION=3.8
      sudo: false
      cache:
        apt: true
        directories:
          - $HOME/.ccache
        timeout: 1000
      compiler: clang
      python: "3.3"
      addons:
        postgresql: "9.4"
        apt:
          sources:
            - llvm-toolchain-precise-3.8
            - ubuntu-toolchain-r-test
            - george-edison55-precise-backports # doxygen 1.8.3
            - sourceline: 'ppa:nomeata/travis-backports'
            # - laurent-boulard-devtools (for silver-search, not whitelisted yet https://github.com/travis-ci/apt-source-whitelist/pull/345)
          packages:
            - doxygen
            - bison
            - flex
            - graphviz
            - libpq-dev
            - libfcgi-dev
            - libfftw3-3
            - pkg-config
            - perl  # lookahead regex in spell check script
            - poppler-utils
            - txt2tags
            - xvfb
            - flip
            - clang-3.8
            # used for spell checks
            # - silversearcher-ag not available in precise nor in a white listed ppa (in osgeo4travis as for now)
            - expect-dev  # unbuffer
            - coreutils
    # OSX based build with QT4 and Python 2
    # - os: osx
    #  env:
    #    - BUILD=osx
    #    - IGNORE_BUILD_FAILURES=YES


git:
  depth: 30

notifications:
  irc: "chat.freenode.net#qgis-test"
  on_failure: change
  on_success: change
  skip_join: true

notifications:
  webhooks:
    urls:
      - https://webhooks.gitter.im/e/467e3aff72e344d1dae3
    on_success: change  # options: [always|never|change] default: always
    on_failure: always # options: [always|never|change] default: always
    on_start: never # default: never

before_install:
  - ./ci/travis/${TRAVIS_OS_NAME}/before_install.sh

install:
  - ./ci/travis/${TRAVIS_OS_NAME}/install.sh

before_script:
  - ./ci/travis/${TRAVIS_OS_NAME}/before_script.sh

script:
  - ./ci/travis/${TRAVIS_OS_NAME}/script.sh
  - ./ci/travis/check_spelling.sh

after_script:
  - ./ci/travis/${TRAVIS_OS_NAME}/after_script.sh