Skip to content

Commit 1085e4f

Browse files
authored
CMake update for try-compile with DLLs (#593)
1 parent c060682 commit 1085e4f

7 files changed

+249
-50
lines changed

.github/workflows/uwp.yml

+12
Original file line numberDiff line numberDiff line change
@@ -70,3 +70,15 @@ jobs:
7070
- name: 'Build'
7171
working-directory: ${{ github.workspace }}
7272
run: cmake --build out\build\${{ matrix.build_type }}
73+
74+
- name: 'Clean up'
75+
working-directory: ${{ github.workspace }}
76+
run: Remove-Item -Path out -Recurse -Force
77+
78+
- name: 'Configure CMake (DLL)'
79+
working-directory: ${{ github.workspace }}
80+
run: cmake --preset=${{ matrix.build_type }} -DBUILD_SHARED_LIBS=ON
81+
82+
- name: 'Build (DLL)'
83+
working-directory: ${{ github.workspace }}
84+
run: cmake --build out\build\${{ matrix.build_type }}

CMakeLists.txt

-4
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,6 @@ cmake_minimum_required (VERSION 3.20)
55

66
set(DIRECTXTEX_VERSION 2.0.6)
77

8-
if(WINDOWS_STORE OR (DEFINED XBOX_CONSOLE_TARGET))
9-
set(CMAKE_TRY_COMPILE_TARGET_TYPE "STATIC_LIBRARY")
10-
endif()
11-
128
project (DirectXTex
139
VERSION ${DIRECTXTEX_VERSION}
1410
DESCRIPTION "DirectX Texture Library"

build/DirectXTex-GitHub-CMake-Dev17.yml

+86-20
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,10 @@ jobs:
8181
displayName: 'CMake (MSVC): Config x64'
8282
inputs:
8383
cwd: $(Build.SourcesDirectory)
84-
cmakeArgs: -G "$(VS_GENERATOR)" -A x64 -B out -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_DX12=OFF
84+
cmakeArgs: >
85+
-G "$(VS_GENERATOR)" -A x64 -B out
86+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
87+
-DBUILD_DX12=OFF
8588
- task: CMake@1
8689
displayName: 'CMake (MSVC): Build x64 Debug'
8790
inputs:
@@ -96,7 +99,10 @@ jobs:
9699
displayName: 'CMake (MSVC): Config x86'
97100
inputs:
98101
cwd: $(Build.SourcesDirectory)
99-
cmakeArgs: -G "$(VS_GENERATOR)" -A Win32 -B out2 -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_DX12=OFF
102+
cmakeArgs: >
103+
-G "$(VS_GENERATOR)" -A Win32 -B out2
104+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
105+
-DBUILD_DX12=OFF
100106
- task: CMake@1
101107
displayName: 'CMake (MSVC): Build x86 Debug'
102108
inputs:
@@ -111,7 +117,10 @@ jobs:
111117
displayName: 'CMake (MSVC): Config ARM64'
112118
inputs:
113119
cwd: $(Build.SourcesDirectory)
114-
cmakeArgs: -G "$(VS_GENERATOR)" -A ARM64 -B out3 -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_DX12=OFF
120+
cmakeArgs: >
121+
-G "$(VS_GENERATOR)" -A ARM64 -B out3
122+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
123+
-DBUILD_DX12=OFF
115124
- task: CMake@1
116125
displayName: 'CMake (MSVC): Build ARM64 Debug'
117126
inputs:
@@ -126,7 +135,9 @@ jobs:
126135
displayName: 'CMake (UWP): Config x64'
127136
inputs:
128137
cwd: $(Build.SourcesDirectory)
129-
cmakeArgs: -G "$(VS_GENERATOR)" -A x64 -B out4 -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=10.0
138+
cmakeArgs: >
139+
-G "$(VS_GENERATOR)" -A x64 -B out4
140+
-DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=10.0
130141
- task: CMake@1
131142
displayName: 'CMake (UWP): Build x64'
132143
inputs:
@@ -136,87 +147,142 @@ jobs:
136147
displayName: 'CMake (ClangCl): Config x64'
137148
inputs:
138149
cwd: $(Build.SourcesDirectory)
139-
cmakeArgs: -G "$(VS_GENERATOR)" -A x64 -T clangcl -B out6 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
150+
cmakeArgs: >
151+
-G "$(VS_GENERATOR)" -A x64 -T clangcl -B out5
152+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
140153
- task: CMake@1
141154
displayName: 'CMake (ClangCl): Build x64 Debug'
142155
inputs:
143156
cwd: $(Build.SourcesDirectory)
144-
cmakeArgs: --build out6 -v --config Debug
157+
cmakeArgs: --build out5 -v --config Debug
145158
- task: CMake@1
146159
displayName: 'CMake (ClangCl): Build x64 Release'
147160
inputs:
148161
cwd: $(Build.SourcesDirectory)
149-
cmakeArgs: --build out6 -v --config RelWithDebInfo
162+
cmakeArgs: --build out5 -v --config RelWithDebInfo
150163
- task: CMake@1
151164
displayName: 'CMake (ClangCl): Config ARM64'
152165
inputs:
153166
cwd: $(Build.SourcesDirectory)
154-
cmakeArgs: -G "$(VS_GENERATOR)" -A ARM64 -T clangcl -B out7 -DCMAKE_SYSTEM_VERSION=$(WIN11_SDK)
167+
cmakeArgs: >
168+
-G "$(VS_GENERATOR)" -A ARM64 -T clangcl -B out6
169+
-DCMAKE_SYSTEM_VERSION=$(WIN11_SDK)
155170
- task: CMake@1
156171
displayName: 'CMake (ClangCl): Build ARM64'
157172
inputs:
158173
cwd: $(Build.SourcesDirectory)
159-
cmakeArgs: --build out7 -v --config Debug
174+
cmakeArgs: --build out6 -v --config Debug
160175
- task: CMake@1
161176
displayName: 'CMake (Win10): Config'
162177
inputs:
163178
cwd: $(Build.SourcesDirectory)
164-
cmakeArgs: -G "$(VS_GENERATOR)" -A x64 -B out8 -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_DX12=ON
179+
cmakeArgs: >
180+
-G "$(VS_GENERATOR)" -A x64 -B out7
181+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
182+
-DBUILD_DX12=ON
165183
- task: CMake@1
166184
displayName: 'CMake (Win10): Build'
167185
inputs:
168186
cwd: $(Build.SourcesDirectory)
169-
cmakeArgs: --build out8 -v --config Debug
187+
cmakeArgs: --build out7 -v --config Debug
170188
- task: CMake@1
171189
displayName: 'CMake (MSVC Spectre): Config x64'
172190
inputs:
173191
cwd: $(Build.SourcesDirectory)
174-
cmakeArgs: -G "$(VS_GENERATOR)" -A x64 -B out9 -DENABLE_SPECTRE_MITIGATION=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_DX12=OFF
192+
cmakeArgs: >
193+
-G "$(VS_GENERATOR)" -A x64 -B out8
194+
-DENABLE_SPECTRE_MITIGATION=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
195+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
196+
-DBUILD_DX12=OFF
175197
- task: CMake@1
176198
displayName: 'CMake (MSVC Spectre): Build x64 Debug'
177199
inputs:
178200
cwd: $(Build.SourcesDirectory)
179-
cmakeArgs: --build out9 -v --config Debug
201+
cmakeArgs: --build out8 -v --config Debug
180202
- task: CMake@1
181203
displayName: 'CMake (MSVC Spectre): Build x64 Release'
182204
inputs:
183205
cwd: $(Build.SourcesDirectory)
184-
cmakeArgs: --build out9 -v --config RelWithDebInfo
206+
cmakeArgs: --build out8 -v --config RelWithDebInfo
185207
- task: CMake@1
186208
displayName: 'CMake (MSVC Spectre): Config ARM64'
187209
inputs:
188210
cwd: $(Build.SourcesDirectory)
189-
cmakeArgs: -G "$(VS_GENERATOR)" -A ARM64 -B out10 -DENABLE_SPECTRE_MITIGATION=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_DX12=OFF
211+
cmakeArgs: >
212+
-G "$(VS_GENERATOR)" -A ARM64 -B out9
213+
-DENABLE_SPECTRE_MITIGATION=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
214+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
215+
-DBUILD_DX12=OFF
190216
- task: CMake@1
191217
displayName: 'CMake (MSVC Spectre): Build ARM64 Debug'
192218
inputs:
193219
cwd: $(Build.SourcesDirectory)
194-
cmakeArgs: --build out10 -v --config Debug
220+
cmakeArgs: --build out9 -v --config Debug
195221
- task: CMake@1
196222
displayName: 'CMake (MSVC Spectre): Build ARM64 Release'
197223
inputs:
198224
cwd: $(Build.SourcesDirectory)
199-
cmakeArgs: --build out10 -v --config RelWithDebInfo
225+
cmakeArgs: --build out9 -v --config RelWithDebInfo
200226
- task: CMake@1
201227
displayName: 'CMake (Win10 Spectre): Config'
202228
inputs:
203229
cwd: $(Build.SourcesDirectory)
204-
cmakeArgs: -G "$(VS_GENERATOR)" -A x64 -B out11 -DENABLE_SPECTRE_MITIGATION=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_DX12=ON
230+
cmakeArgs: >
231+
-G "$(VS_GENERATOR)" -A x64 -B out10
232+
-DENABLE_SPECTRE_MITIGATION=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
233+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
234+
-DBUILD_DX12=ON
205235
- task: CMake@1
206236
displayName: 'CMake (Win10 Spectre): Build'
207237
inputs:
208238
cwd: $(Build.SourcesDirectory)
209-
cmakeArgs: --build out11 -v --config Debug
239+
cmakeArgs: --build out10 -v --config Debug
210240
- task: CMake@1
211241
displayName: 'CMake (NO_WCHAR_T): Config'
212242
inputs:
213243
cwd: $(Build.SourcesDirectory)
214-
cmakeArgs: -G "$(VS_GENERATOR)" -A x64 -B out12 -DNO_WCHAR_T=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN11_SDK) -DBUILD_DX12=ON
244+
cmakeArgs: >
245+
-G "$(VS_GENERATOR)" -A x64 -B out11
246+
-DNO_WCHAR_T=ON
247+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN11_SDK)
248+
-DBUILD_DX12=ON
215249
- task: CMake@1
216250
displayName: 'CMake (NO_WCHAR_T): Build'
251+
inputs:
252+
cwd: $(Build.SourcesDirectory)
253+
cmakeArgs: --build out11 -v --config Debug
254+
- task: CMake@1
255+
displayName: 'CMake (DLL): Config x64'
256+
inputs:
257+
cwd: $(Build.SourcesDirectory)
258+
cmakeArgs: >
259+
-G "$(VS_GENERATOR)" -A x64 -B out12
260+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
261+
-DBUILD_DX12=ON
262+
-DBUILD_SHARED_LIBS=ON
263+
- task: CMake@1
264+
displayName: 'CMake (DLL): Build x64 Debug'
217265
inputs:
218266
cwd: $(Build.SourcesDirectory)
219267
cmakeArgs: --build out12 -v --config Debug
268+
- task: CMake@1
269+
displayName: 'CMake (DLL): Build x64 Release'
270+
inputs:
271+
cwd: $(Build.SourcesDirectory)
272+
cmakeArgs: --build out12 -v --config RelWithDebInfo
273+
- task: CMake@1
274+
displayName: 'CMake (UWP DLL): Config x64'
275+
inputs:
276+
cwd: $(Build.SourcesDirectory)
277+
cmakeArgs: >
278+
-G "$(VS_GENERATOR)" -A x64 -B out13
279+
-DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=10.0
280+
-DBUILD_SHARED_LIBS=ON
281+
- task: CMake@1
282+
displayName: 'CMake (UWP DLL): Build x64'
283+
inputs:
284+
cwd: $(Build.SourcesDirectory)
285+
cmakeArgs: --build out13 -v
220286

221287
- job: CMAKE_BUILD_VCPKG
222288
displayName: CMake using VCPKG

build/DirectXTex-GitHub-CMake-Xbox-Dev17.yml

+28-10
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,10 @@ jobs:
9797
displayName: 'CMake (MSVC): Config x64 (Xbox Series X|S)'
9898
inputs:
9999
cwd: ''
100-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XBOX_EXTS_SCARLETT=ON -DBUILD_SAMPLE=OFF'
100+
cmakeArgs: >
101+
-G "$(VS_GENERATOR)" -A x64 -B out
102+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
103+
-DBUILD_XBOX_EXTS_SCARLETT=ON -DBUILD_SAMPLE=OFF
101104
- task: CMake@1
102105
displayName: 'CMake (MSVC): Build x64 Debug (Xbox Series X|S)'
103106
inputs:
@@ -112,7 +115,10 @@ jobs:
112115
displayName: 'CMake (ClangCl): Config x64 (Xbox Series X|S)'
113116
inputs:
114117
cwd: ''
115-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -T clangcl -B out2 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XBOX_EXTS_SCARLETT=ON -DBUILD_SAMPLE=OFF'
118+
cmakeArgs: >
119+
-G "$(VS_GENERATOR)" -A x64 -T clangcl -B out2
120+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
121+
-DBUILD_XBOX_EXTS_SCARLETT=ON -DBUILD_SAMPLE=OFF
116122
- task: CMake@1
117123
displayName: 'CMake (ClangCl): Build x64 Debug (Xbox Series X|S)'
118124
inputs:
@@ -127,7 +133,10 @@ jobs:
127133
displayName: 'CMake (MSVC): Config x64 (Xbox One)'
128134
inputs:
129135
cwd: ''
130-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out3 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XBOX_EXTS_XBOXONE=ON -DBUILD_SAMPLE=OFF'
136+
cmakeArgs: >
137+
-G "$(VS_GENERATOR)" -A x64 -B out3
138+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
139+
-DBUILD_XBOX_EXTS_XBOXONE=ON -DBUILD_SAMPLE=OFF
131140
- task: CMake@1
132141
displayName: 'CMake (MSVC): Build x64 Debug (Xbox One)'
133142
inputs:
@@ -142,7 +151,10 @@ jobs:
142151
displayName: 'CMake (ClangCl): Config x64 (Xbox One)'
143152
inputs:
144153
cwd: ''
145-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -T clangcl -B out4 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XBOX_EXTS_XBOXONE=ON -DBUILD_SAMPLE=OFF'
154+
cmakeArgs: >
155+
-G "$(VS_GENERATOR)" -A x64 -T clangcl -B out4
156+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
157+
-DBUILD_XBOX_EXTS_XBOXONE=ON -DBUILD_SAMPLE=OFF
146158
- task: CMake@1
147159
displayName: 'CMake (ClangCl): Build x64 Debug (Xbox One)'
148160
inputs:
@@ -154,22 +166,28 @@ jobs:
154166
cwd: ''
155167
cmakeArgs: --build out4 -v --config RelWithDebInfo
156168
- task: CMake@1
157-
displayName: 'CMake (MSVC): Config x64 (Xbox Series X|S, DLL)'
169+
displayName: 'CMake (DLL): Config x64 (Xbox Series X|S)'
158170
inputs:
159171
cwd: ''
160-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out5 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XBOX_EXTS_SCARLETT=ON -DBUILD_SAMPLE=OFF -DBUILD_SHARED_LIBS=ON'
172+
cmakeArgs: >
173+
-G "$(VS_GENERATOR)" -A x64 -B out5
174+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
175+
-DBUILD_XBOX_EXTS_SCARLETT=ON -DBUILD_SAMPLE=OFF -DBUILD_SHARED_LIBS=ON
161176
- task: CMake@1
162-
displayName: 'CMake (MSVC): Build x64 Debug (Xbox Series X|S, DLL)'
177+
displayName: 'CMake (DLL): Build x64 Debug (Xbox Series X|S)'
163178
inputs:
164179
cwd: ''
165180
cmakeArgs: --build out5 -v --config Debug
166181
- task: CMake@1
167-
displayName: 'CMake (MSVC): Config x64 (Xbox One, DLL)'
182+
displayName: 'CMake (DLL): Config x64 (Xbox One)'
168183
inputs:
169184
cwd: ''
170-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out6 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XBOX_EXTS_XBOXONE=ON -DBUILD_SAMPLE=OFF -DBUILD_SHARED_LIBS=ON'
185+
cmakeArgs: >
186+
-G "$(VS_GENERATOR)" -A x64 -B out6
187+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
188+
-DBUILD_XBOX_EXTS_XBOXONE=ON -DBUILD_SAMPLE=OFF -DBUILD_SHARED_LIBS=ON
171189
- task: CMake@1
172-
displayName: 'CMake (MSVC): Build x64 Debug (Xbox One, DLL)'
190+
displayName: 'CMake (DLL): Build x64 Debug (Xbox One)'
173191
inputs:
174192
cwd: ''
175193
cmakeArgs: --build out6 -v --config Debug

0 commit comments

Comments
 (0)