aboutsummaryrefslogtreecommitdiff
path: root/.travis.yml
blob: 925d09ea833edd1b6a0ed87db4e192fb57d5f4b3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
dist: bionic

os: linux

language: c

env:
  global:
    - JOBS=3
    - PREFIX="${HOME}/opt"
    - TAP_WINDOWS_VERSION=9.23.3
    - LZO_VERSION=2.10
    - PKCS11_HELPER_VERSION=1.26
    - MBEDTLS_VERSION=2.16.4
    - MBEDTLS_CFLAGS="-I${PREFIX}/include"
    - MBEDTLS_LIBS="-L${PREFIX}/lib -lmbedtls -lmbedx509 -lmbedcrypto"
    - OPENSSL_VERSION=1.0.2u
    - OPENSSL_CFLAGS="-I${PREFIX}/include"
    - OPENSSL_LIBS="-L${PREFIX}/lib -lssl -lcrypto"
    # The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
    #   via the "travis encrypt" command using the project repo's public key
    - secure: "l9mSnEW4LJqjxftH5i1NdDaYfGmQB1mPXnSB3DXnsjzkCWZ+yJLfBemfQ0tx/wS7chBYxqUaUIMT0hw4zJVp/LANFJo2vfh//ymTS6h0uApRY1ofg9Pp1BFcV1laG6/u8pwSZ2EBy/GhCd3DS436oE8sYBRaFM9FU62L/oeQBfJ7r4ID/0eB1b8bqlbD4paty9MHui2P8EZJwR+KAD84prtfpZOcrSMxPh9OUhJxzxUvvVoP4s4+lZ5Kgg1bBQ3yzKGDqe8VOgK2BWCEuezqhMMc8oeKmAe7CUkoz5gsGYH++k3I9XzP9Z4xeJKoQnC/82qi4xkJmlaOxdionej9bHIcjfRt7D8j1J0U+wOj4p8VrDy7yHaxuN2fi0K5MGa/CaXQSrkna8dePniCng+xQ2MY/zxuRX2gA6xPNLUyQLU9LqIug7wj4z84Hk9iWib4L20MoPjeEo+vAUNq8FtjOPxMuHNpv4iGGx6kgJm7RXl5vC5hxfK6MprrnYe2U5Mcd8jpzagKBaKHL3zV2FxX9k0jRO9Mccz7M2WnaV0MQ6zcngzTN4+s0kCjhfGKd2F2ANT2Gkhj3Me36eNHfuE0dBbvYCMh4b3Mgd7b/OuXwQWdJ8PjJ1WHXjSOw5sHw1suaV6cEO2Meyz5j1tOkyOi0M9QF+LFenQ9vLH4sBCww8U="

jobs:
  include:
    - name: cl
      env:
      - SSLLIB="openssl"
      - OPENSSL_VERSION="1.1.1d"
      - P7Z="c:\Program Files\7-Zip\7z.exe"
      - CC="cl"
      os: windows
      compiler: cl
    - name: Coverity scan
      env: SSLLIB="openssl" RUN_COVERITY="1"
      os: linux
      compiler: gcc
    - name: gcc | openssl-1.0.1u
      env: SSLLIB="openssl" OPENSSL_VERSION="1.0.1u"
      os: linux
      compiler: gcc
    - name: gcc | openssl-1.1.1d
      env: SSLLIB="openssl" OPENSSL_VERSION="1.1.1d"
      os: linux
      arch: amd64
      compiler: gcc
    - name: gcc | openssl-1.1.1d
      env: SSLLIB="openssl" OPENSSL_VERSION="1.1.1d"
      os: linux
      arch: ppc64le
      compiler: gcc
    - name: gcc | openssl-1.1.1d
      env: SSLLIB="openssl" OPENSSL_VERSION="1.1.1d"
      os: linux
      arch: arm64
      compiler: gcc
    - name: gcc | openssl-1.1.1d
      env: SSLLIB="openssl" OPENSSL_VERSION="1.1.1d"
      os: linux
      arch: s390x
      compiler: gcc
    - name: gcc | openssl-1.0.2u | iproute2
      env: SSLLIB="openssl" EXTRA_CONFIG="--enable-iproute2"
      os: linux
      compiler: gcc
    - name: clang+asan | openssl-1.0.2u
      env: SSLLIB="openssl" CFLAGS="-fsanitize=address" CC=clang-9
      os: linux
      compiler: clang
    - name: clang | openssl-1.1.1d
      env: SSLLIB="openssl" OPENSSL_VERSION="1.1.1d" CC=clang-9
      os: linux
      compiler: clang
    - name: gcc | mbedtls
      env: SSLLIB="mbedtls"
      os: linux
      compiler: gcc
    - name: clang+asan | mbedtls
      env: SSLLIB="mbedtls" CFLAGS="-fsanitize=address" CC=clang-9
      os: linux
      compiler: clang
    - name: clang | openssl-1.0.2u
      env: SSLLIB="openssl"
      os: osx
      compiler: clang
    - name: clang | mbedtls
      env: SSLLIB="mbedtls"
      os: osx
      compiler: clang
    - name: mingw64 | openssl-1.0.1u
      env: SSLLIB="openssl" CHOST=x86_64-w64-mingw32 OPENSSL_VERSION="1.0.1u"
      os: linux
      compiler: ": Win64 build only"
    - name: mingw64 | openssl-1.1.1d
      env: SSLLIB="openssl" CHOST=x86_64-w64-mingw32 OPENSSL_VERSION="1.1.1d"
      os: linux
      compiler: ": Win64 build only"
    - name: mingw32 | openssl-1.0.2u
      env: SSLLIB="openssl" CHOST=i686-w64-mingw32
      os: linux
      compiler: ": Win32 build only"
    - name: clang | openssl-1.0.2u | disable-lzo | distcheck
      env: SSLLIB="openssl" EXTRA_CONFIG="--disable-lzo" EXTRA_SCRIPT="make distcheck" CC=clang-9
      os: linux
      compiler: clang
    - name: clang | openssl-1.0.2u | enable-small
      env: SSLLIB="openssl" EXTRA_CONFIG="--enable-small" CC=clang-9
      os: linux
      compiler: clang

addons:
  apt:
    update: true
    packages: [ liblzo2-dev, libpam0g-dev, liblz4-dev, linux-libc-dev, man2html, mingw-w64, clang-9, libcmocka-dev ]
  homebrew:
    update: true
    packages: [ lzo, lz4, cmocka ]

cache:
  directories:
  - download-cache
  - ${HOME}/opt
  - ${HOME}/Library/Caches/Homebrew

install:
  - if [ ! -z "${CHOST}" ]; then unset CC; fi
  - travis_wait 30 bash -c '.travis/build-deps.sh > build-deps.log 2>&1' || (cat build-deps.log && exit 1)

before_script:
  - .travis/coverity.sh

script:
  - .travis/build-check.sh