add_compile_definitionsΒΆ
Added in version 3.12.
Add preprocessor definitions to the compilation of source files.
add_compile_definitions(<definition> ...)
Adds preprocessor definitions to the compiler command line.
The preprocessor definitions are added to the COMPILE_DEFINITIONS
directory property for the current CMakeLists file. They are also added to
the COMPILE_DEFINITIONS target property for each target in the
current CMakeLists file.
Definitions are specified using the syntax VAR or VAR=value.
Function-style definitions are not supported. CMake will automatically
escape the value correctly for the native build system (note that CMake
language syntax may require escapes to specify some values).
Added in version 3.26: Any leading -D on an item will be removed.
Arguments to add_compile_definitions may use generator expressions
with the syntax $<...>. See the cmake-generator-expressions(7)
manual for available expressions. See the cmake-buildsystem(7) manual
for more on defining buildsystem properties.
Note
Use of the add_compile_definitions command for new development is discouraged.
Unencapsulated alterations to the build environment can have unintentionally
broad effect, potentially resulting in unnecessary build dependencies.
Additionally, the add_compile_definitions command cannot be used to express interface
usage requirements. It is recommended that new development use the
target_compile_definitions() command instead.