1os: linux 2dist: xenial 3sudo: true 4 5language: cpp 6 7addons: 8 apt: 9 packages: &common_packages 10 - ninja-build 11 - liblzma-dev 12 - libz-dev 13 sources: &common_sources 14 - ubuntu-toolchain-r-test 15 16env: 17 global: GCC_VERSION=7 18 19matrix: 20 include: 21 - env: BUILD_TYPE=Release CC_COMPILER=clang CXX_COMPILER=clang++ 22 addons: &clang 23 apt: 24 packages: 25 - *common_packages 26 - clang 27 sources: 28 - *common_sources 29 30 - env: BUILD_TYPE=Debug CC_COMPILER=clang CXX_COMPILER=clang++ 31 addons: *clang 32 33 - env: BUILD_TYPE=Release CC_COMPILER=gcc-${GCC_VERSION} CXX_COMPILER=g++-${GCC_VERSION} 34 addons: &gcc 35 apt: 36 packages: 37 - *common_packages 38 - g++-7 39 - gcc-7 40 sources: 41 - *common_sources 42 43 - env: BUILD_TYPE=Debug CC_COMPILER=gcc-${GCC_VERSION} CXX_COMPILER=g++-${GCC_VERSION} 44 addons: *gcc 45 46install: 47 - mkdir -p deps && cd deps 48 - travis_retry wget --no-check-certificate --quiet -O - https://cmake.org/files/v3.12/cmake-3.12.3-Linux-x86_64.tar.gz | tar --strip-components=1 -xz 49 - export PATH=${TRAVIS_BUILD_DIR}/deps/bin:${PATH} 50 - cd - 51 52before_script: 53 - travis_retry wget --quiet -O - https://raw.githubusercontent.com/cpplint/cpplint/master/cpplint.py | python - --recursive src examples 54 - mkdir -p build && cd build 55 - rm -rf * 56 - 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} -DCMAKE_INSTALL_PREFIX=/usr 57 58script: 59 - export ASAN_OPTIONS=detect_leaks=0 60 - ninja 61 - ninja check 62 - DESTDIR="/tmp/testing/" ninja install 63