forked from lballabio/QuantLib
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
135 lines (128 loc) · 5.79 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
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
language: cpp
os: linux
dist: trusty
compiler: gcc
services: docker
cache: ccache
env:
global:
- DOCKER_OPTS="--rm -ti -v ${HOME}/.ccache:/root/.ccache -v ${TRAVIS_BUILD_DIR}:/build -w /build"
jobs:
#
- INFO="gcc 4.8 (Boost 1.48)"
DOCKER_IMAGE=lballabio/quantlib-devenv:trusty
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Werror"
#
- INFO="gcc 5.4 (Boost 1.66)"
DOCKER_IMAGE=lballabio/quantlib-devenv:xenial
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="gcc 6.3 (Boost 1.66)"
DOCKER_IMAGE=lballabio/quantlib-devenv:zesty
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="gcc 7.4 (Boost 1.72)"
DOCKER_IMAGE=lballabio/quantlib-devenv:bionic
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="gcc 8.3 (Boost 1.72)"
DOCKER_IMAGE=lballabio/quantlib-devenv:cosmic
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="gcc 9.x"
DOCKER_IMAGE=lballabio/quantlib-devenv:eoan
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="gcc 10.x"
DOCKER_IMAGE=lballabio/quantlib-devenv:focal
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="Clang 6 (Boost 1.72)"
DOCKER_IMAGE=lballabio/quantlib-devenv:bionic
CACHEDCC="ccache clang" CACHEDCXX="ccache clang++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="Clang 7 (Boost 1.72)"
DOCKER_IMAGE=lballabio/quantlib-devenv:cosmic
CACHEDCC="ccache clang" CACHEDCXX="ccache clang++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="Clang 8 (Boost 1.72)"
DOCKER_IMAGE=lballabio/quantlib-devenv:disco
CACHEDCC="ccache clang" CACHEDCXX="ccache clang++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="Clang 9"
DOCKER_IMAGE=lballabio/quantlib-devenv:eoan
CACHEDCC="ccache clang" CACHEDCXX="ccache clang++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="Clang 10"
DOCKER_IMAGE=lballabio/quantlib-devenv:focal
CACHEDCC="ccache clang" CACHEDCXX="ccache clang++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="C++03 mode"
DOCKER_IMAGE=lballabio/quantlib-devenv:eoan
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Werror -std=c++03"
#
- INFO="C++11 mode"
DOCKER_IMAGE=lballabio/quantlib-devenv:rolling
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror -std=c++11"
#
- INFO="C++14 mode"
DOCKER_IMAGE=lballabio/quantlib-devenv:rolling
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror -std=c++14"
#
- INFO="C++17 mode"
DOCKER_IMAGE=lballabio/quantlib-devenv:rolling
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror -std=c++17"
#
- INFO="Unity build enabled"
DOCKER_IMAGE=lballabio/quantlib-devenv:rolling
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CONFIGURE_FLAGS="--enable-unity-build"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="Intraday calculations enabled"
DOCKER_IMAGE=lballabio/quantlib-devenv:rolling
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CONFIGURE_FLAGS="--enable-intraday"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="Indexed coupons enabled"
DOCKER_IMAGE=lballabio/quantlib-devenv:rolling
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CONFIGURE_FLAGS="--enable-indexed-coupons"
CXXFLAGS="-O2 -g0 -Wall -Wno-unknown-pragmas -Wno-deprecated-declarations -Werror"
#
- INFO="C++11 classes enabled"
DOCKER_IMAGE=lballabio/quantlib-devenv:rolling
CACHEDCC="ccache gcc" CACHEDCXX="ccache g++"
CONFIGURE_FLAGS="--enable-std-classes"
CXXFLAGS="-O2 -g0 -std=c++11 -Wall -Wno-unknown-pragmas -Werror"
before_install:
- docker pull ${DOCKER_IMAGE}
script:
- docker run ${DOCKER_OPTS} ${DOCKER_IMAGE} ./autogen.sh
- docker run ${DOCKER_OPTS} ${DOCKER_IMAGE} ./configure --disable-static ${CONFIGURE_FLAGS} CC="${CACHEDCC}" CXX="${CACHEDCXX}" CXXFLAGS="${CXXFLAGS}"
- docker run ${DOCKER_OPTS} ${DOCKER_IMAGE} ccache --zero-stats
- docker run ${DOCKER_OPTS} ${DOCKER_IMAGE} ccache --max-size=2.5G
- docker run ${DOCKER_OPTS} ${DOCKER_IMAGE} ccache --show-stats
- docker run ${DOCKER_OPTS} ${DOCKER_IMAGE} make -j 2
- docker run ${DOCKER_OPTS} ${DOCKER_IMAGE} ccache --show-stats
- docker run ${DOCKER_OPTS} ${DOCKER_IMAGE} ./test-suite/quantlib-test-suite --log_level=message -- --faster
- echo "#include <ql/quantlib.hpp>" > test1.cpp && echo "int main() { return 0; }" >> test1.cpp
- echo "#include <ql/quantlib.hpp>" > test2.cpp
- docker run ${DOCKER_OPTS} ${DOCKER_IMAGE} bash -c "make install && ${CACHEDCXX} ${CXXFLAGS} test1.cpp test2.cpp -lQuantLib"