Compiler id for IBM Clang-based XL compilers is now
CMake 3.15 and above recognize that IBM’s Clang-based XL compilers that define
__ibmxl__ are a new front-end distinct from
xlc with a different command line and set of capabilities. CMake now prefers to present this to projects by setting the
CMAKE_<LANG>_COMPILER_ID variable to
XLClang instead of
XL. However, existing projects may assume the compiler id for Clang-based XL is just
XL as it was in CMake versions prior to 3.15. Therefore this policy determines for Clang-based XL compilers which compiler id to report in the
CMAKE_<LANG>_COMPILER_ID variable after language
<LANG> is enabled by the
enable_language() command. The policy must be set prior to the invocation of either command.
OLD behavior for this policy is to use compiler id
NEW behavior for this policy is to use compiler id
This policy was introduced in CMake version 3.15. Use the
cmake_policy() command to set this policy to
NEW explicitly. Unlike most policies, CMake version 3.15.2 does not warn by default when this policy is not set and simply uses
OLD behavior. See documentation of the
CMAKE_POLICY_WARNING_CMP0089 variable to control the warning.
OLD behavior of a policy is
deprecated by definition and may be removed in a future version of CMake.
© 2000–2019 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.