CMAKE_<LANG>_COMPILER_ID
------------------------

Compiler identification string.

A short string unique to the compiler vendor.  Possible values
include:

::

  Absoft = Absoft Fortran (absoft.com)
  ADSP = Analog VisualDSP++ (analog.com)
  AppleClang = Apple Clang (apple.com)
  ARMCC = ARM Compiler (arm.com)
  ARMClang = ARM Compiler based on Clang (arm.com)
  Bruce = Bruce C Compiler
  CCur = Concurrent Fortran (ccur.com)
  Clang = LLVM Clang (clang.llvm.org)
  Cray = Cray Compiler (cray.com)
  Embarcadero, Borland = Embarcadero (embarcadero.com)
  Flang = Flang LLVM Fortran Compiler
  G95 = G95 Fortran (g95.org)
  GNU = GNU Compiler Collection (gcc.gnu.org)
  GHS = Green Hills Software (www.ghs.com)
  HP = Hewlett-Packard Compiler (hp.com)
  IAR = IAR Systems (iar.com)
  Intel = Intel Compiler (intel.com)
  MSVC = Microsoft Visual Studio (microsoft.com)
  NVIDIA = NVIDIA CUDA Compiler (nvidia.com)
  OpenWatcom = Open Watcom (openwatcom.org)
  PGI = The Portland Group (pgroup.com)
  PathScale = PathScale (pathscale.com)
  SDCC = Small Device C Compiler (sdcc.sourceforge.net)
  SunPro = Oracle Solaris Studio (oracle.com)
  TI = Texas Instruments (ti.com)
  TinyCC = Tiny C Compiler (tinycc.org)
  XL, VisualAge, zOS = IBM XL (ibm.com)
  XLClang = IBM Clang-based XL (ibm.com)

This variable is not guaranteed to be defined for all compilers or
languages.
