1
1
language : cpp
2
2
dist : trusty
3
- sudo : false
4
3
matrix :
5
4
include :
6
5
# This config does a few things:
@@ -32,7 +31,7 @@ matrix:
32
31
diff -rq $installed ./include/pybind11
33
32
- |
34
33
# Barebones build
35
- cmake -DCMAKE_BUILD_TYPE=Debug -DPYBIND11_WERROR=ON -DDOWNLOAD_CATCH=ON
34
+ cmake -DCMAKE_BUILD_TYPE=Debug -DPYBIND11_WERROR=ON -DDOWNLOAD_CATCH=ON .
36
35
make pytest -j 2
37
36
make cpptest -j 2
38
37
# The following are regular test configurations, including optional dependencies.
@@ -48,14 +47,11 @@ matrix:
48
47
apt :
49
48
sources : [deadsnakes]
50
49
packages : [python3.6-dev python3.6-venv, cmake=2.\*, cmake-data=2.\*]
51
- - sudo : true
52
- services : docker
50
+ - services : docker
53
51
env : PYTHON=2.7 CPP=14 GCC=6 CMAKE=1
54
- - sudo : true
55
- services : docker
52
+ - services : docker
56
53
env : PYTHON=3.5 CPP=14 GCC=6 DEBUG=1
57
- - sudo : true
58
- services : docker
54
+ - services : docker
59
55
env : PYTHON=3.6 CPP=17 GCC=7
60
56
- os : linux
61
57
env : PYTHON=3.6 CPP=17 CLANG=5.0
@@ -71,18 +67,17 @@ matrix:
71
67
env : PYTHON=3.7 CPP=14 CLANG DEBUG=1
72
68
# Test a PyPy 2.7 build
73
69
- os : linux
74
- env : PYPY=5.8 PYTHON=2.7 CPP=11 GCC=4.8
70
+ env : PYPY=7.1 PYTHON=2.7 CPP=11 GCC=4.8
75
71
addons :
76
72
apt :
77
73
packages : [libblas-dev, liblapack-dev, gfortran]
78
74
# Build in 32-bit mode and tests against the CMake-installed version
79
- - sudo : true
80
- services : docker
75
+ - services : docker
81
76
env : ARCH=i386 PYTHON=3.5 CPP=14 GCC=6 INSTALL=1
82
77
script :
83
78
- |
84
79
$SCRIPT_RUN_PREFIX sh -c "set -e
85
- cmake ${CMAKE_EXTRA_ARGS} -DPYBIND11_INSTALL=1 -DPYBIND11_TEST=0
80
+ cmake ${CMAKE_EXTRA_ARGS} -DPYBIND11_INSTALL=1 -DPYBIND11_TEST=0 .
86
81
make install
87
82
cp -a tests /pybind11-tests
88
83
mkdir /build-tests && cd /build-tests
@@ -130,9 +125,9 @@ before_install:
130
125
SCRIPT_RUN_PREFIX="docker exec --tty $containerid"
131
126
$SCRIPT_RUN_PREFIX sh -c 'for s in 0 15; do sleep $s; apt-get update && apt-get -qy dist-upgrade && break; done'
132
127
else
133
- if [ "$PYPY" = "5.8 " ]; then
134
- curl -fSL https://bitbucket.org/pypy/pypy/downloads/pypy2-v5.8 .0-linux64.tar.bz2 | tar xj
135
- PY_CMD=$(echo `pwd`/pypy2-v5.8 .0-linux64/bin/pypy)
128
+ if [ "$PYPY" = "7.1 " ]; then
129
+ curl -fSL https://bitbucket.org/pypy/pypy/downloads/pypy2.7-v7.1 .0-linux64.tar.bz2 | tar xj
130
+ PY_CMD=$(echo `pwd`/pypy2.7-v7.1 .0-linux64/bin/pypy)
136
131
CMAKE_EXTRA_ARGS+=" -DPYTHON_EXECUTABLE:FILEPATH=$PY_CMD"
137
132
else
138
133
PY_CMD=python$PYTHON
@@ -147,12 +142,14 @@ before_install:
147
142
if [ "$PY" = 3 ] || [ -n "$PYPY" ]; then
148
143
$PY_CMD -m ensurepip --user
149
144
fi
145
+ $PY_CMD --version
150
146
$PY_CMD -m pip install --user --upgrade pip wheel
151
147
fi
152
148
set +e
153
149
install :
154
150
- |
155
151
# Install dependencies
152
+ cmake --version
156
153
set -e
157
154
if [ -n "$DOCKER" ]; then
158
155
if [ -n "$DEBUG" ]; then
@@ -173,10 +170,7 @@ install:
173
170
git clone https://github.com/llvm-mirror/libcxx.git llvm-source/projects/libcxx -b release_50
174
171
git clone https://github.com/llvm-mirror/libcxxabi.git llvm-source/projects/libcxxabi -b release_50
175
172
mkdir llvm-build && cd llvm-build
176
- # Building llvm requires a newer cmake than is provided by the trusty container:
177
- CMAKE_VER=cmake-3.8.0-Linux-x86_64
178
- curl https://cmake.org/files/v3.8/$CMAKE_VER.tar.gz | tar xz
179
- ./$CMAKE_VER/bin/cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=~/.local ../llvm-source
173
+ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=~/.local ../llvm-source
180
174
make -j2 install-cxxabi install-cxx
181
175
cp -a include/c++/v1/*cxxabi*.h ~/.local/include/c++/v1
182
176
cd ..
@@ -205,6 +199,7 @@ script:
205
199
-DPYBIND11_CPP_STANDARD=$CPP
206
200
-DPYBIND11_WERROR=${WERROR:-ON}
207
201
-DDOWNLOAD_CATCH=${DOWNLOAD_CATCH:-ON}
202
+ .
208
203
- $SCRIPT_RUN_PREFIX make pytest -j 2
209
204
- $SCRIPT_RUN_PREFIX make cpptest -j 2
210
205
- if [ -n "$CMAKE" ]; then $SCRIPT_RUN_PREFIX make test_cmake_build; fi
0 commit comments