From 7316ef29ddfb105785fe251fcc9645ae946de5ab Mon Sep 17 00:00:00 2001 From: Tushar Maheshwari Date: Fri, 7 Oct 2016 18:36:40 +0530 Subject: [PATCH 1/3] TravisCI more OS/compilers in matrix --- .travis.yml | 61 +++++++++++++++++++++++++++++++---------------------- 1 file changed, 36 insertions(+), 25 deletions(-) diff --git a/.travis.yml b/.travis.yml index e0456b5f..13cfd900 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,42 +1,53 @@ -os: -- linux +language: cpp matrix: include: + - os: linux + compiler: gcc + addons: + apt: + sources: ['ubuntu-toolchain-r-test'] + packages: ['g++-5'] + env: COMPILER=g++-5 + - os: linux + compiler: gcc + addons: + apt: + sources: ['ubuntu-toolchain-r-test'] + packages: ['g++-6'] + env: COMPILER=g++-6 + - os: linux + compiler: clang + addons: + apt: + sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.8'] + packages: ['clang-3.8'] + env: COMPILER=clang++-3.8 - os: osx osx_image: xcode7.3 - -addons: - apt: - sources: - - ubuntu-toolchain-r-test - - llvm-toolchain-precise-3.8 - packages: - - gcc-5 - - g++-5 - - clang-3.8 - -language: cpp -compiler: -- gcc -- clang + compiler: clang + env: COMPILER=clang++ + - os: osx + osx_image: xcode8 + compiler: clang + env: COMPILER=clang++ notifications: email: on_success: never on_failure: always -before_install: ./travis.sh - install: -- if [ "$CXX" = "g++" ] && [ "$TRAVIS_OS_NAME" = "linux" ]; then export CXX="g++-5" CC="gcc-5"; fi -- if [ "$CXX" = "clang++" ] && [ "$TRAVIS_OS_NAME" = "linux" ]; then export CXX="clang++-3.8" CC="clang-3.8"; fi - echo ${PATH} +- ./travis.sh +- cmake --version +- export CXX=${COMPILER} - echo ${CXX} - ${CXX} --version - ${CXX} -v -- cmake --version +- ./deps.sh -before_script: ./deps.sh - -script: mkdir -p build && cd build && cmake .. && make && make test +script: +- mkdir -p build && cd build +- cmake .. && make -j4 +- CTEST_OUTPUT_ON_FAILURE=1 make test From 41982c671662b8b1a2bf5153211c68b77117106f Mon Sep 17 00:00:00 2001 From: Tushar Maheshwari Date: Fri, 7 Oct 2016 19:22:41 +0530 Subject: [PATCH 2/3] Adding code coverage build --- .travis.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/.travis.yml b/.travis.yml index 13cfd900..0a4f55a1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -32,6 +32,20 @@ matrix: compiler: clang env: COMPILER=clang++ + - os: linux + compiler: gcc + addons: + apt: + sources: ['ubuntu-toolchain-r-test'] + packages: ['g++-6'] + env: + - COMPILER=g++-6 + - CXXFLAGS="-O0 --coverage" + before_script: + - pip install --user cpp-coveralls + after_success: + - coveralls --gcov gcov-6 --gcov-options '\-lp' --exclude deps + notifications: email: on_success: never From e860400a8df4b838d35761661cbb000eba5d109a Mon Sep 17 00:00:00 2001 From: Tushar Maheshwari Date: Fri, 7 Oct 2016 20:01:15 +0530 Subject: [PATCH 3/3] Limiting coverage to relevant code --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 0a4f55a1..d8bf198b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -44,7 +44,7 @@ matrix: before_script: - pip install --user cpp-coveralls after_success: - - coveralls --gcov gcov-6 --gcov-options '\-lp' --exclude deps + - coveralls --gcov gcov-6 --gcov-options '\-lp' --root ${TRAVIS_BUILD_DIR} --build-root ${TRAVIS_BUILD_DIR}/build --exclude deps --include src notifications: email: