Skip to content

Commit 7f3e73c

Browse files
committed
Test builds with and without C extensions.
1 parent 6245403 commit 7f3e73c

File tree

1 file changed

+30
-13
lines changed

1 file changed

+30
-13
lines changed

.github/workflows/presubmit.yml

Lines changed: 30 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ jobs:
1717
strategy:
1818
matrix:
1919
CMAKE: [3.26.4]
20+
CMAKE_C_EXTENSIONS:
21+
- OFF
22+
- ON
2023
C_COMPILER:
2124
- gcc-11
2225
- gcc-13
@@ -36,27 +39,31 @@ jobs:
3639
- CMAKE: system
3740
C_COMPILER: gcc-9
3841
BIN: 64
42+
CMAKE_C_EXTENSIONS: ON
3943
CONF:
4044
GEN: Unix Makefiles
4145
CONFIG: Debug
4246
IMAGE: khronosgroup/docker-images:opencl-sdk-intelcpu-ubuntu-20.04.20230717
4347
- CMAKE: system
4448
C_COMPILER: gcc-9
4549
BIN: 64
50+
CMAKE_C_EXTENSIONS: ON
4651
CONF:
4752
GEN: Unix Makefiles
4853
CONFIG: Release
4954
IMAGE: khronosgroup/docker-images:opencl-sdk-intelcpu-ubuntu-20.04.20230717
5055
- CMAKE: system
5156
C_COMPILER: gcc-9
5257
BIN: 32
58+
CMAKE_C_EXTENSIONS: ON
5359
CONF:
5460
GEN: Unix Makefiles
5561
CONFIG: Debug
5662
IMAGE: khronosgroup/docker-images:opencl-sdk-intelcpu-ubuntu-20.04.20230717
5763
- CMAKE: system
5864
C_COMPILER: gcc-9
5965
BIN: 32
66+
CMAKE_C_EXTENSIONS: ON
6067
CONF:
6168
GEN: Unix Makefiles
6269
CONFIG: Release
@@ -94,6 +101,7 @@ jobs:
94101
-D CMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/external/OpenCL-Headers/install
95102
-D CPACK_PACKAGING_INSTALL_PREFIX=$DEB_INSTALLATION_PATH
96103
-D BUILD_TESTING=OFF
104+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}}
97105
-S $GITHUB_WORKSPACE/external/OpenCL-Headers
98106
-B $GITHUB_WORKSPACE/external/OpenCL-Headers/build &&
99107
$CMAKE_EXE
@@ -111,6 +119,7 @@ jobs:
111119
-G "${{matrix.CONF.GEN}}"
112120
`if [[ "${{matrix.CONF.GEN}}" == "Unix Makefiles" ]]; then echo "-D CMAKE_BUILD_TYPE=${{matrix.CONF.CONFIG}}"; fi`
113121
-D BUILD_TESTING=ON
122+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}}
114123
-D CMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/install
115124
-D CMAKE_PREFIX_PATH=$GITHUB_WORKSPACE/external/OpenCL-Headers/install
116125
-D CPACK_PACKAGING_INSTALL_PREFIX=$DEB_INSTALLATION_PATH
@@ -231,13 +240,17 @@ jobs:
231240
VER: [v142, v143, clangcl]
232241
GEN: [Visual Studio 17 2022, Ninja Multi-Config]
233242
BIN: [x64]
243+
CMAKE_C_EXTENSIONS:
244+
- OFF
245+
- ON
234246
exclude:
235247
- VER: clangcl
236248
GEN: Ninja Multi-Config
237249
include:
238250
- VER: v142
239251
GEN: Visual Studio 17 2022
240252
BIN: x86
253+
CMAKE_C_EXTENSIONS: ON
241254
env:
242255
NINJA_URL: https://github.com/ninja-build/ninja/releases/download/v1.10.2/ninja-win.zip
243256
NINJA_ROOT: C:\Tools\Ninja
@@ -285,7 +298,7 @@ jobs:
285298
-A $BIN `
286299
-T ${{matrix.VER}} `
287300
-D BUILD_TESTING=OFF `
288-
-D CMAKE_C_EXTENSIONS=OFF `
301+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}} `
289302
-D CMAKE_INSTALL_PREFIX=${env:GITHUB_WORKSPACE}\external\OpenCL-Headers\install `
290303
-S ${env:GITHUB_WORKSPACE}\external\OpenCL-Headers `
291304
-B ${env:GITHUB_WORKSPACE}\external\OpenCL-Headers\build
@@ -311,7 +324,7 @@ jobs:
311324
-G "${{matrix.GEN}}" `
312325
-D CMAKE_MAKE_PROGRAM="${env:NINJA_ROOT}\ninja.exe" `
313326
-D BUILD_TESTING=OFF `
314-
-D CMAKE_C_EXTENSIONS=OFF `
327+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}} `
315328
-D CMAKE_INSTALL_PREFIX=${env:GITHUB_WORKSPACE}\external\OpenCL-Headers\install `
316329
-S ${env:GITHUB_WORKSPACE}\external\OpenCL-Headers `
317330
-B ${env:GITHUB_WORKSPACE}\external\OpenCL-Headers\build
@@ -332,7 +345,7 @@ jobs:
332345
-A $BIN `
333346
-T ${{matrix.VER}} `
334347
-D BUILD_TESTING=ON `
335-
-D CMAKE_C_EXTENSIONS=OFF `
348+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}} `
336349
-D CMAKE_INSTALL_PREFIX=${env:GITHUB_WORKSPACE}\install `
337350
-D CMAKE_PREFIX_PATH=${env:GITHUB_WORKSPACE}\external\OpenCL-Headers\install `
338351
-S ${env:GITHUB_WORKSPACE} `
@@ -351,7 +364,7 @@ jobs:
351364
-G "${{matrix.GEN}}" `
352365
-D CMAKE_MAKE_PROGRAM="${env:NINJA_ROOT}\ninja.exe" `
353366
-D BUILD_TESTING=ON `
354-
-D CMAKE_C_EXTENSIONS=OFF `
367+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}} `
355368
-D CMAKE_EXE_LINKER_FLAGS=/INCREMENTAL `
356369
-D CMAKE_INSTALL_PREFIX=${env:GITHUB_WORKSPACE}\install `
357370
-D CMAKE_PREFIX_PATH=${env:GITHUB_WORKSPACE}\external\OpenCL-Headers\install `
@@ -426,7 +439,7 @@ jobs:
426439
-G '${{matrix.GEN}}' `
427440
-A $BIN `
428441
-T ${{matrix.VER}} `
429-
-D CMAKE_C_EXTENSIONS=OFF `
442+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}} `
430443
-D CMAKE_EXE_LINKER_FLAGS=/INCREMENTAL `
431444
-D CMAKE_PREFIX_PATH="${env:GITHUB_WORKSPACE}\external\OpenCL-Headers\install;${env:GITHUB_WORKSPACE}\install" `
432445
-D DRIVER_STUB_PATH="${env:GITHUB_WORKSPACE}\build\Release\OpenCLDriverStub.dll" `
@@ -466,7 +479,7 @@ jobs:
466479
& cmake `
467480
-G '${{matrix.GEN}}' `
468481
-D CMAKE_MAKE_PROGRAM="${env:NINJA_ROOT}\ninja.exe" `
469-
-D CMAKE_C_EXTENSIONS=OFF `
482+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}} `
470483
-D CMAKE_EXE_LINKER_FLAGS=/INCREMENTAL `
471484
-D CMAKE_PREFIX_PATH="${env:GITHUB_WORKSPACE}\external\OpenCL-Headers\install;${env:GITHUB_WORKSPACE}\install" `
472485
-D DRIVER_STUB_PATH="${env:GITHUB_WORKSPACE}\build\Release\OpenCLDriverStub.dll" `
@@ -509,7 +522,7 @@ jobs:
509522
-G '${{matrix.GEN}}' `
510523
-A $BIN `
511524
-T ${{matrix.VER}} `
512-
-D CMAKE_C_EXTENSIONS=OFF `
525+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}} `
513526
-D CMAKE_EXE_LINKER_FLAGS=/INCREMENTAL `
514527
-D CMAKE_PREFIX_PATH="${env:GITHUB_WORKSPACE}\external\OpenCL-Headers\install;${env:GITHUB_WORKSPACE}\install" `
515528
-D DRIVER_STUB_PATH="${env:GITHUB_WORKSPACE}\build\Release\OpenCLDriverStub.dll" `
@@ -549,7 +562,7 @@ jobs:
549562
& cmake `
550563
-G '${{matrix.GEN}}' `
551564
-D CMAKE_MAKE_PROGRAM="${env:NINJA_ROOT}\ninja.exe" `
552-
-D CMAKE_C_EXTENSIONS=OFF `
565+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}} `
553566
-D CMAKE_EXE_LINKER_FLAGS=/INCREMENTAL `
554567
-D CMAKE_PREFIX_PATH="${env:GITHUB_WORKSPACE}\external\OpenCL-Headers\install;${env:GITHUB_WORKSPACE}\install" `
555568
-D DRIVER_STUB_PATH="${env:GITHUB_WORKSPACE}\build\Release\OpenCLDriverStub.dll" `
@@ -592,6 +605,9 @@ jobs:
592605
# - gcc-11
593606
# Disabled due to problems with the __API_AVAILABLE macro
594607
# - gcc-13
608+
CMAKE_C_EXTENSIONS:
609+
- OFF
610+
- ON
595611
GEN:
596612
- Xcode
597613
- Ninja Multi-Config
@@ -626,7 +642,7 @@ jobs:
626642
run: cmake
627643
-G "${{matrix.GEN}}"
628644
-D BUILD_TESTING=OFF
629-
-D CMAKE_C_EXTENSIONS=OFF
645+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}}
630646
-D CMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/external/OpenCL-Headers/install
631647
-S $GITHUB_WORKSPACE/external/OpenCL-Headers
632648
-B $GITHUB_WORKSPACE/external/OpenCL-Headers/build &&
@@ -640,7 +656,7 @@ jobs:
640656
run: cmake
641657
-G "${{matrix.GEN}}"
642658
-D BUILD_TESTING=ON
643-
-D CMAKE_C_EXTENSIONS=OFF
659+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}}
644660
-D CMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/install
645661
-D CMAKE_PREFIX_PATH=$GITHUB_WORKSPACE/external/OpenCL-Headers/install
646662
-S $GITHUB_WORKSPACE
@@ -664,7 +680,7 @@ jobs:
664680
- name: Consume (install)
665681
run: cmake
666682
-G "${{matrix.GEN}}"
667-
-D CMAKE_C_EXTENSIONS=OFF
683+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}}
668684
-D CMAKE_PREFIX_PATH="$GITHUB_WORKSPACE/external/OpenCL-Headers/install;$GITHUB_WORKSPACE/install"
669685
-S $GITHUB_WORKSPACE/test/pkgconfig/bare
670686
-B $GITHUB_WORKSPACE/build_install &&
@@ -681,7 +697,7 @@ jobs:
681697
run: export PKG_CONFIG_PATH=$GITHUB_WORKSPACE/install/lib/pkgconfig:$GITHUB_WORKSPACE/external/OpenCL-Headers/install/share/pkgconfig &&
682698
cmake
683699
-G "${{matrix.GEN}}"
684-
-D CMAKE_C_EXTENSIONS=OFF
700+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}}
685701
-D CMAKE_PREFIX_PATH="$GITHUB_WORKSPACE/external/OpenCL-Headers/install"
686702
-D DRIVER_STUB_PATH=$GITHUB_WORKSPACE/build/Release/libOpenCLDriverStub.dylib
687703
-B $GITHUB_WORKSPACE/build/downstream/pkgconfig
@@ -724,7 +740,7 @@ jobs:
724740
run: cmake
725741
-G "Unix Makefiles"
726742
-D CMAKE_BUILD_TYPE=${{matrix.CONFIG}}
727-
-D CMAKE_C_EXTENSIONS=OFF
743+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}}
728744
-D CMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/external/OpenCL-Headers/install
729745
-D BUILD_TESTING=OFF
730746
-S $GITHUB_WORKSPACE/external/OpenCL-Headers
@@ -739,6 +755,7 @@ jobs:
739755
run: cmake
740756
-G "Unix Makefiles"
741757
-D BUILD_TESTING=ON
758+
-D CMAKE_C_EXTENSIONS=${{matrix.CMAKE_C_EXTENSIONS}}
742759
-D CMAKE_BUILD_TYPE=${{matrix.CONFIG}}
743760
-D CMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake
744761
-D ANDROID_ABI=${{matrix.ABI}}

0 commit comments

Comments
 (0)