5
5
global :
6
6
- WINDOWS=0
7
7
- SITECUSTOMIZELIBPATH=0
8
+ - PYPY=0
8
9
10
+ dist : trusty
9
11
matrix :
10
12
include :
11
13
- os : linux
12
- python : 3.5
14
+ # BUILD 1 -------------------
15
+ python : 3.6
13
16
env : WINDOWS=1
14
17
- os : linux
18
+ # BUILD 2 -------------------
15
19
python : 2.7
16
20
env :
21
+ # gcc 4.8.4 with c++98
17
22
- XML_GENERATOR="castxml"
18
23
- SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python2.7/lib/python2.7/sitecustomize.py"
19
24
- os : linux
25
+ # BUILD 3 -------------------
20
26
python : 3.3
21
27
env :
28
+ # gcc 4.8.4 with c++98
22
29
- XML_GENERATOR="castxml"
23
30
- SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.3/lib/python3.3/sitecustomize.py"
24
31
- os : linux
32
+ # BUILD 4 -------------------
25
33
python : 3.4
26
34
env :
35
+ # gcc 4.8.4 with c++98
27
36
- XML_GENERATOR="castxml"
28
37
- SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.4/lib/python3.4/sitecustomize.py"
29
38
- os : linux
39
+ # BUILD 5 -------------------
30
40
python : 3.5
31
41
env :
42
+ # gcc 4.8.4 with c++98
32
43
- XML_GENERATOR="castxml"
33
44
- SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.5/lib/python3.5/sitecustomize.py"
34
45
- os : linux
46
+ # BUILD 6 -------------------
35
47
python : 3.6
36
48
env :
49
+ # gcc 4.8.4 with c++98
37
50
- XML_GENERATOR="castxml"
38
51
- SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.6/lib/python3.6/sitecustomize.py"
39
52
- os : linux
40
- python : " pypy"
53
+ # BUILD 7 -------------------
54
+ python : pypy
41
55
env :
56
+ # gcc 4.8.4 with c++98
42
57
- XML_GENERATOR="castxml"
43
58
- SITECUSTOMIZELIBPATH="/home/travis/virtualenv/pypy/lib-python/2.7/sitecustomize.py"
59
+ - PYPY=1
44
60
- os : linux
45
- python : " pypy3.3-5.2-alpha1"
61
+ # BUILD 8 -------------------
62
+ python : pypy3
46
63
env :
64
+ # gcc 4.8.4 with c++98
47
65
- XML_GENERATOR="castxml"
48
66
- SITECUSTOMIZELIBPATH="/home/travis/virtualenv/pypy3/lib-python/3/sitecustomize.py"
67
+ - PYPY=1
49
68
- os : linux
50
- python : 3.5
69
+ # BUILD 9 -------------------
70
+ python : 3.6
51
71
env :
52
- - XML_GENERATOR="castxml"
53
- - COMPILER=g++-5
54
- - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.5/lib/python3.5/sitecustomize.py"
72
+ # gcc 5.4.1 with c++98
73
+ - XML_GENERATOR="castxml"
74
+ - COMPILER=g++-5
75
+ - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.6/lib/python3.6/sitecustomize.py"
55
76
addons :
56
77
apt :
57
78
sources :
58
79
- ubuntu-toolchain-r-test
59
80
packages :
60
- # gcc 5.2.1
61
81
- g++-5
62
82
- os : linux
63
- dist : trusty
64
- sudo : required
65
- python : 3.5
83
+ # BUILD 10 ------------------
84
+ python : 3.6
66
85
env :
67
86
- XML_GENERATOR="castxml"
68
- - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.5 /lib/python3.5 /sitecustomize.py"
87
+ - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.6 /lib/python3.6 /sitecustomize.py"
69
88
- os : linux
70
- dist : trusty
71
- sudo : required
72
- python : 3.5
89
+ # BUILD 11 ------------------
90
+ python : 3.6
73
91
env :
74
- # gcc 4.8.2 with c++03
75
- - XML_GENERATOR="castxml"
76
- - CPPSTD="-std=c++03"
77
- - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.5 /lib/python3.5 /sitecustomize.py"
92
+ # gcc 4.8.4 with c++03
93
+ - XML_GENERATOR="castxml"
94
+ - CPPSTD="-std=c++03"
95
+ - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.6 /lib/python3.6 /sitecustomize.py"
78
96
- os : linux
79
- dist : trusty
80
- sudo : required
81
- python : 3.5
97
+ # BUILD 12 ------------------
98
+ python : 3.6
82
99
env :
83
- # gcc 4.8.2 with c++11
84
- - XML_GENERATOR="castxml"
85
- - CPPSTD="-std=c++11"
86
- - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.5 /lib/python3.5 /sitecustomize.py"
100
+ # gcc 4.8.4 with c++11
101
+ - XML_GENERATOR="castxml"
102
+ - CPPSTD="-std=c++11"
103
+ - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.6 /lib/python3.6 /sitecustomize.py"
87
104
- os : linux
88
- dist : trusty
89
- sudo : required
90
- python : 3.5
105
+ # BUILD 13 ------------------
106
+ python : 3.6
91
107
env :
92
- - XML_GENERATOR="castxml"
93
- - COMPILER=g++-5
94
- - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.5/lib/python3.5/sitecustomize.py"
108
+ # gcc 5.4.1 with c++11
109
+ - XML_GENERATOR="castxml"
110
+ - COMPILER=g++-5
111
+ - CPPSTD="-std=c++11"
112
+ - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.6/lib/python3.6/sitecustomize.py"
95
113
addons :
96
114
apt :
97
115
sources :
98
116
- ubuntu-toolchain-r-test
99
117
packages :
100
- # gcc 5.3.0
101
118
- g++-5
102
119
- os : linux
103
- dist : trusty
104
- sudo : required
105
- python : 3.5
120
+ # BUILD 14 ------------------
121
+ python : 3.6
106
122
env :
107
- - XML_GENERATOR="castxml"
108
- - COMPILER=g++-5
109
- - CPPSTD="-std=c++14"
110
- - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.5/lib/python3.5/sitecustomize.py"
123
+ # gcc 5.4.1 with c++14
124
+ - XML_GENERATOR="castxml"
125
+ - COMPILER=g++-5
126
+ - CPPSTD="-std=c++14"
127
+ - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.6/lib/python3.6/sitecustomize.py"
111
128
addons :
112
129
apt :
113
130
sources :
114
131
- ubuntu-toolchain-r-test
115
132
packages :
116
- # gcc 5.3.0
117
133
- g++-5
118
134
- os : osx
135
+ # BUILD 15 ------------------
119
136
osx_image : xcode7.3
120
137
language : generic
121
138
env :
122
139
- XML_GENERATOR="castxml"
123
140
- TRAVIS_PYTHON_VERSION="2"
124
141
- SITECUSTOMIZELIBPATH="/usr/local/lib/python2.7/site-packages/sitecustomize.py"
125
142
- os : osx
143
+ # BUILD 16 ------------------
126
144
osx_image : xcode7.3
127
145
language : generic
128
146
env :
129
147
- XML_GENERATOR="castxml"
130
148
- TRAVIS_PYTHON_VERSION="3"
131
149
- SITECUSTOMIZELIBPATH="/usr/local/lib/python3.6/site-packages/sitecustomize.py"
132
150
- os : linux
133
- dist : trusty
134
- sudo : required
135
- python : 3.5
151
+ # BUILD 17 ------------------
152
+ python : 3.6
136
153
env :
137
154
- XML_GENERATOR="castxml-18032017"
138
- - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.5 /lib/python3.5 /sitecustomize.py"
155
+ - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.6 /lib/python3.6 /sitecustomize.py"
139
156
- os : linux
140
- dist : trusty
141
- sudo : required
142
- python : 3.5
157
+ # BUILD 18 ------------------
158
+ python : 3.6
143
159
env :
144
160
- XML_GENERATOR="castxml-18032017"
145
161
- CASTXML_EPIC="1"
146
- - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.5 /lib/python3.5 /sitecustomize.py"
162
+ - SITECUSTOMIZELIBPATH="/home/travis/virtualenv/python3.6 /lib/python3.6 /sitecustomize.py"
147
163
148
164
149
165
before_install :
150
- # OS X
166
+ # OS X
151
167
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then travis_retry brew update; fi
152
168
- if [[ "$TRAVIS_OS_NAME" == "osx" ]] && [[ $TRAVIS_PYTHON_VERSION == 3 ]]; then brew install python3; fi
153
169
- if [[ "$TRAVIS_OS_NAME" == "osx" ]] && [[ $TRAVIS_PYTHON_VERSION == 3 ]]; then sudo ln -sf /usr/local/bin/pip3 /usr/local/bin/pip; fi
@@ -179,27 +195,22 @@ before_install:
179
195
export PATH=$PATH:~/castxml/bin/;
180
196
fi
181
197
182
- # Patch the c++ version to test on the fly
183
198
- if [[ $CPPSTD == "-std=c++03" ]]; then
184
199
mv unittests/configs/travis_std03.cfg unittests/xml_generator.cfg;
185
200
fi
186
201
187
- # Patch the c++ version to test on the fly
188
202
- if [[ $CPPSTD == "-std=c++11" ]]; then
189
203
mv unittests/configs/travis_std11.cfg unittests/xml_generator.cfg;
190
204
fi
191
205
192
- # Patch the c++ version to test on the fly
193
206
- if [[ $CPPSTD == "-std=c++14" ]]; then
194
207
mv unittests/configs/travis_std14.cfg unittests/xml_generator.cfg;
195
208
fi
196
209
197
- # Patch the compiler path on the fly for gcc5 testing
198
210
- if [[ "$COMPILER" == "g++-5" ]] && [[ $XML_GENERATOR == "castxml" ]]; then
199
211
mv unittests/configs/travis_gcc5.cfg unittests/xml_generator.cfg;
200
212
fi
201
213
202
- # Patch the c++ version to test on the fly
203
214
- if [[ $CASTXML_EPIC == "1" ]]; then
204
215
mv unittests/configs/castxml_epic1.cfg unittests/xml_generator.cfg;
205
216
fi
@@ -219,6 +230,7 @@ script:
219
230
- echo $TRAVIS_OS_NAME
220
231
- echo $WINDOWS
221
232
- python --version
233
+ - c++ --version
222
234
223
235
# Modify sitecustomize.py file for coverage. Allows to cover files run in a subprocess.
224
236
- if [ $WINDOWS == 0 ]; then
@@ -229,11 +241,18 @@ script:
229
241
# Install pygccxml, run the tests with coverage and
230
242
# combine multiple .coverage files
231
243
# We have multiple coverage files because some scripts run in a subprocess
232
- - if [ $WINDOWS == 0 ]; then
244
+ - if [[ $WINDOWS == 0 ]] && [[ $PYPY == 0 ] ]; then
233
245
python setup.py install || travis_terminate 1;
234
246
coverage run -m unittests.test_all || travis_terminate 1;
235
247
coverage combine || travis_terminate 1;
236
248
fi
249
+ # For pypy, do not run coverage, as this is extremely slow
250
+ # https://bitbucket.org/pypy/pypy/issues/1871/10x-slower-than-cpython-under-coverage
251
+ # This is fixed with pypy 4.0, which is not the pypy provided by Travis ...
252
+ - if [[ $WINDOWS == 0 ]] && [[ $PYPY != 0 ]]; then
253
+ python setup.py install || travis_terminate 1;
254
+ python -m unittests.test_all || travis_terminate 1;
255
+ fi
237
256
# For the "empty" windows build, fetch the coverage results from appveyor
238
257
- if [ $WINDOWS == 1 ]; then
239
258
appveyor-artifacts -m --owner-name=iMichka --verbose download || travis_terminate 1;
0 commit comments