blob: 45aba81c4d49cd33e71d53193e0b60efd2e1a19f [file] [log] [blame]
os: linux
dist: trusty
sudo: false
language: cpp
addons:
apt:
packages: &common_packages
- ninja-build
- liblzma-dev
- libz-dev
sources: &common_sources
- ubuntu-toolchain-r-test
env:
global: CLANG_VERSION=5.0 GCC_VERSION=4.8
matrix:
include:
- env: BUILD_TYPE=Release CC_COMPILER=clang-${CLANG_VERSION} CXX_COMPILER=clang++-${CLANG_VERSION}
addons: &clang
apt:
packages:
- *common_packages
- clang-5.0
sources:
- *common_sources
- sourceline: 'deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-5.0 main'
key_url: 'http://apt.llvm.org/llvm-snapshot.gpg.key'
- env: BUILD_TYPE=Debug CC_COMPILER=clang-${CLANG_VERSION} CXX_COMPILER=clang++-${CLANG_VERSION}
addons: *clang
- env: BUILD_TYPE=Release CC_COMPILER=gcc-${GCC_VERSION} CXX_COMPILER=g++-${GCC_VERSION}
addons: &gcc
apt:
packages:
- *common_packages
- g++-4.8
- gcc-4.8
sources:
- *common_sources
- env: BUILD_TYPE=Debug CC_COMPILER=gcc-${GCC_VERSION} CXX_COMPILER=g++-${GCC_VERSION}
addons: *gcc
install:
- mkdir -p deps && cd deps
- travis_retry wget --no-check-certificate --quiet -O - https://cmake.org/files/v3.7/cmake-3.7.1-Linux-x86_64.tar.gz | tar --strip-components=1 -xz
- export PATH=${TRAVIS_BUILD_DIR}/deps/bin:${PATH}
- cd -
before_script:
- travis_retry wget --quiet -O - https://raw.githubusercontent.com/cpplint/cpplint/master/cpplint.py | python - --recursive src examples
- mkdir -p build && cd build
- rm -rf *
- cmake .. -GNinja -DLIB_PROTO_MUTATOR_WITH_ASAN=ON -DLIB_PROTO_MUTATOR_DOWNLOAD_PROTOBUF=ON -DCMAKE_C_COMPILER=${CC_COMPILER} -DCMAKE_CXX_COMPILER=${CXX_COMPILER} -DCMAKE_BUILD_TYPE=${BUILD_TYPE}
script:
- ninja
- ninja examples/all
- ctest -V -j8