forked from libunwind/libunwind
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
103 lines (97 loc) · 2.55 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
sudo: required
language: c
compiler: gcc
env:
- HOST=x86_64-linux-gnu OPT=-O0
- HOST=x86-linux-gnu OPT=-O0
- HOST=arm-linux-gnueabihf OPT=-O0
- HOST=aarch64-linux-gnu OPT=-O0
- HOST=mipsel-linux-gnu OPT=-O0
- HOST=powerpc64-linux-gnu OPT=-O0
- HOST=x86_64-linux-gnu OPT=-O2
- HOST=x86-linux-gnu OPT=-O2
- HOST=arm-linux-gnueabihf OPT=-O2
- HOST=aarch64-linux-gnu OPT=-O2
- HOST=mipsel-linux-gnu OPT=-O2
- HOST=powerpc64-linux-gnu OPT=-O2
- HOST=x86_64-linux-gnu OPT=-O3
- HOST=x86-linux-gnu OPT=-O3
- HOST=arm-linux-gnueabihf OPT=-O3
- HOST=aarch64-linux-gnu OPT=-O3
- HOST=mipsel-linux-gnu OPT=-O3
- HOST=powerpc64-linux-gnu OPT=-O3
linux-s390x: &linux-s390x
os: linux
dist: focal
arch: s390x
env: HOST=s390x-linux-gnu BUILD=s390x-linux-gnu
script:
- |
CFLAGS="$OPT"
CXXFLAGS="$OPT"
export CFLAGS CXXFLAGS
- autoreconf -i
- ./configure
- make -j32
- ulimit -c unlimited
- make check -j32
linux-arm64: &linux-arm64
dist: focal
arch: arm64-graviton2
group: edge
virt: vm
env: OPT=-O2
script:
- |
CFLAGS="$OPT"
CXXFLAGS="$OPT"
export CFLAGS CXXFLAGS
- autoreconf -i
- ./configure
- make -j32
- ulimit -c unlimited
- make check -j32
windows-remote-only: &windows-remote-only
os: windows
compiler: msvc
script:
- cmake -G "Visual Studio 15 2017" -A ${WINHOST} -S . -B bin/windows-${WINHOST}/${TARGET}
- cmake --build bin/windows-${WINHOST}/${TARGET}
script:
- |
BUILD=x86_64-linux-gnu
export BUILD
if [ $HOST = 'x86-linux-gnu' ]; then
sudo apt-get update
sudo apt-get install -yqq -o=Dpkg::Use-Pty=0 g++-multilib
CFLAGS=" -m32"
CXXFLAGS=" -m32"
export CFLAGS CXXFLAGS
elif [ $HOST != 'x86_64-linux-gnu' ]; then
sudo apt-get update
sudo apt-get install -yqq -o=Dpkg::Use-Pty=0 g++-$HOST
CC=$HOST-gcc
CXX=$HOST-g++
export CC CXX
fi
- |
CFLAGS="$CFLAGS $OPT"
CXXFLAGS="$CXXFLAGS $OPT"
export CFLAGS CXXFLAGS
- autoreconf -i
- ./configure CC=$CC CXX=$CXX CFLAGS="$CFLAGS" CXXFLAGS="$CXXFLAGS" --build=$BUILD --host=$HOST
- make -j32
- sudo bash -c 'echo core.%p.%p > /proc/sys/kernel/core_pattern'
- ulimit -c unlimited
- if [ $HOST = 'x86_64-linux-gnu' ]; then make check -j32; fi
after_failure: cat tests/test-suite.log 2>/dev/null
jobs:
include:
- <<: *linux-s390x
- <<: *windows-remote-only
env: WINHOST=x64 TARGET=x86_64-linux-gnu
- <<: *windows-remote-only
env: WINHOST=Win32 TARGET=arm-linux-gnueabihf
- <<: *windows-remote-only
env: WINHOST=x64 TARGET=aarch64-linux-gnu
- <<: *linux-arm64