This commit is contained in:
Christophe Riccio 2019-04-04 14:01:05 +02:00
parent 229b762c31
commit 13d2cea73f
3 changed files with 65 additions and 52 deletions

View File

@ -60,7 +60,9 @@
#define GLM_COMPILER_VC15_5 0x01000005 #define GLM_COMPILER_VC15_5 0x01000005
#define GLM_COMPILER_VC15_6 0x01000006 #define GLM_COMPILER_VC15_6 0x01000006
#define GLM_COMPILER_VC15_7 0x01000007 #define GLM_COMPILER_VC15_7 0x01000007
#define GLM_COMPILER_VC16 0x01000008 #define GLM_COMPILER_VC15_8 0x01000008
#define GLM_COMPILER_VC15_9 0x01000009
#define GLM_COMPILER_VC16 0x0100000A
// GCC defines // GCC defines
#define GLM_COMPILER_GCC 0x02000000 #define GLM_COMPILER_GCC 0x02000000
@ -100,16 +102,16 @@
# define GLM_COMPILER GLM_COMPILER_UNKNOWN # define GLM_COMPILER GLM_COMPILER_UNKNOWN
#elif defined(__INTEL_COMPILER) #elif defined(__INTEL_COMPILER)
# if (__INTEL_COMPILER < 1400) # if __INTEL_COMPILER >= 1700
# error "GLM requires ICC 2013 SP1 or newer"
# elif __INTEL_COMPILER == 1400
# define GLM_COMPILER GLM_COMPILER_INTEL14
# elif __INTEL_COMPILER == 1500
# define GLM_COMPILER GLM_COMPILER_INTEL15
# elif __INTEL_COMPILER == 1600
# define GLM_COMPILER GLM_COMPILER_INTEL16
# elif __INTEL_COMPILER >= 1700
# define GLM_COMPILER GLM_COMPILER_INTEL17 # define GLM_COMPILER GLM_COMPILER_INTEL17
# elif __INTEL_COMPILER >= 1600
# define GLM_COMPILER GLM_COMPILER_INTEL16
# elif __INTEL_COMPILER >= 1500
# define GLM_COMPILER GLM_COMPILER_INTEL15
# elif __INTEL_COMPILER >= 1400
# define GLM_COMPILER GLM_COMPILER_INTEL14
# elif __INTEL_COMPILER < 1400
# error "GLM requires ICC 2013 SP1 or newer"
# endif # endif
// CUDA // CUDA
@ -117,14 +119,14 @@
# if !defined(CUDA_VERSION) && !defined(GLM_FORCE_CUDA) # if !defined(CUDA_VERSION) && !defined(GLM_FORCE_CUDA)
# include <cuda.h> // make sure version is defined since nvcc does not define it itself! # include <cuda.h> // make sure version is defined since nvcc does not define it itself!
# endif # endif
# if CUDA_VERSION < 7000 # if CUDA_VERSION >= 8000
# error "GLM requires CUDA 7.0 or higher"
# elif (CUDA_VERSION >= 7000 && CUDA_VERSION < 7500)
# define GLM_COMPILER GLM_COMPILER_CUDA70
# elif (CUDA_VERSION >= 7500 && CUDA_VERSION < 8000)
# define GLM_COMPILER GLM_COMPILER_CUDA75
# elif (CUDA_VERSION >= 8000)
# define GLM_COMPILER GLM_COMPILER_CUDA80 # define GLM_COMPILER GLM_COMPILER_CUDA80
# elif CUDA_VERSION >= 7500
# define GLM_COMPILER GLM_COMPILER_CUDA75
# elif CUDA_VERSION >= 7000
# define GLM_COMPILER GLM_COMPILER_CUDA70
# elif CUDA_VERSION < 7000
# error "GLM requires CUDA 7.0 or higher"
# endif # endif
// Clang // Clang
@ -167,46 +169,50 @@
// Visual C++ // Visual C++
#elif defined(_MSC_VER) #elif defined(_MSC_VER)
# if _MSC_VER < 1800 # if _MSC_VER >= 1920
# error "GLM requires Visual C++ 12 - 2013 or higher"
# elif _MSC_VER == 1800
# define GLM_COMPILER GLM_COMPILER_VC12
# elif _MSC_VER == 1900
# define GLM_COMPILER GLM_COMPILER_VC14
# elif _MSC_VER == 1910
# define GLM_COMPILER GLM_COMPILER_VC15
# elif _MSC_VER == 1911
# define GLM_COMPILER GLM_COMPILER_VC15_3
# elif _MSC_VER == 1912
# define GLM_COMPILER GLM_COMPILER_VC15_5
# elif _MSC_VER == 1913
# define GLM_COMPILER GLM_COMPILER_VC15_6
# elif _MSC_VER == 1914
# define GLM_COMPILER GLM_COMPILER_VC15_7
# elif _MSC_VER >= 1920
# define GLM_COMPILER GLM_COMPILER_VC16 # define GLM_COMPILER GLM_COMPILER_VC16
# elif _MSC_VER >= 1916
# define GLM_COMPILER GLM_COMPILER_VC15_9
# elif _MSC_VER >= 1915
# define GLM_COMPILER GLM_COMPILER_VC15_8
# elif _MSC_VER >= 1914
# define GLM_COMPILER GLM_COMPILER_VC15_7
# elif _MSC_VER >= 1913
# define GLM_COMPILER GLM_COMPILER_VC15_6
# elif _MSC_VER >= 1912
# define GLM_COMPILER GLM_COMPILER_VC15_5
# elif _MSC_VER >= 1911
# define GLM_COMPILER GLM_COMPILER_VC15_3
# elif _MSC_VER >= 1910
# define GLM_COMPILER GLM_COMPILER_VC15
# elif _MSC_VER >= 1900
# define GLM_COMPILER GLM_COMPILER_VC14
# elif _MSC_VER >= 1800
# define GLM_COMPILER GLM_COMPILER_VC12
# elif _MSC_VER < 1800
# error "GLM requires Visual C++ 12 - 2013 or higher"
# endif//_MSC_VER # endif//_MSC_VER
// G++ // G++
#elif defined(__GNUC__) || defined(__MINGW32__) #elif defined(__GNUC__) || defined(__MINGW32__)
# if ((__GNUC__ == 4) && (__GNUC_MINOR__ < 6)) || (__GNUC__ < 4) # if __GNUC__ >= 8
# error "GLM requires GCC 4.7 or higher" # define GLM_COMPILER GLM_COMPILER_GCC8
# elif (__GNUC__ == 4) && (__GNUC_MINOR__ == 6) # elif __GNUC__ >= 7
# define GLM_COMPILER (GLM_COMPILER_GCC46) # define GLM_COMPILER GLM_COMPILER_GCC7
# elif (__GNUC__ == 4) && (__GNUC_MINOR__ == 7) # elif __GNUC__ >= 6
# define GLM_COMPILER (GLM_COMPILER_GCC47) # define GLM_COMPILER GLM_COMPILER_GCC6
# elif (__GNUC__ == 4) && (__GNUC_MINOR__ == 8) # elif __GNUC__ >= 5
# define GLM_COMPILER (GLM_COMPILER_GCC48) # define GLM_COMPILER GLM_COMPILER_GCC5
# elif (__GNUC__ == 4) && (__GNUC_MINOR__ >= 9) # elif __GNUC__ == 4 && __GNUC_MINOR__ >= 9
# define GLM_COMPILER (GLM_COMPILER_GCC49) # define GLM_COMPILER GLM_COMPILER_GCC49
# elif (__GNUC__ == 5) # elif __GNUC__ == 4 && __GNUC_MINOR__ >= 8
# define GLM_COMPILER (GLM_COMPILER_GCC5) # define GLM_COMPILER GLM_COMPILER_GCC48
# elif (__GNUC__ == 6) # elif __GNUC__ == 4 && __GNUC_MINOR__ >= 7
# define GLM_COMPILER (GLM_COMPILER_GCC6) # define GLM_COMPILER GLM_COMPILER_GCC47
# elif (__GNUC__ == 7) # elif __GNUC__ == 4 && __GNUC_MINOR__ >= 6
# define GLM_COMPILER (GLM_COMPILER_GCC7) # define GLM_COMPILER GLM_COMPILER_GCC46
# elif (__GNUC__ >= 8) # elif ((__GNUC__ == 4) && (__GNUC_MINOR__ < 6)) || (__GNUC__ < 4)
# define GLM_COMPILER (GLM_COMPILER_GCC8) # error "GLM requires GCC 4.6 or higher"
# endif # endif
#else #else

View File

@ -55,6 +55,7 @@ glm::mat4 camera(float Translate, glm::vec2 const& Rotate)
### [GLM 0.9.9.6](https://github.com/g-truc/glm/tree/master) ### [GLM 0.9.9.6](https://github.com/g-truc/glm/tree/master)
#### Improvements: #### Improvements:
- Added Visual C++ 2019 detection - Added Visual C++ 2019 detection
- Added Visual C++ 2017 15.8 and 15.9 detection
### [GLM 0.9.9.5](https://github.com/g-truc/glm/releases/tag/0.9.9.5) - 2019-04-01 ### [GLM 0.9.9.5](https://github.com/g-truc/glm/releases/tag/0.9.9.5) - 2019-04-01
#### Fixes: #### Fixes:

View File

@ -31,6 +31,12 @@ int test_compiler()
case GLM_COMPILER_VC15_7: case GLM_COMPILER_VC15_7:
std::printf("Visual C++ 15.7 - 2017\n"); std::printf("Visual C++ 15.7 - 2017\n");
break; break;
case GLM_COMPILER_VC15_8:
std::printf("Visual C++ 15.8 - 2017\n");
break;
case GLM_COMPILER_VC15_9:
std::printf("Visual C++ 15.9 - 2017\n");
break;
case GLM_COMPILER_VC16: case GLM_COMPILER_VC16:
std::printf("Visual C++ 16 - 2019\n"); std::printf("Visual C++ 16 - 2019\n");
break; break;