51 lines
1.2 KiB
C++
51 lines
1.2 KiB
C++
#ifndef CompilerDetect_h__
|
|||
|
|
#define CompilerDetect_h__
|
||
|
|
|
||
|
|
namespace LifeCore{
|
||
|
|
|
||
|
|
/*enum CompilerType{
|
||
|
|
CT_GCC,
|
||
|
|
CT_Intel,
|
||
|
|
CT_MwCodewarrior,
|
||
|
|
CT_MinGw,
|
||
|
|
CT_BorlandCpp,
|
||
|
|
CT_Clang,
|
||
|
|
CT_DigitalMars,
|
||
|
|
CT_IbmXl,
|
||
|
|
CT_KeilCArm,
|
||
|
|
CT_AltiumMbC,
|
||
|
|
CT_AltiumCthw
|
||
|
|
}*/
|
||
|
|
|
||
|
|
#if defined(__GNUC__)
|
||
|
|
#define COMPILER_GCC
|
||
|
|
#elif defined(__INTEL_COMPILER) | (__ICC) | (__ECC) | (__ICL)
|
||
|
|
#define COMPILER_INTEL
|
||
|
|
#elif defined(__MWERKS__) | defined(__CWCC__)
|
||
|
|
#define COMPILER_MW_CODEWARRIOR
|
||
|
|
#elif defined(_MSC_VER)
|
||
|
|
#define COMPILER_MSVC
|
||
|
|
#elif defined(__MINGW32__)
|
||
|
|
#define COMPILER_MINGW
|
||
|
|
#define COMPILER_MINGW32
|
||
|
|
#elif defined(__MINGW64__)
|
||
|
|
#define COMPILER_MINGW
|
||
|
|
#define COMPILER_MINGW64
|
||
|
|
#elif defined(__BORLANDC__) | defined(__CODEGEARC__)
|
||
|
|
#define COMPILER_BORLAND_CPP
|
||
|
|
#elif defined(__clang__)
|
||
|
|
#define COMPILER_CLANG
|
||
|
|
#elif defined(__DMC__)
|
||
|
|
#define COMPILER_DIGITALMARS
|
||
|
|
#elif defined(__xlc__) | defined(__xlC__) | defined(__xlC_ver__) | defined(__IBMC__) | defined(__IBMCPP__)
|
||
|
|
#define COMPILER_IBM_XL
|
||
|
|
#elif defined(__CA__) | defined(__KEIL__)
|
||
|
|
#define COMPILER_KEIL_CARM
|
||
|
|
#elif defined(__CMB__)
|
||
|
|
#define COMPILER_ALTIUM_MB_C
|
||
|
|
#elif defined(__CHC__)
|
||
|
|
#define COMPILER_ALTIUM_CTHW
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
#endif // CompilerDetect_h__
|