strategy:
matrix:
include:
- - name: 'schannel MultiSSL U'
- install: 'brotli zlib zstd libpsl nghttp2 libssh2[core,zlib] pkgconf gsasl openssl mbedtls shiftmedia-libgnutls'
- arch: 'x64'
- plat: 'windows'
- type: 'Debug'
- tflags: '~1516 ~2301 ~2302 ~2303 ~2307'
- config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=ON -DCURL_USE_SCHANNEL=ON -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=ON -DCURL_USE_OPENSSL=ON -DCURL_USE_MBEDTLS=ON -DCURL_USE_GNUTLS=ON -DCURL_DEFAULT_SSL_BACKEND=schannel -DCURL_USE_GSASL=ON -DUSE_WIN32_IDN=ON'
- - name: 'openssl'
- install: 'brotli zlib zstd libpsl nghttp2 nghttp3 openssl libssh2 pkgconf gsasl c-ares'
- arch: 'x64'
- plat: 'windows'
- type: 'Debug'
- tflags: '~1516 ~2301 ~2302 ~2303 ~2307'
- config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=OFF -DCURL_USE_SCHANNEL=OFF -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=ON -DCURL_USE_OPENSSL=ON -DUSE_OPENSSL_QUIC=ON -DCURL_USE_GSASL=ON -DENABLE_ARES=ON'
- - name: 'openssl'
- install: 'brotli zlib zstd nghttp2 nghttp3 openssl libssh2'
- arch: 'x64'
- plat: 'uwp'
- type: 'Debug'
- tflags: 'skipall'
- config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=OFF -DCURL_USE_SCHANNEL=OFF -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=ON -DCURL_USE_OPENSSL=ON -DUSE_OPENSSL_QUIC=ON -DCURL_USE_LIBPSL=OFF'
- - name: 'libressl'
- install: 'brotli zlib zstd libpsl nghttp2 libressl libssh2[core,zlib]'
- arch: 'x64'
- plat: 'windows'
- type: 'Debug'
- tflags: '~1516 ~2301 ~2302 ~2303 ~2307'
- config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=OFF -DCURL_USE_SCHANNEL=OFF -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=ON -DCURL_USE_OPENSSL=ON'
- - name: 'boringssl-ECH'
- install: 'brotli zlib zstd libpsl nghttp2 boringssl libssh2[core,zlib]'
- arch: 'x64'
- plat: 'windows'
- type: 'Debug'
- tflags: '~1516 ~2301 ~2302 ~2303 ~2307'
- config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=OFF -DCURL_USE_SCHANNEL=OFF -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=ON -DCURL_USE_OPENSSL=ON -DUSE_HTTPSRR=ON -DUSE_ECH=ON'
- - name: 'wolfssl'
- install: 'brotli zlib zstd libpsl nghttp2 wolfssl libssh2 pkgconf gsasl ngtcp2[wolfssl] nghttp3'
- arch: 'x64'
- plat: 'windows'
- type: 'Debug'
- tflags: '~1516'
- config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=OFF -DCURL_USE_SCHANNEL=OFF -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=ON -DCURL_USE_WOLFSSL=ON -DUSE_NGTCP2=ON -DCURL_USE_GSASL=ON'
- - name: 'gnutls'
- install: 'brotli zlib zstd libpsl nghttp2 shiftmedia-libgnutls libssh pkgconf gsasl ngtcp2[gnutls] nghttp3'
- arch: 'x64'
- plat: 'windows'
- type: 'Release'
- tflags: '~1516'
- # WARNING: libssh uses hard-coded world-writable paths (/etc/..., ~/.ssh/) to
- # read its configuration from, making it vulnerable to attacks on
- # Windows. Do not use this component till there is a fix for these.
- # https://github.com/curl/curl-for-win/blob/3951808deb04df9489ee17430f236ed54436f81a/libssh.sh#L6-L8
- config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=OFF -DCURL_USE_SCHANNEL=OFF -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=OFF -DCURL_USE_LIBSSH=ON -DCURL_USE_GNUTLS=ON -DCURL_USE_GSASL=ON -DUSE_NGTCP2=ON'
+ - name: 'schannel MultiSSL U'
+ install: 'brotli zlib zstd libpsl nghttp2 libssh2[core,zlib] pkgconf gsasl openssl mbedtls shiftmedia-libgnutls'
+ arch: 'x64'
+ plat: 'windows'
+ type: 'Debug'
+ tflags: '~1516 ~2301 ~2302 ~2303 ~2307'
+ config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=ON -DCURL_USE_SCHANNEL=ON -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=ON -DCURL_USE_OPENSSL=ON -DCURL_USE_MBEDTLS=ON -DCURL_USE_GNUTLS=ON -DCURL_DEFAULT_SSL_BACKEND=schannel -DCURL_USE_GSASL=ON -DUSE_WIN32_IDN=ON'
+ - name: 'openssl'
+ install: 'brotli zlib zstd libpsl nghttp2 nghttp3 openssl libssh2 pkgconf gsasl c-ares'
+ arch: 'x64'
+ plat: 'windows'
+ type: 'Debug'
+ tflags: '~1516 ~2301 ~2302 ~2303 ~2307'
+ config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=OFF -DCURL_USE_SCHANNEL=OFF -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=ON -DCURL_USE_OPENSSL=ON -DUSE_OPENSSL_QUIC=ON -DCURL_USE_GSASL=ON -DENABLE_ARES=ON'
+ - name: 'openssl'
+ install: 'brotli zlib zstd nghttp2 nghttp3 openssl libssh2'
+ arch: 'x64'
+ plat: 'uwp'
+ type: 'Debug'
+ tflags: 'skipall'
+ config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=OFF -DCURL_USE_SCHANNEL=OFF -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=ON -DCURL_USE_OPENSSL=ON -DUSE_OPENSSL_QUIC=ON -DCURL_USE_LIBPSL=OFF'
+ - name: 'libressl'
+ install: 'brotli zlib zstd libpsl nghttp2 libressl libssh2[core,zlib]'
+ arch: 'x64'
+ plat: 'windows'
+ type: 'Debug'
+ tflags: '~1516 ~2301 ~2302 ~2303 ~2307'
+ config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=OFF -DCURL_USE_SCHANNEL=OFF -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=ON -DCURL_USE_OPENSSL=ON'
+ - name: 'boringssl-ECH'
+ install: 'brotli zlib zstd libpsl nghttp2 boringssl libssh2[core,zlib]'
+ arch: 'x64'
+ plat: 'windows'
+ type: 'Debug'
+ tflags: '~1516 ~2301 ~2302 ~2303 ~2307'
+ config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=OFF -DCURL_USE_SCHANNEL=OFF -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=ON -DCURL_USE_OPENSSL=ON -DUSE_HTTPSRR=ON -DUSE_ECH=ON'
+ - name: 'wolfssl'
+ install: 'brotli zlib zstd libpsl nghttp2 wolfssl libssh2 pkgconf gsasl ngtcp2[wolfssl] nghttp3'
+ arch: 'x64'
+ plat: 'windows'
+ type: 'Debug'
+ tflags: '~1516'
+ config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=OFF -DCURL_USE_SCHANNEL=OFF -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=ON -DCURL_USE_WOLFSSL=ON -DUSE_NGTCP2=ON -DCURL_USE_GSASL=ON'
+ - name: 'gnutls'
+ install: 'brotli zlib zstd libpsl nghttp2 shiftmedia-libgnutls libssh pkgconf gsasl ngtcp2[gnutls] nghttp3'
+ arch: 'x64'
+ plat: 'windows'
+ type: 'Release'
+ tflags: '~1516'
+ # WARNING: libssh uses hard-coded world-writable paths (/etc/..., ~/.ssh/) to
+ # read its configuration from, making it vulnerable to attacks on
+ # Windows. Do not use this component till there is a fix for these.
+ # https://github.com/curl/curl-for-win/blob/3951808deb04df9489ee17430f236ed54436f81a/libssh.sh#L6-L8
+ config: '-DENABLE_DEBUG=ON -DENABLE_UNICODE=OFF -DCURL_USE_SCHANNEL=OFF -DCURL_BROTLI=ON -DCURL_ZSTD=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_LIBSSH2=OFF -DCURL_USE_LIBSSH=ON -DCURL_USE_GNUTLS=ON -DCURL_USE_GSASL=ON -DUSE_NGTCP2=ON'
fail-fast: false
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4