.travis.yml 2.3 KB
Newer Older
1 2
language: c

R
Rich Salz 已提交
3
addons:
A
Alessandro Ghedini 已提交
4 5
    apt:
        packages:
6
            - clang-3.6
A
Alessandro Ghedini 已提交
7
            - gcc-5
E
Emilia Kasper 已提交
8 9 10
            - binutils-mingw-w64
            - gcc-mingw-w64
            - wine
A
Alessandro Ghedini 已提交
11
        sources:
12
            - llvm-toolchain-precise-3.6
A
Alessandro Ghedini 已提交
13
            - ubuntu-toolchain-r-test
R
Rich Salz 已提交
14

15
os:
R
Rich Salz 已提交
16 17
    - linux
    - osx
18 19

compiler:
R
Rich Salz 已提交
20 21
    - clang
    - gcc
22 23

env:
R
Rich Salz 已提交
24
    - CONFIG_OPTS="shared"
R
Rich Salz 已提交
25
    - CONFIG_OPTS="--debug --strict-warnings enable-crypto-mdebug enable-rc5 enable-md2"
E
Emilia Kasper 已提交
26
    - CONFIG_OPTS="" BUILDONLY="yes"
27 28
    - CONFIG_OPTS="--classic" BUILDONLY="yes"
    - CONFIG_OPTS="--classic shared" BUILDONLY="yes"
E
Emilia Kasper 已提交
29 30
    - CONFIG_OPTS="no-pic" BUILDONLY="yes"
    - CONFIG_OPTS="no-engine" BUILDONLY="yes"
R
Rich Salz 已提交
31 32

matrix:
A
Alessandro Ghedini 已提交
33
    include:
34 35 36 37 38
        - os: linux
          compiler: clang-3.6
          env: CONFIG_OPTS="-fsanitize=address"
        - os: linux
          compiler: clang-3.6
E
Emilia Kasper 已提交
39
          env: CONFIG_OPTS="no-asm --strict-warnings -fno-sanitize-recover -fsanitize=address -fsanitize=undefined enable-rc5 enable-md2"
40 41 42
        - os: linux
          compiler: gcc-5
          env: CONFIG_OPTS="-fsanitize=address"
A
Alessandro Ghedini 已提交
43 44
        - os: linux
          compiler: gcc-5
E
Emilia Kasper 已提交
45
          env: CONFIG_OPTS="no-asm --strict-warnings -fno-sanitize-recover -fsanitize=address -fsanitize=undefined enable-rc5 enable-md2"
E
Emilia Kasper 已提交
46 47 48 49 50 51
        - os: linux
          compiler: i686-w64-mingw32-gcc
          env: CONFIG_OPTS="no-pic"
        - os: linux
          compiler: x86_64-w64-mingw32-gcc
          env: CONFIG_OPTS="no-pic"
R
Rich Salz 已提交
52
    exclude:
E
Emilia Kasper 已提交
53 54
        - os: linux
          compiler: clang
55 56
        - os: osx
          compiler: gcc
R
Rich Salz 已提交
57 58

before_script:
59
    - sh .travis-create-release.sh $TRAVIS_OS_NAME
60 61
    - tar -xvzf _srcdist.tar.gz
    - cd _srcdist
R
Rich Salz 已提交
62 63
    - if [ "$CC" == i686-w64-mingw32-gcc ]; then
          export CROSS_COMPILE=${CC%%gcc}; unset CC;
64
          ./Configure mingw $CONFIG_OPTS -Wno-pedantic-ms-format;
R
Rich Salz 已提交
65 66
      elif [ "$CC" == x86_64-w64-mingw32-gcc ]; then
          export CROSS_COMPILE=${CC%%gcc}; unset CC;
67
          ./Configure mingw64 $CONFIG_OPTS -Wno-pedantic-ms-format;
R
Rich Salz 已提交
68 69 70
      else
          ./config $CONFIG_OPTS;
      fi
71
    - cd ..
72 73

script:
74
    - cd _srcdist
R
Rich Salz 已提交
75
    - make
E
Emilia Kasper 已提交
76
    - if [ -z "$BUILDONLY" ]; then
E
Emilia Kasper 已提交
77 78 79
          if [ -n "$CROSS_COMPILE" ]; then
              export EXE_SHELL="wine" WINEPREFIX=`pwd`;
          fi;
E
Emilia Kasper 已提交
80
          HARNESS_VERBOSE=yes make test;
81
      fi
82
    - cd ..
83 84

notifications:
R
Rich Salz 已提交
85
    email:
A
Alessandro Ghedini 已提交
86
        - openssl-commits@openssl.org
87