Fix rsa -check option
[openssl.git] / .travis.yml
1 dist: trusty
2 sudo: required
3
4 language: c
5 cache: ccache
6
7 before_install:
8     - if [ -n "$COVERALLS" ]; then
9           pip install --user cpp-coveralls;
10       fi;
11
12 addons:
13     apt:
14         packages:
15             - ccache
16
17 os:
18     - linux
19
20 compiler:
21     - clang
22     - gcc
23
24 env:
25     - CONFIG_OPTS="" DESTDIR="_install"
26     - CONFIG_OPTS="--debug no-shared enable-crypto-mdebug enable-rc5 enable-md2"
27     - CONFIG_OPTS="no-pic --strict-warnings" BUILDONLY="yes"
28     - CONFIG_OPTS="no-engine no-shared --strict-warnings" BUILDONLY="yes"
29     - CONFIG_OPTS="no-stdio --strict-warnings" BUILDONLY="yes"
30     - CONFIG_OPTS="no-ec" BUILDONLY="yes"
31
32 matrix:
33     include:
34         - os: linux
35           compiler: clang-3.9
36           env: CONFIG_OPTS="--strict-warnings no-deprecated" BUILDONLY="yes"
37         - os: linux
38           compiler: gcc
39           env: CONFIG_OPTS="--debug --coverage no-asm enable-rc5 enable-md2 enable-ec_nistp_64_gcc_128 enable-ssl3 enable-ssl3-method enable-weak-ssl-ciphers" COVERALLS="yes"
40         - os: linux
41           compiler: clang-3.9
42           env: CONFIG_OPTS="enable-asan"
43         - os: linux
44           compiler: clang-3.9
45           env: CONFIG_OPTS="enable-msan"
46         - os: linux
47           compiler: clang-3.9
48           env: CONFIG_OPTS="no-asm enable-ubsan enable-rc5 enable-md2 enable-ssl3 enable-ssl3-method -fno-sanitize=alignment"
49         - os: linux
50           compiler: clang-3.9
51           env: CONFIG_OPTS="no-asm enable-asan enable-rc5 enable-md2"
52         - os: linux
53           compiler: clang-3.9
54           env: CONFIG_OPTS="no-stdio"
55         - os: linux
56           addons:
57               apt:
58                   packages:
59                       - gcc-5
60                   sources:
61                       - ubuntu-toolchain-r-test
62           compiler: gcc-5
63           env: CONFIG_OPTS="no-asm enable-ubsan enable-rc5 enable-md2 -DPEDANTIC"
64         - os: linux
65           addons:
66               apt:
67                   packages:
68                       - binutils-mingw-w64
69                       - gcc-mingw-w64
70           compiler: i686-w64-mingw32-gcc
71           env: CONFIG_OPTS="no-pic" TESTS="-test_fuzz"
72         - os: linux
73           addons:
74               apt:
75                   packages:
76                       - binutils-mingw-w64
77                       - gcc-mingw-w64
78           compiler: i686-w64-mingw32-gcc
79           env: CONFIG_OPTS="no-stdio" BUILDONLY="yes"
80         - os: linux
81           addons:
82               apt:
83                   packages:
84                       - binutils-mingw-w64
85                       - gcc-mingw-w64
86           compiler: x86_64-w64-mingw32-gcc
87           env: CONFIG_OPTS="no-pic" TESTS="-test_fuzz"
88         - os: linux
89           addons:
90               apt:
91                   packages:
92                       - binutils-mingw-w64
93                       - gcc-mingw-w64
94           compiler: x86_64-w64-mingw32-gcc
95           env: CONFIG_OPTS="no-stdio" BUILDONLY="yes"
96     exclude:
97         - os: linux
98           compiler: clang
99         - os: osx
100           compiler: gcc
101
102 before_script:
103     - if [ -n "$DESTDIR" ]; then
104           sh .travis-create-release.sh $TRAVIS_OS_NAME;
105           tar -xvzf _srcdist.tar.gz;
106           mkdir _build;
107           cd _build;
108           srcdir=../_srcdist;
109           top=..;
110       else
111           srcdir=.;
112           top=.;
113       fi
114     - if [ "$CC" == i686-w64-mingw32-gcc ]; then
115           export CROSS_COMPILE=${CC%%gcc}; unset CC;
116           $srcdir/Configure mingw $CONFIG_OPTS -Wno-pedantic-ms-format;
117       elif [ "$CC" == x86_64-w64-mingw32-gcc ]; then
118           export CROSS_COMPILE=${CC%%gcc}; unset CC;
119           $srcdir/Configure mingw64 $CONFIG_OPTS -Wno-pedantic-ms-format;
120       else
121           if [ "$CC" == clang-3.9 ]; then
122               sudo cp .travis-apt-pin.preferences /etc/apt/preferences.d/no-ubuntu-clang;
123               curl -sSL "http://apt.llvm.org/llvm-snapshot.gpg.key" | sudo -E apt-key add -;
124               echo "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.9 main" | sudo tee -a /etc/apt/sources.list > /dev/null;
125               sudo -E apt-add-repository -y "ppa:ubuntu-toolchain-r/test";
126               sudo -E apt-get -yq update;
127               sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install clang-3.9;
128           elif which ccache >/dev/null; then
129               CC="ccache $CC";
130           fi;
131           $srcdir/config -v $CONFIG_OPTS;
132       fi
133     - if [ -z "$BUILDONLY" ]; then
134           if [ -n "$CROSS_COMPILE" ]; then
135               if [ "$TRAVIS_OS_NAME" == "linux" ]; then
136                   sudo dpkg --add-architecture i386;
137                   sudo apt-get update;
138               fi;
139           fi;
140       fi
141     - cd $top
142
143 script:
144     - if [ -z "$BUILDONLY" ]; then
145           make="make -s";
146       else
147           make="make";
148       fi
149     - if [ -n "$DESTDIR" ]; then
150           cd _build;
151           top=..;
152       else
153           top=.;
154       fi
155     - if $make update; then
156           echo -e '+\057 MAKE UPDATE OK';
157       else
158           echo -e '+\057 MAKE UPDATE FAILED'; false;
159       fi;
160       git diff --quiet
161     - if $make ; then
162           echo -e '+\057\057 MAKE OK';
163       else
164           echo -e '+\057\057 MAKE FAILED'; false;
165       fi;
166     - if [ -z "$BUILDONLY" ]; then
167           if [ -n "$CROSS_COMPILE" ]; then
168               sudo apt-get -yq install wine;
169               export EXE_SHELL="wine" WINEPREFIX=`pwd`;
170           fi;
171           HARNESS_VERBOSE=yes make test;
172       else
173           if $make build_tests; then
174               echo -e '+\057\057\075 MAKE BUILD_TESTS OK';
175           else
176               echo -e '+\057\057\075 MAKE BUILD_TESTS FAILEd'; false;
177           fi;
178       fi
179     - if [ -n "$DESTDIR" ]; then
180           mkdir "../$DESTDIR";
181           if $make install install_docs DESTDIR="../$DESTDIR"; then
182               echo -e '+\057\057\057\057 MAKE INSTALL_DOCS OK';
183           else
184               echo -e '+\057\057\057\057 MAKE INSTALL_DOCS FAILED'; false;
185           fi;
186       fi
187     - cd $top
188
189 after_success:
190     - if [ -n "$COVERALLS" ]; then
191           coveralls -b . --gcov-options '\-lp';
192       fi;
193
194 notifications:
195     email:
196         secure: "xeGNgWO7aoaDgRvcZubposqMsj36aU8c6F0oHfw+rUqltCQ14IgYCUwzocmR2O+Pa7B3Cx5VjMfBFHbQaajZsfod8vu7g+aGq/zkjwbhsr/SR4dljJjFJXLGZjIalm9KgP6KInmVDuINfCqP+MHIY5lZkNI7DMcyHDhVc5nSKvCXV7xTDNgmstvh8rB/z51WfHDqGqfBtiuK5FDNxmvYK8OFJ5W94Lu9LDlizcxwK3GAj7arOui7Z5w8bQ6p4seUE3IvJL1Zbj0pZHxvNb6Zeb2Pn8QF1qLlN8YmBktD4aiw0ce4wYRiL87uLgcOxZY7SVXtv2XYFIYWapU/FKjCqa6vK93V/H9eZWEIYNMKnN3wXm2beqVdnKek3OeGJ8v0y7MbSfuLfRtBqbTSNYnpU1Zuo4MQAvHvEPuwCAYkYQajOSRplMH5sULFKptuVqNtOMfjL8jHb8AEoL1acYIk43ydxeYrzzas4fqgCDJ52573/u0RNdF1lkQBLkuM365OB8VRqtpnoxcdEIY/qBc/8TzZ24fxyrs5qdHFcxGSgpN2EP6cJMqpvkemnCNSdhxUqfzm22N7a3O8+4LFSBGOnHto/PwdsvF/01yGYL0LoZTnoO1i6x7AMJPBh+eyDU0ZjGhj/msjmqeb9C8vRqQ+1WjHrIS1iqCD0Czib8tUPD4="