CMake Presets#
Presets live in pc/CMakePresets.json. Pass them with --preset <name> during configuration.
Windows (MSVC + vcpkg)#
| Preset | Generator | Triplet | Description |
|---|---|---|---|
vcpkg-ninja | Ninja | x64-windows | Recommended. Fast builds with vcpkg. |
vcpkg-ninja-x86 | Ninja | x86-windows | 32-bit variant with vcpkg. |
vcpkg-vs | Visual Studio 17 2022 | x86-windows | Visual Studio IDE with vcpkg. |
Windows (MSVC + CPM)#
| Preset | Generator | Description |
|---|---|---|
ninja-gen | Ninja | CPM, no package manager setup required. |
vs-gen | Visual Studio 17 2022 | CPM with Visual Studio IDE. |
Windows (MinGW-Clang + CPM)#
Requires i686-w64-mingw32-clang or x86_64-w64-mingw32-clang in PATH.
| Preset | Generator | Arch | Description |
|---|---|---|---|
clang-mingw | Ninja | x86 | 32-bit MinGW-Clang with CPM. |
clang-mingw-cpm-x64 | Ninja | x64 | 64-bit MinGW-Clang with CPM. Uses cmake/toolchains/x86_64-mingw64-native.cmake. |
Windows (MinGW-Clang + vcpkg)#
| Preset | Generator | Triplet | Description |
|---|---|---|---|
clang-mingw-vcpkg | Ninja | x86-mingw-static | 32-bit MinGW-Clang with vcpkg. |
Linux#
| Preset | Generator | Description |
|---|---|---|
linux | Ninja | 64-bit Clang build with CPM. |
macOS#
| Preset | Generator | Description |
|---|---|---|
macos | Ninja | Apple Clang native build with CPM. |
Usage#
For a parallel build with Ninja:
Note
Replace X with the number of cores your system has available. On Linux, you can use $(nproc).
For Visual Studio presets: