Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rewrite definitions for Travis CI #259

Merged
merged 1 commit into from
Dec 3, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
142 changes: 24 additions & 118 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,131 +1,37 @@
language: cpp

cache: ccache

env:
- arch=x86_64 CXX_VERSION=current
- arch=x86_64 CXX_VERSION=previous
- arch=x86_64 CXX_VERSION=default
- arch=aarch64 CXX_VERSION=default
sudo: required
dist: bionic

os:
- linux
- osx
- linux
- osx

compiler:
- gcc
- clang
- gcc
- clang

matrix:
exclude:
- env: arch=x86_64 CXX_VERSION=previous
os: osx
compiler: clang
- env: arch=aarch64 CXX_VERSION=default
os: osx
- env: arch=x86_64 CXX_VERSION=default
os: osx
compiler: gcc
allow_failures:
- os: osx
compiler: gcc

# The following gives us Ubuntu 14.04 LTS instead of 12.04 LTS
sudo: required
dist: trusty

install:
- case "$TRAVIS_OS_NAME-$CXX-$CXX_VERSION-$arch" in
linux-g++-current-x86_64)
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y &&
sudo apt-get update -q &&
sudo apt-get install g++-6 -y &&
export CXX=g++-6 CC=gcc-6;;
linux-g++-previous-x86_64)
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y &&
sudo apt-get update -q &&
sudo apt-get install g++-5 -y &&
export CXX=g++-5 CC=gcc-5;;
linux-g++-default-x86_64)
;;
linux-clang++-current-x86_64)
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y &&
wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - &&
sudo tee /etc/apt/sources.list.d/llvm.list <<< "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-5.0 main" &&
sudo apt-get update -q &&
sudo apt-get install clang-5.0 -y &&
export CXX=clang++-5.0 CC=clang-5.0;;
linux-clang++-previous-x86_64)
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y &&
wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - &&
sudo tee /etc/apt/sources.list.d/llvm.list <<< "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-4.0 main" &&
sudo apt-get update -q &&
sudo apt-get install clang-4.0 -y &&
export CXX=clang++-4.0 CC=clang-4.0;;
linux-clang++-default-x86_64)
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y &&
sudo apt-get update -q &&
sudo apt-get install clang-3.8 libstdc++-6-dev libc++-dev libc++abi-dev -y &&
export CXX=clang++-3.8 CC=clang-3.8;;
osx-g++-current-x86_64)
brew cask uninstall oclint &&
brew update &&
brew install gcc@8 &&
export CXX=g++-8 CC=gcc-8;;
osx-g++-previous-x86_64)
brew cask uninstall oclint &&
brew update &&
brew install gcc@7 &&
export CXX=g++-7 CC=gcc-7;;
osx-clang++-current-x86_64)
wget http://releases.llvm.org/4.0.0/clang+llvm-4.0.0-x86_64-apple-darwin.tar.xz &&
tar xf clang+llvm-4.0.0-x86_64-apple-darwin.tar.xz &&
cd clang+llvm-4.0.0-x86_64-apple-darwin &&
export CXX=$PWD/bin/clang++ CC=$PWD/bin/clang &&
export LDFLAGS="-L$PWD/lib -Wl,-rpath,$PWD/lib" &&
export CPPFLAGS=-I$PWD/include &&
cd ..;;
osx-clang++-previous-x86_64)
exit 1;;
osx-clang++-default-x86_64)
;;
linux-g++-default-aarch64)
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y &&
sudo add-apt-repository -y 'deb http://de.archive.ubuntu.com/ubuntu/ xenial main' &&
sudo add-apt-repository -y 'deb http://de.archive.ubuntu.com/ubuntu/ xenial-updates main' &&
sudo apt-get update -q &&
sudo apt-get install -y g++-5-aarch64-linux-gnu &&
export CXX=aarch64-linux-gnu-g++-5 CC=aarch64-linux-gnu-gcc-5 CMAKE_TOOLCHAIN_FILE=cmake/toolchain-arm-linux.cmake;;
linux-clang++-default-aarch64)
wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - &&
sudo tee /etc/apt/sources.list.d/llvm.list <<< "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-5.0 main" &&
sudo apt-get update -q &&
sudo apt-get install -y clang-5.0 &&
sudo add-apt-repository -y 'deb http://de.archive.ubuntu.com/ubuntu/ xenial main' &&
sudo add-apt-repository -y 'deb http://de.archive.ubuntu.com/ubuntu/ xenial-updates main' &&
sudo apt-get update -q &&
sudo apt-get install -y libstdc++-5-dev-arm64-cross gcc-5-aarch64-linux-gnu &&
export CPATH=/usr/aarch64-linux-gnu/include &&
export CXX="clang++-5.0 -target aarch64-linux-gnu" CC="clang-5.0 -target aarch64-linux-gnu" &&
export CMAKE_TOOLCHAIN_FILE=cmake/toolchain-arm-linux.cmake;;
esac
# Actually the same as clang
exclude:
- os: osx
compiler: gcc

before_script:
- $CXX --version
- cmake --version
- export dashboard_model=Experimental
- export build_type=Release
- export NUMBER_OF_PROCESSORS=2
- $CXX --version
- cmake --version
- export dashboard_model=Experimental
- export build_type=Release
- export NUMBER_OF_PROCESSORS=2

script:
- ctest -V -S test.cmake
- ctest -V -S test.cmake

notifications:
email: false
irc:
channels:
- "chat.freenode.net##Vc"
on_success: change # [always|never|change] # default: always
on_failure: always # [always|never|change] # default: always
use_notice: true
skip_join: true
email: false
irc:
channels:
- "chat.freenode.net##Vc"
on_success: change
on_failure: always
use_notice: true
skip_join: true