| @@ -1,26 +1,87 @@ | |||
| language: cpp | |||
| language: c | |||
| cache: ccache | |||
| matrix: | |||
| # gcc | |||
| include: | |||
| - os: linux | |||
| dist: xenial | |||
| compiler: gcc | |||
| addons: | |||
| apt: | |||
| packages: | |||
| - valgrind | |||
| - cppcheck | |||
| env: CHECK="true" | |||
| - os: linux | |||
| dist: xenial | |||
| compiler: gcc | |||
| - os: linux | |||
| dist: xenial | |||
| compiler: gcc | |||
| env: MATRIX_EVAL="CC=gcc-6 && CXX=g++-6" | |||
| - os: linux | |||
| dist: xenial | |||
| compiler: gcc | |||
| env: MATRIX_EVAL="CC=gcc-7 && CXX=g++-7" | |||
| - os: linux | |||
| dist: xenial | |||
| compiler: gcc | |||
| env: MATRIX_EVAL="CC=gcc-8 && CXX=g++-8" | |||
| compiler: | |||
| - gcc | |||
| - clang | |||
| # clang | |||
| - os: linux | |||
| dist: xenial | |||
| compiler: clang | |||
| addons: | |||
| apt: | |||
| sources: | |||
| - llvm-toolchain-xenial-5.0 | |||
| packages: | |||
| - clang-5.0 | |||
| env: MATRIX_EVAL="CC=clang-5.0 && CXX=clang++-5.0" | |||
| - os: linux | |||
| dist: xenial | |||
| compiler: clang | |||
| addons: | |||
| apt: | |||
| sources: | |||
| - llvm-toolchain-xenial-6.0 | |||
| packages: | |||
| - clang-6.0 | |||
| - cppcheck | |||
| env: MATRIX_EVAL="CC=clang-6.0 && CXX=clang++-6.0" | |||
| # The default clang on xenial is clang 7.0 | |||
| - os: linux | |||
| dist: xenial | |||
| compiler: clang | |||
| # osx | |||
| - os: osx | |||
| osx_image: xcode9.4 | |||
| env: XCODE="true" | |||
| - os: osx | |||
| osx_image: xcode10.1 | |||
| env: XCODE="true" CHECK="true" | |||
| addons: | |||
| apt: | |||
| packages: | |||
| - cppcheck | |||
| - valgrind | |||
| # allow_failures: | |||
| # - os: osx | |||
| os: | |||
| - linux | |||
| - osx | |||
| install: | |||
| - sh autogen.sh | |||
| before_install: | |||
| - echo $CC | |||
| - echo $LANG | |||
| - echo $LC_ALL | |||
| - set -e | |||
| install: | |||
| - sh autogen.sh | |||
| - if [ "$TRAVIS_OS_NAME" = "linux" ]; then | |||
| eval "${MATRIX_EVAL}"; | |||
| if [ -n "$MATRIX_EVAL" ] && [ "$TRAVIS_COMPILER" != "clang" ]; then | |||
| sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157; | |||
| sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test; | |||
| sudo apt-get update -qq; | |||
| sudo apt-get install -y $CC; | |||
| fi; | |||
| fi | |||
| before_script: | |||
| - ./configure | |||
| @@ -29,9 +90,13 @@ script: | |||
| - make | |||
| after_success: | |||
| - make check ; result=$? | |||
| - if [ $result != 0 ]; then | |||
| cat tests/*.log; | |||
| - if [ -n "$CHECK" ]; then | |||
| make distcheck; | |||
| result=$?; | |||
| if [ $result != 0 ]; then | |||
| cat tests/*.log; | |||
| exit $result; | |||
| fi; | |||
| if type cppcheck &> /dev/null ; then cppcheck --error-exitcode=1 --quiet *.h *.c tests/ ; fi; | |||
| fi | |||
| - if type cppcheck &> /dev/null ; then cppcheck --error-exitcode=1 --quiet *.h *.c tests/ ; fi | |||
| - exit $result | |||