Files
json-c/.travis.yml
andy5995 a49f1dee8a use "non-test" ppa
Maybe something weird about how gcc is configured with the test
toolchain?
2019-07-26 22:24:12 -05:00

101 lines
2.3 KiB
YAML

language: cpp
cache: ccache
matrix:
# gcc
include:
- os: linux
dist: xenial
compiler: gcc
addons:
apt:
packages:
- valgrind
- cppcheck
- doxygen
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"
# 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
- doxygen
env: MATRIX_EVAL="CC=clang-6.0 && CXX=clang++-6.0" CHECK="true"
# 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"
# allow_failures:
# - os: osx
install:
- sh autogen.sh
before_install:
- echo $CC
- echo $LANG
- echo $LC_ALL
- set -e
- 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/ppa;
sudo apt-get update -qq;
sudo apt-get install -y $CC;
fi;
fi
before_script:
- ./configure
script:
- make
- if [ -n "$CHECK" ]; then
if [ "$TRAVIS_OS_NAME" = "osx" ]; then
brew install doxygen;
fi;
make distcheck;
if type cppcheck &> /dev/null ; then cppcheck --error-exitcode=1 --quiet *.h *.c tests/ ; fi;
fi