CMakePrintHelpers
This module provides convenience commands, primarily intended for debugging, to print the values of properties and variables.
Load this module in CMake with:
include(CMakePrintHelpers)
Commands
This module provides the following commands:
-
cmake_print_properties -
Prints the values of properties for the specified targets, source files, directories, tests, or cache entries:
cmake_print_properties( <TARGETS [<targets>...] | SOURCES [<sources>...] | DIRECTORIES [<dirs>...] | TESTS [<tests>...] | CACHE_ENTRIES [<entries>...] > PROPERTIES [<properties>...] )
Exactly one of the scope keywords must be specified. The scope keyword and its arguments must appear before the
PROPERTIESkeyword in the argument list.
-
cmake_print_variables -
Prints each variable name followed by its value:
cmake_print_variables([<vars>...])
Examples
Printing the LOCATION and INTERFACE_INCLUDE_DIRECTORIES properties for both targets foo and bar:
include(CMakePrintHelpers) cmake_print_properties( TARGETS foo bar PROPERTIES LOCATION INTERFACE_INCLUDE_DIRECTORIES )
Gives:
-- Properties for TARGET foo: foo.LOCATION = "/usr/lib/libfoo.so" foo.INTERFACE_INCLUDE_DIRECTORIES = "/usr/include;/usr/include/foo" Properties for TARGET bar: bar.LOCATION = "/usr/lib/libbar.so" bar.INTERFACE_INCLUDE_DIRECTORIES = "/usr/include;/usr/include/bar"
Printing given variables:
include(CMakePrintHelpers) cmake_print_variables(CMAKE_C_COMPILER CMAKE_MAJOR_VERSION NOT_EXISTS)
Gives:
-- CMAKE_C_COMPILER="/usr/bin/cc" ; CMAKE_MAJOR_VERSION="3" ; NOT_EXISTS=""
© 2000–2026 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/module/CMakePrintHelpers.html