107 lines
2.5 KiB
YAML
107 lines
2.5 KiB
YAML
version: ~> 1.0
|
|
language: cpp
|
|
os: linux
|
|
dist: bionic
|
|
|
|
arch:
|
|
- amd64
|
|
- arm64
|
|
- ppc64le
|
|
- s390x
|
|
|
|
env:
|
|
- COMPILER=g++-7
|
|
- COMPILER=g++-9
|
|
- COMPILER=clang++-6.0
|
|
- COMPILER=clang++-9
|
|
|
|
jobs:
|
|
include:
|
|
# Linux
|
|
- env: COMPILER=g++-8
|
|
- env: COMPILER=clang++-5.0
|
|
- env: COMPILER=clang++-7
|
|
- env: COMPILER=clang++-8
|
|
- env: COMPILER=clang++-10
|
|
- env: COMPILER=clang++-11
|
|
- env: COMPILER=clang++-12
|
|
|
|
# macOS
|
|
- os: osx
|
|
osx_image: xcode9.4
|
|
env: # default compiler
|
|
- os: osx
|
|
osx_image: xcode10.1
|
|
env: # default compiler
|
|
- os: osx
|
|
osx_image: xcode10.3
|
|
env: # default compiler
|
|
- os: osx
|
|
osx_image: xcode11.3
|
|
env: # default compiler
|
|
- os: osx
|
|
osx_image: xcode11.6
|
|
env: # default compiler
|
|
- os: osx
|
|
osx_image: xcode12
|
|
env: # default compiler
|
|
|
|
allow_failures:
|
|
- arch: s390x # bug 4818
|
|
- env: COMPILER=clang++-12
|
|
|
|
fast_finish: true
|
|
|
|
before_install:
|
|
- |
|
|
: Adding apt repositories
|
|
case ${COMPILER} in
|
|
g++-9)
|
|
# https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test/+packages
|
|
travis_retry sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
|
|
travis_retry sudo apt-get -qq update
|
|
;;
|
|
clang++-1?)
|
|
# https://apt.llvm.org/
|
|
LLVM_REPO=${COMPILER/clang++/llvm-toolchain-${TRAVIS_DIST}}
|
|
travis_retry wget -nv -O - "https://apt.llvm.org/llvm-snapshot.gpg.key" | sudo apt-key add -
|
|
travis_retry sudo add-apt-repository -y "deb http://apt.llvm.org/${TRAVIS_DIST}/ ${LLVM_REPO%-12} main"
|
|
travis_retry sudo apt-get -qq update
|
|
;;
|
|
esac
|
|
|
|
install:
|
|
- |
|
|
: Installing C++ compiler
|
|
if [[ -n ${COMPILER} ]]; then
|
|
travis_retry sudo apt-get -qy install ${COMPILER/clang++/clang}
|
|
fi
|
|
|
|
before_script:
|
|
- |
|
|
: Setting environment variables
|
|
if [[ -n ${COMPILER} ]]; then
|
|
export CXX=${COMPILER}
|
|
fi
|
|
case ${TRAVIS_OS_NAME} in
|
|
linux) export NODE_LABELS="Linux Ubuntu Ubuntu-18.04" ;;
|
|
osx) export NODE_LABELS="OSX OSX-$(sw_vers -productVersion | cut -d . -f -2)" ;;
|
|
esac
|
|
export WAF_JOBS=2
|
|
- |
|
|
: Enabling workarounds
|
|
case "${TRAVIS_CPU_ARCH},${COMPILER}" in
|
|
ppc64le,g++-7)
|
|
# AddressSanitizer does not seem to be working
|
|
export DISABLE_ASAN=yes
|
|
;;
|
|
*,clang++-8)
|
|
# https://bugs.llvm.org/show_bug.cgi?id=40808
|
|
export DISABLE_ASAN=yes
|
|
;;
|
|
esac
|
|
- ${CXX:-c++} --version
|
|
|
|
script:
|
|
- ./.jenkins
|