|
|
|
@ -184,11 +184,11 @@ |
|
|
|
|
# ifdef _MSC_EXTENSIONS |
|
|
|
|
# if __cplusplus >= 201402L |
|
|
|
|
# define GLM_LANG (GLM_LANG_CXX14 | GLM_LANG_CXXMS_FLAG) |
|
|
|
|
//# elif GLM_COMPILER >= GLM_COMPILER_VC2015
|
|
|
|
|
//# elif GLM_COMPILER >= GLM_COMPILER_VC14
|
|
|
|
|
//# define GLM_LANG (GLM_LANG_CXX1Y | GLM_LANG_CXXMS_FLAG)
|
|
|
|
|
# elif __cplusplus >= 201103L |
|
|
|
|
# define GLM_LANG (GLM_LANG_CXX11 | GLM_LANG_CXXMS_FLAG) |
|
|
|
|
# elif GLM_COMPILER >= GLM_COMPILER_VC2010 |
|
|
|
|
# elif GLM_COMPILER >= GLM_COMPILER_VC10 |
|
|
|
|
# define GLM_LANG (GLM_LANG_CXX0X | GLM_LANG_CXXMS_FLAG) |
|
|
|
|
# elif __cplusplus >= 199711L |
|
|
|
|
# define GLM_LANG (GLM_LANG_CXX98 | GLM_LANG_CXXMS_FLAG) |
|
|
|
@ -200,7 +200,7 @@ |
|
|
|
|
# define GLM_LANG GLM_LANG_CXX14 |
|
|
|
|
# elif __cplusplus >= 201103L |
|
|
|
|
# define GLM_LANG GLM_LANG_CXX11 |
|
|
|
|
# elif GLM_COMPILER >= GLM_COMPILER_VC2010 |
|
|
|
|
# elif GLM_COMPILER >= GLM_COMPILER_VC10 |
|
|
|
|
# define GLM_LANG GLM_LANG_CXX0X |
|
|
|
|
# elif __cplusplus >= 199711L |
|
|
|
|
# define GLM_LANG GLM_LANG_CXX98 |
|
|
|
@ -294,7 +294,7 @@ |
|
|
|
|
#else |
|
|
|
|
# define GLM_HAS_CXX11_STL ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\ |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC48)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2013)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC12)) || \
|
|
|
|
|
((GLM_PLATFORM != GLM_PLATFORM_WINDOWS) && (GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_COMPILER >= GLM_COMPILER_INTEL15)))) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
@ -305,9 +305,9 @@ |
|
|
|
|
# define GLM_HAS_STATIC_ASSERT 1 |
|
|
|
|
#else |
|
|
|
|
# define GLM_HAS_STATIC_ASSERT ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\ |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC43)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_CUDA)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2010)))) |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC)))) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
// N1988
|
|
|
|
@ -315,10 +315,10 @@ |
|
|
|
|
# define GLM_HAS_EXTENDED_INTEGER_TYPE 1 |
|
|
|
|
#else |
|
|
|
|
# define GLM_HAS_EXTENDED_INTEGER_TYPE (\ |
|
|
|
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2012)) || \
|
|
|
|
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC11)) || \
|
|
|
|
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_CUDA)) || \
|
|
|
|
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC43)) || \
|
|
|
|
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_CLANG) && (GLM_COMPILER >= GLM_COMPILER_CLANG30))) |
|
|
|
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_GCC)) || \
|
|
|
|
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_CLANG))) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
// N2235
|
|
|
|
@ -330,8 +330,9 @@ |
|
|
|
|
# define GLM_HAS_CONSTEXPR_PARTIAL GLM_HAS_CONSTEXPR |
|
|
|
|
#else |
|
|
|
|
# define GLM_HAS_CONSTEXPR ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\ |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC15)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC48)))) // GCC 4.6 support constexpr but there is a compiler bug causing a crash
|
|
|
|
|
# define GLM_HAS_CONSTEXPR_PARTIAL (GLM_HAS_CONSTEXPR || ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2015))) |
|
|
|
|
# define GLM_HAS_CONSTEXPR_PARTIAL (GLM_HAS_CONSTEXPR || ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC14))) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
// N2672
|
|
|
|
@ -341,8 +342,8 @@ |
|
|
|
|
# define GLM_HAS_INITIALIZER_LISTS 1 |
|
|
|
|
#else |
|
|
|
|
# define GLM_HAS_INITIALIZER_LISTS ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\ |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC44)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2013)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC12)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA75)))) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
@ -367,8 +368,8 @@ |
|
|
|
|
# define GLM_HAS_DEFAULTED_FUNCTIONS 1 |
|
|
|
|
#else |
|
|
|
|
# define GLM_HAS_DEFAULTED_FUNCTIONS ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\ |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC44)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2013)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC12)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_COMPILER >= GLM_COMPILER_INTEL12)) || \
|
|
|
|
|
(GLM_COMPILER & GLM_COMPILER_CUDA))) |
|
|
|
|
#endif |
|
|
|
@ -380,8 +381,8 @@ |
|
|
|
|
# define GLM_HAS_RVALUE_REFERENCES 1 |
|
|
|
|
#else |
|
|
|
|
# define GLM_HAS_RVALUE_REFERENCES ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\ |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC43)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2012)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC11)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA50)))) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
@ -394,7 +395,7 @@ |
|
|
|
|
# define GLM_HAS_EXPLICIT_CONVERSION_OPERATORS ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\ |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC45)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_COMPILER >= GLM_COMPILER_INTEL14)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2013)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC12)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA50)))) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
@ -407,7 +408,7 @@ |
|
|
|
|
# define GLM_HAS_TEMPLATE_ALIASES ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\ |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_COMPILER >= GLM_COMPILER_INTEL12_1)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC47)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2013)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC12)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA50)))) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
@ -420,7 +421,7 @@ |
|
|
|
|
# define GLM_HAS_RANGE_FOR ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\ |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC46)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_COMPILER >= GLM_COMPILER_INTEL13)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2012)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC11)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA50)))) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
@ -433,7 +434,7 @@ |
|
|
|
|
# define GLM_HAS_ALIGNOF ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\ |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC48)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_COMPILER >= GLM_COMPILER_INTEL15)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2015)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC14)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA70)))) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
@ -442,6 +443,7 @@ |
|
|
|
|
# define GLM_HAS_ASSIGNABLE 1 |
|
|
|
|
#else |
|
|
|
|
# define GLM_HAS_ASSIGNABLE ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\ |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC15)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC49)))) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
@ -453,7 +455,7 @@ |
|
|
|
|
# define GLM_HAS_MAKE_SIGNED 1 |
|
|
|
|
#else |
|
|
|
|
# define GLM_HAS_MAKE_SIGNED ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\ |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2013)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC12)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA50)))) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
@ -461,7 +463,8 @@ |
|
|
|
|
# define GLM_HAS_BITSCAN_WINDOWS 0 |
|
|
|
|
#else |
|
|
|
|
# define GLM_HAS_BITSCAN_WINDOWS ((GLM_PLATFORM & GLM_PLATFORM_WINDOWS) && (\ |
|
|
|
|
(GLM_COMPILER & (GLM_COMPILER_VC | GLM_COMPILER_INTEL)))) |
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_INTEL)) || \
|
|
|
|
|
((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC14) && (GLM_ARCH & GLM_ARCH_X86_BIT)))) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
// OpenMP
|
|
|
|
@ -487,7 +490,7 @@ |
|
|
|
|
# define GLM_HAS_OPENMP 0 |
|
|
|
|
# endif |
|
|
|
|
# elif GLM_COMPILER & GLM_COMPILER_VC |
|
|
|
|
# if GLM_COMPILER >= GLM_COMPILER_VC2010 |
|
|
|
|
# if GLM_COMPILER >= GLM_COMPILER_VC10 |
|
|
|
|
# define GLM_HAS_OPENMP 20 |
|
|
|
|
# else |
|
|
|
|
# define GLM_HAS_OPENMP 0 |
|
|
|
@ -660,7 +663,7 @@ |
|
|
|
|
# define GLM_ALIGNED_TYPEDEF(type, name, alignment) typedef __declspec(align(alignment)) type name |
|
|
|
|
# define GLM_RESTRICT_FUNC __declspec(restrict) |
|
|
|
|
# define GLM_RESTRICT __restrict |
|
|
|
|
# if GLM_COMPILER >= GLM_COMPILER_VC2013 |
|
|
|
|
# if GLM_COMPILER >= GLM_COMPILER_VC12 |
|
|
|
|
# define GLM_VECTOR_CALL __vectorcall |
|
|
|
|
# else |
|
|
|
|
# define GLM_VECTOR_CALL |
|
|
|
|