123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361 |
- #***************************************************************************
- # _ _ ____ _
- # Project ___| | | | _ \| |
- # / __| | | | |_) | |
- # | (__| |_| | _ <| |___
- # \___|\___/|_| \_\_____|
- #
- # Copyright (C) 1998 - 2022, 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.
- #
- # SPDX-License-Identifier: curl
- #
- ###########################################################################
- version: 7.50.0.{build}
- environment:
- matrix:
- # generated CMake-based Visual Studio Release builds
- - job_name: "CMake, VS2008, Release x86, Schannel"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015"
- BUILD_SYSTEM: CMake
- PRJ_GEN: "Visual Studio 9 2008"
- PRJ_CFG: Release
- OPENSSL: OFF
- SCHANNEL: ON
- ENABLE_UNICODE: OFF
- HTTP_ONLY: OFF
- TESTING: OFF
- SHARED: ON
- DISABLED_TESTS: ""
- - job_name: "CMake, VS2022, Release x64, OpenSSL, WebSockets"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2022"
- BUILD_SYSTEM: CMake
- PRJ_GEN: "Visual Studio 17 2022"
- TARGET: "-A x64"
- PRJ_CFG: Release
- OPENSSL: ON
- SCHANNEL: OFF
- ENABLE_UNICODE: OFF
- HTTP_ONLY: OFF
- TESTING: OFF
- SHARED: ON
- DISABLED_TESTS: ""
- WEBSOCKETS: ON
- - job_name: "CMake, VS2022, Release arm64, Schannel, Static"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2022"
- BUILD_SYSTEM: CMake
- PRJ_GEN: "Visual Studio 17 2022"
- TARGET: "-A ARM64"
- PRJ_CFG: Release
- OPENSSL: OFF
- SCHANNEL: ON
- ENABLE_UNICODE: OFF
- HTTP_ONLY: OFF
- TESTING: OFF
- SHARED: OFF
- DISABLED_TESTS: ""
- # generated CMake-based Visual Studio Debug builds
- - job_name: "CMake, VS2010, Debug x64, no SSL, Static"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015"
- BUILD_SYSTEM: CMake
- PRJ_GEN: "Visual Studio 10 2010 Win64"
- PRJ_CFG: Debug
- OPENSSL: OFF
- SCHANNEL: OFF
- ENABLE_UNICODE: OFF
- HTTP_ONLY: OFF
- TESTING: ON
- SHARED: OFF
- DISABLED_TESTS: "!1139 !1501 ~1056"
- ADD_PATH: "C:\\msys64\\usr\\bin"
- - job_name: "CMake, VS2022, Debug x64, Schannel, Static, Unicode"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2022"
- BUILD_SYSTEM: CMake
- PRJ_GEN: "Visual Studio 17 2022"
- TARGET: "-A x64"
- PRJ_CFG: Debug
- OPENSSL: OFF
- SCHANNEL: ON
- ENABLE_UNICODE: ON
- HTTP_ONLY: OFF
- TESTING: ON
- SHARED: OFF
- DISABLED_TESTS: "~571 !1139 !1501 ~1056"
- ADD_PATH: "C:\\msys64\\usr\\bin"
- - job_name: "CMake, VS2022, Debug x64, no SSL, Static"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2022"
- BUILD_SYSTEM: CMake
- PRJ_GEN: "Visual Studio 17 2022"
- TARGET: "-A x64"
- PRJ_CFG: Debug
- OPENSSL: OFF
- SCHANNEL: OFF
- ENABLE_UNICODE: OFF
- HTTP_ONLY: OFF
- TESTING: ON
- SHARED: OFF
- DISABLED_TESTS: "~571 !1139 !1501 ~1056"
- ADD_PATH: "C:\\msys64\\usr\\bin"
- - job_name: "CMake, VS2022, Debug x64, no SSL, Static, HTTP only"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2022"
- BUILD_SYSTEM: CMake
- PRJ_GEN: "Visual Studio 17 2022"
- TARGET: "-A x64"
- PRJ_CFG: Debug
- OPENSSL: OFF
- SCHANNEL: OFF
- ENABLE_UNICODE: OFF
- HTTP_ONLY: ON
- TESTING: ON
- SHARED: OFF
- DISABLED_TESTS: "!1139 !1501 ~1056"
- ADD_PATH: "C:\\msys64\\usr\\bin"
- # generated CMake-based MSYS Makefiles builds (mingw cross-compiling)
- - job_name: "CMake, mingw-w64, Debug x64, Schannel, Static, Unicode"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015"
- BUILD_SYSTEM: CMake
- PRJ_GEN: "MSYS Makefiles"
- PRJ_CFG: Debug
- OPENSSL: OFF
- SCHANNEL: ON
- ENABLE_UNICODE: ON
- HTTP_ONLY: OFF
- TESTING: ON
- SHARED: OFF
- DISABLED_TESTS: "!1139 !1501 ~1056"
- ADD_PATH: "C:\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin;C:\\msys64\\usr\\bin"
- MSYS2_ARG_CONV_EXCL: "/*"
- BUILD_OPT: -k
- - job_name: "CMake, mingw-w64, Debug x64, Schannel, Static, Unicode"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017"
- BUILD_SYSTEM: CMake
- PRJ_GEN: "MSYS Makefiles"
- PRJ_CFG: Debug
- OPENSSL: OFF
- SCHANNEL: ON
- ENABLE_UNICODE: ON
- HTTP_ONLY: OFF
- TESTING: ON
- SHARED: OFF
- DISABLED_TESTS: "!1139 !1501 ~1056"
- ADD_PATH: "C:\\mingw-w64\\x86_64-7.2.0-posix-seh-rt_v5-rev1\\mingw64\\bin;C:\\msys64\\usr\\bin"
- MSYS2_ARG_CONV_EXCL: "/*"
- BUILD_OPT: -k
- - job_name: "CMake, mingw-w64, Debug x86, Schannel, Static"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015"
- BUILD_SYSTEM: CMake
- PRJ_GEN: "MSYS Makefiles"
- PRJ_CFG: Debug
- OPENSSL: OFF
- SCHANNEL: ON
- ENABLE_UNICODE: OFF
- HTTP_ONLY: OFF
- TESTING: ON
- SHARED: OFF
- DISABLED_TESTS: "!1139 !1501 ~1056"
- ADD_PATH: "C:\\mingw-w64\\i686-6.3.0-posix-dwarf-rt_v5-rev1\\mingw32\\bin;C:\\msys64\\usr\\bin"
- MSYS2_ARG_CONV_EXCL: "/*"
- BUILD_OPT: -k
- - job_name: "CMake, mingw, Debug x86, no SSL, Static"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2022"
- BUILD_SYSTEM: CMake
- PRJ_GEN: "MSYS Makefiles"
- PRJ_CFG: Debug
- OPENSSL: OFF
- SCHANNEL: OFF
- ENABLE_UNICODE: OFF
- HTTP_ONLY: OFF
- TESTING: ON
- SHARED: OFF
- DISABLED_TESTS: "!1139 !1501 ~1056"
- ADD_PATH: "C:\\MinGW\\bin;C:\\msys64\\usr\\bin"
- MSYS2_ARG_CONV_EXCL: "/*"
- BUILD_OPT: -k
- # winbuild-based builds
- - job_name: "winbuild, VS2015, Debug"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015"
- BUILD_SYSTEM: winbuild_vs2015
- DEBUG: yes
- PATHPART: debug
- TESTING: OFF
- ENABLE_UNICODE: no
- - job_name: "winbuild, VS2015, Release"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015"
- BUILD_SYSTEM: winbuild_vs2015
- DEBUG: no
- PATHPART: release
- TESTING: OFF
- ENABLE_UNICODE: no
- - job_name: "winbuild, VS2017, Debug"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017"
- BUILD_SYSTEM: winbuild_vs2017
- DEBUG: yes
- PATHPART: debug
- TESTING: OFF
- ENABLE_UNICODE: no
- - job_name: "winbuild, VS2017, Release"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017"
- BUILD_SYSTEM: winbuild_vs2017
- DEBUG: no
- PATHPART: release
- TESTING: OFF
- ENABLE_UNICODE: no
- - job_name: "winbuild, VS2015, Debug, Unicode"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015"
- BUILD_SYSTEM: winbuild_vs2015
- DEBUG: yes
- PATHPART: debug
- TESTING: OFF
- ENABLE_UNICODE: yes
- - job_name: "winbuild, VS2015, Release, Unicode"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015"
- BUILD_SYSTEM: winbuild_vs2015
- DEBUG: no
- PATHPART: release
- TESTING: OFF
- ENABLE_UNICODE: yes
- - job_name: "winbuild, VS2017, Debug, Unicode"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017"
- BUILD_SYSTEM: winbuild_vs2017
- DEBUG: yes
- PATHPART: debug
- TESTING: OFF
- ENABLE_UNICODE: yes
- - job_name: "winbuild, VS2017, Release, Unicode"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017"
- BUILD_SYSTEM: winbuild_vs2017
- DEBUG: no
- PATHPART: release
- TESTING: OFF
- ENABLE_UNICODE: yes
- # generated VisualStudioSolution-based builds
- - job_name: "VisualStudioSolution, VS2017, Debug"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017"
- BUILD_SYSTEM: VisualStudioSolution
- PRJ_CFG: "DLL Debug - DLL Windows SSPI - DLL WinIDN"
- TESTING: OFF
- VC_VERSION: VC14.10
- # autotools-based builds (NOT mingw cross-compiling, but msys2 native)
- - job_name: "autotools, msys2, Debug, no Proxy, no SSL"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017"
- BUILD_SYSTEM: autotools
- TESTING: ON
- DISABLED_TESTS: "!19 ~1056 !1233"
- ADD_PATH: "C:\\msys64\\usr\\bin"
- CONFIG_ARGS: "--enable-debug --enable-werror --disable-threaded-resolver --disable-proxy --without-ssl --enable-websockets"
- - job_name: "autotools, msys2, Debug, no SSL"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017"
- BUILD_SYSTEM: autotools
- TESTING: ON
- DISABLED_TESTS: "!19 !504 !704 !705 ~1056 !1233"
- ADD_PATH: "C:\\msys64\\usr\\bin"
- CONFIG_ARGS: "--enable-debug --enable-werror --disable-threaded-resolver --without-ssl --enable-websockets"
- - job_name: "autotools, msys2, Release, no SSL"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017"
- BUILD_SYSTEM: autotools
- TESTING: ON
- DISABLED_TESTS: "!19 !504 !704 !705 ~1056 !1233"
- ADD_PATH: "C:\\msys64\\usr\\bin"
- CONFIG_ARGS: "--enable-warnings --enable-werror --without-ssl --enable-websockets"
- # autotools-based Cygwin build
- - job_name: "autotools, cygwin, Debug, no SSL"
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2022"
- BUILD_SYSTEM: autotools
- TESTING: ON
- DISABLED_TESTS: "~1056"
- ADD_PATH: "C:\\cygwin64\\bin"
- CONFIG_ARGS: "--enable-debug --enable-werror --disable-threaded-resolver --without-ssl --enable-websockets"
- POSIX_PATH_PREFIX: "/cygdrive"
- install:
- - if not "%ADD_PATH%"=="" (
- set "PATH=%ADD_PATH%;%PATH%" )
- build_script:
- - if %BUILD_SYSTEM%==CMake (
- cmake .
- -G"%PRJ_GEN%"
- %TARGET%
- -DCURL_USE_OPENSSL=%OPENSSL%
- -DCURL_USE_SCHANNEL=%SCHANNEL%
- -DHTTP_ONLY=%HTTP_ONLY%
- -DBUILD_SHARED_LIBS=%SHARED%
- -DBUILD_TESTING=%TESTING%
- -DENABLE_WEBSOCKETS=%WEBSOCKETS%
- -DCURL_WERROR=ON
- -DENABLE_DEBUG=ON
- -DENABLE_UNICODE=%ENABLE_UNICODE%
- -DCMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE=""
- -DCMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG=""
- -DCMAKE_INSTALL_PREFIX="C:/CURL"
- -DCMAKE_BUILD_TYPE=%PRJ_CFG% &&
- cmake --build . --config %PRJ_CFG% --parallel 2 --clean-first -- %BUILD_OPT%
- ) else (
- if %BUILD_SYSTEM%==VisualStudioSolution (
- cd projects &&
- .\\generate.bat %VC_VERSION% &&
- msbuild.exe /p:Configuration="%PRJ_CFG%" "Windows\\%VC_VERSION%\\curl-all.sln"
- ) else (
- if %BUILD_SYSTEM%==winbuild_vs2015 (
- call buildconf.bat &&
- cd winbuild &&
- call "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64 &&
- call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64 &&
- nmake /f Makefile.vc mode=dll VC=14 "SSL_PATH=C:\OpenSSL-v111-Win64" WITH_SSL=dll MACHINE=x64 DEBUG=%DEBUG% ENABLE_UNICODE=%ENABLE_UNICODE% &&
- ..\builds\libcurl-vc14-x64-%PATHPART%-dll-ssl-dll-ipv6-sspi\bin\curl.exe -V
- ) else (
- if %BUILD_SYSTEM%==winbuild_vs2017 (
- call buildconf.bat &&
- cd winbuild &&
- call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" &&
- nmake /f Makefile.vc mode=dll VC=14.10 "SSL_PATH=C:\OpenSSL-v111-Win64" WITH_SSL=dll MACHINE=x64 DEBUG=%DEBUG% ENABLE_UNICODE=%ENABLE_UNICODE% &&
- ..\builds\libcurl-vc14.10-x64-%PATHPART%-dll-ssl-dll-ipv6-sspi\bin\curl.exe -V
- ) else (
- if %BUILD_SYSTEM%==autotools (
- bash.exe -e -l -c "cd %POSIX_PATH_PREFIX%/c/projects/curl && autoreconf -fi && ./configure %CONFIG_ARGS% && make V=1 && make V=1 examples && cd tests && make V=1"
- )))))
- - if %TESTING%==ON (
- if %BUILD_SYSTEM%==CMake (
- cmake --build . --config %PRJ_CFG% --parallel 2 --target testdeps
- ))
- test_script:
- - if exist C:/msys64/usr/bin/curl.exe (
- set ACURL=-ac %POSIX_PATH_PREFIX%/c/msys64/usr/bin/curl.exe )
- - if exist C:/Windows/System32/curl.exe (
- set ACURL=-ac %POSIX_PATH_PREFIX%/c/Windows/System32/curl.exe )
- - if %TESTING%==ON (
- if %BUILD_SYSTEM%==CMake (
- set TFLAGS=%ACURL% %DISABLED_TESTS% &&
- cmake --build . --config %PRJ_CFG% --target test-ci
- ) else (
- if %BUILD_SYSTEM%==autotools (
- bash.exe -e -l -c "cd %POSIX_PATH_PREFIX%/c/projects/curl && make V=1 TFLAGS='%ACURL% %DISABLED_TESTS%' test-ci"
- ) else (
- bash.exe -e -l -c "cd %POSIX_PATH_PREFIX%/c/projects/curl/tests && ./runtests.pl -a -p !flaky -r -rm %ACURL% %DISABLED_TESTS%"
- ))
- )
- # select branches to avoid testing feature branches twice (as branch and as pull request)
- branches:
- only:
- - master
- - /\/ci$/
- artifacts:
- - path: '**/curl.exe'
- name: curl
- - path: '**/*curl*.dll'
- name: libcurl
|