1CMP0025
2-------
3
4Compiler id for Apple Clang is now ``AppleClang``.
5
6CMake 3.0 and above recognize that Apple Clang is a different compiler
7than upstream Clang and that they have different version numbers.
8CMake now prefers to present this to projects by setting the
9:variable:`CMAKE_<LANG>_COMPILER_ID` variable to ``AppleClang`` instead
10of ``Clang``.  However, existing projects may assume the compiler id for
11Apple Clang is just ``Clang`` as it was in CMake versions prior to 3.0.
12Therefore this policy determines for Apple Clang which compiler id to
13report in the :variable:`CMAKE_<LANG>_COMPILER_ID` variable after
14language ``<LANG>`` is enabled by the :command:`project` or
15:command:`enable_language` command.  The policy must be set prior
16to the invocation of either command.
17
18The ``OLD`` behavior for this policy is to use compiler id ``Clang``.  The
19``NEW`` behavior for this policy is to use compiler id ``AppleClang``.
20
21This policy was introduced in CMake version 3.0.  Use the
22:command:`cmake_policy` command to set this policy to ``OLD`` or ``NEW``
23explicitly.  Unlike most policies, CMake version |release| does *not* warn
24by default when this policy is not set and simply uses ``OLD`` behavior.
25See documentation of the
26:variable:`CMAKE_POLICY_WARNING_CMP0025 <CMAKE_POLICY_WARNING_CMP<NNNN>>`
27variable to control the warning.
28
29.. include:: DEPRECATED.txt
30