1#*************************************************************************** 2# _ _ ____ _ 3# Project ___| | | | _ \| | 4# / __| | | | |_) | | 5# | (__| |_| | _ <| |___ 6# \___|\___/|_| \_\_____| 7# 8# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al. 9# 10# This software is licensed as described in the file COPYING, which 11# you should have received as part of this distribution. The terms 12# are also available at https://curl.se/docs/copyright.html. 13# 14# You may opt to use, copy, modify, merge, publish, distribute and/or sell 15# copies of the Software, and permit persons to whom the Software is 16# furnished to do so, under the terms of the COPYING file. 17# 18# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 19# KIND, either express or implied. 20# 21########################################################################### 22 23version: 7.50.0.{build} 24 25environment: 26 matrix: 27 # generated CMake-based Visual Studio Release builds 28 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015" 29 BUILD_SYSTEM: CMake 30 PRJ_GEN: "Visual Studio 9 2008" 31 PRJ_CFG: Release 32 OPENSSL: OFF 33 SCHANNEL: ON 34 ENABLE_UNICODE: OFF 35 HTTP_ONLY: OFF 36 TESTING: OFF 37 SHARED: ON 38 DISABLED_TESTS: "" 39 COMPILER_PATH: "" 40 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2019" 41 BUILD_SYSTEM: CMake 42 PRJ_GEN: "Visual Studio 16 2019" 43 TARGET: "-A x64" 44 PRJ_CFG: Release 45 OPENSSL: ON 46 SCHANNEL: OFF 47 ENABLE_UNICODE: OFF 48 HTTP_ONLY: OFF 49 TESTING: OFF 50 SHARED: ON 51 DISABLED_TESTS: "" 52 COMPILER_PATH: "" 53 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2019" 54 BUILD_SYSTEM: CMake 55 PRJ_GEN: "Visual Studio 16 2019" 56 TARGET: "-A ARM64" 57 PRJ_CFG: Release 58 OPENSSL: OFF 59 SCHANNEL: ON 60 ENABLE_UNICODE: OFF 61 HTTP_ONLY: OFF 62 TESTING: OFF 63 SHARED: OFF 64 DISABLED_TESTS: "" 65 COMPILER_PATH: "" 66 # generated CMake-based Visual Studio Debug builds 67 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015" 68 BUILD_SYSTEM: CMake 69 PRJ_GEN: "Visual Studio 10 2010 Win64" 70 PRJ_CFG: Debug 71 OPENSSL: OFF 72 SCHANNEL: OFF 73 ENABLE_UNICODE: OFF 74 HTTP_ONLY: OFF 75 TESTING: ON 76 SHARED: OFF 77 DISABLED_TESTS: "!1139 !1501" 78 COMPILER_PATH: "" 79 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2019" 80 BUILD_SYSTEM: CMake 81 PRJ_GEN: "Visual Studio 16 2019" 82 TARGET: "-A x64" 83 PRJ_CFG: Debug 84 OPENSSL: OFF 85 SCHANNEL: ON 86 ENABLE_UNICODE: ON 87 HTTP_ONLY: OFF 88 TESTING: ON 89 SHARED: OFF 90 DISABLED_TESTS: "~571 !1139 !1501 " 91 COMPILER_PATH: "" 92 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2019" 93 BUILD_SYSTEM: CMake 94 PRJ_GEN: "Visual Studio 16 2019" 95 TARGET: "-A x64" 96 PRJ_CFG: Debug 97 OPENSSL: OFF 98 SCHANNEL: OFF 99 ENABLE_UNICODE: OFF 100 HTTP_ONLY: OFF 101 TESTING: ON 102 SHARED: OFF 103 DISABLED_TESTS: "~571 !1139 !1501" 104 COMPILER_PATH: "" 105 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2019" 106 BUILD_SYSTEM: CMake 107 PRJ_GEN: "Visual Studio 16 2019" 108 TARGET: "-A x64" 109 PRJ_CFG: Debug 110 OPENSSL: OFF 111 SCHANNEL: OFF 112 ENABLE_UNICODE: OFF 113 HTTP_ONLY: ON 114 TESTING: ON 115 SHARED: OFF 116 DISABLED_TESTS: "!1139 !1501" 117 COMPILER_PATH: "" 118 # generated CMake-based MSYS Makefiles builds (mingw cross-compiling) 119 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015" 120 BUILD_SYSTEM: CMake 121 PRJ_GEN: "MSYS Makefiles" 122 PRJ_CFG: Debug 123 OPENSSL: OFF 124 SCHANNEL: ON 125 ENABLE_UNICODE: ON 126 HTTP_ONLY: OFF 127 TESTING: ON 128 SHARED: OFF 129 DISABLED_TESTS: "!1139 !1501" 130 COMPILER_PATH: "C:\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin" 131 MSYS2_ARG_CONV_EXCL: "/*" 132 BUILD_OPT: -k 133 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017" 134 BUILD_SYSTEM: CMake 135 PRJ_GEN: "MSYS Makefiles" 136 PRJ_CFG: Debug 137 OPENSSL: OFF 138 SCHANNEL: ON 139 ENABLE_UNICODE: ON 140 HTTP_ONLY: OFF 141 TESTING: ON 142 SHARED: OFF 143 DISABLED_TESTS: "!1139 !1501" 144 COMPILER_PATH: "C:\\mingw-w64\\x86_64-7.2.0-posix-seh-rt_v5-rev1\\mingw64\\bin" 145 MSYS2_ARG_CONV_EXCL: "/*" 146 BUILD_OPT: -k 147 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015" 148 BUILD_SYSTEM: CMake 149 PRJ_GEN: "MSYS Makefiles" 150 PRJ_CFG: Debug 151 OPENSSL: OFF 152 SCHANNEL: ON 153 ENABLE_UNICODE: OFF 154 HTTP_ONLY: OFF 155 TESTING: ON 156 SHARED: OFF 157 DISABLED_TESTS: "!1139 !1501" 158 COMPILER_PATH: "C:\\mingw-w64\\i686-6.3.0-posix-dwarf-rt_v5-rev1\\mingw32\\bin" 159 MSYS2_ARG_CONV_EXCL: "/*" 160 BUILD_OPT: -k 161 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015" 162 BUILD_SYSTEM: CMake 163 PRJ_GEN: "MSYS Makefiles" 164 PRJ_CFG: Debug 165 OPENSSL: OFF 166 SCHANNEL: OFF 167 ENABLE_UNICODE: OFF 168 HTTP_ONLY: OFF 169 TESTING: ON 170 SHARED: OFF 171 DISABLED_TESTS: "!1139 !1501" 172 COMPILER_PATH: "C:\\MinGW\\bin" 173 MSYS2_ARG_CONV_EXCL: "/*" 174 BUILD_OPT: -k 175 # winbuild-based builds 176 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015" 177 BUILD_SYSTEM: winbuild_vs2015 178 DEBUG: yes 179 PATHPART: debug 180 TESTING: OFF 181 ENABLE_UNICODE: no 182 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015" 183 BUILD_SYSTEM: winbuild_vs2015 184 DEBUG: no 185 PATHPART: release 186 TESTING: OFF 187 ENABLE_UNICODE: no 188 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017" 189 BUILD_SYSTEM: winbuild_vs2017 190 DEBUG: yes 191 PATHPART: debug 192 TESTING: OFF 193 ENABLE_UNICODE: no 194 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017" 195 BUILD_SYSTEM: winbuild_vs2017 196 DEBUG: no 197 PATHPART: release 198 TESTING: OFF 199 ENABLE_UNICODE: no 200 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015" 201 BUILD_SYSTEM: winbuild_vs2015 202 DEBUG: yes 203 PATHPART: debug 204 TESTING: OFF 205 ENABLE_UNICODE: yes 206 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015" 207 BUILD_SYSTEM: winbuild_vs2015 208 DEBUG: no 209 PATHPART: release 210 TESTING: OFF 211 ENABLE_UNICODE: yes 212 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017" 213 BUILD_SYSTEM: winbuild_vs2017 214 DEBUG: yes 215 PATHPART: debug 216 TESTING: OFF 217 ENABLE_UNICODE: yes 218 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017" 219 BUILD_SYSTEM: winbuild_vs2017 220 DEBUG: no 221 PATHPART: release 222 TESTING: OFF 223 ENABLE_UNICODE: yes 224 # generated VisualStudioSolution-based builds 225 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017" 226 BUILD_SYSTEM: VisualStudioSolution 227 PRJ_CFG: "DLL Debug - DLL Windows SSPI - DLL WinIDN" 228 TESTING: OFF 229 VC_VERSION: VC15 230 # autotools-based builds (NOT mingw cross-compiling, but msys2 native) 231 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2015" 232 BUILD_SYSTEM: autotools 233 TESTING: ON 234 DISABLED_TESTS: "!19 ~1056 !1233" 235 CONFIG_ARGS: "--enable-debug --enable-werror --disable-threaded-resolver --disable-proxy --with-schannel" 236 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2019" 237 BUILD_SYSTEM: autotools 238 TESTING: ON 239 DISABLED_TESTS: "!19 !504 !704 !705 ~1056 !1233" 240 CONFIG_ARGS: "--enable-debug --enable-werror --disable-threaded-resolver --with-schannel" 241 - APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2019" 242 BUILD_SYSTEM: autotools 243 TESTING: ON 244 DISABLED_TESTS: "!19 !504 !704 !705 ~1056 !1233" 245 CONFIG_ARGS: "--enable-warnings --enable-werror --with-schannel" 246 247install: 248 - set "PATH=C:\msys64\usr\bin;%PATH%" 249 - if not "%COMPILER_PATH%"=="" ( 250 set "PATH=%COMPILER_PATH%;%PATH%" ) 251 252build_script: 253 - if %BUILD_SYSTEM%==CMake ( 254 cmake . 255 -G"%PRJ_GEN%" 256 %TARGET% 257 -DCMAKE_USE_OPENSSL=%OPENSSL% 258 -DCMAKE_USE_SCHANNEL=%SCHANNEL% 259 -DHTTP_ONLY=%HTTP_ONLY% 260 -DBUILD_SHARED_LIBS=%SHARED% 261 -DBUILD_TESTING=%TESTING% 262 -DCURL_WERROR=ON 263 -DENABLE_DEBUG=ON 264 -DENABLE_UNICODE=%ENABLE_UNICODE% 265 -DCMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE="" 266 -DCMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG="" 267 -DCMAKE_INSTALL_PREFIX="C:/CURL" 268 -DCMAKE_BUILD_TYPE=%PRJ_CFG% && 269 cmake --build . --config %PRJ_CFG% --parallel 2 --clean-first -- %BUILD_OPT% 270 ) else ( 271 if %BUILD_SYSTEM%==VisualStudioSolution ( 272 cd projects && 273 .\\generate.bat %VC_VERSION% && 274 msbuild.exe /p:Configuration="%PRJ_CFG%" "Windows\\%VC_VERSION%\\curl-all.sln" 275 ) else ( 276 if %BUILD_SYSTEM%==winbuild_vs2015 ( 277 call buildconf.bat && 278 cd winbuild && 279 call "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64 && 280 call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64 && 281 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% && 282 ..\builds\libcurl-vc14-x64-%PATHPART%-dll-ssl-dll-ipv6-sspi\bin\curl.exe -V 283 ) else ( 284 if %BUILD_SYSTEM%==winbuild_vs2017 ( 285 call buildconf.bat && 286 cd winbuild && 287 call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" && 288 nmake /f Makefile.vc mode=dll VC=15 "SSL_PATH=C:\OpenSSL-v111-Win64" WITH_SSL=dll MACHINE=x64 DEBUG=%DEBUG% ENABLE_UNICODE=%ENABLE_UNICODE% && 289 ..\builds\libcurl-vc15-x64-%PATHPART%-dll-ssl-dll-ipv6-sspi\bin\curl.exe -V 290 ) else ( 291 if %BUILD_SYSTEM%==autotools ( 292 bash.exe -e -l -c "cd /c/projects/curl && ./buildconf && ./configure %CONFIG_ARGS% && make && make examples && cd tests && make" 293 ))))) 294 - if %TESTING%==ON ( 295 if %BUILD_SYSTEM%==CMake ( 296 cmake --build . --config %PRJ_CFG% --parallel 2 --target testdeps 297 )) 298 299test_script: 300 - if %TESTING%==ON ( 301 if %BUILD_SYSTEM%==CMake ( 302 set TFLAGS=%DISABLED_TESTS% && 303 cmake --build . --config %PRJ_CFG% --target test-nonflaky 304 ) else ( 305 echo APPVEYOR_API_URL=%APPVEYOR_API_URL% && 306 bash.exe -e -l -c "cd /c/projects/curl/tests && ./runtests.pl -a -p !flaky %DISABLED_TESTS%" )) 307 308# select branches to avoid testing feature branches twice (as branch and as pull request) 309branches: 310 only: 311 - master 312 - /\/ci$/ 313 314artifacts: 315 - path: '**/curl.exe' 316 name: curl 317 - path: '**/*curl*.dll' 318 name: libcurl 319