1349559Sdeslanguage: c 2366095Scy 3366095Scygit: 4366095Scy depth: 5 5366095Scy 6349559Sdesaddons: 7349559Sdes apt: 8349559Sdes packages: 9349559Sdes - libssl-dev 10349559Sdes - libevent-dev 11349559Sdes - libexpat-dev 12349559Sdes - clang 13366095Scy homebrew: 14366095Scy packages: 15366095Scy - openssl 16366095Scy - libevent 17366095Scy - expat 18366095Scy update: true 19366095Scy 20366095Scyjobs: 21366095Scy include: 22366095Scy - os: linux 23366095Scy name: GCC on Linux, Amd64 24366095Scy compiler: gcc 25366095Scy arch: amd64 26366095Scy env: 27366095Scy - CONFIG_OPTS="--enable-debug --disable-flto" 28366095Scy - os: linux 29366095Scy name: Clang on Linux, Amd64 30366095Scy compiler: clang 31366095Scy arch: amd64 32366095Scy env: 33366095Scy - CONFIG_OPTS="--enable-debug --disable-flto" 34366095Scy - os: osx 35366095Scy name: Clang on OS X, Amd64 36366095Scy compiler: clang 37366095Scy arch: amd64 38366095Scy env: 39366095Scy - TEST_OSX=yes 40366095Scy - CONFIG_OPTS="--enable-debug --disable-flto --with-ssl=/usr/local/opt/openssl/" 41366095Scy - os: linux 42366095Scy name: Libevent, GCC on Linux, Amd64 43366095Scy compiler: gcc 44366095Scy arch: amd64 45366095Scy env: 46366095Scy - TEST_LIBEVENT=yes 47366095Scy - CONFIG_OPTS="--with-libevent" 48366095Scy - os: linux 49366095Scy name: Libevent, Clang on Linux, Amd64 50366095Scy compiler: clang 51366095Scy arch: amd64 52366095Scy env: 53366095Scy - TEST_LIBEVENT=yes 54366095Scy - CONFIG_OPTS="--with-libevent" 55366095Scy - os: osx 56366095Scy name: Libevent, Clang on OS X, Amd64 57366095Scy compiler: clang 58366095Scy arch: amd64 59366095Scy env: 60366095Scy - TEST_OSX=yes 61366095Scy - TEST_LIBEVENT=yes 62366095Scy - CONFIG_OPTS="--with-ssl=/usr/local/opt/openssl/ --with-libevent=/usr/local/opt/libevent/" 63366095Scy - os: linux 64366095Scy name: UBsan, GCC on Linux, Amd64 65366095Scy compiler: gcc 66366095Scy arch: amd64 67366095Scy dist: bionic 68366095Scy env: 69366095Scy - TEST_UBSAN=yes 70366095Scy - os: linux 71366095Scy name: UBsan, Clang on Linux, Amd64 72366095Scy compiler: clang 73366095Scy arch: amd64 74366095Scy dist: bionic 75366095Scy env: 76366095Scy - TEST_UBSAN=yes 77366095Scy - os: linux 78366095Scy name: Asan, GCC on Linux, Amd64 79366095Scy compiler: gcc 80366095Scy arch: amd64 81366095Scy dist: bionic 82366095Scy env: 83366095Scy - TEST_ASAN=yes 84366095Scy - os: linux 85366095Scy name: Asan, Clang on Linux, Amd64 86366095Scy compiler: clang 87366095Scy arch: amd64 88366095Scy dist: bionic 89366095Scy env: 90366095Scy - TEST_ASAN=yes 91366095Scy - os: linux 92366095Scy name: GCC on Linux, Aarch64 93366095Scy compiler: gcc 94366095Scy arch: arm64 95366095Scy dist: bionic 96366095Scy env: 97366095Scy - CONFIG_OPTS="--enable-debug --disable-flto" 98366095Scy - os: linux 99366095Scy name: Clang on Linux, Aarch64 100366095Scy compiler: clang 101366095Scy arch: arm64 102366095Scy dist: bionic 103366095Scy env: 104366095Scy - CONFIG_OPTS="--enable-debug --disable-flto" 105366095Scy - os: linux 106366095Scy name: GCC on Linux, PowerPC64 107366095Scy compiler: gcc 108366095Scy arch: ppc64le 109366095Scy dist: bionic 110366095Scy env: 111366095Scy - CONFIG_OPTS="--enable-debug --disable-flto" 112366095Scy - os: linux 113366095Scy name: Clang on Linux, PowerPC64 114366095Scy compiler: clang 115366095Scy arch: ppc64le 116366095Scy dist: bionic 117366095Scy env: 118366095Scy - CONFIG_OPTS="--enable-debug --disable-flto" 119366095Scy - os: linux 120366095Scy name: GCC on Linux, s390x 121366095Scy compiler: gcc 122366095Scy arch: s390x 123366095Scy dist: bionic 124366095Scy env: 125366095Scy - CONFIG_OPTS="--enable-debug --disable-flto" 126366095Scy - os: linux 127366095Scy name: Clang on Linux, s390x 128366095Scy compiler: clang 129366095Scy arch: s390x 130366095Scy dist: bionic 131366095Scy env: 132366095Scy - CONFIG_OPTS="--enable-debug --disable-flto" 133366095Scy - os: osx 134366095Scy osx_image: xcode10 135366095Scy name: Apple iPhone on iOS, armv7 136366095Scy compiler: clang 137366095Scy env: 138366095Scy - TEST_IOS=yes 139366095Scy - AUTOTOOLS_HOST=armv7-apple-ios 140366095Scy - OPENSSL_HOST=ios-cross 141366095Scy - IOS_SDK=iPhoneOS 142366095Scy - IOS_CPU=armv7s 143366095Scy - IOS_PREFIX="$HOME/$IOS_SDK-$IOS_CPU" 144366095Scy - os: osx 145366095Scy osx_image: xcode10 146366095Scy name: Apple iPhone on iOS, arm64 147366095Scy compiler: clang 148366095Scy env: 149366095Scy - TEST_IOS=yes 150366095Scy - AUTOTOOLS_HOST=aarch64-apple-ios 151366095Scy - OPENSSL_HOST=ios64-cross 152366095Scy - IOS_SDK=iPhoneOS 153366095Scy - IOS_CPU=arm64 154366095Scy - IOS_PREFIX="$HOME/$IOS_SDK-$IOS_CPU" 155366095Scy - os: osx 156366095Scy osx_image: xcode10 157366095Scy name: Apple TV on iOS, arm64 158366095Scy compiler: clang 159366095Scy env: 160366095Scy - TEST_IOS=yes 161366095Scy - AUTOTOOLS_HOST=aarch64-apple-ios 162366095Scy - OPENSSL_HOST=ios64-cross 163366095Scy - IOS_SDK=AppleTVOS 164366095Scy - IOS_CPU=arm64 165366095Scy - IOS_PREFIX="$HOME/$IOS_SDK-$IOS_CPU" 166366095Scy - os: osx 167366095Scy osx_image: xcode10 168366095Scy name: Apple Watch on iOS, armv7 169366095Scy compiler: clang 170366095Scy env: 171366095Scy - TEST_IOS=yes 172366095Scy - AUTOTOOLS_HOST=armv7-apple-ios 173366095Scy - OPENSSL_HOST=ios-cross 174366095Scy - IOS_SDK=WatchOS 175366095Scy - IOS_CPU=armv7k 176366095Scy - IOS_PREFIX="$HOME/$IOS_SDK-$IOS_CPU" 177366095Scy - os: osx 178366095Scy osx_image: xcode10 179366095Scy name: iPhoneSimulator on OS X, i386 180366095Scy env: 181366095Scy - TEST_IOS=yes 182366095Scy - AUTOTOOLS_HOST=i386-apple-ios 183366095Scy - OPENSSL_HOST=iphoneos-cross 184366095Scy - IOS_CPU=i386 185366095Scy - IOS_SDK=iPhoneSimulator 186366095Scy - IOS_PREFIX="$HOME/$IOS_SDK-$IOS_CPU" 187366095Scy - os: osx 188366095Scy osx_image: xcode10 189366095Scy name: iPhoneSimulator on OS X, x86_64 190366095Scy env: 191366095Scy - TEST_IOS=yes 192366095Scy - AUTOTOOLS_HOST=x86_64-apple-ios 193366095Scy - OPENSSL_HOST=iphoneos-cross 194366095Scy - IOS_CPU=x86_64 195366095Scy - IOS_SDK=iPhoneSimulator 196366095Scy - IOS_PREFIX="$HOME/$IOS_SDK-$IOS_CPU" 197366095Scy - os: osx 198366095Scy osx_image: xcode10 199366095Scy name: AppleTVSimulator on OS X, x86_64 200366095Scy env: 201366095Scy - TEST_IOS=yes 202366095Scy - AUTOTOOLS_HOST=x86_64-apple-ios 203366095Scy - OPENSSL_HOST=iphoneos-cross 204366095Scy - IOS_CPU=x86_64 205366095Scy - IOS_SDK=AppleTVSimulator 206366095Scy - IOS_PREFIX="$HOME/$IOS_SDK-$IOS_CPU" 207366095Scy - os: osx 208366095Scy osx_image: xcode10 209366095Scy name: WatchSimulator on OS X, i386 210366095Scy env: 211366095Scy - TEST_IOS=yes 212366095Scy - AUTOTOOLS_HOST=i386-apple-ios 213366095Scy - OPENSSL_HOST=iphoneos-cross 214366095Scy - IOS_CPU=i386 215366095Scy - IOS_SDK=WatchSimulator 216366095Scy - IOS_PREFIX="$HOME/$IOS_SDK-$IOS_CPU" 217366095Scy - os: linux 218366095Scy name: Android armv7a, Linux, Amd64 219366095Scy compiler: clang 220366095Scy arch: amd64 221366095Scy dist: bionic 222366095Scy env: 223366095Scy - TEST_ANDROID=yes 224366095Scy - AUTOTOOLS_HOST=armv7a-linux-androideabi 225366095Scy - OPENSSL_HOST=android-arm 226366095Scy - ANDROID_CPU=armv7a 227366095Scy - ANDROID_API=23 228366095Scy - ANDROID_PREFIX="$HOME/android$ANDROID_API-$ANDROID_CPU" 229366095Scy - ANDROID_SDK_ROOT="$HOME/android-sdk" 230366095Scy - ANDROID_NDK_ROOT="$HOME/android-ndk" 231366095Scy - os: linux 232366095Scy name: Android aarch64, Linux, Amd64 233366095Scy compiler: clang 234366095Scy arch: amd64 235366095Scy dist: bionic 236366095Scy env: 237366095Scy - TEST_ANDROID=yes 238366095Scy - AUTOTOOLS_HOST=aarch64-linux-android 239366095Scy - OPENSSL_HOST=android-arm64 240366095Scy - ANDROID_CPU=aarch64 241366095Scy - ANDROID_API=23 242366095Scy - ANDROID_PREFIX="$HOME/android$ANDROID_API-$ANDROID_CPU" 243366095Scy - ANDROID_SDK_ROOT="$HOME/android-sdk" 244366095Scy - ANDROID_NDK_ROOT="$HOME/android-ndk" 245366095Scy - os: linux 246366095Scy name: Android x86, Linux, Amd64 247366095Scy compiler: clang 248366095Scy arch: amd64 249366095Scy dist: bionic 250366095Scy env: 251366095Scy - TEST_ANDROID=yes 252366095Scy - AUTOTOOLS_HOST=i686-linux-android 253366095Scy - OPENSSL_HOST=android-x86 254366095Scy - ANDROID_CPU=x86 255366095Scy - ANDROID_API=23 256366095Scy - ANDROID_PREFIX="$HOME/android$ANDROID_API-$ANDROID_CPU" 257366095Scy - ANDROID_SDK_ROOT="$HOME/android-sdk" 258366095Scy - ANDROID_NDK_ROOT="$HOME/android-ndk" 259366095Scy - os: linux 260366095Scy name: Android x86_64, Linux, Amd64 261366095Scy compiler: clang 262366095Scy arch: amd64 263366095Scy dist: bionic 264366095Scy env: 265366095Scy - TEST_ANDROID=yes 266366095Scy - AUTOTOOLS_HOST=x86_64-linux-android 267366095Scy - OPENSSL_HOST=android-x86_64 268366095Scy - ANDROID_CPU=x86_64 269366095Scy - ANDROID_API=23 270366095Scy - ANDROID_PREFIX="$HOME/android$ANDROID_API-$ANDROID_CPU" 271366095Scy - ANDROID_SDK_ROOT="$HOME/android-sdk" 272366095Scy - ANDROID_NDK_ROOT="$HOME/android-ndk" 273366095Scy 274366095Scy allow_failures: 275366095Scy - os: linux 276366095Scy name: Android armv7a, Linux, Amd64 277366095Scy - os: linux 278366095Scy name: Android aarch64, Linux, Amd64 279366095Scy - os: linux 280366095Scy name: Android x86, Linux, Amd64 281366095Scy - os: linux 282366095Scy name: Android x86_64, Linux, Amd64 283366095Scy 284366095Scybefore_script: 285366095Scy - | 286366095Scy if [ "$TEST_ANDROID" = "yes" ]; then 287366095Scy ./contrib/android/install_tools.sh 288366095Scy elif [ "$TEST_IOS" = "yes" ]; then 289366095Scy ./contrib/ios/install_tools.sh 290366095Scy fi 291366095Scy 292366095Scy# The Travis docs say to avoid calling exit in the script. It leads to 293366095Scy# some code duplication to avoid failures in cross-compiles. Also see 294366095Scy# https://docs.travis-ci.com/user/job-lifecycle/ in the Travis docs. 295349559Sdesscript: 296366095Scy - | 297366095Scy if [ "$TEST_UBSAN" = "yes" ]; then 298366095Scy export CFLAGS="-DNDEBUG -g2 -O3 -fsanitize=undefined -fno-sanitize-recover" 299366095Scy ./configure 300366095Scy make -j 2 301366095Scy make test 302366095Scy elif [ "$TEST_ASAN" = "yes" ]; then 303366095Scy export CFLAGS="-DNDEBUG -g2 -O3 -fsanitize=address" 304366095Scy ./configure 305366095Scy make -j 2 306366095Scy make test 307366095Scy elif [ "$TEST_IOS" = "yes" ]; then 308366095Scy export AUTOTOOLS_BUILD="$(./config.guess)" 309366095Scy export PKG_CONFIG_PATH="$IOS_PREFIX/lib/pkgconfig" 310366095Scy source ./contrib/ios/setenv_ios.sh 311366095Scy ./contrib/ios/install_openssl.sh 312366095Scy ./contrib/ios/install_expat.sh 313366095Scy ./configure \ 314366095Scy --build="$AUTOTOOLS_BUILD" --host="$AUTOTOOLS_HOST" \ 315366095Scy --prefix="$IOS_PREFIX" \ 316366095Scy --with-ssl="$IOS_PREFIX" --disable-gost \ 317366095Scy --with-libexpat="$IOS_PREFIX"; 318366095Scy make -j 2 319366095Scy make install 320366095Scy elif [ "$TEST_ANDROID" = "yes" ]; then 321366095Scy export AUTOTOOLS_BUILD="$(./config.guess)" 322366095Scy export PKG_CONFIG_PATH="$ANDROID_PREFIX/lib/pkgconfig" 323366095Scy ./contrib/android/install_ndk.sh 324366095Scy source ./contrib/android/setenv_android.sh 325366095Scy ./contrib/android/install_openssl.sh 326366095Scy ./contrib/android/install_expat.sh 327366095Scy ./configure \ 328366095Scy --build="$AUTOTOOLS_BUILD" --host="$AUTOTOOLS_HOST" \ 329366095Scy --prefix="$ANDROID_PREFIX" \ 330366095Scy --with-ssl="$ANDROID_PREFIX" --disable-gost \ 331366095Scy --with-libexpat="$ANDROID_PREFIX"; 332366095Scy make -j 2 333366095Scy make install 334366095Scy elif [ "$TEST_OSX" = "yes" ]; then 335366095Scy ./configure --enable-debug --disable-flto --with-ssl=/usr/local/opt/openssl/ 336366095Scy make -j 2 337366095Scy make test 338366095Scy (cd testdata/clang-analysis.tdir; bash clang-analysis.test) 339366095Scy else 340366095Scy ./configure ${CONFIG_OPTS} 341366095Scy make -j 2 342366095Scy make test 343366095Scy (cd testdata/clang-analysis.tdir; bash clang-analysis.test) 344366095Scy fi 345