Skip to content

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#

cmake -B build --preset <name>
cmake --build build

For a parallel build with Ninja:

Note

Replace X with the number of cores your system has available. On Linux, you can use $(nproc).

cmake --build build -- -jX

For Visual Studio presets:

cmake --build build --config RelWithDebInfo