Intel-DetermineCompiler.cmake 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. set(_compiler_id_pp_test "defined(__INTEL_COMPILER) || defined(__ICC)")
  2. set(_compiler_id_version_compute "
  3. /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
  4. except that a few beta releases use the old format with V=2021. */
  5. # if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
  6. # define @PREFIX@COMPILER_VERSION_MAJOR @MACRO_DEC@(__INTEL_COMPILER/100)
  7. # define @PREFIX@COMPILER_VERSION_MINOR @MACRO_DEC@(__INTEL_COMPILER/10 % 10)
  8. # if defined(__INTEL_COMPILER_UPDATE)
  9. # define @PREFIX@COMPILER_VERSION_PATCH @MACRO_DEC@(__INTEL_COMPILER_UPDATE)
  10. # else
  11. # define @PREFIX@COMPILER_VERSION_PATCH @MACRO_DEC@(__INTEL_COMPILER % 10)
  12. # endif
  13. # else
  14. # define @PREFIX@COMPILER_VERSION_MAJOR @MACRO_DEC@(__INTEL_COMPILER)
  15. # define @PREFIX@COMPILER_VERSION_MINOR @MACRO_DEC@(__INTEL_COMPILER_UPDATE)
  16. /* The third version component from --version is an update index,
  17. but no macro is provided for it. */
  18. # define @PREFIX@COMPILER_VERSION_PATCH @MACRO_DEC@(0)
  19. # endif
  20. # if defined(__INTEL_COMPILER_BUILD_DATE)
  21. /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
  22. # define @PREFIX@COMPILER_VERSION_TWEAK @MACRO_DEC@(__INTEL_COMPILER_BUILD_DATE)
  23. # endif
  24. # if defined(_MSC_VER)
  25. /* _MSC_VER = VVRR */
  26. # define @PREFIX@SIMULATE_VERSION_MAJOR @MACRO_DEC@(_MSC_VER / 100)
  27. # define @PREFIX@SIMULATE_VERSION_MINOR @MACRO_DEC@(_MSC_VER % 100)
  28. # endif
  29. # if defined(__GNUC__)
  30. # define @PREFIX@SIMULATE_VERSION_MAJOR @MACRO_DEC@(__GNUC__)
  31. # elif defined(__GNUG__)
  32. # define @PREFIX@SIMULATE_VERSION_MAJOR @MACRO_DEC@(__GNUG__)
  33. # endif
  34. # if defined(__GNUC_MINOR__)
  35. # define @PREFIX@SIMULATE_VERSION_MINOR @MACRO_DEC@(__GNUC_MINOR__)
  36. # endif
  37. # if defined(__GNUC_PATCHLEVEL__)
  38. # define @PREFIX@SIMULATE_VERSION_PATCH @MACRO_DEC@(__GNUC_PATCHLEVEL__)
  39. # endif")
  40. set(_compiler_id_simulate "
  41. # if defined(_MSC_VER)
  42. # define @PREFIX@SIMULATE_ID \"MSVC\"
  43. # endif
  44. # if defined(__GNUC__)
  45. # define @PREFIX@SIMULATE_ID \"GNU\"
  46. # endif")