1
2set(_compiler_id_pp_test "(defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)")
3
4set(_compiler_id_version_compute "
5/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
6 * later.  Look for 6 digit vs. 8 digit version number to decide encoding.
7 * VVVV is no smaller than the current year when a version is released.
8 */
9#if __INTEL_LLVM_COMPILER < 1000000L
10# define @PREFIX@COMPILER_VERSION_MAJOR @MACRO_DEC@(__INTEL_LLVM_COMPILER/100)
11# define @PREFIX@COMPILER_VERSION_MINOR @MACRO_DEC@(__INTEL_LLVM_COMPILER/10 % 10)
12# define @PREFIX@COMPILER_VERSION_PATCH @MACRO_DEC@(__INTEL_LLVM_COMPILER    % 10)
13#else
14# define @PREFIX@COMPILER_VERSION_MAJOR @MACRO_DEC@(__INTEL_LLVM_COMPILER/10000)
15# define @PREFIX@COMPILER_VERSION_MINOR @MACRO_DEC@(__INTEL_LLVM_COMPILER/100 % 100)
16# define @PREFIX@COMPILER_VERSION_PATCH @MACRO_DEC@(__INTEL_LLVM_COMPILER     % 100)
17#endif
18#if defined(_MSC_VER)
19  /* _MSC_VER = VVRR */
20# define @PREFIX@SIMULATE_VERSION_MAJOR @MACRO_DEC@(_MSC_VER / 100)
21# define @PREFIX@SIMULATE_VERSION_MINOR @MACRO_DEC@(_MSC_VER % 100)
22#endif
23#if defined(__GNUC__)
24# define @PREFIX@SIMULATE_VERSION_MAJOR @MACRO_DEC@(__GNUC__)
25#elif defined(__GNUG__)
26# define @PREFIX@SIMULATE_VERSION_MAJOR @MACRO_DEC@(__GNUG__)
27#endif
28#if defined(__GNUC_MINOR__)
29# define @PREFIX@SIMULATE_VERSION_MINOR @MACRO_DEC@(__GNUC_MINOR__)
30#endif
31#if defined(__GNUC_PATCHLEVEL__)
32# define @PREFIX@SIMULATE_VERSION_PATCH @MACRO_DEC@(__GNUC_PATCHLEVEL__)
33#endif")
34
35set(_compiler_id_simulate "
36#if defined(_MSC_VER)
37# define @PREFIX@SIMULATE_ID \"MSVC\"
38#endif
39#if defined(__GNUC__)
40# define @PREFIX@SIMULATE_ID \"GNU\"
41#endif")
42