@@ -17,69 +17,73 @@ 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 detectcpuflags : " ignore"
2727 boost : " --build-boost"
2828 icu : " "
29+ llvm : " "
2930 secp256k1 : " --build-secp256k1"
3031 zmq : " --build-zmq"
31- cc : " clang-15 "
32+ cc : " clang-16 "
3233 flags : " -Og -fPIE"
3334 options : " --enable-isystem"
3435 packager : " apt"
3536 packages : " "
3637
37- - os : ubuntu-22 .04
38- cxx : " clang++-15 "
38+ - os : ubuntu-24 .04
39+ cxx : " clang++-16 "
3940 link : " static"
4041 optimization : " size"
4142 assert : " ndebug"
4243 coverage : " nocov"
4344 detectcpuflags : " ignore"
4445 boost : " --build-boost"
4546 icu : " --build-icu --with-icu"
47+ llvm : " "
4648 secp256k1 : " --build-secp256k1"
4749 zmq : " --build-zmq"
48- cc : " clang-15 "
50+ cc : " clang-16 "
4951 flags : " -Os -fPIE"
5052 options : " --enable-isystem"
5153 packager : " apt"
5254 packages : " "
5355
54- - os : ubuntu-22 .04
55- cxx : " g++-11 "
56+ - os : ubuntu-24 .04
57+ cxx : " g++-12 "
5658 link : " dynamic"
5759 optimization : " size"
5860 assert : " ndebug"
5961 coverage : " nocov"
6062 detectcpuflags : " ignore"
6163 boost : " --build-boost"
6264 icu : " "
65+ llvm : " "
6366 secp256k1 : " --build-secp256k1"
6467 zmq : " --build-zmq"
65- cc : " gcc-11 "
68+ cc : " gcc-12 "
6669 flags : " -Os -fPIE"
6770 options : " --enable-isystem"
6871 packager : " apt"
6972 packages : " "
7073
71- - os : ubuntu-22 .04
72- cxx : " g++-11 "
74+ - os : ubuntu-24 .04
75+ cxx : " g++-12 "
7376 link : " static"
7477 optimization : " size"
7578 assert : " ndebug"
7679 coverage : " nocov"
7780 detectcpuflags : " detect"
7881 boost : " --build-boost"
7982 icu : " --build-icu --with-icu"
83+ llvm : " "
8084 secp256k1 : " --build-secp256k1"
8185 zmq : " --build-zmq"
82- cc : " gcc-11 "
86+ cc : " gcc-12 "
8387 flags : " -Os -fPIE"
8488 options : " --enable-isystem"
8589 packager : " apt"
@@ -94,13 +98,14 @@ jobs:
9498 detectcpuflags : " ignore"
9599 boost : " --build-boost"
96100 icu : " "
101+ llvm : " llvm@16"
97102 secp256k1 : " --build-secp256k1"
98103 zmq : " --build-zmq"
99104 cc : " clang"
100105 flags : " -Os -fPIE -DBOOST_NO_CXX98_FUNCTION_BASE"
101106 options : " --enable-isystem"
102107 packager : " brew"
103- packages : " icu4c"
108+ packages : " llvm@16 icu4c"
104109
105110 - os : macos-latest
106111 cxx : " clang++"
@@ -111,13 +116,14 @@ jobs:
111116 detectcpuflags : " ignore"
112117 boost : " --build-boost"
113118 icu : " "
119+ llvm : " llvm@16"
114120 secp256k1 : " --build-secp256k1"
115121 zmq : " --build-zmq"
116122 cc : " clang"
117123 flags : " -Os -fvisibility=hidden -fPIE -DBOOST_NO_CXX98_FUNCTION_BASE"
118124 options : " --enable-isystem"
119125 packager : " brew"
120- packages : " icu4c"
126+ packages : " llvm@16 icu4c"
121127
122128
123129 runs-on : ${{ matrix.os }}
@@ -147,6 +153,9 @@ jobs:
147153 if : ${{ matrix.packager == 'brew' }}
148154 run : |
149155 brew install autoconf automake libtool ${{ matrix.packages }}
156+ if [[ -n ${{ matrix.llvm }} ]]; then
157+ echo "PATH=/opt/homebrew/opt/${{ matrix.llvm }}/bin:$PATH" >> $GITHUB_ENV
158+ fi
150159
151160 - name : Determine CPU flags
152161 shell : bash
@@ -218,9 +227,9 @@ jobs:
218227 - name : Coveralls Calculation
219228 if : ${{ matrix.coverage == 'cov' }}
220229 run : |
221- lcov --directory . --capture --output-file coverage.info
222- lcov --remove coverage.info "/usr/*" "${{ env.LIBBITCOIN_SRC_PATH }}prefix/*" "${{ github.workspace }}/examples/*" "${{ github.workspace }}/test/*" --output-file coverage.info
223- lcov --list coverage.info
230+ lcov --directory . --capture --ignore-errors version -- output-file coverage.info
231+ lcov --remove coverage.info "/usr/*" "${{ env.LIBBITCOIN_SRC_PATH }}prefix/*" "${{ github.workspace }}/examples/*" "${{ github.workspace }}/test/*" --output-file --ignore-errors version coverage.info
232+ lcov --list --ignore-errors version coverage.info
224233
225234 - name : Coveralls.io Upload
226235 if : ${{ matrix.coverage == 'cov' }}
@@ -286,69 +295,73 @@ jobs:
286295
287296 matrix :
288297 include :
289- - os : ubuntu-22 .04
290- cxx : " clang++-15 "
298+ - os : ubuntu-24 .04
299+ cxx : " clang++-16 "
291300 link : " dynamic"
292301 optimization : " debug"
293302 assert : " debug"
294303 coverage : " nocov"
295304 detectcpuflags : " ignore"
296305 boost : " --build-boost"
297306 icu : " "
307+ llvm : " "
298308 secp256k1 : " --build-secp256k1"
299309 zmq : " --build-zmq"
300- cc : " clang-15 "
310+ cc : " clang-16 "
301311 flags : " -Og -fPIE"
302312 options : " "
303313 packager : " apt"
304314 packages : " "
305315
306- - os : ubuntu-22 .04
307- cxx : " clang++-15 "
316+ - os : ubuntu-24 .04
317+ cxx : " clang++-16 "
308318 link : " static"
309319 optimization : " size"
310320 assert : " ndebug"
311321 coverage : " nocov"
312322 detectcpuflags : " ignore"
313323 boost : " --build-boost"
314324 icu : " --build-icu --with-icu"
325+ llvm : " "
315326 secp256k1 : " --build-secp256k1"
316327 zmq : " --build-zmq"
317- cc : " clang-15 "
328+ cc : " clang-16 "
318329 flags : " -Os -fPIE"
319330 options : " "
320331 packager : " apt"
321332 packages : " "
322333
323- - os : ubuntu-22 .04
324- cxx : " g++-11 "
334+ - os : ubuntu-24 .04
335+ cxx : " g++-12 "
325336 link : " dynamic"
326337 optimization : " size"
327338 assert : " ndebug"
328339 coverage : " nocov"
329340 detectcpuflags : " ignore"
330341 boost : " --build-boost"
331342 icu : " "
343+ llvm : " "
332344 secp256k1 : " --build-secp256k1"
333345 zmq : " --build-zmq"
334- cc : " gcc-11 "
346+ cc : " gcc-12 "
335347 flags : " -Os -fPIE"
336348 options : " "
337349 packager : " apt"
338350 packages : " "
339351
340- - os : ubuntu-22 .04
341- cxx : " g++-11 "
352+ - os : ubuntu-24 .04
353+ cxx : " g++-12 "
342354 link : " static"
343355 optimization : " size"
344356 assert : " ndebug"
345357 coverage : " nocov"
346358 detectcpuflags : " ignore"
347359 boost : " --build-boost"
348360 icu : " --build-icu --with-icu"
361+ llvm : " "
349362 secp256k1 : " --build-secp256k1"
350363 zmq : " --build-zmq"
351- cc : " gcc-11 "
364+ cc : " gcc-12 "
352365 flags : " -Os -fPIE"
353366 options : " "
354367 packager : " apt"
@@ -363,13 +376,14 @@ jobs:
363376 detectcpuflags : " ignore"
364377 boost : " --build-boost"
365378 icu : " "
379+ llvm : " llvm@16"
366380 secp256k1 : " --build-secp256k1"
367381 zmq : " --build-zmq"
368382 cc : " clang"
369383 flags : " -Os -fPIE -DBOOST_NO_CXX98_FUNCTION_BASE"
370384 options : " "
371385 packager : " brew"
372- packages : " icu4c"
386+ packages : " llvm@16 icu4c"
373387
374388 - os : macos-latest
375389 cxx : " clang++"
@@ -380,13 +394,14 @@ jobs:
380394 detectcpuflags : " ignore"
381395 boost : " --build-boost"
382396 icu : " "
397+ llvm : " llvm@16"
383398 secp256k1 : " --build-secp256k1"
384399 zmq : " --build-zmq"
385400 cc : " clang"
386401 flags : " -Os -fvisibility=hidden -fPIE -DBOOST_NO_CXX98_FUNCTION_BASE"
387402 options : " "
388403 packager : " brew"
389- packages : " icu4c"
404+ packages : " llvm@16 icu4c"
390405
391406
392407 runs-on : ${{ matrix.os }}
@@ -416,6 +431,9 @@ jobs:
416431 if : ${{ matrix.packager == 'brew' }}
417432 run : |
418433 brew install autoconf automake libtool ${{ matrix.packages }}
434+ if [[ -n ${{ matrix.llvm }} ]]; then
435+ echo "PATH=/opt/homebrew/opt/${{ matrix.llvm }}/bin:$PATH" >> $GITHUB_ENV
436+ fi
419437
420438 - name : Determine CPU flags
421439 shell : bash
@@ -490,9 +508,9 @@ jobs:
490508 - name : Coveralls Calculation
491509 if : ${{ matrix.coverage == 'cov' }}
492510 run : |
493- lcov --directory . --capture --output-file coverage.info
494- lcov --remove coverage.info "/usr/*" "${{ env.LIBBITCOIN_SRC_PATH }}prefix/*" "${{ github.workspace }}/examples/*" "${{ github.workspace }}/test/*" --output-file coverage.info
495- lcov --list coverage.info
511+ lcov --directory . --capture --ignore-errors version -- output-file coverage.info
512+ lcov --remove coverage.info "/usr/*" "${{ env.LIBBITCOIN_SRC_PATH }}prefix/*" "${{ github.workspace }}/examples/*" "${{ github.workspace }}/test/*" --output-file --ignore-errors version coverage.info
513+ lcov --list --ignore-errors version coverage.info
496514
497515 - name : Coveralls.io Upload
498516 if : ${{ matrix.coverage == 'cov' }}
@@ -568,55 +586,58 @@ jobs:
568586
569587 matrix :
570588 include :
571- - os : ubuntu-22 .04
589+ - os : ubuntu-24 .04
572590 preset : " nix-gnu-debug-shared"
573- cxx : " clang++-15 "
591+ cxx : " clang++-16 "
574592 link : " dynamic"
575593 optimization : " debug"
576594 assert : " debug"
577595 coverage : " nocov"
578596 detectcpuflags : " ignore"
579597 boost : " --build-boost"
580598 icu : " "
599+ llvm : " "
581600 secp256k1 : " --build-secp256k1"
582601 zmq : " --build-zmq"
583- cc : " clang-15 "
602+ cc : " clang-16 "
584603 flags : " -Og -fPIE"
585604 options : " "
586605 packager : " apt"
587606 packages : " "
588607
589- - os : ubuntu-22 .04
608+ - os : ubuntu-24 .04
590609 preset : " nix-gnu-release-static"
591- cxx : " clang++-15 "
610+ cxx : " clang++-16 "
592611 link : " static"
593612 optimization : " size"
594613 assert : " ndebug"
595614 coverage : " nocov"
596615 detectcpuflags : " ignore"
597616 boost : " --build-boost"
598617 icu : " --build-icu --with-icu"
618+ llvm : " "
599619 secp256k1 : " --build-secp256k1"
600620 zmq : " --build-zmq"
601- cc : " clang-15 "
621+ cc : " clang-16 "
602622 flags : " -Os -fPIE"
603623 options : " "
604624 packager : " apt"
605625 packages : " "
606626
607- - os : ubuntu-22 .04
627+ - os : ubuntu-24 .04
608628 preset : " nix-gnu-release-shared"
609- cxx : " g++-11 "
629+ cxx : " g++-12 "
610630 link : " dynamic"
611631 optimization : " size"
612632 assert : " ndebug"
613633 coverage : " nocov"
614634 detectcpuflags : " ignore"
615635 boost : " --build-boost"
616636 icu : " "
637+ llvm : " "
617638 secp256k1 : " --build-secp256k1"
618639 zmq : " --build-zmq"
619- cc : " gcc-11 "
640+ cc : " gcc-12 "
620641 flags : " -Os -fPIE"
621642 options : " "
622643 packager : " apt"
@@ -650,6 +671,9 @@ jobs:
650671 if : ${{ matrix.packager == 'brew' }}
651672 run : |
652673 brew install autoconf automake libtool ${{ matrix.packages }}
674+ if [[ -n ${{ matrix.llvm }} ]]; then
675+ echo "PATH=/opt/homebrew/opt/${{ matrix.llvm }}/bin:$PATH" >> $GITHUB_ENV
676+ fi
653677
654678 - name : Determine CPU flags
655679 shell : bash
@@ -725,9 +749,9 @@ jobs:
725749 - name : Coveralls Calculation
726750 if : ${{ matrix.coverage == 'cov' }}
727751 run : |
728- lcov --directory . --capture --output-file coverage.info
729- lcov --remove coverage.info "/usr/*" "${{ env.LIBBITCOIN_SRC_PATH }}prefix/*" "${{ github.workspace }}/examples/*" "${{ github.workspace }}/test/*" --output-file coverage.info
730- lcov --list coverage.info
752+ lcov --directory . --capture --ignore-errors version -- output-file coverage.info
753+ lcov --remove coverage.info "/usr/*" "${{ env.LIBBITCOIN_SRC_PATH }}prefix/*" "${{ github.workspace }}/examples/*" "${{ github.workspace }}/test/*" --output-file --ignore-errors version coverage.info
754+ lcov --list --ignore-errors version coverage.info
731755
732756 - name : Coveralls.io Upload
733757 if : ${{ matrix.coverage == 'cov' }}
0 commit comments