xref: /curl/appveyor.yml (revision 71cf0d1f)
1#***************************************************************************
2#                                  _   _ ____  _
3#  Project                     ___| | | |  _ \| |
4#                             / __| | | | |_) | |
5#                            | (__| |_| |  _ <| |___
6#                             \___|\___/|_| \_\_____|
7#
8# Copyright (C) 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# SPDX-License-Identifier: curl
22#
23###########################################################################
24
25# https://ci.appveyor.com/project/curlorg/curl/history
26# AppVeyor configuration:
27#   https://www.appveyor.com/docs/appveyor-yml/
28# AppVeyor worker images:
29#   https://www.appveyor.com/docs/windows-images-software/
30
31version: 7.50.0.{build}
32
33environment:
34  UNITY: 'ON'
35  OPENSSL: 'OFF'
36  DEBUG: 'ON'
37  SHARED: 'OFF'
38  TFLAGS: 'skiprun'
39  EXAMPLES: 'OFF'
40  matrix:
41
42    # generated CMake-based Visual Studio builds
43
44    - job_name: 'CMake, VS2008, Release, x86, Schannel, Build-tests'
45      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
46      BUILD_SYSTEM: CMake
47      PRJ_GEN: 'Visual Studio 9 2008'
48      PRJ_CFG: Release
49      DEBUG: 'OFF'
50      SCHANNEL: 'ON'
51      ENABLE_UNICODE: 'OFF'
52      HTTP_ONLY: 'OFF'
53      SHARED: 'ON'
54    - job_name: 'CMake, VS2008, Debug, x86, Schannel, Build-tests & examples'
55      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
56      BUILD_SYSTEM: CMake
57      PRJ_GEN: 'Visual Studio 9 2008'
58      PRJ_CFG: Debug
59      SCHANNEL: 'ON'
60      ENABLE_UNICODE: 'OFF'
61      HTTP_ONLY: 'OFF'
62      SHARED: 'ON'
63      EXAMPLES: 'ON'
64    - job_name: 'CMake, VS2022, Release, x64, OpenSSL 3.2, WebSockets, Build-tests'
65      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
66      BUILD_SYSTEM: CMake
67      PRJ_GEN: 'Visual Studio 17 2022'
68      TARGET: '-A x64'
69      PRJ_CFG: Release
70      OPENSSL: 'ON'
71      SCHANNEL: 'OFF'
72      ENABLE_UNICODE: 'OFF'
73      HTTP_ONLY: 'OFF'
74      SHARED: 'ON'
75      WEBSOCKETS: 'ON'
76    - job_name: 'CMake, VS2022, Release, arm64, Schannel, Static, Build-tests'
77      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
78      BUILD_SYSTEM: CMake
79      PRJ_GEN: 'Visual Studio 17 2022'
80      TARGET: '-A ARM64'
81      PRJ_CFG: Release
82      SCHANNEL: 'ON'
83      ENABLE_UNICODE: 'OFF'
84      HTTP_ONLY: 'OFF'
85      DEBUG: 'OFF'
86      CURLDEBUG: 'ON'
87    - job_name: 'CMake, VS2010, Debug, x64, Schannel, Static, Build-tests & examples'
88      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
89      BUILD_SYSTEM: CMake
90      PRJ_GEN: 'Visual Studio 10 2010 Win64'
91      PRJ_CFG: Debug
92      SCHANNEL: 'ON'
93      ENABLE_UNICODE: 'OFF'
94      HTTP_ONLY: 'OFF'
95      EXAMPLES: 'ON'
96    - job_name: 'CMake, VS2022, Debug, x64, Schannel, Static, Unicode, Build-tests'
97      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
98      BUILD_SYSTEM: CMake
99      PRJ_GEN: 'Visual Studio 17 2022'
100      TARGET: '-A x64'
101      PRJ_CFG: Debug
102      SCHANNEL: 'ON'
103      ENABLE_UNICODE: 'ON'
104      HTTP_ONLY: 'OFF'
105    - job_name: 'CMake, VS2022, Release, x64, Schannel, Shared, Unicode, DEBUGBULID, no-CURLDEBUG, Build-tests'
106      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
107      BUILD_SYSTEM: CMake
108      PRJ_GEN: 'Visual Studio 17 2022'
109      TARGET: '-A x64'
110      PRJ_CFG: Release
111      SCHANNEL: 'ON'
112      ENABLE_UNICODE: 'ON'
113      HTTP_ONLY: 'OFF'
114      SHARED: 'ON'
115      CURLDEBUG: 'OFF'
116    - job_name: 'CMake, VS2022, Debug, x64, no SSL, Static, Build-tests'
117      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
118      BUILD_SYSTEM: CMake
119      PRJ_GEN: 'Visual Studio 17 2022'
120      TARGET: '-A x64'
121      PRJ_CFG: Debug
122      SCHANNEL: 'OFF'
123      ENABLE_UNICODE: 'OFF'
124      HTTP_ONLY: 'OFF'
125    - job_name: 'CMake, VS2022, Debug, x64, no SSL, Static, HTTP only, Build-tests'
126      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
127      BUILD_SYSTEM: CMake
128      PRJ_GEN: 'Visual Studio 17 2022'
129      TARGET: '-A x64'
130      PRJ_CFG: Debug
131      SCHANNEL: 'OFF'
132      ENABLE_UNICODE: 'OFF'
133      HTTP_ONLY: 'ON'
134
135    # winbuild-based builds
136
137    - job_name: 'winbuild, VS2015, Debug, x64, OpenSSL 1.1.1, Build-only'
138      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
139      BUILD_SYSTEM: winbuild_vs2015
140      DEBUG: 'yes'
141      PATHPART: debug
142      ENABLE_UNICODE: 'no'
143    - job_name: 'winbuild, VS2015, Release, x64, OpenSSL 1.1.1, Build-only'
144      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
145      BUILD_SYSTEM: winbuild_vs2015
146      DEBUG: 'no'
147      PATHPART: release
148      ENABLE_UNICODE: 'no'
149    - job_name: 'winbuild, VS2017, Debug, x64, OpenSSL 1.1.1, Build-only'
150      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
151      BUILD_SYSTEM: winbuild_vs2017
152      DEBUG: 'yes'
153      PATHPART: debug
154      ENABLE_UNICODE: 'no'
155    - job_name: 'winbuild, VS2017, Release, x64, OpenSSL 1.1.1, Build-only'
156      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
157      BUILD_SYSTEM: winbuild_vs2017
158      DEBUG: 'no'
159      PATHPART: release
160      ENABLE_UNICODE: 'no'
161    - job_name: 'winbuild, VS2015, Debug, x64, OpenSSL 1.1.1, Unicode, Build-only'
162      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
163      BUILD_SYSTEM: winbuild_vs2015
164      DEBUG: 'yes'
165      PATHPART: debug
166      ENABLE_UNICODE: 'yes'
167    - job_name: 'winbuild, VS2015, Release, x64, OpenSSL 1.1.1, Unicode, Build-only'
168      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
169      BUILD_SYSTEM: winbuild_vs2015
170      DEBUG: 'no'
171      PATHPART: release
172      ENABLE_UNICODE: 'yes'
173    - job_name: 'winbuild, VS2017, Debug, x64, OpenSSL 1.1.1, Unicode, Build-only'
174      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
175      BUILD_SYSTEM: winbuild_vs2017
176      DEBUG: 'yes'
177      PATHPART: debug
178      ENABLE_UNICODE: 'yes'
179    - job_name: 'winbuild, VS2017, Release, x64, OpenSSL 1.1.1, Unicode, Build-only'
180      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
181      BUILD_SYSTEM: winbuild_vs2017
182      DEBUG: 'no'
183      PATHPART: release
184      ENABLE_UNICODE: 'yes'
185
186    # generated VisualStudioSolution-based builds
187
188    - job_name: 'VisualStudioSolution, VS2013, Debug, x86, Schannel, Build-only'
189      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
190      BUILD_SYSTEM: VisualStudioSolution
191      PRJ_CFG: 'DLL Debug - DLL Windows SSPI - DLL WinIDN'
192      VC_VERSION: VC12
193
194install:
195  - ps: $env:PATH = "C:/msys64/usr/bin;$env:PATH"
196
197build_script:
198  - cmd: sh -c ./appveyor.sh
199
200clone_depth: 10
201
202# select branches to avoid testing feature branches twice (as branch and as pull request)
203branches:
204  only:
205    - master
206    - /\/ci$/
207
208skip_commits:
209  files:
210    - '.circleci/*'
211    - '.github/**/*'
212    - 'packages/**/*'
213    - 'plan9/**/*'
214
215#artifacts:
216#  - path: '**/curl.exe'
217#    name: curl
218#  - path: '**/*curl*.dll'
219#    name: libcurl dll
220