From 00d08369f8ecbbd110bbbf1f323f8520481988a4 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Tue, 6 Dec 2011 14:54:47 +0000 Subject: [PATCH] Updated compiler version support --- glm/core/setup.hpp | 68 ++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 66 insertions(+), 2 deletions(-) diff --git a/glm/core/setup.hpp b/glm/core/setup.hpp index f621d981..4ba43ad7 100644 --- a/glm/core/setup.hpp +++ b/glm/core/setup.hpp @@ -164,6 +164,8 @@ #define GLM_COMPILER_CUDA31 0x10000020 #define GLM_COMPILER_CUDA32 0x10000030 #define GLM_COMPILER_CUDA40 0x10000040 +#define GLM_COMPILER_CUDA41 0x10000050 +#define GLM_COMPILER_CUDA42 0x10000060 // Clang #define GLM_COMPILER_CLANG 0x20000000 @@ -171,17 +173,53 @@ #define GLM_COMPILER_CLANG27 0x20000020 #define GLM_COMPILER_CLANG28 0x20000030 #define GLM_COMPILER_CLANG29 0x20000040 +#define GLM_COMPILER_CLANG30 0x20000050 +#define GLM_COMPILER_CLANG31 0x20000060 +#define GLM_COMPILER_CLANG32 0x20000070 +#define GLM_COMPILER_CLANG33 0x20000080 // LLVM GCC #define GLM_COMPILER_LLVM_GCC 0x40000000 +// Intel +#define GLM_COMPILER_INTEL 0x80000000 +#define GLM_COMPILER_INTEL9 0x80000010 +#define GLM_COMPILER_INTEL10_0 0x80000020 +#define GLM_COMPILER_INTEL10_1 0x80000030 +#define GLM_COMPILER_INTEL11_0 0x80000040 +#define GLM_COMPILER_INTEL11_1 0x80000050 +#define GLM_COMPILER_INTEL12_0 0x80000060 +#define GLM_COMPILER_INTEL12_1 0x80000070 +#define GLM_COMPILER_INTEL13_0 0x80000080 + // Build model #define GLM_MODEL_32 0x00000010 #define GLM_MODEL_64 0x00000020 // Force generic C++ compiler #ifdef GLM_FORCE_COMPILER_UNKNOWN -# define GLM_COMPILER GLM_COMPILER_UNKNOWN +# define GLM_COMPILER GLM_COMPILER_UNKNOWN + +#elif defined(__INTEL_COMPILER) +# if __INTEL_COMPILER == 900 +# define GLM_COMPILER GLM_COMPILER_INTEL9 +# elif __INTEL_COMPILER == 1000 +# define GLM_COMPILER GLM_COMPILER_INTEL10_0 +# elif __INTEL_COMPILER == 1010 +# define GLM_COMPILER GLM_COMPILER_INTEL10_1 +# elif __INTEL_COMPILER == 1100 +# define GLM_COMPILER GLM_COMPILER_INTEL11_0 +# elif __INTEL_COMPILER == 1110 +# define GLM_COMPILER GLM_COMPILER_INTEL11_1 +# elif __INTEL_COMPILER == 1200 +# define GLM_COMPILER GLM_COMPILER_INTEL12_0 +# elif __INTEL_COMPILER == 1210 +# define GLM_COMPILER GLM_COMPILER_INTEL12_1 +# elif __INTEL_COMPILER == 1300 +# define GLM_COMPILER GLM_COMPILER_INTEL13_0 +# else +# define GLM_COMPILER GLM_COMPILER_INTEL +# endif // CUDA #elif defined(__CUDACC__) @@ -197,6 +235,10 @@ # define GLM_COMPILER GLM_COMPILER_CUDA32 # elif CUDA_VERSION == 4000 # define GLM_COMPILER GLM_COMPILER_CUDA40 +# elif CUDA_VERSION == 4010 +# define GLM_COMPILER GLM_COMPILER_CUDA41 +# elif CUDA_VERSION == 4020 +# define GLM_COMPILER GLM_COMPILER_CUDA42 # else # define GLM_COMPILER GLM_COMPILER_CUDA # endif @@ -228,7 +270,29 @@ # define GLM_COMPILER GLM_COMPILER_VC # endif//_MSC_VER -// G++ +// Clang +#elif defined(__clang__) +# if(CLANG_VERSION_MAJOR == 2) && (CLANG_VERSION_MINOR == 6) +# define GLM_COMPILER GLM_COMPILER_CLANG26 +# elif(CLANG_VERSION_MAJOR == 2) && (CLANG_VERSION_MINOR == 7) +# define GLM_COMPILER GLM_COMPILER_CLANG27 +# elif(CLANG_VERSION_MAJOR == 2) && (CLANG_VERSION_MINOR == 8) +# define GLM_COMPILER GLM_COMPILER_CLANG28 +# elif(CLANG_VERSION_MAJOR == 2) && (CLANG_VERSION_MINOR == 9) +# define GLM_COMPILER GLM_COMPILER_CLANG29 +# elif(CLANG_VERSION_MAJOR == 3) && (CLANG_VERSION_MINOR == 0) +# define GLM_COMPILER GLM_COMPILER_CLANG30 +# elif(CLANG_VERSION_MAJOR == 3) && (CLANG_VERSION_MINOR == 1) +# define GLM_COMPILER GLM_COMPILER_CLANG31 +# elif(CLANG_VERSION_MAJOR == 3) && (CLANG_VERSION_MINOR == 2) +# define GLM_COMPILER GLM_COMPILER_CLANG32 +# elif(CLANG_VERSION_MAJOR == 3) && (CLANG_VERSION_MINOR == 3) +# define GLM_COMPILER GLM_COMPILER_CLANG33 +# else +# define GLM_COMPILER GLM_COMPILER_CLANG +# endif + +// G++ #elif defined(__GNUC__)// || defined(__llvm__) || defined(__clang__) # if defined (__llvm__) # define GLM_COMPILER_GCC_EXTRA GLM_COMPILER_GCC_LLVM