ccls/.travis.yml

142 lines
2.7 KiB
YAML

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} )"