Skip to content

Commit 340a39d

Browse files
committed
refactor error API: update CI files
1 parent 1a76ea3 commit 340a39d

10 files changed

Lines changed: 246 additions & 90 deletions

File tree

.github/workflows-in/clang.ys

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ jobs:
2424
:: setup-job('clang' 'tabtokens')
2525
name: tabtokens/${{matrix.cxx}}/c++${{matrix.std}}/${{matrix.bt}}
2626
:: runs-on-docker-c4core('22.04')
27+
needs: canary
2728
strategy:
2829
fail-fast: false
2930
matrix:
@@ -37,6 +38,7 @@ jobs:
3738
:: setup-job('clang' 'noexceptions')
3839
name: noexceptions/${{matrix.cxx}}/c++${{matrix.std}}/${{matrix.bt}}
3940
:: runs-on-docker-c4core('22.04')
41+
needs: canary
4042
strategy:
4143
fail-fast: false
4244
matrix:
@@ -50,6 +52,7 @@ jobs:
5052
:: setup-job('clang' 'extended')
5153
name: extended/${{matrix.cxx}}/${{matrix.bits}}bit/c++${{matrix.std}}/vg${{matrix.vg}}
5254
:: runs-on-docker-c4core('${{matrix.img}}')
55+
needs: canary
5356
strategy:
5457
fail-fast: false
5558
matrix:
@@ -109,6 +112,7 @@ jobs:
109112
:: setup-job('clang' 'clangsan')
110113
name: san/${{matrix.bt}}/c++${{matrix.std}}
111114
:: runs-on-docker-c4core('22.04')
115+
needs: canary
112116
strategy:
113117
fail-fast: false
114118
matrix:
@@ -118,7 +122,7 @@ jobs:
118122
std [11 14 17 20]
119123
: !
120124
std:: std
121-
cxx: clang++-17
125+
cxx: clang++-18
122126
bt:: san
123127
bitlinks: static64
124128
env:: load('share/env.yaml')

.github/workflows-in/coverage.ys

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,12 @@ jobs:
1313
matrix:
1414
include:
1515
# test also with the debug code enabled
16-
- {std: 11, namesfx: 64bit , cmk: "-DCMAKE_CXX_FLAGS=-m64"}
17-
- {std: 11, namesfx: 64bit_dbg, cmk: "-DCMAKE_CXX_FLAGS=-m64 -DRYML_DBG=ON"}
18-
- {std: 17, namesfx: 64bit , cmk: "-DCMAKE_CXX_FLAGS=-m64"}
19-
- {std: 17, namesfx: 64bit_dbg, cmk: "-DCMAKE_CXX_FLAGS=-m64 -DRYML_DBG=ON"}
20-
- {std: 11, namesfx: 32bit , cmk: "-DCMAKE_CXX_FLAGS=-m32"}
21-
- {std: 11, namesfx: 32bit_dbg, cmk: "-DCMAKE_CXX_FLAGS=-m32 -DRYML_DBG=ON"}
22-
- {std: 17, namesfx: 32bit , cmk: "-DCMAKE_CXX_FLAGS=-m32"}
23-
- {std: 17, namesfx: 32bit_dbg, cmk: "-DCMAKE_CXX_FLAGS=-m32 -DRYML_DBG=ON"}
16+
- {std: 11, namesfx: 64bit , cmk: "-DCMAKE_CXX_FLAGS=-m64"}
17+
- {std: 11, namesfx: 64bit_noexc, cmk: "-DCMAKE_CXX_FLAGS='-m64 -fno-exceptions -fno-rtti'"}
18+
- {std: 11, namesfx: 64bit_exc , cmk: "-DCMAKE_CXX_FLAGS='-m64' -DRYML_DEFAULT_CALLBACK_USES_EXCEPTIONS=ON"}
19+
- {std: 11, namesfx: 64bit_dbg , cmk: "-DCMAKE_CXX_FLAGS=-m64 -DRYML_DBG=ON"}
20+
- {std: 11, namesfx: 32bit , cmk: "-DCMAKE_CXX_FLAGS=-m32"}
21+
- {std: 11, namesfx: 32bit_dbg , cmk: "-DCMAKE_CXX_FLAGS=-m32 -DRYML_DBG=ON"}
2422
env:
2523
GCC_VERSION: 13 # the default compiler
2624
LCOV_ARGS: -v --ignore-errors mismatch,mismatch --ignore-errors unused,unused

.github/workflows-in/embedded.ys

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
!yamlscript/v0
2+
3+
matrix =::
4+
- {arch: aarch64 , tc: aarch64-linux-gnu} # this is armv8
5+
- {arch: armv7 , tc: arm-linux-gnueabihf, flags: -march=armv7+fp}
6+
- {arch: armv6 , tc: arm-linux-gnueabi, flags: -march=armv6+fp}
7+
- {arch: armv5 , tc: arm-linux-gnueabi, flags: -march=armv5te+fp}
8+
- {arch: armv4 , tc: arm-linux-gnueabi, flags: -march=armv4}
9+
- {arch: loongarch64, tc: loongarch64-linux-gnu, version: -14}
10+
- {arch: mips , tc: mips-linux-gnu}
11+
- {arch: mipsel , tc: mipsel-linux-gnu}
12+
- {arch: mips64 , tc: mips64-linux-gnuabi64}
13+
- {arch: mips64el , tc: mips64el-linux-gnuabi64}
14+
- {arch: riscv64 , tc: riscv64-linux-gnu}
15+
- {arch: s390x , tc: s390x-linux-gnu}
16+
- {arch: ppc , tc: powerpc-linux-gnu}
17+
- {arch: ppc64 , tc: powerpc64-linux-gnu}
18+
- {arch: ppc64le , tc: powerpc64le-linux-gnu}
19+
- {arch: sparc64 , tc: sparc64-linux-gnu}
20+
# TODO xtensa!
21+
22+
=>: matrix # this is needed to use +++.$ (the operator containing the last document)
23+
24+
25+
--- !yamlscript/v0:
26+
27+
:use common: :all
28+
:: workflow-setup()
29+
::
30+
defn define-workflow(list-elms)::
31+
name: ${{matrix.arch}}
32+
runs-on: ubuntu-24.04
33+
strategy:
34+
fail-fast: false
35+
matrix:
36+
include:: list-elms
37+
steps:
38+
- :: checkout-action
39+
- name: install
40+
run: |
41+
sudo apt-get update
42+
sudo apt-get install -y \
43+
gcc${{matrix.version}}-${{matrix.tc}} \
44+
g++${{matrix.version}}-${{matrix.tc}} \
45+
qemu-user-static
46+
- name: info
47+
run: |
48+
${{matrix.tc}}-g++${{matrix.version}} --version
49+
${{matrix.tc}}-g++${{matrix.version}} -dM -E - </dev/null | sort
50+
${{matrix.tc}}-g++${{matrix.version}} ${{matrix.flags}} -dM -E - </dev/null | sort
51+
- :: xcompile-steps("${{matrix.arch}}" "Debug" "11" "${{matrix.flags}}")
52+
- :: xcompile-steps("${{matrix.arch}}" "Release" "11" "${{matrix.flags}}")
53+
- :: xcompile-steps("${{matrix.arch}}" "Debug" "20" "${{matrix.flags}}")
54+
- :: xcompile-steps("${{matrix.arch}}" "Release" "20" "${{matrix.flags}}")
55+
56+
=>: nil # this is needed!
57+
58+
jobs:
59+
60+
canary:
61+
:: setup-job('embedded' 'canary') + first(matrix):list:define-workflow # could use +++.$ instead
62+
63+
xcompile:
64+
needs: canary
65+
:: setup-job('embedded' 'xcompile') + rest(+++.$):define-workflow # requires =>: matrix on the first doc

.github/workflows-in/gcc.ys

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ jobs:
3232
:: setup-job('gcc' 'tabtokens')
3333
name: tabtokens/${{matrix.cxx}}/c++${{matrix.std}}/${{matrix.bt}}
3434
:: runs-on-docker-c4core('${{matrix.img}}')
35+
needs: canary
3536
strategy:
3637
fail-fast: false
3738
matrix:
@@ -44,6 +45,7 @@ jobs:
4445
:: setup-job('gcc' 'noexceptions')
4546
name: noexceptions/${{matrix.cxx}}/c++${{matrix.std}}/${{matrix.bt}}
4647
:: runs-on-docker-c4core('${{matrix.img}}')
48+
needs: canary
4749
strategy:
4850
fail-fast: false
4951
matrix:
@@ -56,6 +58,7 @@ jobs:
5658
:: setup-job('gcc' 'misbuild')
5759
name: misbuild#${{matrix.issue}}/gcc${{matrix.gcc}}/c++${{matrix.std}}
5860
:: runs-on-docker-c4core('${{matrix.img}}')
61+
needs: canary
5962
strategy:
6063
fail-fast: false
6164
matrix:
@@ -87,6 +90,7 @@ jobs:
8790
:: setup-job('gcc' 'extended')
8891
name: extended/${{matrix.cxx}}/${{matrix.bits}}bit/c++${{matrix.std}}/vg${{matrix.vg}}
8992
:: runs-on-docker-c4core('${{matrix.img}}')
93+
needs: canary
9094
strategy:
9195
fail-fast: false
9296
matrix:
@@ -139,6 +143,7 @@ jobs:
139143
:: setup-job('gcc' 'gccsan')
140144
name: gccsan/${{matrix.bt}}/${{matrix.cxx}}/c++${{matrix.std}}
141145
:: runs-on-docker-c4core('22.04')
146+
needs: canary
142147
strategy:
143148
fail-fast: false
144149
matrix:
@@ -154,6 +159,7 @@ jobs:
154159
arm:
155160
:: setup-job('gcc' 'arm') + runs-on-docker-c4core('18.04')
156161
name: arm/c++${{matrix.std}}/${{matrix.bt}}
162+
needs: canary
157163
strategy:
158164
fail-fast: false
159165
matrix:

.github/workflows-in/rarearchs.ys

Lines changed: 0 additions & 49 deletions
This file was deleted.

.github/workflows/clang.yml

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ jobs:
9494
name: tabtokens/${{matrix.cxx}}/c++${{matrix.std}}/${{matrix.bt}}
9595
runs-on: ubuntu-24.04
9696
container: ghcr.io/biojppm/c4core/ubuntu22.04:latest
97+
needs: canary
9798
strategy:
9899
fail-fast: false
99100
matrix:
@@ -164,6 +165,7 @@ jobs:
164165
name: noexceptions/${{matrix.cxx}}/c++${{matrix.std}}/${{matrix.bt}}
165166
runs-on: ubuntu-24.04
166167
container: ghcr.io/biojppm/c4core/ubuntu22.04:latest
168+
needs: canary
167169
strategy:
168170
fail-fast: false
169171
matrix:
@@ -234,6 +236,7 @@ jobs:
234236
name: extended/${{matrix.cxx}}/${{matrix.bits}}bit/c++${{matrix.std}}/vg${{matrix.vg}}
235237
runs-on: ubuntu-24.04
236238
container: ghcr.io/biojppm/c4core/ubuntu${{matrix.img}}:latest
239+
needs: canary
237240
strategy:
238241
fail-fast: false
239242
matrix:
@@ -619,72 +622,73 @@ jobs:
619622
name: san/${{matrix.bt}}/c++${{matrix.std}}
620623
runs-on: ubuntu-24.04
621624
container: ghcr.io/biojppm/c4core/ubuntu22.04:latest
625+
needs: canary
622626
strategy:
623627
fail-fast: false
624628
matrix:
625629
include:
626630
- std: 11
627-
cxx: clang++-17
631+
cxx: clang++-18
628632
bt: asan
629633
bitlinks: static64
630634
- std: 14
631-
cxx: clang++-17
635+
cxx: clang++-18
632636
bt: asan
633637
bitlinks: static64
634638
- std: 17
635-
cxx: clang++-17
639+
cxx: clang++-18
636640
bt: asan
637641
bitlinks: static64
638642
- std: 20
639-
cxx: clang++-17
643+
cxx: clang++-18
640644
bt: asan
641645
bitlinks: static64
642646
- std: 11
643-
cxx: clang++-17
647+
cxx: clang++-18
644648
bt: lsan
645649
bitlinks: static64
646650
- std: 14
647-
cxx: clang++-17
651+
cxx: clang++-18
648652
bt: lsan
649653
bitlinks: static64
650654
- std: 17
651-
cxx: clang++-17
655+
cxx: clang++-18
652656
bt: lsan
653657
bitlinks: static64
654658
- std: 20
655-
cxx: clang++-17
659+
cxx: clang++-18
656660
bt: lsan
657661
bitlinks: static64
658662
- std: 11
659-
cxx: clang++-17
663+
cxx: clang++-18
660664
bt: tsan
661665
bitlinks: static64
662666
- std: 14
663-
cxx: clang++-17
667+
cxx: clang++-18
664668
bt: tsan
665669
bitlinks: static64
666670
- std: 17
667-
cxx: clang++-17
671+
cxx: clang++-18
668672
bt: tsan
669673
bitlinks: static64
670674
- std: 20
671-
cxx: clang++-17
675+
cxx: clang++-18
672676
bt: tsan
673677
bitlinks: static64
674678
- std: 11
675-
cxx: clang++-17
679+
cxx: clang++-18
676680
bt: ubsan
677681
bitlinks: static64
678682
- std: 14
679-
cxx: clang++-17
683+
cxx: clang++-18
680684
bt: ubsan
681685
bitlinks: static64
682686
- std: 17
683-
cxx: clang++-17
687+
cxx: clang++-18
684688
bt: ubsan
685689
bitlinks: static64
686690
- std: 20
687-
cxx: clang++-17
691+
cxx: clang++-18
688692
bt: ubsan
689693
bitlinks: static64
690694
env:

.github/workflows/coverage.yml

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,12 @@ jobs:
3232
namesfx: 64bit
3333
cmk: -DCMAKE_CXX_FLAGS=-m64
3434
- std: 11
35-
namesfx: 64bit_dbg
36-
cmk: -DCMAKE_CXX_FLAGS=-m64 -DRYML_DBG=ON
37-
- std: 17
38-
namesfx: 64bit
39-
cmk: -DCMAKE_CXX_FLAGS=-m64
40-
- std: 17
35+
namesfx: 64bit_noexc
36+
cmk: -DCMAKE_CXX_FLAGS='-m64 -fno-exceptions -fno-rtti'
37+
- std: 11
38+
namesfx: 64bit_exc
39+
cmk: -DCMAKE_CXX_FLAGS='-m64' -DRYML_DEFAULT_CALLBACK_USES_EXCEPTIONS=ON
40+
- std: 11
4141
namesfx: 64bit_dbg
4242
cmk: -DCMAKE_CXX_FLAGS=-m64 -DRYML_DBG=ON
4343
- std: 11
@@ -46,12 +46,6 @@ jobs:
4646
- std: 11
4747
namesfx: 32bit_dbg
4848
cmk: -DCMAKE_CXX_FLAGS=-m32 -DRYML_DBG=ON
49-
- std: 17
50-
namesfx: 32bit
51-
cmk: -DCMAKE_CXX_FLAGS=-m32
52-
- std: 17
53-
namesfx: 32bit_dbg
54-
cmk: -DCMAKE_CXX_FLAGS=-m32 -DRYML_DBG=ON
5549
env:
5650
GCC_VERSION: 13
5751
LCOV_ARGS: -v --ignore-errors mismatch,mismatch --ignore-errors unused,unused

0 commit comments

Comments
 (0)