]> git.ipfire.org Git - thirdparty/openssl.git/blob - .travis.yml
Try to work around ubuntu gcc-5 ubsan build failure
[thirdparty/openssl.git] / .travis.yml
1 dist: trusty
2 sudo: required
3
4 osx_image: xcode9.3
5
6 language: c
7 cache: ccache
8 git:
9 submodules: false
10
11 before_install:
12 - if [ -n "$COVERALLS" ]; then
13 pip install --user cpp-coveralls;
14 fi;
15 - if expr "$CONFIG_OPTS" ":" ".*enable-external-tests" > /dev/null; then
16 git submodule update --init --recursive;
17 fi;
18
19 os:
20 - linux
21 - osx
22
23 compiler:
24 - clang
25 - gcc
26
27 env:
28 - CONFIG_OPTS="" DESTDIR="_install"
29 - CONFIG_OPTS="no-asm -Werror --debug no-afalgeng no-shared enable-crypto-mdebug enable-rc5 enable-md2"
30 - CONFIG_OPTS="no-asm no-makedepend --strict-warnings" BUILDONLY="yes" CHECKDOCS="yes" GENERATE="yes"
31
32 matrix:
33 include:
34 - os: linux-ppc64le
35 sudo: false
36 compiler: clang
37 env: CONFIG_OPTS="--strict-warnings -D__NO_STRING_INLINES"
38 - os: linux
39 addons:
40 apt:
41 packages:
42 - gcc-5
43 - g++-5
44 sources:
45 - ubuntu-toolchain-r-test
46 compiler: gcc-5
47 env: CONFIG_OPTS="--strict-warnings" COMMENT="Move to the BORINGTEST build when interoperable"
48 - os: linux
49 compiler: clang
50 env: CONFIG_OPTS="--strict-warnings -D__NO_STRING_INLINES no-deprecated" BUILDONLY="yes"
51 - os: linux
52 addons:
53 apt:
54 packages:
55 - binutils-mingw-w64
56 - gcc-mingw-w64
57 compiler: i686-w64-mingw32-gcc
58 env: CONFIG_OPTS="no-stdio" BUILDONLY="yes"
59 # Uncomment if there is reason to believe that PPC-specific problem
60 # can be diagnosed with this possibly >30 mins sanitizer build...
61 #- os: linux-ppc64le
62 # sudo: false
63 # compiler: gcc
64 # env: EXTENDED_TEST="yes" CONFIG_OPTS="no-asm enable-asan enable-ubsan no-shared -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -D__NO_STRING_INLINES"
65 - os: linux
66 addons:
67 apt:
68 packages:
69 - gcc-5
70 - g++-5
71 - golang-1.6
72 sources:
73 - ubuntu-toolchain-r-test
74 compiler: gcc-5
75 env: EXTENDED_TEST="yes" CONFIG_OPTS="--debug --coverage no-asm enable-rc5 enable-md2 enable-ec_nistp_64_gcc_128 enable-ssl3 enable-ssl3-method enable-nextprotoneg enable-weak-ssl-ciphers no-shared -DPEDANTIC -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION" COVERALLS="yes" BORINGSSL_TESTS="yes" CXX="g++-5"
76 - os: linux
77 addons:
78 apt:
79 packages:
80 - gcc-5
81 - g++-5
82 - golang-1.6
83 sources:
84 - ubuntu-toolchain-r-test
85 compiler: gcc-5
86 env: EXTENDED_TEST="yes" CONFIG_OPTS="--debug enable-ssl3 enable-ssl3-method enable-weak-ssl-ciphers enable-external-tests" BORINGSSL_TESTS="yes" CXX="g++-5" TESTS=95
87 - os: linux
88 compiler: clang
89 env: EXTENDED_TEST="yes" CONFIG_OPTS="enable-msan -D__NO_STRING_INLINES -Wno-unused-command-line-argument"
90 - os: linux
91 compiler: clang
92 env: EXTENDED_TEST="yes" CONFIG_OPTS="no-asm enable-ubsan enable-rc5 enable-md2 enable-ssl3 enable-ssl3-method enable-nextprotoneg no-shared -fno-sanitize=alignment -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -D__NO_STRING_INLINES -Wno-unused-command-line-argument"
93 - os: linux
94 compiler: clang
95 env: EXTENDED_TEST="yes" CONFIG_OPTS="no-asm enable-asan enable-rc5 enable-md2 no-shared -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -D__NO_STRING_INLINES -Wno-unused-command-line-argument"
96 - os: linux
97 addons:
98 apt:
99 packages:
100 - gcc-5
101 - g++-5
102 sources:
103 - ubuntu-toolchain-r-test
104 compiler: gcc-5
105 env: UBUNTU_GCC_HACK="yes" EXTENDED_TEST="yes" CONFIG_OPTS="--debug no-asm enable-ubsan enable-rc5 enable-md2 -DPEDANTIC" OPENSSL_TEST_RAND_ORDER=0
106 - os: linux
107 addons:
108 apt:
109 packages:
110 - binutils-mingw-w64
111 - gcc-mingw-w64
112 compiler: i686-w64-mingw32-gcc
113 env: EXTENDED_TEST="yes" CONFIG_OPTS="no-pic"
114 - os: linux
115 addons:
116 apt:
117 packages:
118 - binutils-mingw-w64
119 - gcc-mingw-w64
120 compiler: x86_64-w64-mingw32-gcc
121 env: EXTENDED_TEST="yes" CONFIG_OPTS="no-pic"
122 exclude:
123 - os: linux
124 compiler: clang
125 - os: osx
126 compiler: gcc
127
128 before_script:
129 - env
130 - if [ "$TRAVIS_PULL_REQUEST" != "false" -a -n "$EXTENDED_TEST" ]; then
131 (git log -1 $TRAVIS_COMMIT_RANGE | grep '\[extended tests\]' > /dev/null) || exit 0;
132 fi
133 - if [ -n "$DESTDIR" ]; then
134 sh .travis-create-release.sh $TRAVIS_OS_NAME;
135 tar -xzf _srcdist.tar.gz;
136 mkdir _build;
137 cd _build;
138 srcdir=../_srcdist;
139 top=..;
140 else
141 srcdir=.;
142 top=.;
143 fi
144 - if [ -n "$UBUNTU_GCC_HACK" ]; then
145 $CC -dumpspecs | sed "s/--push-state//g; s/--pop-state/--as-needed/g" > gcc-specs.txt;
146 CC="$CC -specs=gcc-specs.txt";
147 fi
148 - if [ "$CC" = i686-w64-mingw32-gcc ]; then
149 export CROSS_COMPILE=${CC%%gcc}; unset CC;
150 $srcdir/Configure mingw $CONFIG_OPTS -Wno-pedantic-ms-format;
151 elif [ "$CC" = x86_64-w64-mingw32-gcc ]; then
152 export CROSS_COMPILE=${CC%%gcc}; unset CC;
153 $srcdir/Configure mingw64 $CONFIG_OPTS -Wno-pedantic-ms-format;
154 else
155 if [ "$CC" = clang-3.9 ]; then
156 sudo cp .travis-apt-pin.preferences /etc/apt/preferences.d/no-ubuntu-clang;
157 curl -sSL "http://apt.llvm.org/llvm-snapshot.gpg.key" | sudo -E apt-key add -;
158 echo "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.9 main" | sudo tee -a /etc/apt/sources.list > /dev/null;
159 sudo -E apt-add-repository -y "ppa:ubuntu-toolchain-r/test";
160 sudo -E apt-get -yq update;
161 sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install clang-3.9;
162 elif which ccache >/dev/null; then
163 CC="ccache $CC";
164 fi;
165 $srcdir/config -v $CONFIG_OPTS;
166 fi
167 - ./configdata.pm --dump
168 - cd $top
169
170 script:
171 - if [ -z "$BUILDONLY" ]; then
172 make="make -s";
173 else
174 make="make";
175 fi
176 - if [ -n "$GENERATE" ]; then
177 make2="$make PERL=no-perl";
178 else
179 make2="$make";
180 fi
181 - top=${PWD}
182 - if [ -n "$DESTDIR" ]; then
183 cd _build;
184 fi
185 - if $make update; then
186 echo -e '+\057 MAKE UPDATE OK';
187 else
188 echo -e '+\057 MAKE UPDATE FAILED'; false;
189 fi;
190 git diff --exit-code
191 - if [ -n "$CHECKDOCS" ]; then
192 if $make doc-nits; then
193 echo -e '+\057\057 MAKE DOC-NITS OK';
194 else
195 echo -e '+\057\057 MAKE DOC-NITS FAILED'; false;
196 fi;
197 fi
198 - if [ -n "$GENERATE" ]; then
199 if $make build_all_generated; then
200 echo -e '+\057\057\057 MAKE BUILD_ALL_GENERATED OK';
201 else
202 echo -e '+\057\057\057 MAKE BUILD_ALL_GENERATED FAILED'; false;
203 fi;
204 fi
205 - if $make2; then
206 echo -e '+\057\057\057\057 MAKE OK';
207 else
208 echo -e '+\057\057\057\057 MAKE FAILED'; false;
209 fi;
210 - if [ -z "$BUILDONLY" ]; then
211 if [ -n "$CROSS_COMPILE" ]; then
212 sudo dpkg --add-architecture i386;
213 sudo apt-get update;
214 sudo apt-get -yq --no-install-suggests --no-install-recommends --force-yes install wine;
215 export EXE_SHELL="wine" WINEPREFIX=`pwd`;
216 fi;
217 if [ -e krb5/src ]; then
218 sudo apt-get -yq install bison dejagnu gettext keyutils ldap-utils libldap2-dev libkeyutils-dev python-cjson python-paste python-pyrad slapd tcl-dev tcsh;
219 fi;
220 if HARNESS_VERBOSE=yes BORING_RUNNER_DIR=$top/boringssl/ssl/test/runner make test; then
221 echo -e '+\057\057\057\057\057 MAKE TEST OK';
222 else
223 echo -e '+\057\057\057\057\057 MAKE TEST FAILED'; false;
224 fi;
225 else
226 if $make build_tests >~/build.log 2>&1; then
227 echo -e '+\057\057\057\057\057\057 MAKE BUILD_TESTS OK';
228 else
229 echo -e '+\057\057\057\057\057\057 MAKE BUILD_TESTS FAILED';
230 cat ~/build.log
231 false;
232 fi;
233 fi
234 - if [ -n "$DESTDIR" ]; then
235 mkdir "$top/$DESTDIR";
236 if $make install DESTDIR="$top/$DESTDIR" >~/install.log 2>&1 ; then
237 echo -e '+\057\057\057\057\057\057\057 MAKE INSTALL OK';
238 else
239 echo -e '+\057\057\057\057\057\057\057 MAKE INSTALL FAILED';
240 cat ~/install.log;
241 false;
242 fi;
243 fi
244 - cd $top
245
246 after_success:
247 - if [ -n "$COVERALLS" ]; then
248 coveralls -b . --gcov gcov-5 --gcov-options '\-lpbc';
249 fi;
250
251 notifications:
252 email:
253 secure: "xeGNgWO7aoaDgRvcZubposqMsj36aU8c6F0oHfw+rUqltCQ14IgYCUwzocmR2O+Pa7B3Cx5VjMfBFHbQaajZsfod8vu7g+aGq/zkjwbhsr/SR4dljJjFJXLGZjIalm9KgP6KInmVDuINfCqP+MHIY5lZkNI7DMcyHDhVc5nSKvCXV7xTDNgmstvh8rB/z51WfHDqGqfBtiuK5FDNxmvYK8OFJ5W94Lu9LDlizcxwK3GAj7arOui7Z5w8bQ6p4seUE3IvJL1Zbj0pZHxvNb6Zeb2Pn8QF1qLlN8YmBktD4aiw0ce4wYRiL87uLgcOxZY7SVXtv2XYFIYWapU/FKjCqa6vK93V/H9eZWEIYNMKnN3wXm2beqVdnKek3OeGJ8v0y7MbSfuLfRtBqbTSNYnpU1Zuo4MQAvHvEPuwCAYkYQajOSRplMH5sULFKptuVqNtOMfjL8jHb8AEoL1acYIk43ydxeYrzzas4fqgCDJ52573/u0RNdF1lkQBLkuM365OB8VRqtpnoxcdEIY/qBc/8TzZ24fxyrs5qdHFcxGSgpN2EP6cJMqpvkemnCNSdhxUqfzm22N7a3O8+4LFSBGOnHto/PwdsvF/01yGYL0LoZTnoO1i6x7AMJPBh+eyDU0ZjGhj/msjmqeb9C8vRqQ+1WjHrIS1iqCD0Czib8tUPD4="