dist: trusty sudo: false language: c++ env: global: - COMPILER=g++ # Default --recursive (rapidjson/thirdparty/gtest) is unnecessary git: submodules: false depth: 1 before_install: - git submodule update --init addons: apt: sources: &apt_sources - ubuntu-toolchain-r-test - llvm-toolchain-precise-3.5 - llvm-toolchain-trusty-5.0 compiler: clang os: linux cache: directories: - build/clang+llvm-5.0.1-x86_64-linux-gnu-ubuntu-14.04/ - build/clang+llvm-5.0.1-x86_64-apple-darwin/ matrix: fast_finish: true include: - env: COMPILER=g++-5 compiler: gcc addons: &gcc5 apt: packages: ["g++-5"] sources: *apt_sources - env: COMPILER=g++-7 compiler: gcc addons: &gcc7 apt: packages: ["g++-7"] sources: *apt_sources - env: COMPILER=clang++-3.5 addons: &clang35 apt: packages: ["clang-3.5", "g++-7"] sources: *apt_sources - env: COMPILER=clang++-5.0 addons: &clang50 apt: packages: ["clang-5.0", "g++-7"] sources: *apt_sources - env: COMPILER=clang++ osx_image: xcode9.1 os: osx - env: COMPILER=g++-7 compiler: gcc osx_image: xcode9.1 os: osx allow_failures: # macOS takes too long. - env: COMPILER=clang++ osx_image: xcode9.1 os: osx - env: COMPILER=g++-7 compiler: gcc osx_image: xcode9.1 os: osx # gcc builds that should be fixed at some point - env: COMPILER=g++-5 compiler: gcc - env: COMPILER=g++-6 compiler: gcc - env: COMPILER=g++-7 compiler: gcc - env: COMPILER=g++-5 compiler: gcc osx_image: xcode9.1 os: osx - env: COMPILER=g++-6 compiler: gcc osx_image: xcode9.1 os: osx - env: COMPILER=g++-7 compiler: gcc osx_image: xcode9.1 os: osx install: - | if [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then if [[ "${COMPILER}" = "g++-5" ]]; then brew install gcc5 fi if [[ "${COMPILER}" = "g++-6" ]]; then brew install gcc6 fi if [[ "${COMPILER}" = "g++-7" ]]; then brew install gcc7 fi fi - export CXX="${COMPILER}" before_script: - ${CXX} --version script: - travis_retry ./waf configure - ./waf build - ./build/release/bin/cquery --ci --log-all-to-stderr --test-unit - ./build/release/bin/cquery --ci --log-all-to-stderr --test-index notifications: email: false irc: channels: - "ircs://chat.freenode.net:6697/#cquery" template: - "[ %{repository_slug}#%{commit}] %{result} on %{branch} by %{author} (%{build_url})"