summaryrefslogtreecommitdiff
path: root/appveyor.yml
blob: e0349f6b2c7e00138e040f3e7190b70fc4779920 (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
version: '{branch}.{build}'

image:
# b_toolset: v143
  - Visual Studio 2022

  # VS2015 also used for earlier VS builds
  # aka os: Windows Server 2012 R2
  - Visual Studio 2015

  # aka os: Windows Server 2016
# b_toolset: v141
  - Visual Studio 2017

  # aka os: Windows Server 2019
# b_toolset: v142
  - Visual Studio 2019

platform: x64

environment:
  matrix:
    - b_toolset: Windows7.1SDK

    - b_toolset: v120

    - b_toolset: v140

    - b_toolset: v141

    - b_toolset: v142

    - b_toolset: v143

configuration:
  - Debug
  - Release

build_script:
- cmake -T %b_toolset% -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DCMAKE_INSTALL_PREFIX=t_install .
- cmake --build . --target install

matrix:
  exclude:
    #  Skip release builds for all except the newest image
    - image: Visual Studio 2015
      configuration: Release

    # In the "old" image, new toolsets aren't available:
    - image: Visual Studio 2015
      b_toolset: v141

    - image: Visual Studio 2015
      b_toolset: v142

    - image: Visual Studio 2015
      b_toolset: v143

    # ----

    - image: Visual Studio 2017
      configuration: Release

    # In the "new" images, exclude all toolsets except the relevant
    #  one for that image:

    - image: Visual Studio 2017
      b_toolset: Windows7.1SDK

    - image: Visual Studio 2017
      b_toolset: v120

    - image: Visual Studio 2017
      b_toolset: v140

    - image: Visual Studio 2017
      b_toolset: v142

    - image: Visual Studio 2017
      b_toolset: v143

    # ----

    - image: Visual Studio 2019
      configuration: Release

    - image: Visual Studio 2019
      b_toolset: Windows7.1SDK

    - image: Visual Studio 2019
      b_toolset: v120

    - image: Visual Studio 2019
      b_toolset: v140

    - image: Visual Studio 2019
      b_toolset: v141

    - image: Visual Studio 2019
      b_toolset: v143

    # ----

    - image: Visual Studio 2022
      b_toolset: Windows7.1SDK

    - image: Visual Studio 2022
      b_toolset: v120

    - image: Visual Studio 2022
      b_toolset: v140

    - image: Visual Studio 2022
      b_toolset: v141

    - image: Visual Studio 2022
      b_toolset: v142

after_build:
- cd t_install
- 7z a ../json-c.win32.%b_toolset%.%CONFIGURATION%.zip *

artifacts:
- path: json-c.win32.%b_toolset%.%CONFIGURATION%.zip
  name: json-c.win32.%b_toolset%.%CONFIGURATION%.zip