From 13f80740562afa88d902195c1d4a53bed6efbc79 Mon Sep 17 00:00:00 2001 From: Ben Longbons Date: Tue, 29 Sep 2015 22:20:00 -0700 Subject: Add old-but-supported compilers back to travis --- .travis.yml | 82 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 76 insertions(+), 6 deletions(-) diff --git a/.travis.yml b/.travis.yml index 4efbf2c..94e981b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -23,7 +23,7 @@ sudo: false ## Commands before installing before_install: - if [ $(git rev-list --count HEAD ^master) -gt 50 ] ; then exit 1; fi - - export CC=${REAL_CC} CXX=${REAL_CXX} + - export CC="${REAL_CC} ${REAL_EXTRA}" CXX="${REAL_CXX} ${REAL_EXTRA}" install: - make --version @@ -31,29 +31,45 @@ install: - cd build - git init - ../configure --build=x86_64-linux-gnu --dev CPPFLAGS=-DQUIET `! [[ $CXX =~ clang* ]] || echo --disable-abi` $EXTRA_CONFIGURE_ARGS + - sed -n '/One Makefile/q;p' Makefile ## Main test script script: - make -R -k -j2 - - make -R -k -j2 test TESTER='valgrind --error-exitcode=1 --track-fds=yes' - -## Do something after the main test script -after_success: + # Use - instead of :- to allow forcing an empty one + - make -R -k -j2 test TESTER="${FORCE_TESTER-${DEFAULT_TESTER}}" - make -R -k -j2 format - git --git-dir=../.git --work-tree=.. diff --exit-code - make -R -k -j2 dist bindist ### The rest of the file creates a build matrix - +env: + global: + - DEFAULT_TESTER='valgrind --error-exitcode=1 --track-fds=yes' matrix: fast-finish: true include: + - compiler: clang + env: REAL_CC=clang-3.5 REAL_CXX=clang++-3.5 + addons: + apt: + sources: + - llvm-toolchain-precise-3.5 + # needed for libstdc++ headers + - ubuntu-toolchain-r-test + packages: + - clang-3.5 + - libstdc++6-4.6-dbg + - libgtest-dev + - valgrind + - gdb - compiler: clang env: REAL_CC=clang-3.6 REAL_CXX=clang++-3.6 addons: apt: sources: - llvm-toolchain-precise-3.6 + # needed for libstdc++ headers - ubuntu-toolchain-r-test packages: - clang-3.6 @@ -67,6 +83,7 @@ matrix: apt: sources: - llvm-toolchain-precise-3.7 + # needed for libstdc++ headers - ubuntu-toolchain-r-test packages: - clang-3.7 @@ -74,6 +91,30 @@ matrix: - libgtest-dev - valgrind - gdb + - compiler: gcc + env: REAL_CC=gcc-4.7 REAL_CXX=g++-4.7 + addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - g++-4.7 + - libstdc++6-4.7-dbg + - libgtest-dev + - valgrind + - gdb + - compiler: gcc + env: REAL_CC=gcc-4.8 REAL_CXX=g++-4.8 + addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - g++-4.8 + - libstdc++6-4.8-dbg + - libgtest-dev + - valgrind + - gdb - compiler: gcc env: REAL_CC=gcc-4.9 REAL_CXX=g++-4.9 addons: @@ -98,6 +139,35 @@ matrix: - libgtest-dev - valgrind - gdb + # Can't use valgrind and asan at the same time. + # Should probably fix the test leaks though. + - compiler: gcc + env: REAL_CC=gcc-5 REAL_CXX=g++-5 REAL_EXTRA=-fsanitize=address FORCE_TESTER='' ASAN_OPTIONS=detect_leaks=0 + addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - g++-5 + - libstdc++6-5-dbg + - libgtest-dev + # - valgrind + - gdb + # LTO is buggy. + - compiler: gcc + env: REAL_CC=gcc-5 REAL_CXX=g++-5 REAL_EXTRA=-flto + addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - g++-5 + - libstdc++6-5-dbg + - libgtest-dev + - valgrind + - gdb + allow_failures: + - env: REAL_CC=gcc-5 REAL_CXX=g++-5 REAL_EXTRA=-flto # everything that was pushed to stable was already on 'master', except # the version change and some doc changes. -- cgit v1.2.3-60-g2f50