blob: dff2f94978a90e9e0d5272a97e92d88f1cb259dd [file] [log] [blame]
Alessandro Ghedini66c103b2015-08-20 00:12:29 +02001language: c
Richard Levittebd5fbfe2016-03-07 00:33:35 +01002cache: ccache
Alessandro Ghedini66c103b2015-08-20 00:12:29 +02003
Rich Salzdb9defd2015-09-21 19:54:36 -04004addons:
Alessandro Ghedinif3867422015-10-12 16:15:43 -04005 apt:
6 packages:
Richard Levittebd5fbfe2016-03-07 00:33:35 +01007 - ccache
Alessandro Ghedini6220acf2015-10-06 20:27:50 +02008 - clang-3.6
Alessandro Ghedinif3867422015-10-12 16:15:43 -04009 - gcc-5
Emilia Kasper56cd71b2016-03-07 12:59:40 +010010 - binutils-mingw-w64
11 - gcc-mingw-w64
12 - wine
Alessandro Ghedinif3867422015-10-12 16:15:43 -040013 sources:
Alessandro Ghedini6220acf2015-10-06 20:27:50 +020014 - llvm-toolchain-precise-3.6
Alessandro Ghedinif3867422015-10-12 16:15:43 -040015 - ubuntu-toolchain-r-test
Rich Salzdb9defd2015-09-21 19:54:36 -040016
Alessandro Ghedini66c103b2015-08-20 00:12:29 +020017os:
Rich Salzdb9defd2015-09-21 19:54:36 -040018 - linux
19 - osx
Alessandro Ghedini66c103b2015-08-20 00:12:29 +020020
21compiler:
Rich Salzdb9defd2015-09-21 19:54:36 -040022 - clang
23 - gcc
Alessandro Ghedini66c103b2015-08-20 00:12:29 +020024
25env:
Rich Salzdb9defd2015-09-21 19:54:36 -040026 - CONFIG_OPTS="shared"
Rich Salz1119ddf2016-01-28 14:26:50 -050027 - CONFIG_OPTS="--debug --strict-warnings enable-crypto-mdebug enable-rc5 enable-md2"
Emilia Kasper210efa82016-03-07 15:15:20 +010028 - CONFIG_OPTS="" BUILDONLY="yes"
Richard Levitte69633bb2016-03-08 12:06:44 +010029 - CONFIG_OPTS="--classic" BUILDONLY="yes"
30 - CONFIG_OPTS="--classic shared" BUILDONLY="yes"
Emilia Kasper210efa82016-03-07 15:15:20 +010031 - CONFIG_OPTS="no-pic" BUILDONLY="yes"
32 - CONFIG_OPTS="no-engine" BUILDONLY="yes"
Rich Salzdb9defd2015-09-21 19:54:36 -040033
34matrix:
Alessandro Ghedinif3867422015-10-12 16:15:43 -040035 include:
36 - os: linux
Alessandro Ghedini6220acf2015-10-06 20:27:50 +020037 compiler: clang-3.6
38 env: CONFIG_OPTS="-fsanitize=address"
39 - os: linux
40 compiler: clang-3.6
Emilia Kasper31356502016-03-06 21:59:53 +010041 env: CONFIG_OPTS="no-asm --strict-warnings -fno-sanitize-recover -fsanitize=address -fsanitize=undefined enable-rc5 enable-md2"
Alessandro Ghedini6220acf2015-10-06 20:27:50 +020042 - os: linux
43 compiler: gcc-5
44 env: CONFIG_OPTS="-fsanitize=address"
45 - os: linux
Alessandro Ghedinif3867422015-10-12 16:15:43 -040046 compiler: gcc-5
Emilia Kasper31356502016-03-06 21:59:53 +010047 env: CONFIG_OPTS="no-asm --strict-warnings -fno-sanitize-recover -fsanitize=address -fsanitize=undefined enable-rc5 enable-md2"
FdaSilvaYYb6a89162016-02-25 20:54:40 +010048 - os: linux
Emilia Kasper56cd71b2016-03-07 12:59:40 +010049 compiler: i686-w64-mingw32-gcc
50 env: CONFIG_OPTS="no-pic"
51 - os: linux
52 compiler: x86_64-w64-mingw32-gcc
53 env: CONFIG_OPTS="no-pic"
Rich Salzdb9defd2015-09-21 19:54:36 -040054 exclude:
Emilia Kasper210efa82016-03-07 15:15:20 +010055 - os: linux
56 compiler: clang
Alessandro Ghedini6220acf2015-10-06 20:27:50 +020057 - os: osx
Andy Polyakovdbf9a332016-02-12 11:45:44 +010058 compiler: gcc
Rich Salzdb9defd2015-09-21 19:54:36 -040059
60before_script:
Richard Levitte382af612015-12-08 12:43:05 +010061 - sh .travis-create-release.sh $TRAVIS_OS_NAME
Richard Levitte475fc3d2015-12-07 15:47:43 +010062 - tar -xvzf _srcdist.tar.gz
Richard Levittede439d42016-03-06 23:34:49 +010063 - if echo "$CONFIG_OPTS" | grep "--unified" >/dev/null; then
64 srcdir=../_srcdir;
65 mkdir _build;
66 cd _build;
Richard Levittebd5fbfe2016-03-07 00:33:35 +010067 CC="ccache $CC";
Richard Levittede439d42016-03-06 23:34:49 +010068 else
69 srcdir=.;
70 cd _srcdist;
71 fi
Rich Salzdb9defd2015-09-21 19:54:36 -040072 - if [ "$CC" == i686-w64-mingw32-gcc ]; then
73 export CROSS_COMPILE=${CC%%gcc}; unset CC;
Richard Levittede439d42016-03-06 23:34:49 +010074 $srcdir/Configure mingw $CONFIG_OPTS -Wno-pedantic-ms-format;
Rich Salzdb9defd2015-09-21 19:54:36 -040075 elif [ "$CC" == x86_64-w64-mingw32-gcc ]; then
76 export CROSS_COMPILE=${CC%%gcc}; unset CC;
Richard Levittede439d42016-03-06 23:34:49 +010077 $srcdir/Configure mingw64 $CONFIG_OPTS -Wno-pedantic-ms-format;
Rich Salzdb9defd2015-09-21 19:54:36 -040078 else
Richard Levittede439d42016-03-06 23:34:49 +010079 $srcdir/config $CONFIG_OPTS;
Rich Salzdb9defd2015-09-21 19:54:36 -040080 fi
Richard Levitte475fc3d2015-12-07 15:47:43 +010081 - cd ..
Alessandro Ghedini66c103b2015-08-20 00:12:29 +020082
83script:
Richard Levittede439d42016-03-06 23:34:49 +010084 - if expr "$CONFIG_OPTS" : "--unified"; then
85 cd _build;
86 else
87 cd _srcdist;
88 fi
Rich Salzdb9defd2015-09-21 19:54:36 -040089 - make
Emilia Kasperb63447c2016-03-06 22:31:18 +010090 - if [ -z "$BUILDONLY" ]; then
Emilia Kasper56cd71b2016-03-07 12:59:40 +010091 if [ -n "$CROSS_COMPILE" ]; then
92 export EXE_SHELL="wine" WINEPREFIX=`pwd`;
93 fi;
Emilia Kasperb63447c2016-03-06 22:31:18 +010094 HARNESS_VERBOSE=yes make test;
Rich Salz1a3ae782015-10-16 11:19:04 -040095 fi
Richard Levitte475fc3d2015-12-07 15:47:43 +010096 - cd ..
Alessandro Ghedini66c103b2015-08-20 00:12:29 +020097
98notifications:
Rich Salzdb9defd2015-09-21 19:54:36 -040099 email:
Alessandro Ghedini2d284622015-10-06 12:23:42 -0400100 - openssl-commits@openssl.org
FdaSilvaYYb6a89162016-02-25 20:54:40 +0100101