3333 std : 23
3434 install : sudo apt install g++-13
3535 shared : -DBUILD_SHARED_LIBS=ON
36+ - cxx : g++-14
37+ build_type : Release
38+ std : 23
39+ install : sudo apt install g++-14
40+ shared : -DBUILD_SHARED_LIBS=ON
3641 - cxx : clang++-11
3742 build_type : Debug
3843 std : 17
@@ -48,11 +53,17 @@ jobs:
4853 - cxx : clang++-14
4954 build_type : Debug
5055 std : 20
56+ install : sudo apt install libc++-14-dev libc++abi-14-dev
5157 - cxx : clang++-14
5258 build_type : Debug
5359 std : 20
5460 cxxflags : -stdlib=libc++
55- install : sudo apt install libc++-14-dev libc++abi-14-dev
61+ install : sudo apt install clang-14 libc++-14-dev libc++abi-14-dev
62+ - cxx : clang++-20
63+ build_type : Debug
64+ std : 20
65+ cxxflags : -stdlib=libc++
66+ install : sudo apt install clang-20 libc++-20-dev libc++abi-20-dev
5667
5768 steps :
5869 - uses : actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
@@ -129,7 +140,14 @@ jobs:
129140 - name : Add repositories for newer GCC
130141 run : |
131142 sudo apt-add-repository ppa:ubuntu-toolchain-r/test
132- if : ${{ matrix.cxx == 'g++-13' }}
143+ if : ${{ matrix.cxx == 'g++-13' || matrix.cxx == 'g++-14' }}
144+
145+ - name : Install LLVM-20
146+ run : |
147+ wget https://apt.llvm.org/llvm.sh
148+ chmod +x llvm.sh
149+ sudo ./llvm.sh 20
150+ if : ${{ matrix.cxx == 'clang++-20' }}
133151
134152 - name : Add Ubuntu mirrors
135153 run : |
@@ -162,6 +180,23 @@ jobs:
162180 -DCMAKE_VISIBILITY_INLINES_HIDDEN=ON \
163181 -DFMT_DOC=OFF -DFMT_PEDANTIC=ON -DFMT_WERROR=ON \
164182 ${{matrix.fuzz}} ${{matrix.shared}} $GITHUB_WORKSPACE
183+ if : ${{ matrix.cxx != 'clang++-20' && matrix.cxx != 'g++-14' }}
184+
185+ - name : Configure-Modules
186+ working-directory : ${{runner.workspace}}/build
187+ env :
188+ CXX : ${{matrix.cxx}}
189+ CXXFLAGS : ${{matrix.cxxflags}}
190+ run : |
191+ cmake -DCMAKE_BUILD_TYPE=${{matrix.build_type}} \
192+ -DCMAKE_CXX_STANDARD=${{matrix.std}} \
193+ -DCMAKE_CXX_EXTENSIONS=OFF \
194+ -G Ninja \
195+ -DCMAKE_CXX_VISIBILITY_PRESET=hidden \
196+ -DCMAKE_VISIBILITY_INLINES_HIDDEN=ON \
197+ -DFMT_DOC=OFF -DFMT_PEDANTIC=ON \
198+ ${{matrix.fuzz}} ${{matrix.shared}} $GITHUB_WORKSPACE
199+ if : ${{ matrix.cxx == 'clang++-20' || matrix.cxx == 'g++-14' }}
165200
166201 - name : Build
167202 working-directory : ${{runner.workspace}}/build
0 commit comments