Added support for VS2017 version 15.3.4.

This commit is contained in:
LoRd_MuldeR 2017-09-15 20:37:09 +02:00
parent d5a84818c0
commit 987685f080

View File

@ -49,108 +49,108 @@ namespace MUtils
//Compiler detection //Compiler detection
static const char *const compiler_version(void) static const char *const compiler_version(void)
{ {
#if defined(__INTEL_COMPILER) static const char *const COMPILER_VERS =
#if (__INTEL_COMPILER >= 1500) #if defined(__INTEL_COMPILER)
static const char *const COMPILER_VERS = "ICL 15." MUTILS_MAKE_STRING(__INTEL_COMPILER_BUILD_DATE); #if (__INTEL_COMPILER >= 1500)
#elif (__INTEL_COMPILER >= 1400) "ICL 15." MUTILS_MAKE_STRING(__INTEL_COMPILER_BUILD_DATE);
static const char *const COMPILER_VERS = "ICL 14." MUTILS_MAKE_STRING(__INTEL_COMPILER_BUILD_DATE); #elif (__INTEL_COMPILER >= 1400)
#elif (__INTEL_COMPILER >= 1300) "ICL 14." MUTILS_MAKE_STRING(__INTEL_COMPILER_BUILD_DATE);
static const char *const COMPILER_VERS = "ICL 13." MUTILS_MAKE_STRING(__INTEL_COMPILER_BUILD_DATE); #elif (__INTEL_COMPILER >= 1300)
#elif (__INTEL_COMPILER >= 1200) "ICL 13." MUTILS_MAKE_STRING(__INTEL_COMPILER_BUILD_DATE);
static const char *const COMPILER_VERS = "ICL 12." MUTILS_MAKE_STRING(__INTEL_COMPILER_BUILD_DATE); #elif (__INTEL_COMPILER >= 1200)
#elif (__INTEL_COMPILER >= 1100) "ICL 12." MUTILS_MAKE_STRING(__INTEL_COMPILER_BUILD_DATE);
static const char *const COMPILER_VERS = "ICL 11.x"; #elif (__INTEL_COMPILER >= 1100)
#elif (__INTEL_COMPILER >= 1000) "ICL 11.x";
static const char *const COMPILER_VERS = "ICL 10.x"; #elif (__INTEL_COMPILER >= 1000)
#else "ICL 10.x";
#error Compiler is not supported!
#endif
#elif defined(_MSC_VER)
#if (_MSC_VER == 1911)
#if (_MSC_FULL_VER == 191125506)
static const char *const COMPILER_VERS = "MSVC 2017.3";
#else #else
#error Compiler version is not supported yet! #error Compiler is not supported!
#endif #endif
#elif (_MSC_VER == 1910) #elif defined(_MSC_VER)
#if ((_MSC_FULL_VER >= 191025017) && (_MSC_FULL_VER <= 191025019)) #if (_MSC_VER == 1911)
static const char *const COMPILER_VERS = "MSVC 2017.2"; #if((_MSC_FULL_VER == 191125508) || (_MSC_FULL_VER == 191125506))
"MSVC 2017.3";
#else
#error Compiler version is not supported yet!
#endif
#elif (_MSC_VER == 1910)
#if ((_MSC_FULL_VER >= 191025017) && (_MSC_FULL_VER <= 191025019))
"MSVC 2017.2";
#else
#error Compiler version is not supported yet!
#endif
#elif (_MSC_VER == 1900)
#if (_MSC_FULL_VER == 190023026)
"MSVC 2015";
#elif (_MSC_FULL_VER == 190023506)
"MSVC 2015.1";
#elif (_MSC_FULL_VER == 190023918)
"MSVC 2015.2";
#elif (_MSC_FULL_VER == 190024210) || (_MSC_FULL_VER == 190024215)
"MSVC 2015.3";
#else
#error Compiler version is not supported yet!
#endif
#elif (_MSC_VER == 1800)
#if (_MSC_FULL_VER == 180021005)
"MSVC 2013";
#elif (_MSC_FULL_VER == 180030501)
"MSVC 2013.2";
#elif (_MSC_FULL_VER == 180030723)
"MSVC 2013.3";
#elif (_MSC_FULL_VER == 180031101)
"MSVC 2013.4";
#elif (_MSC_FULL_VER == 180040629)
"MSVC 2013.5";
#else
#error Compiler version is not supported yet!
#endif
#elif (_MSC_VER == 1700)
#if (_MSC_FULL_VER == 170050727)
"MSVC 2012";
#elif (_MSC_FULL_VER == 170051106)
"MSVC 2012.1";
#elif (_MSC_FULL_VER == 170060315)
"MSVC 2012.2";
#elif (_MSC_FULL_VER == 170060610)
"MSVC 2012.3";
#elif (_MSC_FULL_VER == 170061030)
"MSVC 2012.4";
#else
#error Compiler version is not supported yet!
#endif
#elif (_MSC_VER == 1600)
#if (_MSC_FULL_VER >= 160040219)
"MSVC 2010-SP1";
#else
"MSVC 2010";
#endif
#elif (_MSC_VER == 1500)
#if (_MSC_FULL_VER >= 150030729)
"MSVC 2008-SP1";
#else
"MSVC 2008";
#endif
#else #else
#error Compiler version is not supported yet! #error Compiler is not supported!
#endif
#elif (_MSC_VER == 1900)
#if (_MSC_FULL_VER == 190023026)
static const char *const COMPILER_VERS = "MSVC 2015";
#elif (_MSC_FULL_VER == 190023506)
static const char *const COMPILER_VERS = "MSVC 2015.1";
#elif (_MSC_FULL_VER == 190023918)
static const char *const COMPILER_VERS = "MSVC 2015.2";
#elif (_MSC_FULL_VER == 190024210) || (_MSC_FULL_VER == 190024215)
static const char *const COMPILER_VERS = "MSVC 2015.3";
#else
#error Compiler version is not supported yet!
#endif
#elif (_MSC_VER == 1800)
#if (_MSC_FULL_VER == 180021005)
static const char *const COMPILER_VERS = "MSVC 2013";
#elif (_MSC_FULL_VER == 180030501)
static const char *const COMPILER_VERS = "MSVC 2013.2";
#elif (_MSC_FULL_VER == 180030723)
static const char *const COMPILER_VERS = "MSVC 2013.3";
#elif (_MSC_FULL_VER == 180031101)
static const char *const COMPILER_VERS = "MSVC 2013.4";
#elif (_MSC_FULL_VER == 180040629)
static const char *const COMPILER_VERS = "MSVC 2013.5";
#else
#error Compiler version is not supported yet!
#endif
#elif (_MSC_VER == 1700)
#if (_MSC_FULL_VER == 170050727)
static const char *const COMPILER_VERS = "MSVC 2012";
#elif (_MSC_FULL_VER == 170051106)
static const char *const COMPILER_VERS = "MSVC 2012.1";
#elif (_MSC_FULL_VER == 170060315)
static const char *const COMPILER_VERS = "MSVC 2012.2";
#elif (_MSC_FULL_VER == 170060610)
static const char *const COMPILER_VERS = "MSVC 2012.3";
#elif (_MSC_FULL_VER == 170061030)
static const char *const COMPILER_VERS = "MSVC 2012.4";
#else
#error Compiler version is not supported yet!
#endif
#elif (_MSC_VER == 1600)
#if (_MSC_FULL_VER >= 160040219)
static const char *const COMPILER_VERS = "MSVC 2010-SP1";
#else
static const char *const COMPILER_VERS = "MSVC 2010";
#endif
#elif (_MSC_VER == 1500)
#if (_MSC_FULL_VER >= 150030729)
static const char *const COMPILER_VERS = "MSVC 2008-SP1";
#else
static const char *const COMPILER_VERS = "MSVC 2008";
#endif #endif
#else #else
#error Compiler is not supported! #error Compiler is not supported!
#endif #endif
#else
#error Compiler is not supported!
#endif
return COMPILER_VERS; return COMPILER_VERS;
} }
//Architecture detection //Architecture detection
static const char *const compiler_arch(void) static const char *const compiler_arch(void)
{ {
#if defined(_M_X64) static const char *const COMPILER_ARCH =
static const char *const COMPILER_ARCH = "x64"; #if defined(_M_X64)
#elif defined(_M_IX86) "x64";
static const char *const COMPILER_ARCH = "x86"; #elif defined(_M_IX86)
#else "x86";
#error Architecture is not supported! #else
#endif #error Architecture is not supported!
#endif
return COMPILER_ARCH; return COMPILER_ARCH;
} }