CMakeISPCCompilerId.ispc.in 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. export void ispcCompilerId() {
  2. // Identify the compiler
  3. #if defined(ISPC)
  4. print("INFO:compiler[Intel]");
  5. #endif
  6. // Identify the platform
  7. #if defined(__linux) || defined(__linux__) || defined(linux)
  8. print("INFO:platform[Linux]");
  9. #elif defined(__CYGWIN__)
  10. print("INFO:platform[Cygwin]");
  11. #elif defined(__MINGW32__)
  12. print("INFO:platform[MinGW]");
  13. #elif defined(__APPLE__)
  14. print("INFO:platform[Darwin]");
  15. #elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
  16. print("INFO:platform[Windows]");
  17. #elif defined(__FreeBSD__) || defined(__FreeBSD)
  18. print("INFO:platform[FreeBSD]");
  19. #elif defined(__NetBSD__) || defined(__NetBSD)
  20. print("INFO:platform[NetBSD]");
  21. #elif defined(__OpenBSD__) || defined(__OPENBSD)
  22. print("INFO:platform[OpenBSD]");
  23. #elif defined(__sun) || defined(sun)
  24. print("INFO:platform[SunOS]");
  25. #elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
  26. print("INFO:platform[AIX]");
  27. #elif defined(__hpux) || defined(__hpux__)
  28. print("INFO:platform[HP-UX]");
  29. #elif defined(__HAIKU__)
  30. print("INFO:platform[Haiku]");
  31. #elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
  32. print("INFO:platform[BeOS]");
  33. #elif defined(__QNX__) || defined(__QNXNTO__)
  34. print("INFO:platform[QNX]");
  35. #elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
  36. print("INFO:platform[Tru64]");
  37. #elif defined(__riscos) || defined(__riscos__)
  38. print("INFO:platform[RISCos]");
  39. #elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
  40. print("INFO:platform[SINIX]");
  41. #elif defined(__UNIX_SV__)
  42. print("INFO:platform[UNIX_SV]");
  43. #elif defined(__bsdos__)
  44. print("INFO:platform[BSDOS]");
  45. #elif defined(_MPRAS) || defined(MPRAS)
  46. print("INFO:platform[MP-RAS]");
  47. #elif defined(__osf) || defined(__osf__)
  48. print("INFO:platform[OSF1]");
  49. #elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
  50. print("INFO:platform[SCO_SV]");
  51. #elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
  52. print("INFO:platform[ULTRIX]");
  53. #elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
  54. print("INFO:platform[Xenix]");
  55. #else
  56. print("INFO:platform[]");
  57. #endif
  58. }