Skip to content

Commit f3f0a6d

Browse files
authored
CMake update for try-compile with DLLs (#538)
1 parent c3eb31f commit f3f0a6d

File tree

4 files changed

+131
-32
lines changed

4 files changed

+131
-32
lines changed

.github/workflows/uwp.yml

Lines changed: 12 additions & 0 deletions
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

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,6 @@ cmake_minimum_required (VERSION 3.20)
55

66
set(DIRECTXTK_VERSION 1.9.0)
77

8-
if(WINDOWS_STORE OR (DEFINED XBOX_CONSOLE_TARGET))
9-
set(CMAKE_TRY_COMPILE_TARGET_TYPE "STATIC_LIBRARY")
10-
endif()
11-
128
project (DirectXTK
139
VERSION ${DIRECTXTK_VERSION}
1410
DESCRIPTION "DirectX Tool Kit for DirectX 11"

build/DirectXTK-GitHub-CMake-Dev17.yml

Lines changed: 71 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,10 @@ jobs:
7373
displayName: 'CMake (MSVC): Config x64'
7474
inputs:
7575
cwd: '$(Build.SourcesDirectory)'
76-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON'
76+
cmakeArgs: >
77+
-G "$(VS_GENERATOR)" -A x64 -B out
78+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
79+
-DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON
7780
- task: CMake@1
7881
displayName: 'CMake (MSVC): Build x64 Debug'
7982
inputs:
@@ -88,7 +91,10 @@ jobs:
8891
displayName: 'CMake (MSVC): Config x86'
8992
inputs:
9093
cwd: '$(Build.SourcesDirectory)'
91-
cmakeArgs: '-G "$(VS_GENERATOR)" -A Win32 -B out2 -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON'
94+
cmakeArgs: >
95+
-G "$(VS_GENERATOR)" -A Win32 -B out2
96+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
97+
-DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON
9298
- task: CMake@1
9399
displayName: 'CMake (MSVC): Build x86 Debug'
94100
inputs:
@@ -103,7 +109,10 @@ jobs:
103109
displayName: 'CMake (MSVC): Config ARM64'
104110
inputs:
105111
cwd: '$(Build.SourcesDirectory)'
106-
cmakeArgs: '-G "$(VS_GENERATOR)" -A ARM64 -B out3 -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON'
112+
cmakeArgs: >
113+
-G "$(VS_GENERATOR)" -A ARM64 -B out3
114+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
115+
-DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON
107116
- task: CMake@1
108117
displayName: 'CMake (MSVC): Build ARM64 Debug'
109118
inputs:
@@ -118,7 +127,9 @@ jobs:
118127
displayName: 'CMake (UWP): Config x64'
119128
inputs:
120129
cwd: '$(Build.SourcesDirectory)'
121-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out4 -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=10.0'
130+
cmakeArgs: >
131+
-G "$(VS_GENERATOR)" -A x64 -B out4
132+
-DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=10.0
122133
- task: CMake@1
123134
displayName: 'CMake (UWP): Build x64'
124135
inputs:
@@ -128,75 +139,115 @@ jobs:
128139
displayName: 'CMake (ClangCl): Config x64'
129140
inputs:
130141
cwd: '$(Build.SourcesDirectory)'
131-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -T clangcl -B out6 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON'
142+
cmakeArgs: >
143+
-G "$(VS_GENERATOR)" -A x64 -T clangcl -B out5
144+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
145+
-DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON
132146
- task: CMake@1
133147
displayName: 'CMake (ClangCl): Build x64 Debug'
134148
inputs:
135149
cwd: '$(Build.SourcesDirectory)'
136-
cmakeArgs: --build out6 -v --config Debug
150+
cmakeArgs: --build out5 -v --config Debug
137151
- task: CMake@1
138152
displayName: 'CMake (ClangCl): Build x64 Release'
139153
inputs:
140154
cwd: '$(Build.SourcesDirectory)'
141-
cmakeArgs: --build out6 -v --config RelWithDebInfo
155+
cmakeArgs: --build out5 -v --config RelWithDebInfo
142156
- task: CMake@1
143157
displayName: 'CMake (ClangCl): Config ARM64'
144158
inputs:
145159
cwd: '$(Build.SourcesDirectory)'
146-
cmakeArgs: '-G "$(VS_GENERATOR)" -A ARM64 -T clangcl -B out7 -DCMAKE_SYSTEM_VERSION=$(WIN11_SDK) -DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON'
160+
cmakeArgs: >
161+
-G "$(VS_GENERATOR)" -A ARM64 -T clangcl -B out6
162+
-DCMAKE_SYSTEM_VERSION=$(WIN11_SDK)
163+
-DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON
147164
- task: CMake@1
148165
displayName: 'CMake (ClangCl): Build ARM64'
149166
inputs:
150167
cwd: '$(Build.SourcesDirectory)'
151-
cmakeArgs: --build out7 -v --config Debug
168+
cmakeArgs: --build out6 -v --config Debug
152169
- task: CMake@1
153170
displayName: 'CMake (Win10): Config'
154171
inputs:
155172
cwd: '$(Build.SourcesDirectory)'
156-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out8 -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XAUDIO_WIN10=ON -DBUILD_TOOLS=OFF'
173+
cmakeArgs: >
174+
-G "$(VS_GENERATOR)" -A x64 -B out7
175+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
176+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
177+
-DBUILD_XAUDIO_WIN10=ON -DBUILD_TOOLS=OFF
157178
- task: CMake@1
158179
displayName: 'CMake (Win10): Build'
159180
inputs:
160181
cwd: '$(Build.SourcesDirectory)'
161-
cmakeArgs: --build out8 -v
162-
# removed out9 case
182+
cmakeArgs: --build out7 -v
163183
- task: CMake@1
164184
displayName: 'CMake (MSVC Spectre): Config x64'
165185
inputs:
166186
cwd: '$(Build.SourcesDirectory)'
167-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out10 -DENABLE_SPECTRE_MITIGATION=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON'
187+
cmakeArgs: >
188+
-G "$(VS_GENERATOR)" -A x64 -B out8
189+
-DENABLE_SPECTRE_MITIGATION=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
190+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
191+
-DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON
168192
- task: CMake@1
169193
displayName: 'CMake (MSVC Spectre): Build x64 Debug'
170194
inputs:
171195
cwd: '$(Build.SourcesDirectory)'
172-
cmakeArgs: --build out10 -v --config Debug
196+
cmakeArgs: --build out8 -v --config Debug
173197
- task: CMake@1
174198
displayName: 'CMake (MSVC Spectre): Build x64 Release'
175199
inputs:
176200
cwd: '$(Build.SourcesDirectory)'
177-
cmakeArgs: --build out10 -v --config RelWithDebInfo
201+
cmakeArgs: --build out8 -v --config RelWithDebInfo
178202
- task: CMake@1
179203
displayName: 'CMake (MSVC Spectre): Config ARM64'
180204
inputs:
181205
cwd: '$(Build.SourcesDirectory)'
182-
cmakeArgs: '-G "$(VS_GENERATOR)" -A ARM64 -B out11 -DENABLE_SPECTRE_MITIGATION=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON'
206+
cmakeArgs: >
207+
-G "$(VS_GENERATOR)" -A ARM64 -B out9
208+
-DENABLE_SPECTRE_MITIGATION=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
209+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
210+
-DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON
183211
- task: CMake@1
184212
displayName: 'CMake (MSVC Spectre): Build ARM64 Debug'
185213
inputs:
186214
cwd: '$(Build.SourcesDirectory)'
187-
cmakeArgs: --build out11 -v --config Debug
215+
cmakeArgs: --build out9 -v --config Debug
188216
- task: CMake@1
189217
displayName: 'CMake (MSVC Spectre): Build ARM64 Release'
190218
inputs:
191219
cwd: '$(Build.SourcesDirectory)'
192-
cmakeArgs: --build out11 -v --config RelWithDebInfo
220+
cmakeArgs: --build out9 -v --config RelWithDebInfo
193221
- task: CMake@1
194222
displayName: 'CMake (NO_WCHAR_T): Config'
195223
inputs:
196224
cwd: '$(Build.SourcesDirectory)'
197-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out12 -DNO_WCHAR_T=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN11_SDK)'
225+
cmakeArgs: >
226+
-G "$(VS_GENERATOR)" -A x64 -B out10
227+
-DNO_WCHAR_T=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
228+
-DCMAKE_SYSTEM_VERSION=$(WIN11_SDK)
198229
- task: CMake@1
199230
displayName: 'CMake (NO_WCHAR_T): Build'
200231
inputs:
201232
cwd: '$(Build.SourcesDirectory)'
202-
cmakeArgs: --build out12 -v --config Debug
233+
cmakeArgs: --build out10 -v --config Debug
234+
- task: CMake@1
235+
displayName: 'CMake (DLL): Config x64'
236+
inputs:
237+
cwd: '$(Build.SourcesDirectory)'
238+
cmakeArgs: >
239+
-G "$(VS_GENERATOR)" -A x64 -B out11
240+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
241+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
242+
-DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON
243+
-DBUILD_SHARED_LIBS=ON
244+
- task: CMake@1
245+
displayName: 'CMake (DLL): Build x64 Debug'
246+
inputs:
247+
cwd: '$(Build.SourcesDirectory)'
248+
cmakeArgs: --build out11 -v --config Debug
249+
- task: CMake@1
250+
displayName: 'CMake (DLL): Build x64 Release'
251+
inputs:
252+
cwd: '$(Build.SourcesDirectory)'
253+
cmakeArgs: --build out11 -v --config RelWithDebInfo

build/DirectXTK-GitHub-CMake.yml

Lines changed: 48 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,10 @@ jobs:
7373
displayName: 'CMake (MSVC): Config x64'
7474
inputs:
7575
cwd: '$(Build.SourcesDirectory)'
76-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON'
76+
cmakeArgs: >
77+
-G "$(VS_GENERATOR)" -A x64 -B out
78+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
79+
-DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON
7780
- task: CMake@1
7881
displayName: 'CMake (MSVC): Build x64 Debug'
7982
inputs:
@@ -88,7 +91,10 @@ jobs:
8891
displayName: 'CMake (MSVC): Config x86'
8992
inputs:
9093
cwd: '$(Build.SourcesDirectory)'
91-
cmakeArgs: '-G "$(VS_GENERATOR)" -A Win32 -B out2 -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON'
94+
cmakeArgs: >
95+
-G "$(VS_GENERATOR)" -A Win32 -B out2
96+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
97+
-DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON
9298
- task: CMake@1
9399
displayName: 'CMake (MSVC): Build x86 Debug'
94100
inputs:
@@ -103,7 +109,9 @@ jobs:
103109
displayName: 'CMake (UWP): Config x64'
104110
inputs:
105111
cwd: '$(Build.SourcesDirectory)'
106-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out3 -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=10.0'
112+
cmakeArgs: >
113+
-G "$(VS_GENERATOR)" -A x64 -B out3
114+
-DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=10.0
107115
- task: CMake@1
108116
displayName: 'CMake (UWP): Build x64'
109117
inputs:
@@ -113,7 +121,10 @@ jobs:
113121
displayName: 'CMake (ClangCl): Config x64'
114122
inputs:
115123
cwd: '$(Build.SourcesDirectory)'
116-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -T clangcl -B out4 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON'
124+
cmakeArgs: >
125+
-G "$(VS_GENERATOR)" -A x64 -T clangcl -B out4
126+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
127+
-DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON
117128
- task: CMake@1
118129
displayName: 'CMake (ClangCl): Build x64 Debug'
119130
inputs:
@@ -128,18 +139,25 @@ jobs:
128139
displayName: 'CMake (Win10): Config'
129140
inputs:
130141
cwd: '$(Build.SourcesDirectory)'
131-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out5 -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XAUDIO_WIN10=ON -DBUILD_TOOLS=OFF'
142+
cmakeArgs: >
143+
-G "$(VS_GENERATOR)" -A x64 -B out5
144+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
145+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
146+
-DBUILD_XAUDIO_WIN10=ON -DBUILD_TOOLS=OFF
132147
- task: CMake@1
133148
displayName: 'CMake (Win10): Build'
134149
inputs:
135150
cwd: '$(Build.SourcesDirectory)'
136151
cmakeArgs: --build out5 -v
137-
# removed out9 case
138152
- task: CMake@1
139153
displayName: 'CMake (MSVC Spectre): Config x64'
140154
inputs:
141155
cwd: '$(Build.SourcesDirectory)'
142-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out6 -DENABLE_SPECTRE_MITIGATION=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) -DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON'
156+
cmakeArgs: >
157+
-G "$(VS_GENERATOR)" -A x64 -B out6
158+
-DENABLE_SPECTRE_MITIGATION=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
159+
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
160+
-DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON
143161
- task: CMake@1
144162
displayName: 'CMake (MSVC Spectre): Build x64 Debug'
145163
inputs:
@@ -154,9 +172,31 @@ jobs:
154172
displayName: 'CMake (NO_WCHAR_T): Config'
155173
inputs:
156174
cwd: '$(Build.SourcesDirectory)'
157-
cmakeArgs: '-G "$(VS_GENERATOR)" -A x64 -B out7 -DNO_WCHAR_T=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN11_SDK)'
175+
cmakeArgs: >
176+
-G "$(VS_GENERATOR)" -A x64 -B out7
177+
-DNO_WCHAR_T=ON
178+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN11_SDK)'
158179
- task: CMake@1
159180
displayName: 'CMake (NO_WCHAR_T): Build'
160181
inputs:
161182
cwd: '$(Build.SourcesDirectory)'
162183
cmakeArgs: --build out7 -v --config Debug
184+
- task: CMake@1
185+
displayName: 'CMake (DLL): Config x64'
186+
inputs:
187+
cwd: '$(Build.SourcesDirectory)'
188+
cmakeArgs: >
189+
-G "$(VS_GENERATOR)" -A x64 -B out8
190+
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
191+
-DBUILD_XAUDIO_WIN8=ON -DBUILD_TOOLS=ON
192+
-DBUILD_SHARED_LIBS=ON
193+
- task: CMake@1
194+
displayName: 'CMake (DLL): Build x64 Debug'
195+
inputs:
196+
cwd: '$(Build.SourcesDirectory)'
197+
cmakeArgs: --build out8 -v --config Debug
198+
- task: CMake@1
199+
displayName: 'CMake (DLL): Build x64 Release'
200+
inputs:
201+
cwd: '$(Build.SourcesDirectory)'
202+
cmakeArgs: --build out8 -v --config RelWithDebInfo

0 commit comments

Comments
 (0)