forked from VcDevel/Vc
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
118 lines (108 loc) · 4.45 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
language: cpp
cache:
ccache: true
directories:
- $HOME/.cache/sde
env:
- arch=x86_64 subset=sse2
- arch=x86_64 subset=sse4
- arch=x86_64 subset=avx
- arch=x86_64 subset=avx2
- arch=x86_64 subset=avx512
- arch=x86_64 subset=knl
- arch=aarch64 subset=neon
os:
- linux
- osx
compiler:
- gcc
- clang
# The whitespace in "env:" lines must match the definition above!
matrix:
exclude:
- env: arch=x86_64 subset=avx512
os: osx
- env: arch=x86_64 subset=knl
os: osx
- env: arch=aarch64 subset=neon
os: osx
allow_failures:
# GCC on OS X sometimes times out. Those spurious failures are not useful
# and GCC is tested well enough on Linux anyway. CDash will also show failures
# if they are submitted.
- os: osx
compiler: gcc
- env: arch=aarch64 subset=neon
# The following gives us Ubuntu 14.04 LTS instead of 12.04 LTS
sudo: required
dist: trusty
#group: deprecated-2017Q2
install:
- case "$TRAVIS_OS_NAME-$CXX-$arch" in
linux-g++-x86_64)
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 g++-6 binutils -y &&
export CXX=g++-6 CC=gcc-6;;
linux-clang++-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 libstdc++-6-dev -y &&
export CXX=clang++-5.0 CC=clang-5.0;;
osx-g++-x86_64)
brew update &&
brew install gcc6 &&
export CXX=g++-6 CC=gcc-6;;
osx-clang++-x86_64)
wget http://releases.llvm.org/5.0.0/clang+llvm-5.0.0-x86_64-apple-darwin.tar.xz &&
tar xf clang+llvm-5.0.0-x86_64-apple-darwin.tar.xz &&
cd clang+llvm-5.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 ..;;
linux-g++-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++-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
before_script:
# ptrace_scope=0 is required on Ubuntu for SDE to work
- if test "$TRAVIS_OS_NAME" = "linux"; then
echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope;
fi
- $CXX --version
- cmake --version
- export dashboard_model=Experimental
- export build_type=Release
- export NUMBER_OF_PROCESSORS=2
script:
- ctest -VV -S scripts/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