summaryrefslogtreecommitdiff
path: root/appveyor.yml
blob: 9361191b9ff639fae3e7aebbc4d8e6ade82976f1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
# AppVeyor configuration
#                          __  __            _
#                       ___\ \/ /_ __   __ _| |_
#                      / _ \\  /| '_ \ / _` | __|
#                     |  __//  \| |_) | (_| | |_
#                      \___/_/\_\ .__/ \__,_|\__|
#                               |_| XML parser
#
# Copyright (C) 2017 José Gutiérrez de la Concha <jose@zeroc.com>
# Copyright (C) 2017 Expat development team
# Licensed under the MIT license:
#
# Permission is  hereby granted,  free of charge,  to any  person obtaining
# a  copy  of  this  software   and  associated  documentation  files  (the
# "Software"),  to  deal in  the  Software  without restriction,  including
# without  limitation the  rights  to use,  copy,  modify, merge,  publish,
# distribute, sublicense, and/or sell copies of the Software, and to permit
# persons  to whom  the Software  is  furnished to  do so,  subject to  the
# following conditions:
#
# The above copyright  notice and this permission notice  shall be included
# in all copies or substantial portions of the Software.
#
# THE  SOFTWARE  IS  PROVIDED  "AS  IS",  WITHOUT  WARRANTY  OF  ANY  KIND,
# EXPRESS  OR IMPLIED,  INCLUDING  BUT  NOT LIMITED  TO  THE WARRANTIES  OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
# NO EVENT SHALL THE AUTHORS OR  COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
# DAMAGES OR  OTHER LIABILITY, WHETHER  IN AN  ACTION OF CONTRACT,  TORT OR
# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
# USE OR OTHER DEALINGS IN THE SOFTWARE.

# scripts that are called at very beginning, before repo cloning
init:
- git config --global core.autocrlf input

# version format
version: libexpat-{build}

# set clone depth, clone entire repository history if not defined
clone_depth: 50

# clone directory
clone_folder: c:\projects\libexpat

configuration: Debug

# AppVeyor pre-installed software:
# https://www.appveyor.com/docs/build-environment/#pre-installed-software
#
# CMake Visual Studio generators:
# https://cmake.org/cmake/help/latest/manual/cmake-generators.7.html#visual-studio-generators
environment:
  matrix:
    # Visual Studio 2010 Win32
    - GENERATOR: Visual Studio 10 2010
      PLATFORM: Win32
      EXPAT_DLL: libexpatd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013

    # Visual Studio 2010 Win32 XML_UNICODE_WCHAR_T
    - GENERATOR: Visual Studio 10 2010
      PLATFORM: Win32
      CMAKE_ARGS: -DEXPAT_CHAR_TYPE=wchar_t
      EXPAT_DLL: libexpatwd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013

    # Visual Studio 2010 x64
    - GENERATOR: Visual Studio 10 2010 Win64
      PLATFORM: x64
      EXPAT_DLL: libexpatd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013

    # Visual Studio 2010 x64 XML_UNICODE_WCHAR_T
    - GENERATOR: Visual Studio 10 2010 Win64
      PLATFORM: x64
      CMAKE_ARGS: -DEXPAT_CHAR_TYPE=wchar_t
      EXPAT_DLL: libexpatwd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013

    # Visual Studio 2012 Win32
    - GENERATOR: Visual Studio 11 2012
      PLATFORM: Win32
      EXPAT_DLL: libexpatd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013

    # Visual Studio 2012 Win32 XML_UNICODE_WCHAR_T
    - GENERATOR: Visual Studio 11 2012
      PLATFORM: Win32
      CMAKE_ARGS: -DEXPAT_CHAR_TYPE=wchar_t
      EXPAT_DLL: libexpatwd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013

    # Visual Studio 2012 x64
    - GENERATOR: Visual Studio 11 2012 Win64
      PLATFORM: x64
      EXPAT_DLL: libexpatd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013

    # Visual Studio 2012 x64 XML_UNICODE_WCHAR_T
    - GENERATOR: Visual Studio 11 2012 Win64
      PLATFORM: x64
      CMAKE_ARGS: -DEXPAT_CHAR_TYPE=wchar_t
      EXPAT_DLL: libexpatwd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013

    # Visual Studio 2013 Win32
    - GENERATOR: Visual Studio 12 2013
      PLATFORM: Win32
      EXPAT_DLL: libexpatd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013

    # Visual Studio 2013 Win32 XML_UNICODE_WCHAR_T
    - GENERATOR: Visual Studio 12 2013
      PLATFORM: Win32
      CMAKE_ARGS: -DEXPAT_CHAR_TYPE=wchar_t
      EXPAT_DLL: libexpatwd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013

    # Visual Studio 2013 x64
    - GENERATOR: Visual Studio 12 2013 Win64
      PLATFORM: x64
      EXPAT_DLL: libexpatd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013

    # Visual Studio 2013 x64 XML_UNICODE_WCHAR_T
    - GENERATOR: Visual Studio 12 2013 Win64
      PLATFORM: x64
      CMAKE_ARGS: -DEXPAT_CHAR_TYPE=wchar_t
      EXPAT_DLL: libexpatwd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013

    # Visual Studio 2015 Win32
    - GENERATOR: Visual Studio 14 2015
      PLATFORM: Win32
      EXPAT_DLL: libexpatd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015

    # Visual Studio 2015 Win32 XML_UNICODE_WCHAR_T
    - GENERATOR: Visual Studio 14 2015
      PLATFORM: Win32
      CMAKE_ARGS: -DEXPAT_CHAR_TYPE=wchar_t
      EXPAT_DLL: libexpatwd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015

    # Visual Studio 2015 x64
    - GENERATOR: Visual Studio 14 2015 Win64
      PLATFORM: x64
      EXPAT_DLL: libexpatd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015

    # Visual Studio 2015 x64 XML_UNICODE_WCHAR_T
    - GENERATOR: Visual Studio 14 2015 Win64
      PLATFORM: x64
      CMAKE_ARGS: -DEXPAT_CHAR_TYPE=wchar_t
      EXPAT_DLL: libexpatwd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015

    # Visual Studio 2017 Win32
    - GENERATOR: Visual Studio 15 2017
      PLATFORM: Win32
      EXPAT_DLL: libexpatd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017

    # Visual Studio 2017 Win32 XML_UNICODE_WCHAR_T
    - GENERATOR: Visual Studio 15 2017
      PLATFORM: Win32
      CMAKE_ARGS: -DEXPAT_CHAR_TYPE=wchar_t
      EXPAT_DLL: libexpatwd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017

    # Visual Studio 2017 x64
    - GENERATOR: Visual Studio 15 2017 Win64
      PLATFORM: x64
      EXPAT_DLL: libexpatd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017

    # Visual Studio 2017 x64 XML_UNICODE_WCHAR_T
    - GENERATOR: Visual Studio 15 2017 Win64
      PLATFORM: x64
      CMAKE_ARGS: -DEXPAT_CHAR_TYPE=wchar_t
      EXPAT_DLL: libexpatwd.dll
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017

before_build:
  - echo Running cmake...
  - cd c:\projects\libexpat
  - cmake -G"%GENERATOR%" -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DEXPAT_WARNINGS_AS_ERRORS=ON %CMAKE_ARGS% expat

build_script:
  - msbuild "c:\projects\libexpat\expat.sln" /m /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"

test_script:
  - cp %CONFIGURATION%\\%EXPAT_DLL% tests\\%CONFIGURATION%\\
  - ctest --build-config %CONFIGURATION% --output-on-failure --parallel 2