@@ -17,61 +17,65 @@ jobs:
1717
1818 matrix :
1919 include :
20- - os : ubuntu-22 .04
21- cxx : " clang++-15 "
20+ - os : ubuntu-24 .04
21+ cxx : " clang++-16 "
2222 link : " dynamic"
2323 optimization : " debug"
2424 assert : " debug"
2525 coverage : " nocov"
2626 boost : " --build-boost"
2727 icu : " "
28+ llvm : " "
2829 secp256k1 : " --build-secp256k1"
29- cc : " clang-15 "
30+ cc : " clang-16 "
3031 flags : " -Og -fPIE"
3132 options : " --enable-isystem --enable-avx2 --enable-sse4"
3233 packager : " apt"
3334 packages : " "
3435
35- - os : ubuntu-22 .04
36- cxx : " clang++-15 "
36+ - os : ubuntu-24 .04
37+ cxx : " clang++-16 "
3738 link : " static"
3839 optimization : " size"
3940 assert : " ndebug"
4041 coverage : " nocov"
4142 boost : " --build-boost"
4243 icu : " --build-icu --with-icu"
44+ llvm : " "
4345 secp256k1 : " --build-secp256k1"
44- cc : " clang-15 "
46+ cc : " clang-16 "
4547 flags : " -Os -fPIE"
4648 options : " --enable-isystem --enable-avx2"
4749 packager : " apt"
4850 packages : " "
4951
50- - os : ubuntu-22 .04
51- cxx : " g++-11 "
52+ - os : ubuntu-24 .04
53+ cxx : " g++-12 "
5254 link : " dynamic"
5355 optimization : " size"
5456 assert : " ndebug"
5557 coverage : " nocov"
5658 boost : " --build-boost"
5759 icu : " "
60+ llvm : " "
5861 secp256k1 : " --build-secp256k1"
59- cc : " gcc-11 "
62+ cc : " gcc-12 "
6063 flags : " -Os -fPIE"
6164 options : " --enable-isystem --enable-sse4"
6265 packager : " apt"
6366 packages : " "
6467
65- - os : ubuntu-22 .04
66- cxx : " g++-11 "
68+ - os : ubuntu-24 .04
69+ cxx : " g++-12 "
6770 link : " static"
6871 optimization : " size"
6972 assert : " ndebug"
7073 coverage : " cov"
7174 boost : " --build-boost"
7275 icu : " --build-icu --with-icu"
76+ llvm : " "
7377 secp256k1 : " --build-secp256k1"
74- cc : " gcc-11 "
78+ cc : " gcc-12 "
7579 flags : " -Os -g --coverage -fPIE"
7680 options : " --enable-isystem"
7781 packager : " apt"
@@ -85,12 +89,13 @@ jobs:
8589 coverage : " nocov"
8690 boost : " --build-boost"
8791 icu : " "
92+ llvm : " llvm@16"
8893 secp256k1 : " --build-secp256k1"
8994 cc : " clang"
9095 flags : " -Os -fPIE -DBOOST_NO_CXX98_FUNCTION_BASE"
9196 options : " --enable-isystem"
9297 packager : " brew"
93- packages : " icu4c"
98+ packages : " llvm@16 icu4c"
9499
95100 - os : macos-latest
96101 cxx : " clang++"
@@ -100,12 +105,13 @@ jobs:
100105 coverage : " nocov"
101106 boost : " --build-boost"
102107 icu : " "
108+ llvm : " llvm@16"
103109 secp256k1 : " --build-secp256k1"
104110 cc : " clang"
105111 flags : " -Os -fvisibility=hidden -fPIE -DBOOST_NO_CXX98_FUNCTION_BASE"
106112 options : " --enable-isystem"
107113 packager : " brew"
108- packages : " icu4c"
114+ packages : " llvm@16 icu4c"
109115
110116
111117 runs-on : ${{ matrix.os }}
@@ -135,6 +141,9 @@ jobs:
135141 if : ${{ matrix.packager == 'brew' }}
136142 run : |
137143 brew install autoconf automake libtool ${{ matrix.packages }}
144+ if [[ -n ${{ matrix.llvm }} ]]; then
145+ echo "PATH=/opt/homebrew/opt/${{ matrix.llvm }}/bin:$PATH" >> $GITHUB_ENV
146+ fi
138147
139148 - name : Denormalize parameterization
140149 shell : bash
@@ -181,9 +190,9 @@ jobs:
181190 - name : Coveralls Calculation
182191 if : ${{ matrix.coverage == 'cov' }}
183192 run : |
184- lcov --directory . --capture --output-file coverage.info
185- lcov --remove coverage.info "/usr/*" "${{ env.LIBBITCOIN_SRC_PATH }}prefix/*" "${{ github.workspace }}/examples/*" "${{ github.workspace }}/test/*" "${{ github.workspace }}/src/wallet/addresses/qrencode/*" --output-file coverage.info
186- lcov --list coverage.info
193+ lcov --directory . --capture --ignore-errors version -- output-file coverage.info
194+ lcov --remove coverage.info "/usr/*" "${{ env.LIBBITCOIN_SRC_PATH }}prefix/*" "${{ github.workspace }}/examples/*" "${{ github.workspace }}/test/*" "${{ github.workspace }}/src/wallet/addresses/qrencode/*" --output-file --ignore-errors version coverage.info
195+ lcov --list --ignore-errors version coverage.info
187196
188197 - name : Coveralls.io Upload
189198 if : ${{ matrix.coverage == 'cov' }}
@@ -249,61 +258,65 @@ jobs:
249258
250259 matrix :
251260 include :
252- - os : ubuntu-22 .04
253- cxx : " clang++-15 "
261+ - os : ubuntu-24 .04
262+ cxx : " clang++-16 "
254263 link : " dynamic"
255264 optimization : " debug"
256265 assert : " debug"
257266 coverage : " nocov"
258267 boost : " --build-boost"
259268 icu : " "
269+ llvm : " "
260270 secp256k1 : " --build-secp256k1"
261- cc : " clang-15 "
271+ cc : " clang-16 "
262272 flags : " -Og -fPIE"
263273 options : " -Denable-avx2=on -Denable-sse4=on"
264274 packager : " apt"
265275 packages : " "
266276
267- - os : ubuntu-22 .04
268- cxx : " clang++-15 "
277+ - os : ubuntu-24 .04
278+ cxx : " clang++-16 "
269279 link : " static"
270280 optimization : " size"
271281 assert : " ndebug"
272282 coverage : " nocov"
273283 boost : " --build-boost"
274284 icu : " --build-icu --with-icu"
285+ llvm : " "
275286 secp256k1 : " --build-secp256k1"
276- cc : " clang-15 "
287+ cc : " clang-16 "
277288 flags : " -Os -fPIE"
278289 options : " -Denable-avx2=on"
279290 packager : " apt"
280291 packages : " "
281292
282- - os : ubuntu-22 .04
283- cxx : " g++-11 "
293+ - os : ubuntu-24 .04
294+ cxx : " g++-12 "
284295 link : " dynamic"
285296 optimization : " size"
286297 assert : " ndebug"
287298 coverage : " nocov"
288299 boost : " --build-boost"
289300 icu : " "
301+ llvm : " "
290302 secp256k1 : " --build-secp256k1"
291- cc : " gcc-11 "
303+ cc : " gcc-12 "
292304 flags : " -Os -fPIE"
293305 options : " -Denable-sse4=on"
294306 packager : " apt"
295307 packages : " "
296308
297- - os : ubuntu-22 .04
298- cxx : " g++-11 "
309+ - os : ubuntu-24 .04
310+ cxx : " g++-12 "
299311 link : " static"
300312 optimization : " size"
301313 assert : " ndebug"
302314 coverage : " nocov"
303315 boost : " --build-boost"
304316 icu : " --build-icu --with-icu"
317+ llvm : " "
305318 secp256k1 : " --build-secp256k1"
306- cc : " gcc-11 "
319+ cc : " gcc-12 "
307320 flags : " -Os -fPIE"
308321 options : " "
309322 packager : " apt"
@@ -317,12 +330,13 @@ jobs:
317330 coverage : " nocov"
318331 boost : " --build-boost"
319332 icu : " "
333+ llvm : " llvm@16"
320334 secp256k1 : " --build-secp256k1"
321335 cc : " clang"
322336 flags : " -Os -fPIE -DBOOST_NO_CXX98_FUNCTION_BASE"
323337 options : " "
324338 packager : " brew"
325- packages : " icu4c"
339+ packages : " llvm@16 icu4c"
326340
327341 - os : macos-latest
328342 cxx : " clang++"
@@ -332,12 +346,13 @@ jobs:
332346 coverage : " nocov"
333347 boost : " --build-boost"
334348 icu : " "
349+ llvm : " llvm@16"
335350 secp256k1 : " --build-secp256k1"
336351 cc : " clang"
337352 flags : " -Os -fvisibility=hidden -fPIE -DBOOST_NO_CXX98_FUNCTION_BASE"
338353 options : " "
339354 packager : " brew"
340- packages : " icu4c"
355+ packages : " llvm@16 icu4c"
341356
342357
343358 runs-on : ${{ matrix.os }}
@@ -367,6 +382,9 @@ jobs:
367382 if : ${{ matrix.packager == 'brew' }}
368383 run : |
369384 brew install autoconf automake libtool ${{ matrix.packages }}
385+ if [[ -n ${{ matrix.llvm }} ]]; then
386+ echo "PATH=/opt/homebrew/opt/${{ matrix.llvm }}/bin:$PATH" >> $GITHUB_ENV
387+ fi
370388
371389 - name : Denormalize parameterization
372390 shell : bash
@@ -416,9 +434,9 @@ jobs:
416434 - name : Coveralls Calculation
417435 if : ${{ matrix.coverage == 'cov' }}
418436 run : |
419- lcov --directory . --capture --output-file coverage.info
420- lcov --remove coverage.info "/usr/*" "${{ env.LIBBITCOIN_SRC_PATH }}prefix/*" "${{ github.workspace }}/examples/*" "${{ github.workspace }}/test/*" "${{ github.workspace }}/src/wallet/addresses/qrencode/*" --output-file coverage.info
421- lcov --list coverage.info
437+ lcov --directory . --capture --ignore-errors version -- output-file coverage.info
438+ lcov --remove coverage.info "/usr/*" "${{ env.LIBBITCOIN_SRC_PATH }}prefix/*" "${{ github.workspace }}/examples/*" "${{ github.workspace }}/test/*" "${{ github.workspace }}/src/wallet/addresses/qrencode/*" --output-file --ignore-errors version coverage.info
439+ lcov --list --ignore-errors version coverage.info
422440
423441 - name : Coveralls.io Upload
424442 if : ${{ matrix.coverage == 'cov' }}
@@ -494,49 +512,52 @@ jobs:
494512
495513 matrix :
496514 include :
497- - os : ubuntu-22 .04
515+ - os : ubuntu-24 .04
498516 preset : " nix-gnu-debug-shared"
499- cxx : " clang++-15 "
517+ cxx : " clang++-16 "
500518 link : " dynamic"
501519 optimization : " debug"
502520 assert : " debug"
503521 coverage : " nocov"
504522 boost : " --build-boost"
505523 icu : " "
524+ llvm : " "
506525 secp256k1 : " --build-secp256k1"
507- cc : " clang-15 "
526+ cc : " clang-16 "
508527 flags : " -Og -fPIE"
509528 options : " -Denable-avx2=on -Denable-sse4=on"
510529 packager : " apt"
511530 packages : " "
512531
513- - os : ubuntu-22 .04
532+ - os : ubuntu-24 .04
514533 preset : " nix-gnu-release-static"
515- cxx : " clang++-15 "
534+ cxx : " clang++-16 "
516535 link : " static"
517536 optimization : " size"
518537 assert : " ndebug"
519538 coverage : " nocov"
520539 boost : " --build-boost"
521540 icu : " --build-icu --with-icu"
541+ llvm : " "
522542 secp256k1 : " --build-secp256k1"
523- cc : " clang-15 "
543+ cc : " clang-16 "
524544 flags : " -Os -fPIE"
525545 options : " -Denable-avx2=on"
526546 packager : " apt"
527547 packages : " "
528548
529- - os : ubuntu-22 .04
549+ - os : ubuntu-24 .04
530550 preset : " nix-gnu-release-shared"
531- cxx : " g++-11 "
551+ cxx : " g++-12 "
532552 link : " dynamic"
533553 optimization : " size"
534554 assert : " ndebug"
535555 coverage : " nocov"
536556 boost : " --build-boost"
537557 icu : " "
558+ llvm : " "
538559 secp256k1 : " --build-secp256k1"
539- cc : " gcc-11 "
560+ cc : " gcc-12 "
540561 flags : " -Os -fPIE"
541562 options : " -Denable-sse4=on"
542563 packager : " apt"
@@ -570,6 +591,9 @@ jobs:
570591 if : ${{ matrix.packager == 'brew' }}
571592 run : |
572593 brew install autoconf automake libtool ${{ matrix.packages }}
594+ if [[ -n ${{ matrix.llvm }} ]]; then
595+ echo "PATH=/opt/homebrew/opt/${{ matrix.llvm }}/bin:$PATH" >> $GITHUB_ENV
596+ fi
573597
574598 - name : Denormalize parameterization
575599 shell : bash
@@ -620,9 +644,9 @@ jobs:
620644 - name : Coveralls Calculation
621645 if : ${{ matrix.coverage == 'cov' }}
622646 run : |
623- lcov --directory . --capture --output-file coverage.info
624- lcov --remove coverage.info "/usr/*" "${{ env.LIBBITCOIN_SRC_PATH }}prefix/*" "${{ github.workspace }}/examples/*" "${{ github.workspace }}/test/*" "${{ github.workspace }}/src/wallet/addresses/qrencode/*" --output-file coverage.info
625- lcov --list coverage.info
647+ lcov --directory . --capture --ignore-errors version -- output-file coverage.info
648+ lcov --remove coverage.info "/usr/*" "${{ env.LIBBITCOIN_SRC_PATH }}prefix/*" "${{ github.workspace }}/examples/*" "${{ github.workspace }}/test/*" "${{ github.workspace }}/src/wallet/addresses/qrencode/*" --output-file --ignore-errors version coverage.info
649+ lcov --list --ignore-errors version coverage.info
626650
627651 - name : Coveralls.io Upload
628652 if : ${{ matrix.coverage == 'cov' }}
0 commit comments