-
-
Notifications
You must be signed in to change notification settings - Fork 31
230 lines (180 loc) · 7.59 KB
/
windows.yml
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
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
name: Windows
on:
push:
branches:
- dev
- master
pull_request:
branches:
- dev
- master
jobs:
mingw:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
architecture: [x64, x86]
build_type: [Debug, RelWithDebInfo, MinSizeRel, Release]
steps:
- uses: actions/checkout@v2
- name: Set up MinGW
uses: egor-tensin/setup-mingw@v2
with:
platform: ${{ matrix.architecture }}
- name: CMake
run: |
cmake -S . -B build -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DTAU_BUILDINTERNALTESTS=On -DTAU_BUILDTHIRDPARTYTESTS=On
- name: Build
run: |
cmake --build build --config ${{ matrix.build_type }} --parallel 10
- name: Test (Internal)
run: |
cd build/bin ; dir; ./TauInternalTests
- name: Test (ThirdParty)
run: |
cd build/bin ; dir; ./TauThirdPartyTests_6502
# CMAKE_SYSTEM_VERSION on `windows-2019` _does not_ have version "10.0.18362.0" and hence defaults to a older, but
# buggy version of Windows SDK. Using `10.0.17134.0` works on my computer and should work
MSVC2017:
runs-on: windows-2019
strategy:
matrix:
build_type: [Debug, RelWithDebInfo, MinSizeRel, Release]
architecture: [Win32, x64]
steps:
- uses: actions/checkout@v2
- name: Install Visual Studio 17
run: |
choco install visualstudio2017community
choco install visualstudio2017-workload-nativedesktop
- name: CMake (Release, x64)
if: matrix.build_type == 'Release' && matrix.architecture == 'x64'
run: |
cmake -S . -B build -G "Visual Studio 15 2017" -A ${{ matrix.architecture }} -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DTAU_BUILDINTERNALTESTS=On -DTAU_BUILDTHIRDPARTYTESTS=On -DCMAKE_EXE_LINKER_FLAGS="/STACK:4000000" -DCMAKE_SYSTEM_VERSION="10.0.18362.0"
- name: CMake (Release, !x64)
if: matrix.build_type == 'Release' && matrix.architecture != 'x64'
run: |
cmake -S . -B build -G "Visual Studio 15 2017" -A ${{ matrix.architecture }} -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DTAU_BUILDINTERNALTESTS=On -DTAU_BUILDTHIRDPARTYTESTS=On -DCMAKE_SYSTEM_VERSION="10.0.18362.0"
- name: CMake (Default Configs)
if: matrix.build_type != 'Release'
run: |
cmake -S . -B build -G "Visual Studio 15 2017" -A ${{ matrix.architecture }} -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DTAU_BUILDINTERNALTESTS=On -DTAU_BUILDTHIRDPARTYTESTS=On -DCMAKE_SYSTEM_VERSION="10.0.18362.0"
- name: Build
run: |
cmake --build build --config ${{ matrix.build_type }} --parallel 10
- name: Test (Internal)
run: |
cd build/bin/${{ matrix.build_type }} ; dir; ./TauInternalTests
- name: Test (ThirdParty)
run: |
cd build/bin/${{ matrix.build_type }} ; dir; ./TauThirdPartyTests_6502
MSVC2017_latest:
runs-on: windows-2019
steps:
- uses: actions/checkout@v2
- name: Install Visual Studio 17
run: |
choco install visualstudio2017community
choco install visualstudio2017-workload-nativedesktop
- name: CMake
run: |
cmake -S . -B build -G "Visual Studio 15 2017" -DCMAKE_BUILD_TYPE=Release -DTAU_BUILDINTERNALTESTS=On -DTAU_BUILDTHIRDPARTYTESTS=On -DCMAKE_C_FLAGS="/permissive- /std:c11 /utf-8 /W4" -DCMAKE_SYSTEM_VERSION="10.0.18362.0"
- name: Build
run: |
cmake --build build --config Release --parallel 10
- name: Test (Internal)
run: |
cd build/bin/Release ; dir; ./TauInternalTests
- name: Test (ThirdParty)
run: |
cd build/bin/Release ; dir; ./TauThirdPartyTests_6502
MSVC2019:
runs-on: windows-latest
strategy:
matrix:
build_type: [Debug, RelWithDebInfo, MinSizeRel, Release]
architecture: [Win32, x64]
steps:
- uses: actions/checkout@v2
- name: Install Visual Studio 19
run: |
choco install visualstudio2019community
choco install visualstudio2019-workload-nativedesktop
- name: CMake
run: |
SET PATH=%PATH%;"C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/Tools"
cmake -S . -B build -G "Visual Studio 16 2019" -A ${{ matrix.architecture }} -DTAU_BUILDINTERNALTESTS=On -DTAU_BUILDTHIRDPARTYTESTS=On -DCMAKE_SYSTEM_VERSION="10.0.18362.0"
- name: Build
run: |
cmake --build build --config ${{ matrix.build_type }} --parallel 10
- name: Test (Internal)
run: |
cd build/bin/${{ matrix.build_type }} ; dir; ./TauInternalTests
- name: Test (ThirdParty)
run: |
cd build/bin/${{ matrix.build_type }} ; dir; ./TauThirdPartyTests_6502
MSVC2019_latest:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: Install Visual Studio 19
run: |
choco install visualstudio2019community
choco install visualstudio2019-workload-nativedesktop
- name: CMake
run: |
SET PATH=%PATH%;"C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/Tools"
cmake -S . -B build -G "Visual Studio 16 2019" -DTAU_BUILDINTERNALTESTS=On -DTAU_BUILDTHIRDPARTYTESTS=On -DCMAKE_C_FLAGS="/permissive- /std:c++latest /utf-8 /W4" -DCMAKE_SYSTEM_VERSION="10.0.18362.0"
- name: Build
run: |
cmake --build build --config Release --parallel 10
- name: Test (Internal)
run: |
cd build/bin/Release ; dir; ./TauInternalTests
- name: Test (ThirdParty)
run: |
cd build/bin/Release ; dir; ./TauThirdPartyTests_6502
# Clang-cl-11:
# runs-on: windows-latest
# strategy:
# matrix:
# build_type: [Debug, RelWithDebInfo, MinSizeRel, Release]
# architecture: [Win32, x64]
# steps:
# - uses: actions/checkout@v2
# - name: CMake
# run: |
# cmake -S . -B build -G "Visual Studio 16 2019" -A ${{ matrix.architecture }} -T ClangCL -DTAU_BUILDINTERNALTESTS=On -DTAU_BUILDTHIRDPARTYTESTS=On
# - name: Build
# run: |
# cmake --build build --config ${{ matrix.build_type }} --parallel 10
# - name: Test (Internal)
# run: |
# cd build/bin/${{ matrix.build_type }} ; dir; ./TauInternalTests
# - name: Test (ThirdParty)
# run: |
# cd build/bin/${{ matrix.build_type }} ; dir; ./TauThirdPartyTests_6502
# Clang:
# runs-on: windows-latest
# strategy:
# matrix:
# build_type: [Debug, RelWithDebInfo, MinSizeRel, Release]
# version: [10, 11]
# steps:
# - uses: actions/checkout@v2
# - name: Install Clang
# run: |
# curl -fsSL -o LLVM${{ matrix.version }}.exe https://github.com/llvm/llvm-project/releases/download/llvmorg-${{ matrix.version }}.0.0/LLVM-${{ matrix.version }}.0.0-win64.exe ; 7z x LLVM${{ matrix.version }}.exe -y -o"C:/Program Files/LLVM"
# - name: CMake
# run: |
# cmake -S . -B build -G"MinGW Makefiles" -DCMAKE_C_COMPILER="C:/Program Files/LLVM/bin/clang.exe" -DCMAKE_CXX_COMPILER="C:/Program Files/LLVM/bin/clang++.exe" -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DTAU_BUILDINTERNALTESTS=On -DTAU_BUILDTHIRDPARTYTESTS=On
# - name: Build
# run: |
# cmake --build build --parallel 10
# - name: Test (Internal)
# run: |
# cd build/bin/${{ matrix.build_type }} ; dir; ./TauInternalTests
# - name: Test (ThirdParty)
# run: |
# cd build/bin/${{ matrix.build_type }} ; dir; ./TauThirdPartyTests_6502