forked from agra-uni-bremen/metaSMT
-
Notifications
You must be signed in to change notification settings - Fork 8
/
.gitlab-ci.yml
113 lines (94 loc) · 2.55 KB
/
.gitlab-ci.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
variables:
METASMT_DEFAULT_SOLVERS: "--build boolector-2.4.1 --build lingeling-bbc-9230380-161217 --build minisat-git"
### templates for docker images
.ubuntu18: &ubuntu18
image: ubuntu:bionic
tags:
- docker
.ubuntu16_x86: &ubuntu16_x86
image: m0elnx/ubuntu-32bit:latest
tags:
- docker
.ubuntu16: &ubuntu16
image: ubuntu:xenial
tags:
- docker
.ubuntu14: &ubuntu14
image: ubuntu:trusty
tags:
- docker
.debian9: &debian9
image: debian:stretch
tags:
- docker
.debian8: &debian8
image: debian:jessie
tags:
- docker
### template and jobs for the default build
.build_default:
script: &build_default
- apt-get -qq update
- apt-get -qq -y upgrade
- apt-get install -qq -y build-essential cmake git wget unzip zlib1g-dev python libboost-dev
- NUM_JOBS=$[`nproc`-1]
- if [ "$NUM_JOBS" -lt 1 ]; then NUM_JOBS=1; fi
- git clone https://github.com/agra-uni-bremen/dependencies.git
- if [ -z "$METASMT_SOLVERS" ]; then METASMT_SOLVERS=$METASMT_DEFAULT_SOLVERS; fi
- BOOST_ROOT=/usr ./bootstrap.sh -d deps -m RELEASE build $METASMT_SOLVERS
- cd build
- make -j $NUM_JOBS
- ctest --output-on-failure --output-log tests.log || true
- NUM_FAILED=`grep -o -E '[0-9]+ tests failed' tests.log | grep -o -E '[0-9]+'`
- if [ -z "$MAX_FAILS" ]; then MAX_FAILS=10; fi
- if [ "$NUM_FAILED" -gt "$MAX_FAILS" ]; then echo "Too many failures ($NUM_FAILED)"; exit 1; fi
build_default_ubuntu18:
<<: *ubuntu18
script: *build_default
build_default_ubuntu16:
<<: *ubuntu16
script: *build_default
build_default_ubuntu14:
<<: *ubuntu14
script: *build_default
build_default_debian9:
<<: *debian9
script: *build_default
build_default_debian8:
<<: *debian8
script: *build_default
build_default_ubuntu16_x86:
<<: *ubuntu16_x86
script: *build_default
### special build jobs
build_z3:
<<: *ubuntu14
variables:
METASMT_SOLVERS: "--build Z3-4.5.0-ubuntu-14.04-x64"
MAX_FAILS: "4"
script: *build_default
build_z3_x86:
<<: *ubuntu16_x86
variables:
METASMT_SOLVERS: "--build Z3-4.5.0-ubuntu-14.04-x86"
MAX_FAILS: "4"
script: *build_default
build_windows:
script:
- git submodule sync
- git submodule update --init
- call "%VS140COMNTOOLS%VsDevCmd.bat"
- rmdir build /s /q
- mkdir build
- cd build
- cmake .. -DBoost_USE_STATIC_LIBS=ON -DBOOST_ROOT="C:\deps\boost_1_60_0" -DZ3_DIR="C:\deps\z3-4.5.0-x86-win"
- cmake --build . --config Debug
- ctest
tags:
- windows
build_cudd:
<<: *ubuntu14
variables:
METASMT_SOLVERS: "--build cudd-3.0.0"
MAX_FAILS: "1"
script: *build_default