196 lines
4.6 KiB
YAML
Executable File
196 lines
4.6 KiB
YAML
Executable File
language: c
|
|
|
|
matrix:
|
|
include:
|
|
# OSX standard test build
|
|
# this is really a GCC frontend with an LLVM back-end
|
|
- os: osx
|
|
env:
|
|
- MATRIX_EVAL="CC=gcc && CXX=g++"
|
|
|
|
# OSX and pure GCCs
|
|
# https://docs.travis-ci.com/user/languages/c/#GCC-on-OS-X
|
|
- os: osx
|
|
env:
|
|
- MATRIX_EVAL="CC=gcc-4.9 && CXX=g++-4.9"
|
|
|
|
- os: osx
|
|
env:
|
|
- MATRIX_EVAL="brew install gcc5 && CC=gcc-5 && CXX=g++-5"
|
|
|
|
- os: osx
|
|
env:
|
|
- MATRIX_EVAL="brew install gcc6 && CC=gcc-6 && CXX=g++-6"
|
|
|
|
- os: osx
|
|
env:
|
|
- MATRIX_EVAL="brew install gcc && CC=gcc-7 && CXX=g++-7"
|
|
|
|
# OSX and pure LLVMs - the version is controlled by the osx_image variable
|
|
# images as per https://blog.travis-ci.com/2017-10-16-a-new-default-os-x-image-is-coming
|
|
- os: osx
|
|
osx_image: xcode6.4
|
|
env:
|
|
- MATRIX_EVAL="CC=clang && CXX=clang"
|
|
|
|
- os: osx
|
|
osx_image: xcode7.3
|
|
env:
|
|
- MATRIX_EVAL="CC=clang && CXX=clang"
|
|
|
|
- os: osx
|
|
osx_image: xcode8.3
|
|
env:
|
|
- MATRIX_EVAL="CC=clang && CXX=clang"
|
|
|
|
- os: osx
|
|
osx_image: xcode9
|
|
env:
|
|
- MATRIX_EVAL="CC=clang && CXX=clang"
|
|
|
|
- os: osx
|
|
osx_image: xcode9.1
|
|
env:
|
|
- MATRIX_EVAL="CC=clang && CXX=clang"
|
|
|
|
# Linux and GCCs
|
|
# gcc 4.8 at the time of writing
|
|
- os: linux
|
|
dist: trusty
|
|
env:
|
|
- MATRIX_EVAL="CC=gcc && CXX=g++"
|
|
|
|
# for newer GCCs, add ubuntu-toolchain-r-test
|
|
# https://docs.travis-ci.com/user/languages/c/
|
|
- os: linux
|
|
dist: trusty
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- g++-4.9
|
|
env:
|
|
- MATRIX_EVAL="CC=gcc-4.9 && CXX=g++-4.9"
|
|
|
|
- os: linux
|
|
dist: trusty
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- g++-5
|
|
env:
|
|
- MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
|
|
|
|
- os: linux
|
|
dist: trusty
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- g++-6
|
|
env:
|
|
- MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
|
|
|
|
|
|
- os: linux
|
|
dist: trusty
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- g++-7
|
|
env:
|
|
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"
|
|
|
|
# Linux and LLVMs
|
|
# https://docs.travis-ci.com/user/languages/c/#Clang
|
|
- os: linux
|
|
dist: trusty
|
|
env:
|
|
- MATRIX_EVAL="CC=clang && CXX=clang"
|
|
|
|
- os: linux
|
|
dist: trusty
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
- llvm-toolchain-precise-3.6
|
|
packages:
|
|
- clang-3.6
|
|
env:
|
|
- MATRIX_EVAL="CC=clang-3.6 && CXX=clang++-3.6"
|
|
|
|
- os: linux
|
|
dist: trusty
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
- llvm-toolchain-precise-3.7
|
|
packages:
|
|
- clang-3.7
|
|
env:
|
|
- MATRIX_EVAL="CC=clang-3.7 && CXX=clang++-3.7"
|
|
|
|
- os: linux
|
|
dist: trusty
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
- llvm-toolchain-precise-3.8
|
|
packages:
|
|
- clang-3.8
|
|
env:
|
|
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
|
|
|
|
- os: linux
|
|
dist: trusty
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- llvm-toolchain-trusty-3.9
|
|
packages:
|
|
- clang-3.9
|
|
env:
|
|
- MATRIX_EVAL="CC=clang-3.9 && CXX=clang++-3.9"
|
|
|
|
- os: linux
|
|
dist: trusty
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- llvm-toolchain-trusty-4.0
|
|
packages:
|
|
- clang-4.0
|
|
env:
|
|
- MATRIX_EVAL="CC=clang-4.0 && CXX=clang++-4.0"
|
|
|
|
- os: linux
|
|
dist: trusty
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- llvm-toolchain-trusty-5.0
|
|
packages:
|
|
- clang-5.0
|
|
env:
|
|
- MATRIX_EVAL="CC=clang-5.0 && CXX=clang++-5.0"
|
|
|
|
|
|
before_install:
|
|
# avoid issues with outdated Homebrew installation on Mac OSX by updating it
|
|
# before anything else
|
|
# TODO: remove "brew update" line after 2017-11-15, see https://blog.travis-ci.com/2017-10-16-a-new-default-os-x-image-is-coming and
|
|
# https://github.com/travis-ci/travis-ci/issues/8552
|
|
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update; fi
|
|
- eval "${MATRIX_EVAL}"
|
|
|
|
script: autoreconf -V && autoreconf --force && ./configure && cat config.log && make && make check
|