code
ref
Cheat Sheets
Quick Reference
JSON Formatter
Learn
Tools
Browser Support
Search…
Ctrl K
Cheat Sheets
/
Tools
/
CMake
CMake
CMake commands for targets, control flow, finding packages, variables, modules and the CLI.
Official reference ↗
Project Setup
cmake_minimum_required
project
enable_language
include
include_guard
option
add_subdirectory
enable_testing
Targets
Define
add_executable
add_library
add_custom_target
add_custom_command
add_dependencies
add_test
install
Configure
target_link_libraries
target_include_directories
target_compile_definitions
target_compile_options
target_compile_features
target_sources
target_link_options
target_precompile_headers
set_target_properties
get_target_property
Control Flow
if
elseif
else
endif
foreach
while
break
continue
return
function
macro
block
Variables & Strings
set
unset
list
string
math
cmake_path
file
configure_file
message
set_property
get_property
Locating Resources
find_package
find_library
find_path
find_program
find_file
Legacy Directory Commands
include_directories
link_directories
add_compile_options
add_definitions
link_libraries
execute_process
Common Variables
CMAKE_BUILD_TYPE
CMAKE_CXX_STANDARD
CMAKE_SOURCE_DIR
CMAKE_BINARY_DIR
CMAKE_CURRENT_SOURCE_DIR
CMAKE_CURRENT_BINARY_DIR
CMAKE_INSTALL_PREFIX
CMAKE_PREFIX_PATH
CMAKE_MODULE_PATH
CMAKE_EXPORT_COMPILE_COMMANDS
CMAKE_CXX_COMPILER
PROJECT_NAME
PROJECT_SOURCE_DIR
Modules
FetchContent
ExternalProject
GNUInstallDirs
CMakePackageConfigHelpers
CTest
CPack
CheckIncludeFile
CLI & Manuals
cmake -S . -B build
cmake --build build
cmake --install build
cmake --preset
ctest
cpack
Generator expressions
Language
Build system