Skip to content

Commit c29b01c

Browse files
committed
Add Windows ClangCL
1 parent 37820cd commit c29b01c

File tree

2 files changed

+14
-5
lines changed

2 files changed

+14
-5
lines changed

.github/workflows/test.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
os: [ubuntu-latest, windows-latest, macos-13, macos-15]
2121
exclude:
2222
- os: windows-latest
23-
compiler: llvm-18
23+
compiler: gcc-14
2424
- os: macos-13
2525
compiler: native # AppleClang is too old
2626

@@ -32,12 +32,12 @@ jobs:
3232
uses: lukka/get-cmake@latest
3333

3434
- name: Install Clang
35-
if: ${{ matrix.compiler == 'llvm-18' && (matrix.os == 'macos-13' || matrix.os == 'macos-15') }}
3635
run: |
3736
brew install llvm@18
3837
brew link --force --overwrite llvm@18
3938
echo "CC=$(brew --prefix llvm@18)/bin/clang" >> $GITHUB_ENV
4039
echo "CXX=$(brew --prefix llvm@18)/bin/clang++" >> $GITHUB_ENV
40+
if: ${{ matrix.compiler == 'llvm-18' && (matrix.os == 'macos-13' || matrix.os == 'macos-15') }}
4141

4242
- name: Use LLVM and Clang
4343
run: |
@@ -53,6 +53,11 @@ jobs:
5353

5454
- name: Configure
5555
run: cmake -B build -DCPPSPEC_BUILD_TESTS=YES
56+
if: ${{ matrix.compiler != 'llvm-18' || matrix.os != 'windows-latest' }}
57+
58+
- name: Configure ClangCL
59+
run: cmake -B build -DCPPSPEC_BUILD_TESTS=YES -G "Visual Studio 17 2022" -T ClangCL
60+
if: ${{ matrix.compiler == 'llvm-18' && matrix.os == 'windows-latest' }}
5661

5762
- name: Build
5863
run: cmake --build build --config Release

README.md

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# C++Spec
1+
# C++Spec
22
[![license](https://img.shields.io/badge/license-MIT-blue)](https://choosealicense.com/licenses/mit/)
33
[![GitHub Action](https://github.com/toroidal-code/cppspec/actions/workflows/test.yml/badge.svg)]() 
44
[![GitHub release](https://img.shields.io/github/release/toroidal-code/cppspec.svg)](https://github.com/toroidal-code/cppspec/releases/latest) 
@@ -12,9 +12,13 @@ See [http://cppspec.readthedocs.org/](http://cppspec.readthedocs.org/) for full
1212

1313
## Requirements
1414

15-
C++Spec requires a compiler and standard library with support for C++20.
15+
C++Spec requires a compiler and standard library with support for C++23: Currently tested and confirmed working are:
16+
- LLVM/Clang 18 (on Linux, macOS, and Windows)
17+
- GCC 14.2 (on Linux and macOS)
18+
- MSVC 19.43 (on Windows)
19+
- AppleClang 16 (on macOS)
1620

17-
__Note:__ Only the tests require being compiled with C++20 support (`-std=c++20`). No other part of an existing project's build must be modified.
21+
__Note:__ Only the tests require being compiled with C++23 support (`-std=c++23`). No other part of an existing project's build must be modified.
1822

1923
## Usage
2024
The recommended usage is as a subproject integrated into your build system. For CMake this would look something like below:

0 commit comments

Comments
 (0)