mirror of
https://github.com/moparisthebest/curl
synced 2024-11-11 03:55:03 -05:00
b193fd3bbd
The 'hyper mode' makes line-ending checks work in the test suite for when hyper is used. Now it also requires that HTTP or HTTPS are mentioned as keywords to be enabled so that it doesn't wrongly adjusts tests for other protocols. This makes test 271 (TFTP) work again in hyper enabled builds. Closes #7185
476 lines
12 KiB
YAML
476 lines
12 KiB
YAML
#***************************************************************************
|
|
# _ _ ____ _
|
|
# Project ___| | | | _ \| |
|
|
# / __| | | | |_) | |
|
|
# | (__| |_| | _ <| |___
|
|
# \___|\___/|_| \_\_____|
|
|
#
|
|
# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
|
|
#
|
|
# This software is licensed as described in the file COPYING, which
|
|
# you should have received as part of this distribution. The terms
|
|
# are also available at https://curl.se/docs/copyright.html.
|
|
#
|
|
# You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
|
# copies of the Software, and permit persons to whom the Software is
|
|
# furnished to do so, under the terms of the COPYING file.
|
|
#
|
|
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
# KIND, either express or implied.
|
|
#
|
|
###########################################################################
|
|
language: c
|
|
os: linux
|
|
dist: bionic
|
|
cache:
|
|
directories:
|
|
- $HOME/wolfssl-4.7.0-stable
|
|
- $HOME/mesalink-1.0.0
|
|
- $HOME/bearssl-0.6
|
|
|
|
env:
|
|
global:
|
|
- LD_LIBRARY_PATH=/usr/local/lib
|
|
|
|
addons:
|
|
apt: &common_apt
|
|
config:
|
|
retries: true
|
|
packages: &common_packages
|
|
- cmake
|
|
- valgrind
|
|
- libev-dev
|
|
- libc-ares-dev
|
|
- g++-8
|
|
- stunnel4
|
|
- libidn2-dev
|
|
- gnutls-bin
|
|
- python-impacket
|
|
- ninja-build
|
|
- libgsasl7-dev
|
|
- libnghttp2-dev
|
|
|
|
jobs:
|
|
include:
|
|
- env:
|
|
- T=normal C="--with-openssl --with-gssapi --with-libssh2" CHECKSRC=1
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- krb5-user
|
|
- libssh2-1-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
# - env:
|
|
# - T=normal C="--with-openssl --with-libssh"
|
|
# # Avoid bionic, its pre-release libssh version triggers deprecation warnings.
|
|
# dist: focal
|
|
# addons:
|
|
# apt:
|
|
# <<: *common_apt
|
|
# packages:
|
|
# - cmake
|
|
# - valgrind
|
|
# - libev-dev
|
|
# - libc-ares-dev
|
|
# - g++-8
|
|
# - stunnel4
|
|
# - libidn2-dev
|
|
# - gnutls-bin
|
|
# # The above list is common_packages minus impacket.
|
|
# - libssh-dev
|
|
# - ninja-build
|
|
- env:
|
|
- T=normal C="--enable-ares --with-openssl"
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
- env:
|
|
- T=normal C="--disable-proxy --with-openssl"
|
|
- env:
|
|
- T=normal C="--disable-verbose --with-openssl" CPPFLAGS="-Wno-variadic-macros" NOTESTS=1
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=novalgrind BORINGSSL=yes C="--with-openssl=$HOME/boringssl" LD_LIBRARY_PATH=/home/travis/boringssl/lib:/usr/local/lib
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
before_install:
|
|
- eval "$(gimme stable)"; gimme --list # Install latest Go (for boringssl)
|
|
- env:
|
|
- T=novalgrind QUICHE="yes" C="--with-openssl=$HOME/quiche/deps/boringssl/src --with-quiche=$HOME/quiche/target/release" LD_LIBRARY_PATH=$HOME/quiche/target/release:/usr/local/lib
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=debug HYPER="yes" C="--with-hyper=$HOME/hyper --with-openssl" LD_LIBRARY_PATH=$HOME/hyper/target/debug:/usr/local/lib TFLAGS="1 to 153 220 221 222 223 224 230 232 271 314 315 316 396 397"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=debug-rustls RUSTLS_VERSION="v0.6.0" C="--with-rustls=$HOME/crust"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=debug-bearssl C="--with-bearssl" BEARSSL="yes"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=novalgrind LIBRESSL=yes C="--with-openssl=$HOME/libressl" LD_LIBRARY_PATH=/home/travis/libressl/lib:/usr/local/lib
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
- env:
|
|
- T=novalgrind NGTCP2=yes C="--with-openssl=$HOME/ngbuild --with-ngtcp2=$HOME/ngbuild --with-nghttp3=$HOME/ngbuild" NOTESTS=
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=novalgrind NGTCP2=yes GNUTLS=yes C="PKG_CONFIG_PATH=$HOME/ngbuild --with-gnutls=$HOME/ngbuild --with-ngtcp2=$HOME/ngbuild --with-nghttp3=$HOME/ngbuild" NOTESTS=
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- autogen
|
|
- automake
|
|
- autopoint
|
|
- bison
|
|
- gperf
|
|
- libgmp-dev
|
|
- libopts25-dev
|
|
- libp11-kit-dev
|
|
- libtasn1-6-dev
|
|
- nettle-dev
|
|
- env:
|
|
- T=debug-wolfssl C="--with-wolfssl" WOLFSSL="yes"
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=debug OPENSSL3="yes" C="--with-openssl=$HOME/openssl3" LD_LIBRARY_PATH=/home/travis/openssl3/lib:/usr/local/lib TFLAGS="https ftps"
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=debug-mesalink C="--with-mesalink" MESALINK=yes
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=debug C="--with-openssl"
|
|
- &clang OVERRIDE_CC="CC=clang-9" OVERRIDE_CXX="CXX=clang++-9"
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- &clang_packages [*common_packages, clang-9]
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=debug C="--disable-alt-svc --with-openssl"
|
|
- *clang
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *clang_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=debug C="--with-mbedtls"
|
|
- *clang
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *clang_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- libmbedtls-dev
|
|
- env:
|
|
- T=debug C="--with-gnutls"
|
|
- *clang
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *clang_packages
|
|
- libgnutls28-dev
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=debug C="--with-nss" NOTESTS=1 CPPFLAGS="-isystem /usr/include/nss"
|
|
- *clang
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *clang_packages
|
|
- libnss3-dev
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=iconv C="--with-openssl"
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
- env:
|
|
- T=cmake BORINGSSL=yes QUICHE=yes C="-GNinja -DUSE_QUICHE=1 -DOPENSSL_ROOT_DIR=$HOME/boringssl -DCURL_BROTLI=1 -DCURL_ZSTD=1" TFLAGS="https ftps"
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
- PKG_CONFIG_PATH="$HOME/quiche/target/release"
|
|
before_install:
|
|
- eval "$(gimme stable)"; gimme --list # Install latest Go (for boringssl)
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=cmake NGTCP2=yes C="-GNinja -DUSE_NGTCP2=ON -DCURL_BROTLI=1 -DCURL_ZSTD=1"
|
|
- *clang
|
|
- PKG_CONFIG_PATH="$HOME/ngbuild/lib/pkgconfig"
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *clang_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=torture
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- lcov
|
|
- libpsl-dev
|
|
- libssl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- libssh2-1-dev
|
|
- env:
|
|
- T=events
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- lcov
|
|
- libpsl-dev
|
|
- libssl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- libssh2-1-dev
|
|
- env:
|
|
- T=distcheck
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=fuzzer
|
|
- *clang
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *clang_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=tidy C="--with-openssl"
|
|
- *clang
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *clang_packages
|
|
- clang-tidy-9
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=scan-build C="--with-openssl --with-libssh2"
|
|
- *clang
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *clang_packages
|
|
- libssl-dev
|
|
- libssh2-1-dev
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=debug CFLAGS="-fsanitize=address,undefined,signed-integer-overflow -fno-sanitize-recover=undefined,integer -Wformat -Werror=format-security -Werror=array-bounds -g" LDFLAGS="-fsanitize=address,undefined -fno-sanitize-recover=undefined,integer" LIBS="-ldl -lubsan" TFLAGS=-n C="--with-openssl"
|
|
- *clang
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *clang_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- env:
|
|
- T=debug C="--with-openssl" TFLAGS=-n
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
arch: arm64
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- libev-dev
|
|
- libssl-dev
|
|
- libtool
|
|
- pkg-config
|
|
- zlib1g-dev
|
|
|
|
- env:
|
|
- T=debug C="--with-openssl" TFLAGS=-n
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
arch: ppc64le
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- libev-dev
|
|
- libssl-dev
|
|
- libtool
|
|
- pkg-config
|
|
- zlib1g-dev
|
|
|
|
- env:
|
|
- T=debug C="--with-openssl" TFLAGS=-n
|
|
- OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
|
|
arch: s390x
|
|
addons:
|
|
apt:
|
|
<<: *common_apt
|
|
packages:
|
|
- *common_packages
|
|
- libpsl-dev
|
|
- libbrotli-dev
|
|
- libzstd-dev
|
|
- libev-dev
|
|
- libssl-dev
|
|
- libtool
|
|
- pkg-config
|
|
- zlib1g-dev
|
|
|
|
before_install:
|
|
- export "${OVERRIDE_CC-blank=}"
|
|
- export "${OVERRIDE_CXX-blank=}"
|
|
|
|
install:
|
|
- if [ "$T" = "coverage" ]; then pip2 install --user cpp-coveralls; fi
|
|
|
|
# before_script and script:
|
|
# Travis isn't reliable catching errors in inline script commands (#3730).
|
|
# Do not add anything here, instead add to the respective script.
|
|
before_script:
|
|
- ./scripts/travis/before_script.sh || travis_terminate 1
|
|
script:
|
|
- ./scripts/travis/script.sh || travis_terminate 1
|
|
|
|
# select branches to avoid testing feature branches twice (as branch and as pull request)
|
|
branches:
|
|
only:
|
|
- master
|
|
- /\/ci$/
|
|
|
|
notifications:
|
|
email: false
|