Skip to content

Commit 3c04eac

Browse files
Added clang-cl build to CI (#631)
- Using -G"NMake Makefiles", because I couldn't get the other generators to work with clang-cl - ASAN=off because it's not supported by clang-cl yet
1 parent baa0dab commit 3c04eac

File tree

1 file changed

+47
-9
lines changed

1 file changed

+47
-9
lines changed

.github/workflows/builds.yml

Lines changed: 47 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -181,15 +181,15 @@ jobs:
181181
- name: Build CMake MSVC
182182
working-directory: build/msvc
183183
run: cmake --build . --config RelWithDebInfo --target install
184-
- name: Check artifacts MSVC
184+
- name: Check artifacts CMake MSVC
185185
uses: andstor/file-existence-action@v2
186186
with:
187187
files: "install/msvc/lib/hidapi.lib, \
188188
install/msvc/bin/hidapi.dll, \
189189
install/msvc/include/hidapi/hidapi.h, \
190190
install/msvc/include/hidapi/hidapi_winapi.h"
191191
fail: true
192-
- name: Check CMake Export Package
192+
- name: Check CMake MSVC Export Package
193193
shell: cmd
194194
run: |
195195
cmake ^
@@ -205,26 +205,26 @@ jobs:
205205
working-directory: build/msvc
206206
run: ctest -C RelWithDebInfo --no-compress-output --output-on-failure
207207

208-
- name: Configure CMake NMake
208+
- name: Configure CMake NMake MSVC
209209
shell: cmd
210210
run: |
211211
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
212212
cmake -G"NMake Makefiles" -B build\nmake -S hidapisrc -DCMAKE_BUILD_TYPE=RelWithDebInfo -DHIDAPI_WITH_TESTS=ON -DHIDAPI_BUILD_PP_DATA_DUMP=ON -DHIDAPI_ENABLE_ASAN=ON -DCMAKE_INSTALL_PREFIX=install\nmake -DHIDAPI_BUILD_HIDTEST=ON "-DCMAKE_C_FLAGS=%MSVC_COMPILE_FLAGS%"
213-
- name: Build CMake NMake
213+
- name: Build CMake NMake MSVC
214214
working-directory: build\nmake
215215
shell: cmd
216216
run: |
217217
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
218218
nmake install
219-
- name: Check artifacts NMake
219+
- name: Check artifacts CMake NMake MSVC
220220
uses: andstor/file-existence-action@v2
221221
with:
222222
files: "install/nmake/lib/hidapi.lib, \
223223
install/nmake/bin/hidapi.dll, \
224224
install/nmake/include/hidapi/hidapi.h, \
225225
install/nmake/include/hidapi/hidapi_winapi.h"
226226
fail: true
227-
- name: Check CMake Export Package NMake
227+
- name: Check CMake NMake MSVC Export Package
228228
shell: cmd
229229
run: |
230230
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
@@ -237,10 +237,48 @@ jobs:
237237
"-DCMAKE_C_FLAGS=%MSVC_COMPILE_FLAGS%"
238238
cd build\nmake_test
239239
nmake install
240-
- name: Run CTest NMake
240+
- name: Run CTest NMake MSVC
241241
working-directory: build\nmake
242242
run: ctest --no-compress-output --output-on-failure
243243

244+
- name: Configure CMake NMake ClangCL
245+
shell: cmd
246+
run: |
247+
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
248+
cmake -G"NMake Makefiles" -B build\clang_cl -S hidapisrc -D CMAKE_C_COMPILER=clang-cl -DCMAKE_BUILD_TYPE=RelWithDebInfo -DHIDAPI_WITH_TESTS=ON -DHIDAPI_BUILD_PP_DATA_DUMP=ON -DHIDAPI_ENABLE_ASAN=OFF -DCMAKE_INSTALL_PREFIX=install\clang_cl -DHIDAPI_BUILD_HIDTEST=ON "-DCMAKE_C_FLAGS=%MSVC_COMPILE_FLAGS%"
249+
- name: Build CMake NMake ClangCL
250+
working-directory: build\clang_cl
251+
shell: cmd
252+
run: |
253+
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
254+
nmake install
255+
- name: Check artifacts CMake NMake ClangCL
256+
uses: andstor/file-existence-action@v2
257+
with:
258+
files: "install/clang_cl/lib/hidapi.lib, \
259+
install/clang_cl/bin/hidapi.dll, \
260+
install/clang_cl/include/hidapi/hidapi.h, \
261+
install/clang_cl/include/hidapi/hidapi_winapi.h"
262+
fail: true
263+
- name: Check CMake NMake ClangCL Export Package
264+
shell: cmd
265+
run: |
266+
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
267+
cmake ^
268+
-G"NMake Makefiles" ^
269+
-B build\clang_cl_test ^
270+
-S hidapisrc\hidtest ^
271+
-D CMAKE_C_COMPILER=clang-cl ^
272+
-Dhidapi_ROOT=install\clang_cl ^
273+
-DCMAKE_INSTALL_PREFIX=install\clang_cl_test ^
274+
"-DCMAKE_C_FLAGS=%MSVC_COMPILE_FLAGS%"
275+
cd build\clang_cl_test
276+
cmake --build . --target install
277+
- name: Run CTest NMake ClangCL
278+
shell: cmd
279+
working-directory: build/clang_cl
280+
run: ctest -C RelWithDebInfo --no-compress-output --output-on-failure
281+
244282
- name: Configure CMake MinGW
245283
shell: cmd
246284
run: |
@@ -288,14 +326,14 @@ jobs:
288326
steps:
289327
- uses: actions/checkout@v3
290328
- uses: microsoft/setup-msbuild@v1.1
291-
- name: MSBuild x86
329+
- name: MSBuild x86 MSVC
292330
run: msbuild windows\hidapi.sln /p:Configuration=Release /p:Platform=Win32
293331
- name: Check artifacts x86
294332
uses: andstor/file-existence-action@v2
295333
with:
296334
files: "windows/Release/hidapi.dll, windows/Release/hidapi.lib, windows/Release/hidapi.pdb"
297335
fail: true
298-
- name: MSBuild x64
336+
- name: MSBuild x64 MSVC
299337
run: msbuild windows\hidapi.sln /p:Configuration=Release /p:Platform=x64
300338
- name: Check artifacts x64
301339
uses: andstor/file-existence-action@v2

0 commit comments

Comments
 (0)