@@ -246,7 +246,7 @@ jobs:
246246 linkflags : -stdlib=libc++
247247 - toolset : clang
248248 compiler : clang++-16
249- cxxstd : " 03,11,14,17,20,2b "
249+ cxxstd : " 03,11,14,17,20"
250250 os : ubuntu-latest
251251 container : ubuntu:22.04
252252 install :
@@ -286,10 +286,27 @@ jobs:
286286 - " deb http://apt.llvm.org/noble/ llvm-toolchain-noble-19 main"
287287 source_keys :
288288 - " https://apt.llvm.org/llvm-snapshot.gpg.key"
289-
290289 - toolset : clang
290+ compiler : clang++-20
291291 cxxstd : " 03,11,14,17,20,2b"
292- os : macos-13
292+ os : ubuntu-24.04
293+ install :
294+ - clang-20
295+ sources :
296+ - " deb http://apt.llvm.org/noble/ llvm-toolchain-noble-20 main"
297+ source_keys :
298+ - " https://apt.llvm.org/llvm-snapshot.gpg.key"
299+ - toolset : clang
300+ compiler : clang++-21
301+ cxxstd : " 03,11,14,17,20,2b"
302+ os : ubuntu-24.04
303+ install :
304+ - clang-21
305+ sources :
306+ - " deb http://apt.llvm.org/noble/ llvm-toolchain-noble-21 main"
307+ source_keys :
308+ - " https://apt.llvm.org/llvm-snapshot.gpg.key"
309+
293310 - toolset : clang
294311 cxxstd : " 03,11,14,17,20,2b"
295312 os : macos-14
@@ -392,6 +409,8 @@ jobs:
392409 sudo apt-get -o Acquire::Retries=$NET_RETRY_COUNT update
393410 sudo apt-get -o Acquire::Retries=$NET_RETRY_COUNT install -y ${{join(matrix.install, ' ')}} locales libfmt-dev
394411 sudo locale-gen de_DE.UTF-8
412+ sudo locale-gen en_US.UTF-8
413+ sudo locale-gen fr_FR.UTF-8
395414 sudo update-locale
396415 - name : Setup GCC Toolchain
397416 if : matrix.gcc_toolchain
@@ -532,6 +551,10 @@ jobs:
532551 cxxstd : " 03,11,14,17" # 20 has ICE
533552 addrmd : " 64"
534553 os : windows-latest
554+ - toolset : msvc-14.3
555+ cxxstd : " 14,17,20,latest"
556+ addrmd : " 64"
557+ os : windows-11-arm
535558
536559 runs-on : ${{matrix.os}}
537560
@@ -572,7 +595,6 @@ jobs:
572595 matrix :
573596 include :
574597 - os : ubuntu-24.04
575- - os : macos-13
576598 - os : macos-14
577599 - os : macos-15
578600
@@ -620,7 +642,6 @@ jobs:
620642 matrix :
621643 include :
622644 - os : ubuntu-24.04
623- - os : macos-13
624645 - os : macos-14
625646 - os : macos-15
626647
@@ -678,7 +699,6 @@ jobs:
678699 matrix :
679700 include :
680701 - os : ubuntu-24.04
681- - os : macos-13
682702 - os : macos-14
683703 - os : macos-15
684704
@@ -728,13 +748,70 @@ jobs:
728748 cd ../boost-root/__build__
729749 ctest --output-on-failure --no-tests=error
730750
751+ posix-cmake-test-dectest :
752+ strategy :
753+ fail-fast : false
754+ matrix :
755+ include :
756+ - os : ubuntu-24.04
757+ - os : macos-14
758+ - os : macos-15
759+
760+ runs-on : ${{matrix.os}}
761+
762+ steps :
763+ - uses : actions/checkout@v4
764+
765+ - name : Install packages
766+ if : matrix.install
767+ run : sudo apt install ${{matrix.install}}
768+
769+ - name : Setup Boost
770+ run : |
771+ echo GITHUB_REPOSITORY: $GITHUB_REPOSITORY
772+ LIBRARY=${GITHUB_REPOSITORY#*/}
773+ echo LIBRARY: $LIBRARY
774+ echo "LIBRARY=$LIBRARY" >> $GITHUB_ENV
775+ echo GITHUB_BASE_REF: $GITHUB_BASE_REF
776+ echo GITHUB_REF: $GITHUB_REF
777+ REF=${GITHUB_BASE_REF:-$GITHUB_REF}
778+ REF=${REF#refs/heads/}
779+ echo REF: $REF
780+ BOOST_BRANCH=develop && [ "$REF" == "master" ] && BOOST_BRANCH=master || true
781+ echo BOOST_BRANCH: $BOOST_BRANCH
782+ cd ..
783+ git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
784+ cd boost-root
785+ mkdir -p libs/$LIBRARY
786+ cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY
787+ cd libs/$LIBRARY/test
788+ git clone https://github.com/cppalliance/decimal-dectest
789+ cd ../../../
790+ git submodule update --init tools/boostdep
791+ python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY
792+
793+ - name : Configure
794+ run : |
795+ cd ../boost-root
796+ mkdir __build__ && cd __build__
797+ cmake -DBOOST_INCLUDE_LIBRARIES=$LIBRARY -DBUILD_TESTING=ON -DBUILD_DECTEST_TESTING=ON ..
798+
799+ - name : Build tests
800+ run : |
801+ cd ../boost-root/__build__
802+ cmake --build . --target tests
803+
804+ - name : Run tests
805+ run : |
806+ cd ../boost-root/__build__
807+ ctest --output-on-failure --no-tests=error
808+
731809 posix-standalone-test :
732810 strategy :
733811 fail-fast : false
734812 matrix :
735813 include :
736814 - os : ubuntu-24.04
737- - os : macos-13
738815 - os : macos-14
739816 - os : macos-15
740817
@@ -930,52 +1007,53 @@ jobs:
9301007 g++ main.cpp $(pkg-config --cflags --libs boost_decimal) -o test_pkgconfig
9311008 ./test_pkgconfig
9321009
933- MSYS2 :
934- defaults :
935- run :
936- shell : msys2 {0}
937- strategy :
938- fail-fast : false
939- matrix :
940- include :
941- - { sys: MINGW32, compiler: gcc, cxxstd: '03,11,17,20' }
942- - { sys: MINGW64, compiler: gcc, cxxstd: '03,11,17,20' }
943-
944- runs-on : windows-latest
945-
946- steps :
947- - uses : actions/checkout@v4
948-
949- - name : Setup MSYS2 environment
950- uses : msys2/setup-msys2@v2
951- with :
952- msystem : ${{matrix.sys}}
953- update : true
954- install : git python
955- pacboy : gcc:p cmake:p ninja:p
956-
957- - name : Fetch Boost.CI
958- uses : actions/checkout@v4
959- with :
960- repository : boostorg/boost-ci
961- ref : master
962- path : boost-ci-cloned
963- - name : Get CI scripts folder
964- run : |
965- # Copy ci folder if not testing Boost.CI
966- [[ "$GITHUB_REPOSITORY" =~ "boost-ci" ]] || cp -r boost-ci-cloned/ci .
967- rm -rf boost-ci-cloned
968-
969- - name : Setup Boost
970- env :
971- B2_COMPILER : ${{matrix.compiler}}
972- B2_CXXSTD : ${{matrix.cxxstd}}
973- B2_SANITIZE : ${{matrix.sanitize}}
974- B2_STDLIB : ${{matrix.stdlib}}
975- run : ci/github/install.sh
976-
977- - name : Run tests
978- run : ci/build.sh
1010+ # Symlink in docs folder breaks these runs
1011+ # MSYS2:
1012+ # defaults:
1013+ # run:
1014+ # shell: msys2 {0}
1015+ # strategy:
1016+ # fail-fast: false
1017+ # matrix:
1018+ # include:
1019+ # - { sys: MINGW32, compiler: gcc, cxxstd: '03,11,17,20' }
1020+ # - { sys: MINGW64, compiler: gcc, cxxstd: '03,11,17,20' }
1021+ #
1022+ # runs-on: windows-latest
1023+ #
1024+ # steps:
1025+ # - uses: actions/checkout@v4
1026+ #
1027+ # - name: Setup MSYS2 environment
1028+ # uses: msys2/setup-msys2@v2
1029+ # with:
1030+ # msystem: ${{matrix.sys}}
1031+ # update: true
1032+ # install: git python
1033+ # pacboy: gcc:p cmake:p ninja:p
1034+ #
1035+ # - name: Fetch Boost.CI
1036+ # uses: actions/checkout@v4
1037+ # with:
1038+ # repository: boostorg/boost-ci
1039+ # ref: master
1040+ # path: boost-ci-cloned
1041+ # - name: Get CI scripts folder
1042+ # run: |
1043+ # # Copy ci folder if not testing Boost.CI
1044+ # [[ "$GITHUB_REPOSITORY" =~ "boost-ci" ]] || cp -r boost-ci-cloned/ci .
1045+ # rm -rf boost-ci-cloned
1046+ #
1047+ # - name: Setup Boost
1048+ # env:
1049+ # B2_COMPILER: ${{matrix.compiler}}
1050+ # B2_CXXSTD: ${{matrix.cxxstd}}
1051+ # B2_SANITIZE: ${{matrix.sanitize}}
1052+ # B2_STDLIB: ${{matrix.stdlib}}
1053+ # run: ci/github/install.sh
1054+ #
1055+ # - name: Run tests
1056+ # run: ci/build.sh
9791057
9801058 intel :
9811059 runs-on : ubuntu-latest
0 commit comments