[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 2/6] CI: more compilers
From: |
Akim Demaille |
Subject: |
[PATCH 2/6] CI: more compilers |
Date: |
Fri, 6 Sep 2019 22:27:49 +0200 |
* .travis.yml: Bionic is now available, with GCC8.
GCC7 sanitizers work, but they are too longer: cover only part 1.
Redefine part 1 and part 2 so that part 1 is really the core of the
tests: not playing with POSIX and C++ compiler for C code.
---
.travis.yml | 91 ++++++++++++++++++++++++++++++++---------------------
1 file changed, 55 insertions(+), 36 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index ce34ade7..0e843e85 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -74,46 +74,44 @@ jobs:
# Start with three completely different environments, to get
# errors asap.
- - name: "GCC 7 -O3"
+ - name: "GCC 8 -O3"
stage: test
os: linux
- dist: xenial
+ dist: bionic
addons:
apt:
- sources:
- - ubuntu-toolchain-r-test
packages:
- - g++-7
+ - g++-8
env:
- - MATRIX_EVAL="CC=gcc-7 && CXX=g++-7 &&
CONFIGUREFLAGS='CPPFLAGS=-DNDEBUG CFLAGS=-O3 CXXFLAGS=-O3'"
+ - MATRIX_EVAL="CC=gcc-8 && CXX=g++-8 &&
CONFIGUREFLAGS='CPPFLAGS=-DNDEBUG CFLAGS=-O3 CXXFLAGS=-O3'"
# ASAN is time consuming, and we timeout the 50min granted by
# Travis if we run all the tests in one go. Run in two parts.
- - name: "Clang 7 libc++ and ASAN part 1"
+ - name: "Clang 8 libc++ and ASAN part 1"
stage: test
os: linux
- dist: xenial
- addons: &clang7
+ dist: bionic
+ addons: &clang8
apt:
sources:
- - llvm-toolchain-xenial-7
+ - llvm-toolchain-bionic-8
- ubuntu-toolchain-r-test
packages:
- - clang-7
- - libc++-7-dev
- - libc++abi-7-dev
+ - clang-8
+ - libc++-8-dev
+ - libc++abi-8-dev
env:
# Do not use ASAN with ubuntu's libc++:
https://bugs.llvm.org/show_bug.cgi?id=17379
- - MATRIX_EVAL="PART=1 CC='clang-7 -fsanitize=address' CXX='clang++-7
-fsanitize=address -stdlib=libc++'"
+ - MATRIX_EVAL="PART=1 CC='clang-8 -fsanitize=address' CXX='clang++-8
-fsanitize=address -stdlib=libc++'"
- - name: "Clang 7 libc++ and ASAN part 2"
+ - name: "Clang 8 libc++ and ASAN part 2"
stage: test
os: linux
- dist: xenial
- addons: *clang7
+ dist: bionic
+ addons: *clang8
env:
# Do not use ASAN with ubuntu's libc++:
https://bugs.llvm.org/show_bug.cgi?id=17379
- - MATRIX_EVAL="PART=2 CC='clang-7 -fsanitize=address' CXX='clang++-7
-fsanitize=address -stdlib=libc++'"
+ - MATRIX_EVAL="PART=2 CC='clang-8 -fsanitize=address' CXX='clang++-8
-fsanitize=address -stdlib=libc++'"
- name: "ICC"
stage: test
@@ -136,23 +134,27 @@ jobs:
## GCC. ##
## ----- ##
- #- name: "GCC 8 with sanitizers"
- # os: linux
- # dist: xenial
- # 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' (on trusty)
- # # /usr/bin/ld: unrecognized option '--push-state--no-as-needed' (on
xenial)
- # #
- # # https://stackoverflow.com/questions/50024731/ suggests using the
gold linker.
- # - 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 with sanitizers"
+ os: linux
+ dist: bionic
+ addons:
+ apt:
+ packages:
+ - g++-7
+ env:
+ - MATRIX_EVAL="CC='gcc-7 -fsanitize=undefined,address
-fno-omit-frame-pointer' CXX='g++-7 -fsanitize=undefined,address
-fno-omit-frame-pointer'"
+ - PART=1
+
+ - name: "GCC 7"
+ stage: test
+ os: linux
+ dist: bionic
+ addons:
+ apt:
+ packages:
+ - g++-7
+ env:
+ - MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"
- name: "GCC 6"
stage: test
@@ -236,6 +238,23 @@ jobs:
## Clang. ##
## ------- ##
+ - name: "Clang 7 -O3 and libc++"
+ stage: test
+ os: linux
+ dist: bionic
+ addons:
+ apt:
+ sources:
+ - llvm-toolchain-bionic-7
+ - ubuntu-toolchain-r-test
+ packages:
+ - clang-7
+ - libc++-7-dev
+ - libc++abi-7-dev
+ env:
+ - MATRIX_EVAL="CC=clang-7 && CXX='clang++-7 -stdlib=libc++'"
+ - CONFIGUREFLAGS='CPPFLAGS=-DNDEBUG CFLAGS=-O3 CXXFLAGS=-O3'
+
- name: "Clang 6 -O3 and libc++"
stage: test
os: linux
@@ -427,7 +446,7 @@ script:
- ../configure --enable-gcc-warnings CC="$CC" CXX="$CXX" $CONFIGUREFLAGS ||
{ cat config.log && false; }
- make -j2 $MAKE_ARGS
- if test ${PART-1} = 1; then make check VERBOSE=1
TESTSUITEFLAGS=-j2 || { cat test-suite.log && cat tests/testsuite.log && false;
}; fi
- - if test ${PART-1} = 1; then make maintainer-check-posix VERBOSE=1
TESTSUITEFLAGS=-j2 || { cat tests/testsuite.log && false; }; fi
+ - if test ${PART-2} = 2; then make maintainer-check-posix VERBOSE=1
TESTSUITEFLAGS=-j2 || { cat tests/testsuite.log && false; }; fi
- if test ${PART-2} = 2; then make maintainer-check-g++ VERBOSE=1
TESTSUITEFLAGS=-j2 || { cat tests/testsuite.log && false; }; fi
after_script:
--
2.23.0
- [PATCH 0/6] More CI and fixes, Akim Demaille, 2019/09/06
- [PATCH 1/6] CI: fail fast, Akim Demaille, 2019/09/06
- [PATCH 3/6] style: fix comment, Akim Demaille, 2019/09/06
- [PATCH 2/6] CI: more compilers,
Akim Demaille <=
- [PATCH 4/6] lalr1.cc: fix LAC support, Akim Demaille, 2019/09/06
- [PATCH 5/6] yacc.c: beware of GCC's -Wmaybe-uninitialized, Akim Demaille, 2019/09/06
- [PATCH 6/6] glr.c: initialize vector of bools, Akim Demaille, 2019/09/06