@@ -41,6 +41,11 @@ resources:
4141 - repository : self
4242 type : git
4343 ref : refs/heads/main
44+ - repository : vcpkgRepo
45+ name : Microsoft/vcpkg
46+ type : github
47+ endpoint : microsoft
48+ ref : refs/tags/$(VCPKG_TAG)
4449 - repository : testRepo
4550 name : walbourn/directxmathtest
4651 type : github
5459
5560variables :
5661 Codeql.Enabled : false
62+ VCPKG_ROOT : $(Build.SourcesDirectory)/vcpkg
63+ VCPKG_CMAKE_DIR : $(Build.SourcesDirectory)/vcpkg/scripts/buildsystems/vcpkg.cmake
64+ VCPKG_MANIFEST_DIR : $(Build.SourcesDirectory)/build
5765 URL_MINGW32 : https://github.com/brechtsanders/winlibs_mingw/releases/download/12.2.0-14.0.6-10.0.0-ucrt-r2/winlibs-i686-posix-dwarf-gcc-12.2.0-llvm-14.0.6-mingw-w64ucrt-10.0.0-r2.zip
5866 HASH_MINGW32 : ' fcd1e11b896190da01c83d5b5fb0d37b7c61585e53446c2dab0009debc3915e757213882c35e35396329338de6f0222ba012e23a5af86932db45186a225d1272'
5967
@@ -66,12 +74,27 @@ jobs:
6674 fetchTags : false
6775 fetchDepth : 1
6876 path : ' s'
77+ - checkout : vcpkgRepo
78+ displayName : Fetch VCPKG
79+ clean : true
80+ fetchTags : false
81+ fetchDepth : 1
82+ path : ' s/vcpkg'
6983 - checkout : testRepo
7084 displayName : Fetch Tests
7185 clean : true
7286 fetchTags : false
7387 fetchDepth : 1
7488 path : ' s/Tests'
89+ - task : CmdLine@2
90+ displayName : VCPKG Bootstrap
91+ inputs :
92+ script : |
93+ call bootstrap-vcpkg.bat
94+ echo ##vso[task.setvariable variable=VCPKG_DEFAULT_TRIPLET;]x86-mingw-static
95+ echo ##vso[task.setvariable variable=VCPKG_DEFAULT_HOST_TRIPLET;]x86-mingw-static
96+
97+ workingDirectory : $(Build.SourcesDirectory)\vcpkg
7598 - task : PowerShell@2
7699 displayName : Install MinGW32
77100 inputs :
@@ -102,7 +125,9 @@ jobs:
102125 displayName : CMake (MinGW32) Dbg
103126 inputs :
104127 cwd : Tests
105- cmakeArgs : -B out -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x86 -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
128+ cmakeArgs : >
129+ -B out -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x86
130+ -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
106131 - task : CMake@1
107132 displayName : CMake (MinGW32) Build Dbg
108133 inputs :
@@ -112,7 +137,9 @@ jobs:
112137 displayName : CMake (MinGW32) Rel
113138 inputs :
114139 cwd : Tests
115- cmakeArgs : -B out2 -DCMAKE_BUILD_TYPE="RelWithDebInfo" -DDXMATH_ARCHITECTURE=x86 -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
140+ cmakeArgs : >
141+ -B out2 -DCMAKE_BUILD_TYPE="RelWithDebInfo" -DDXMATH_ARCHITECTURE=x86
142+ -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
116143 - task : CMake@1
117144 displayName : CMake (MinGW32) Build Rel
118145 inputs :
@@ -122,12 +149,59 @@ jobs:
122149 displayName : CMake (MinGW32) Dbg NI
123150 inputs :
124151 cwd : Tests
125- cmakeArgs : -B out3 -DCMAKE_BUILD_TYPE="Debug" -DBUILD_NO_INTRINSICS=ON -DDXMATH_ARCHITECTURE=x86 -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
152+ cmakeArgs : >
153+ -B out3 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x86
154+ -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
155+ -DBUILD_NO_INTRINSICS=ON
126156 - task : CMake@1
127157 displayName : CMake (MinGW32) Build Dbg NI
128158 inputs :
129159 cwd : Tests
130160 cmakeArgs : --build out3
161+ - task : CMake@1
162+ displayName : CMake (MinGW32; XDSP) Dbg
163+ inputs :
164+ cwd : Tests
165+ cmakeArgs : >
166+ -B out4 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x86
167+ -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
168+ -DBUILD_XDSP=ON
169+ - task : CMake@1
170+ displayName : CMake (MinGW32; XDSP) Build Dbg
171+ inputs :
172+ cwd : Tests
173+ cmakeArgs : --build out4
174+ - task : CMake@1
175+ displayName : CMake (MinGW32; SH DX11) Dbg
176+ inputs :
177+ cwd : Tests
178+ cmakeArgs : >
179+ -B out5 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x86
180+ -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
181+ -DBUILD_SHMATH=ON -DBUILD_DX11=ON
182+ - task : CMake@1
183+ displayName : CMake (MinGW32; SH DX11) Build Dbg
184+ inputs :
185+ cwd : Tests
186+ cmakeArgs : --build out5
187+ - task : CmdLine@2
188+ displayName : VCPKG install packages
189+ inputs :
190+ script : call vcpkg install --x-manifest-root=$(VCPKG_MANIFEST_DIR) --triplet=x86-mingw-static
191+ workingDirectory : $(VCPKG_ROOT)
192+ - task : CMake@1
193+ displayName : CMake (MinGW32; SH DX12) Dbg
194+ inputs :
195+ cwd : Tests
196+ cmakeArgs : >
197+ -B out6 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x86 -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
198+ -DBUILD_SHMATH=ON -DBUILD_DX12=ON
199+ -DCMAKE_TOOLCHAIN_FILE="$(VCPKG_CMAKE_DIR)" -DVCPKG_MANIFEST_DIR="$(VCPKG_MANIFEST_DIR)" -DVCPKG_TARGET_TRIPLET=x86-mingw-static
200+ - task : CMake@1
201+ displayName : CMake (MinGW32; SH DX12) Build Dbg
202+ inputs :
203+ cwd : Tests
204+ cmakeArgs : --build out6
131205
132206- job : MINGW64_BUILD
133207 displayName : ' Minimalist GNU for Windows (MinGW-W64)'
@@ -137,12 +211,27 @@ jobs:
137211 fetchTags : false
138212 fetchDepth : 1
139213 path : ' s'
214+ - checkout : vcpkgRepo
215+ displayName : Fetch VCPKG
216+ clean : true
217+ fetchTags : false
218+ fetchDepth : 1
219+ path : ' s/vcpkg'
140220 - checkout : testRepo
141221 displayName : Fetch Tests
142222 clean : true
143223 fetchTags : false
144224 fetchDepth : 1
145225 path : ' s/Tests'
226+ - task : CmdLine@2
227+ displayName : VCPKG Bootstrap
228+ inputs :
229+ script : |
230+ call bootstrap-vcpkg.bat
231+ echo ##vso[task.setvariable variable=VCPKG_DEFAULT_TRIPLET;]x64-mingw-static
232+ echo ##vso[task.setvariable variable=VCPKG_DEFAULT_HOST_TRIPLET;]x64-mingw-static
233+
234+ workingDirectory : $(Build.SourcesDirectory)\vcpkg
146235 - task : CmdLine@2
147236 displayName : GCC version
148237 inputs :
@@ -151,7 +240,9 @@ jobs:
151240 displayName : CMake (MinGW-W64) Dbg
152241 inputs :
153242 cwd : Tests
154- cmakeArgs : -B out -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x64 -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
243+ cmakeArgs : >
244+ -B out -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x64
245+ -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
155246 - task : CMake@1
156247 displayName : CMake (MinGW-W64) Build Dbg
157248 inputs :
@@ -161,7 +252,9 @@ jobs:
161252 displayName : CMake (MinGW-W64) Rel
162253 inputs :
163254 cwd : Tests
164- cmakeArgs : -B out2 -DCMAKE_BUILD_TYPE="RelWithDebInfo" -DDXMATH_ARCHITECTURE=x64 -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
255+ cmakeArgs : >
256+ -B out2 -DCMAKE_BUILD_TYPE="RelWithDebInfo" -DDXMATH_ARCHITECTURE=x64
257+ -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
165258 - task : CMake@1
166259 displayName : CMake (MinGW-W64) Build Rel
167260 inputs :
@@ -171,9 +264,57 @@ jobs:
171264 displayName : CMake (MinGW-W64) Dbg NI
172265 inputs :
173266 cwd : Tests
174- cmakeArgs : -B out3 -DCMAKE_BUILD_TYPE="Debug" -DBUILD_NO_INTRINSICS=ON -DDXMATH_ARCHITECTURE=x64 -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
267+ cmakeArgs : >
268+ -B out3 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x64
269+ -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
270+ -DBUILD_NO_INTRINSICS=ON
175271 - task : CMake@1
176272 displayName : CMake (MinGW-W64) Build Dbg NI
177273 inputs :
178274 cwd : Tests
179275 cmakeArgs : --build out3
276+ - task : CMake@1
277+ displayName : CMake (MinGW-W64; XDSP) Dbg
278+ inputs :
279+ cwd : Tests
280+ cmakeArgs : >
281+ -B out4 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x64
282+ -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
283+ -DBUILD_XDSP=ON
284+ - task : CMake@1
285+ displayName : CMake (MinGW-W64; XDSP) Build Dbg
286+ inputs :
287+ cwd : Tests
288+ cmakeArgs : --build out4
289+ - task : CMake@1
290+ displayName : CMake (MinGW-W64; SH DX11) Dbg
291+ inputs :
292+ cwd : Tests
293+ cmakeArgs : >
294+ -B out5 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x64
295+ -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
296+ -DBUILD_SHMATH=ON -DBUILD_DX11=ON
297+ - task : CMake@1
298+ displayName : CMake (MinGW-W64; SH DX11) Build Dbg
299+ inputs :
300+ cwd : Tests
301+ cmakeArgs : --build out5
302+ - task : CmdLine@2
303+ displayName : VCPKG install packages
304+ inputs :
305+ script : call vcpkg install --x-manifest-root=$(VCPKG_MANIFEST_DIR) --triplet=x64-mingw-static
306+ workingDirectory : $(VCPKG_ROOT)
307+ - task : CMake@1
308+ displayName : CMake (MinGW-W64; SH DX12) Dbg
309+ inputs :
310+ cwd : Tests
311+ cmakeArgs : >
312+ -B out6 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x64
313+ -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles"
314+ -DBUILD_SHMATH=ON -DBUILD_DX12=ON
315+ -DCMAKE_TOOLCHAIN_FILE="$(VCPKG_CMAKE_DIR)" -DVCPKG_MANIFEST_DIR="$(VCPKG_MANIFEST_DIR)" -DVCPKG_TARGET_TRIPLET=x64-mingw-static
316+ - task : CMake@1
317+ displayName : CMake (MinGW-W64; SH DX12) Build Dbg
318+ inputs :
319+ cwd : Tests
320+ cmakeArgs : --build out6
0 commit comments