CMP0043¶
警告
該方針的 OLD 行為已在 CMake 版本 4.0 中移除。該方針必須透過呼叫 cmake_minimum_required() 或 cmake_policy() 設定為 NEW。
忽略 COMPILE_DEFINITIONS_<Config> 屬性
CMake 2.8.12 and lower allowed setting the
COMPILE_DEFINITIONS_<CONFIG> target property and
COMPILE_DEFINITIONS_<CONFIG> directory property to apply
configuration-specific compile definitions.
Since CMake 2.8.10, the COMPILE_DEFINITIONS property has supported
generator expressions for setting
configuration-dependent content. The continued existence of the suffixed
variables is redundant, and causes a maintenance burden. Population of the
COMPILE_DEFINITIONS_DEBUG property
may be replaced with a population of COMPILE_DEFINITIONS directly
or via target_compile_definitions():
# Old Interfaces:
set_property(TARGET tgt APPEND PROPERTY
COMPILE_DEFINITIONS_DEBUG DEBUG_MODE
)
set_property(DIRECTORY APPEND PROPERTY
COMPILE_DEFINITIONS_DEBUG DIR_DEBUG_MODE
)
# New Interfaces:
set_property(TARGET tgt APPEND PROPERTY
COMPILE_DEFINITIONS $<$<CONFIG:Debug>:DEBUG_MODE>
)
target_compile_definitions(tgt PRIVATE $<$<CONFIG:Debug>:DEBUG_MODE>)
set_property(DIRECTORY APPEND PROPERTY
COMPILE_DEFINITIONS $<$<CONFIG:Debug>:DIR_DEBUG_MODE>
)
The OLD behavior for this policy is to consume the content of the suffixed
COMPILE_DEFINITIONS_<CONFIG> target property when generating the
compilation command. The NEW behavior for this policy is to ignore the content
of the COMPILE_DEFINITIONS_<CONFIG> target property .
此方針於 CMake 版本 3.0 中引入。在 CMake 版本 4.0 移除之前,它可以透過 cmake_policy() 或 cmake_minimum_required() 設定。如果未設定,CMake warned,並使用 OLD 行為。