@@ -3,17 +3,34 @@ name: Presubmit
3
3
on : [push, pull_request]
4
4
5
5
jobs :
6
+ get-branch :
7
+ runs-on : ubuntu-latest
8
+ steps :
9
+ - name : Get working branch
10
+ id : get-branch
11
+ run : |
12
+ if [[ ${{ github.event_name }} == "push" ]]; then
13
+ echo "branch=main" >> $GITHUB_OUTPUT
14
+ else
15
+ echo "branch=${{ github.base_ref }}" >> $GITHUB_OUTPUT
16
+ fi ;
17
+ echo $GITHUB_OUTPUT
18
+ outputs :
19
+ branch : ${{ steps.get-branch.outputs.branch }}
20
+
6
21
format :
7
22
name : Code formatting
8
23
runs-on : ubuntu-latest
24
+ needs : get-branch
9
25
steps :
10
26
- uses : actions/checkout@v3
11
27
with :
28
+ # repository: ${{ github.repository }} (default)
12
29
fetch-depth : 0
13
30
- name : Install clang-format
14
31
run : sudo apt-get install clang-format
15
32
- name : Check format
16
- run : . /scripts/check-format.sh origin/main --binary clang-format
33
+ run : $GITHUB_WORKSPACE /scripts/check-format.sh origin/${{ needs.get-branch.outputs.branch }} --binary clang-format
17
34
18
35
linux :
19
36
runs-on : ubuntu-latest
@@ -163,7 +180,10 @@ jobs:
163
180
shell : bash
164
181
# /usr/include is already on the include search path,
165
182
# we don't expect any output
166
- run : pkg-config OpenCL-Headers --cflags
183
+ run : if [[ $(pkg-config OpenCL --cflags) ]];
184
+ then
185
+ exit 1;
186
+ fi;
167
187
168
188
- name : Uninstall (DEB)
169
189
shell : bash
@@ -204,11 +224,11 @@ jobs:
204
224
pkg-config OpenCL-Headers --cflags | grep -q "\-I$GITHUB_WORKSPACE/install/include"
205
225
206
226
windows :
207
- runs-on : windows-2022
227
+ runs-on : windows-latest
208
228
needs : format
209
229
strategy :
210
230
matrix :
211
- VER : [v142, v143, clangcl]
231
+ VER : [v141, v142, v143, clangcl]
212
232
GEN : [Visual Studio 17 2022, Ninja Multi-Config]
213
233
BIN : [x64]
214
234
STD : [99, 11, 17]
@@ -257,7 +277,7 @@ jobs:
257
277
$C_FLAGS = '/W4 /WX'
258
278
& cmake `
259
279
-G '${{matrix.GEN}}' `
260
- -A $BIN `
280
+ -A ${ BIN} `
261
281
-T ${{matrix.VER}} `
262
282
-D BUILD_TESTING=ON `
263
283
-D CMAKE_C_STANDARD=${{matrix.STD}} `
@@ -341,15 +361,15 @@ jobs:
341
361
--prefix "${env:GITHUB_WORKSPACE}\install" `
342
362
--config Release
343
363
344
- - name : Consume (PkgConfig - bare MSBuild)
364
+ - name : " Consume (MSBuild standalone): Configure/Build/Test "
345
365
if : matrix.GEN == 'Visual Studio 17 2022'
346
366
shell : pwsh
347
367
run : |
348
368
$BIN = if('${{matrix.BIN}}' -eq 'x86') {'Win32'} else {'x64'}
349
369
$C_FLAGS = '/W4 /WX'
350
370
& cmake `
351
371
-G '${{matrix.GEN}}' `
352
- -A $BIN `
372
+ -A ${ BIN} `
353
373
-T ${{matrix.VER}} `
354
374
-D CMAKE_C_STANDARD=${{matrix.STD}} `
355
375
-D CMAKE_C_FLAGS="${C_FLAGS}" `
@@ -368,7 +388,7 @@ jobs:
368
388
/noLogo `
369
389
}
370
390
371
- - name : Consume (PkgConfig - bare Ninja Multi-Config)
391
+ - name : " Consume (Ninja Multi-Config standalone): Configure/Build/Test "
372
392
if : matrix.GEN == 'Ninja Multi-Config'
373
393
shell : pwsh
374
394
run : |
@@ -405,15 +425,15 @@ jobs:
405
425
New-Item -Type Directory -Path ${env:GITHUB_WORKSPACE}\install\share\cmake\OpenCL
406
426
New-Item -Type File -Path ${env:GITHUB_WORKSPACE}\install\share\cmake\OpenCL\OpenCLConfig.cmake -Value 'include("${CMAKE_CURRENT_LIST_DIR}/../OpenCLHeaders/OpenCLHeadersTargets.cmake")'
407
427
408
- - name : Consume (PkgConfig - SDK MSBuild)
428
+ - name : " Consume (MSBuild SDK): Configure/Build/Test "
409
429
if : matrix.GEN == 'Visual Studio 17 2022'
410
430
shell : pwsh
411
431
run : |
412
432
$BIN = if('${{matrix.BIN}}' -eq 'x86') {'Win32'} else {'x64'}
413
433
$C_FLAGS = '/W4 /WX'
414
434
& cmake `
415
435
-G '${{matrix.GEN}}' `
416
- -A $BIN `
436
+ -A ${ BIN} `
417
437
-T ${{matrix.VER}} `
418
438
-D CMAKE_C_STANDARD=${{matrix.STD}} `
419
439
-D CMAKE_C_FLAGS="${C_FLAGS}" `
@@ -432,7 +452,7 @@ jobs:
432
452
/noLogo `
433
453
}
434
454
435
- - name : Consume (PkgConfig - SDK Ninja Multi-Config)
455
+ - name : " Consume (Ninja- Multi-Config SDK): Configure/Build/Test "
436
456
if : matrix.GEN == 'Ninja Multi-Config'
437
457
shell : pwsh
438
458
run : |
@@ -464,15 +484,15 @@ jobs:
464
484
}
465
485
466
486
macos :
467
- runs-on : macos-13
487
+ runs-on : macos-latest
468
488
needs : format
469
489
strategy :
470
490
matrix :
471
491
C_COMPILER :
472
492
- /usr/bin/gcc # Actually Clang 14
473
493
- /usr/local/bin/gcc-11
474
494
- /usr/local/bin/gcc-13
475
- GEN :
495
+ GEN :
476
496
- Xcode
477
497
- Ninja Multi-Config
478
498
STD : [99, 11, 17]
@@ -537,7 +557,7 @@ jobs:
537
557
-D CMAKE_C_STANDARD=${{matrix.STD}}
538
558
-D CMAKE_C_EXTENSIONS=OFF
539
559
-D CMAKE_C_STANDARD_REQUIRED=ON
540
- -D CMAKE_INSTALL_PREFIX= $GITHUB_WORKSPACE/install
560
+ -D CMAKE_PREFIX_PATH=" $GITHUB_WORKSPACE/install"
541
561
-S $GITHUB_WORKSPACE/tests/pkgconfig/bare
542
562
-B $GITHUB_WORKSPACE/build_install &&
543
563
cmake --build $GITHUB_WORKSPACE/build_install --config Release --parallel `sysctl -n hw.logicalcpu` `if [[ "${{matrix.GEN}}" == "Xcode" ]]; then echo "-- -quiet"; fi;` &&
@@ -546,11 +566,12 @@ jobs:
546
566
- name : Test pkg-config
547
567
shell : bash
548
568
run : |
549
- if [[ ! `which pkg-config` ]]; then brew install pkg-config; fi;
550
- PKG_CONFIG_PATH="$GITHUB_WORKSPACE/install/share/pkgconfig" pkg-config OpenCL-Headers --cflags | grep -q "\-I$GITHUB_WORKSPACE/install/include"
569
+ if [[ ! `which pkg-config` ]]; then brew install pkg-config; fi &&
570
+ export PKG_CONFIG_PATH="$GITHUB_WORKSPACE/install/share/pkgconfig" &&
571
+ pkg-config OpenCL-Headers --cflags | grep -q "\-I$GITHUB_WORKSPACE/install/include"
551
572
552
573
android :
553
- runs-on : ubuntu-22.04
574
+ runs-on : ubuntu-latest
554
575
needs : format
555
576
strategy :
556
577
matrix :
@@ -574,7 +595,6 @@ jobs:
574
595
-D BUILD_TESTING=ON
575
596
-D CMAKE_BUILD_TYPE=${{matrix.CONFIG}}
576
597
-D CMAKE_C_FLAGS="-Wall -Wextra -pedantic -Werror"
577
- -D CMAKE_C_STANDARD_REQUIRED=ON
578
598
-D CMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake
579
599
-D ANDROID_ABI=${{matrix.ABI}}
580
600
-D ANDROID_PLATFORM=${{matrix.API_LEVEL}}
0 commit comments