CMP0025¶
Apple Clang 的编译器 ID 现在为 AppleClang
。
CMake 3.0 及更高版本认识到,Apple Clang 与上游 Clang 是不同的编译器,并且它们具有不同的版本号。现在,CMake 更愿意向项目显示这一点,方法是将 CMAKE_<LANG>_COMPILER_ID
变量设置为 AppleClang
而非 Clang
。然而,现有项目可能假设 Apple Clang 的编译器 ID 只是 Clang
,因为在 3.0 之前的 CMake 版本中它确实如此。因此,此策略确定对于 Apple Clang,在语言 <LANG>
通过 project()
或 enable_language()
命令启用之后,在 CMAKE_<LANG>_COMPILER_ID
变量中报告哪个编译器 ID。此策略必须在调用任一命令之前设置。
此策略的 OLD
行为是使用编译器 ID Clang
。此策略的 NEW
行为是使用编译器 ID AppleClang
。
此策略于 CMake 版本 3.0 中引入。它可能由 cmake_policy()
或 cmake_minimum_required()
设置。如果它未设置,CMake 在默认情况下不会产生警告,并且使用 OLD
行为。
有关控制警告的 CMAKE_POLICY_WARNING_CMP0025
变量的文档,请参见。
注意
OLD
行为的策略是 被 废弃的
,并且在未来版本的 CMake 中可能被移除。