Fix no-ec2m in ec_curve.c (1.1.0)
[oweals/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     - CONFIG_OPTS="no-asm --strict-warnings" BUILDONLY="yes" CHECKDOCS="yes"
32
33 matrix:
34     include:
35         - os: linux
36           compiler: clang-3.9
37           env: CONFIG_OPTS="--strict-warnings no-deprecated" BUILDONLY="yes"
38         - os: linux
39           compiler: gcc
40           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"
41         - os: linux
42           compiler: clang-3.9
43           env: CONFIG_OPTS="enable-asan"
44         - os: linux
45           compiler: clang-3.9
46           env: CONFIG_OPTS="enable-msan"
47         - os: linux
48           compiler: clang-3.9
49           env: CONFIG_OPTS="no-asm enable-ubsan enable-rc5 enable-md2 enable-ssl3 enable-ssl3-method -fno-sanitize=alignment"
50         - os: linux
51           compiler: clang-3.9
52           env: CONFIG_OPTS="no-asm enable-asan enable-rc5 enable-md2"
53         - os: linux
54           compiler: clang-3.9
55           env: CONFIG_OPTS="no-stdio"
56         - os: linux
57           addons:
58               apt:
59                   packages:
60                       - gcc-5
61                   sources:
62                       - ubuntu-toolchain-r-test
63           compiler: gcc-5
64           env: UBUNTU_GCC_HACK="yes" CONFIG_OPTS="no-asm enable-ubsan enable-rc5 enable-md2 -DPEDANTIC"
65         - os: linux
66           addons:
67               apt:
68                   packages:
69                       - binutils-mingw-w64
70                       - gcc-mingw-w64
71           compiler: i686-w64-mingw32-gcc
72           env: CONFIG_OPTS="no-pic"
73         - os: linux
74           addons:
75               apt:
76                   packages:
77                       - binutils-mingw-w64
78                       - gcc-mingw-w64
79           compiler: i686-w64-mingw32-gcc
80           env: CONFIG_OPTS="no-stdio" BUILDONLY="yes"
81         - os: linux
82           addons:
83               apt:
84                   packages:
85                       - binutils-mingw-w64
86                       - gcc-mingw-w64
87           compiler: x86_64-w64-mingw32-gcc
88           env: CONFIG_OPTS="no-pic"
89         - os: linux
90           addons:
91               apt:
92                   packages:
93                       - binutils-mingw-w64
94                       - gcc-mingw-w64
95           compiler: x86_64-w64-mingw32-gcc
96           env: CONFIG_OPTS="no-stdio" BUILDONLY="yes"
97     exclude:
98         - os: linux
99           compiler: clang
100         - os: osx
101           compiler: gcc
102
103 before_script:
104     - if [ -n "$DESTDIR" ]; then
105           sh .travis-create-release.sh $TRAVIS_OS_NAME;
106           tar -xvzf _srcdist.tar.gz;
107           mkdir _build;
108           cd _build;
109           srcdir=../_srcdist;
110           top=..;
111       else
112           srcdir=.;
113           top=.;
114       fi
115     - if [ -n "$UBUNTU_GCC_HACK" ]; then
116           $CC -dumpspecs | sed "s/--push-state//g; s/--pop-state/--as-needed/g" > gcc-specs.txt;
117           CC="$CC -specs=gcc-specs.txt";
118       fi
119     - if [ "$CC" == i686-w64-mingw32-gcc ]; then
120           export CROSS_COMPILE=${CC%%gcc}; unset CC;
121           $srcdir/Configure mingw $CONFIG_OPTS -Wno-pedantic-ms-format;
122       elif [ "$CC" == x86_64-w64-mingw32-gcc ]; then
123           export CROSS_COMPILE=${CC%%gcc}; unset CC;
124           $srcdir/Configure mingw64 $CONFIG_OPTS -Wno-pedantic-ms-format;
125       else
126           if [ "$CC" == clang-3.9 ]; then
127               sudo cp .travis-apt-pin.preferences /etc/apt/preferences.d/no-ubuntu-clang;
128               curl -sSL "http://apt.llvm.org/llvm-snapshot.gpg.key" | sudo -E apt-key add -;
129               echo "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.9 main" | sudo tee -a /etc/apt/sources.list > /dev/null;
130               sudo -E apt-add-repository -y "ppa:ubuntu-toolchain-r/test";
131               sudo -E apt-get -yq update;
132               sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install clang-3.9;
133           elif which ccache >/dev/null; then
134               CC="ccache $CC";
135           fi;
136           $srcdir/config -v $CONFIG_OPTS;
137       fi
138     - if [ -z "$BUILDONLY" ]; then
139           if [ -n "$CROSS_COMPILE" ]; then
140               if [ "$TRAVIS_OS_NAME" == "linux" ]; then
141                   sudo dpkg --add-architecture i386;
142                   sudo apt-get update;
143               fi;
144           fi;
145       fi
146     - cd $top
147
148 script:
149     - if [ -z "$BUILDONLY" ]; then
150           make="make -s";
151       else
152           make="make";
153       fi
154     - if [ -n "$DESTDIR" ]; then
155           cd _build;
156           top=..;
157       else
158           top=.;
159       fi
160     - if $make update; then
161           echo -e '+\057 MAKE UPDATE OK';
162       else
163           echo -e '+\057 MAKE UPDATE FAILED'; false;
164       fi;
165       git diff --exit-code
166     - if [ -n "$CHECKDOCS" ]; then
167           if $make doc-nits; then
168               echo -e '+\057\057 MAKE DOC-NITS OK';
169           else
170               echo -e '+\057\057 MAKE DOC-NITS FAILED'; false;
171           fi;
172       fi
173     - if $make ; then
174           echo -e '+\057\057\057 MAKE OK';
175       else
176           echo -e '+\057\057\057 MAKE FAILED'; false;
177       fi;
178     - if [ -z "$BUILDONLY" ]; then
179           if [ -n "$CROSS_COMPILE" ]; then
180               sudo apt-get -yq install wine;
181               export EXE_SHELL="wine" WINEPREFIX=`pwd`;
182           fi;
183           HARNESS_VERBOSE=yes make test;
184       else
185           if $make build_tests; then
186               echo -e '+\057\057\075 MAKE BUILD_TESTS OK';
187           else
188               echo -e '+\057\057\075 MAKE BUILD_TESTS FAILEd'; false;
189           fi;
190       fi
191     - if [ -n "$DESTDIR" ]; then
192           mkdir "../$DESTDIR";
193           if $make install DESTDIR="../$DESTDIR"; then
194               echo -e '+\057\057\057\057\057 MAKE INSTALL_DOCS OK';
195           else
196               echo -e '+\057\057\057\057\057 MAKE INSTALL_DOCS FAILED'; false;
197           fi;
198       fi
199     - cd $top
200
201 after_success:
202     - if [ -n "$COVERALLS" ]; then
203           coveralls -b . --gcov-options '\-lp';
204       fi;
205
206 notifications:
207     email:
208         secure: "xeGNgWO7aoaDgRvcZubposqMsj36aU8c6F0oHfw+rUqltCQ14IgYCUwzocmR2O+Pa7B3Cx5VjMfBFHbQaajZsfod8vu7g+aGq/zkjwbhsr/SR4dljJjFJXLGZjIalm9KgP6KInmVDuINfCqP+MHIY5lZkNI7DMcyHDhVc5nSKvCXV7xTDNgmstvh8rB/z51WfHDqGqfBtiuK5FDNxmvYK8OFJ5W94Lu9LDlizcxwK3GAj7arOui7Z5w8bQ6p4seUE3IvJL1Zbj0pZHxvNb6Zeb2Pn8QF1qLlN8YmBktD4aiw0ce4wYRiL87uLgcOxZY7SVXtv2XYFIYWapU/FKjCqa6vK93V/H9eZWEIYNMKnN3wXm2beqVdnKek3OeGJ8v0y7MbSfuLfRtBqbTSNYnpU1Zuo4MQAvHvEPuwCAYkYQajOSRplMH5sULFKptuVqNtOMfjL8jHb8AEoL1acYIk43ydxeYrzzas4fqgCDJ52573/u0RNdF1lkQBLkuM365OB8VRqtpnoxcdEIY/qBc/8TzZ24fxyrs5qdHFcxGSgpN2EP6cJMqpvkemnCNSdhxUqfzm22N7a3O8+4LFSBGOnHto/PwdsvF/01yGYL0LoZTnoO1i6x7AMJPBh+eyDU0ZjGhj/msjmqeb9C8vRqQ+1WjHrIS1iqCD0Czib8tUPD4="