mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-06 05:40:54 -06:00
Divert LCC compiler as a new one, instead of treating it as GNU. Since old times, Elbrus C/C++/Fortran Compiler (LCC) by MCST has been passing checks for GNU compilers, so it has been identified as GNU. Now, with intent of seriously upstreaming its support, it has been added as a separate LCC compiler, and its version displays not a supported GCC version, but LCC version itself (e.g. LCC 1.25.19 instead of GNU 7.3.0). This commit adds its support for detection, and also converts basically every check like 'is this compiler GNU?' to 'is this compiler GNU or LCC?'. The only places where this check is untouched, is where it regards other platforms where LCC is unavailable (primarily non-Linux), and where it REALLY differs from GNU compiler. Note: this transition may break software that are already ported to Elbrus, but hardly relies that LCC will be detected as GNU; still such software is not known.
47 lines
1.6 KiB
ReStructuredText
47 lines
1.6 KiB
ReStructuredText
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
|
|
Fujitsu = Fujitsu HPC compiler (Trad mode)
|
|
FujitsuClang = Fujitsu HPC compiler (Clang mode)
|
|
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)
|
|
IntelLLVM = Intel LLVM-Based Compiler (intel.com)
|
|
LCC = MCST Elbrus C/C++/Fortran Compiler (mcst.ru)
|
|
MSVC = Microsoft Visual Studio (microsoft.com)
|
|
NVHPC = NVIDIA HPC SDK Compiler (nvidia.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.
|