diff options
author | Akim Demaille <akim.demaille@gmail.com> | 2018-09-23 16:56:34 +0200 |
---|---|---|
committer | Akim Demaille <akim.demaille@gmail.com> | 2018-09-24 21:52:55 +0200 |
commit | 6181f05630ca81e8771cfe48782c0c9ce8dce3f9 (patch) | |
tree | 1680aeb47110762864fbb8852a9a54c17352a1e0 /.travis.yml | |
parent | a4ba0d21a1c7968da19a977c1a00cc00ba730d9a (diff) | |
download | bison-6181f05630ca81e8771cfe48782c0c9ce8dce3f9.tar.gz |
CI: really use Clang 3.3 and 3.4, not 5.0
* .travis.yml: Don't define CC/CXX, it does not work.
Use `[[...]]` instead of `[...]`.
Show the compiler versions.
(Clang 3.3, Clang 3.4): Specify the path to avoid using
/usr/local/clang-5.0.0/bin's clang.
Diffstat (limited to '.travis.yml')
-rw-r--r-- | .travis.yml | 58 |
1 files changed, 35 insertions, 23 deletions
diff --git a/.travis.yml b/.travis.yml index 2d7bda89..b3960c42 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,3 +1,8 @@ +# Travis defines and exports CC and CXX *after* we have defined our +# environment variables via 'env'. So, do not use 'env' to define +# them. Instead, put their definitions in MATRIX_EVAL, which we eval +# after the definitions from Travis. + language: cpp env: @@ -10,17 +15,19 @@ matrix: ## ----- ## ## GCC. ## ## ----- ## - - name: "GCC 8 with sanitizers" - os: linux - addons: - apt: - sources: - - ubuntu-toolchain-r-test - packages: - - g++-8 - env: - - CC='gcc-8 -fsanitize=unknown,address -fno-omit-frame-pointer' - - CXX='g++-8 -fsanitize=unknown,address -fno-omit-frame-pointer' + #- name: "GCC 8 with sanitizers" + # os: linux + # addons: + # apt: + # sources: + # - ubuntu-toolchain-r-test + # packages: + # - g++-8 + # env: + # # Can't use UBSAN: I get: + # # configure:4951: gcc-8 -fsanitize=undefined,address -fno-omit-frame-pointer conftest.c + # # /usr/bin/ld: unrecognized option '--push-state' + # - MATRIX_EVAL="CC='gcc-8 -fsanitize=undefined,address -fno-omit-frame-pointer' CXX='g++-8 -fsanitize=undefined,address -fno-omit-frame-pointer'" - name: "GCC 7 -O3" os: linux @@ -118,8 +125,7 @@ matrix: # # For llvm-symbolizer. # - llvm-7.0 # env: -# - CC='clang-7.0 -fsanitize=address' -# - CXX='clang++-7.0 -fsanitize=address -stdlib=libc++' +# - MATRIX_EVAL="CC='clang-7.0 -fsanitize=address' CXX='clang++-7.0 -fsanitize=address -stdlib=libc++'" # - ASAN_SYMBOLIZER_PATH=/usr/lib/llvm-7.0/bin/llvm-symbolizer - name: "Clang 6 -O3 and libc++" @@ -144,9 +150,9 @@ matrix: - llvm-toolchain-trusty-5.0 packages: - clang-5.0 + - libc++-dev env: - - CC='clang-5.0 -fsanitize=address' - - CXX='clang++-5.0 -fsanitize=address -stdlib=libc++' + - MATRIX_EVAL="CC='clang-5.0 -fsanitize=address' CXX='clang++-5.0 -fsanitize=address -stdlib=libc++'" - name: "Clang 4" os: linux @@ -225,8 +231,9 @@ matrix: packages: - clang-3.4 env: - # No versioned name installed. - - MATRIX_EVAL="CC=clang && CXX=clang++" + # No versioned name installed, but beware that Travis installs + # a more modern clang earlier in the default PATH. + - MATRIX_EVAL='CC=/usr/bin/clang && CXX=/usr/bin/clang++' - name: "Clang 3.3" os: linux @@ -235,8 +242,8 @@ matrix: packages: - clang-3.3 env: - # No versioned name installed. - - MATRIX_EVAL="CC=clang && CXX=clang++" + # See comment for 3.4. + - MATRIX_EVAL='CC=/usr/bin/clang && CXX=/usr/bin/clang++' ## ----- ## ## ICC. ## @@ -247,14 +254,21 @@ matrix: # ICC's warnings are often very wrong (e.g., it thinks foo ? # "bar" : "baz" is char* instead of const char*), so don't try # to work around the, and obviously, don't die on them. - - MATRIX_EVAL="CC=icc && CXX=icpc && MAKE_ARGS='WERROR_CFLAGS= WERROR_CXXFLAGS='" + - MATRIX_EVAL="CC=icc && CXX=icpc" + - MAKE_ARGS='WERROR_CFLAGS= WERROR_CXXFLAGS=' before_install: + - eval "$MATRIX_EVAL" + - env - sudo apt-get update -qq - sudo apt-get install -qq autoconf automake autopoint doxygen flex gettext graphviz help2man m4 texinfo + - if [[ $CC == "icc" ]]; then build-aux/install-icc.sh; fi + - if [[ -f ~/.bashrc ]]; then source ~/.bashrc; fi - autoconf --version - automake --version - autopoint --version + - $CC --version + - $CXX --version - doxygen --version - flex --version - gettext --version @@ -262,8 +276,6 @@ before_install: - help2man --version - m4 --version - makeinfo --version - - eval "${MATRIX_EVAL}" - - if [ x"$CC" == xicc ]; then build-aux/install-icc.sh; fi script: - git show @@ -281,4 +293,4 @@ script: - make maintainer-check-g++ VERBOSE=1 TESTSUITEFLAGS=-j2 || { cat tests/testsuite.log && exit 1; } after_script: - - '[[ ! -z "${INTEL_INSTALL_PATH}" ]] && uninstall_intel_software' + - if [[ $CC == "icc" ]]; then uninstall_intel_software; fi |