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-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.