Browse Source

Fixed platform detection

Christophe Riccio 14 years ago
parent
commit
dd8cecbbbc
2 changed files with 26 additions and 26 deletions
  1. 20 26
      glm/core/setup.hpp
  2. 6 0
      test/core/core_setup_message.cpp

+ 20 - 26
glm/core/setup.hpp

@@ -36,7 +36,7 @@
 #define GLM_VERSION_MAJOR			0
 #define GLM_VERSION_MAJOR			0
 #define GLM_VERSION_MINOR			9
 #define GLM_VERSION_MINOR			9
 #define GLM_VERSION_PATCH			3
 #define GLM_VERSION_PATCH			3
-#define GLM_VERSION_REVISION		0
+#define GLM_VERSION_REVISION		1
 
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 // Platform
 // Platform
@@ -44,35 +44,26 @@
 #define GLM_PLATFORM_UNKNOWN		0x00000000
 #define GLM_PLATFORM_UNKNOWN		0x00000000
 #define GLM_PLATFORM_WINDOWS		0x00010000
 #define GLM_PLATFORM_WINDOWS		0x00010000
 #define GLM_PLATFORM_LINUX			0x00020000
 #define GLM_PLATFORM_LINUX			0x00020000
-#define GLM_PLATFORM_MACOSX			0x00040000
-#define GLM_PLATFORM_IOS			0x00080000
+#define GLM_PLATFORM_APPLE			0x00040000
+//#define GLM_PLATFORM_IOS			0x00080000
 #define GLM_PLATFORM_ANDROID		0x00100000
 #define GLM_PLATFORM_ANDROID		0x00100000
 #define GLM_PLATFORM_CHROME_NACL	0x00200000
 #define GLM_PLATFORM_CHROME_NACL	0x00200000
-#define GLM_PLATFORM_UNIX			0x00040000
+#define GLM_PLATFORM_UNIX			0x00400000
 
 
 #ifdef GLM_FORCE_PLATFORM_UNKNOWN
 #ifdef GLM_FORCE_PLATFORM_UNKNOWN
 #	define GLM_PLATFORM GLM_PLATFORM_UNKNOWN
 #	define GLM_PLATFORM GLM_PLATFORM_UNKNOWN
+#elif defined(__APPLE__)
+#   define GLM_PLATFORM GLM_PLATFORM_APPLE
 #elif defined(_WIN32)
 #elif defined(_WIN32)
 #	define GLM_PLATFORM GLM_PLATFORM_WINDOWS
 #	define GLM_PLATFORM GLM_PLATFORM_WINDOWS
-#elif defined(__unix)
-#   if defined(__APPLE__)
-#       include "TargetConditionals.h"
-#       if defined(TARGET_OS_IPHONE) || defined(TARGET_IPHONE_SIMULATOR)
-#           define GLM_PLATFORM GLM_PLATFORM_IOS
-#       elif defined(TARGET_OS_MAC)
-#           define GLM_PLATFORM GLM_PLATFORM_MACOSX
-#       else
-#           define GLM_PLATFORM GLM_PLATFORM_UNKNOWN
-#       endif
-#   elif defined(ANDROID)
-#	define GLM_PLATFORM GLM_PLATFORM_ANDROID
-#   elif defined(__linux)
-#	define GLM_PLATFORM GLM_PLATFORM_LINUX
-#   else
-#	define GLM_PLATFORM GLM_PLATFORM_UNIX
-#   endif
 #elif defined(__native_client__)
 #elif defined(__native_client__)
 #	define GLM_PLATFORM GLM_PLATFORM_CHROME_NACL
 #	define GLM_PLATFORM GLM_PLATFORM_CHROME_NACL
+#elif defined(ANDROID)
+#   define GLM_PLATFORM GLM_PLATFORM_ANDROID
+#elif defined(__linux)
+#   define GLM_PLATFORM GLM_PLATFORM_LINUX
+#elif defined(__unix)
+#   define GLM_PLATFORM GLM_PLATFORM_UNIX
 #else
 #else
 #	define GLM_PLATFORM GLM_PLATFORM_UNKNOWN
 #	define GLM_PLATFORM GLM_PLATFORM_UNKNOWN
 #endif//
 #endif//
@@ -82,10 +73,10 @@
 #	define GLM_MESSAGE_PLATFORM_DISPLAYED
 #	define GLM_MESSAGE_PLATFORM_DISPLAYED
 #	if(GLM_PLATFORM & GLM_PLATFORM_WINDOWS)
 #	if(GLM_PLATFORM & GLM_PLATFORM_WINDOWS)
 #		pragma message("GLM: Windows platform detected")
 #		pragma message("GLM: Windows platform detected")
-#	elif(GLM_PLATFORM & GLM_PLATFORM_IOS)
-#		pragma message("GLM: iOS platform detected")
-#	elif(GLM_PLATFORM & GLM_PLATFORM_MACOSX)
-#		pragma message("GLM: MacOSX platform detected")
+//#	elif(GLM_PLATFORM & GLM_PLATFORM_IOS)
+//#		pragma message("GLM: iOS platform detected")
+#	elif(GLM_PLATFORM & GLM_PLATFORM_APPLE)
+#		pragma message("GLM: Apple platform detected")
 #	elif(GLM_PLATFORM & GLM_PLATFORM_LINUX)
 #	elif(GLM_PLATFORM & GLM_PLATFORM_LINUX)
 #		pragma message("GLM: Linux platform detected")
 #		pragma message("GLM: Linux platform detected")
 #	elif(GLM_PLATFORM & GLM_PLATFORM_UNIX)
 #	elif(GLM_PLATFORM & GLM_PLATFORM_UNIX)
@@ -436,7 +427,10 @@
 #else
 #else
 #	if(((GLM_COMPILER & GLM_COMPILER_GCC) == GLM_COMPILER_GCC) && defined(__STRICT_ANSI__))
 #	if(((GLM_COMPILER & GLM_COMPILER_GCC) == GLM_COMPILER_GCC) && defined(__STRICT_ANSI__))
 #		define GLM_LANG GLM_LANG_CXX98
 #		define GLM_LANG GLM_LANG_CXX98
-#	elif(((GLM_COMPILER & GLM_COMPILER_GCC) == GLM_COMPILER_GCC) && defined(__GXX_EXPERIMENTAL_CXX0X__)) // -std=c++0x or -std=gnu++0x
+#	elif((GLM_COMPILER & GLM_COMPILER_CLANG) == GLM_COMPILER_CLANG) 
+#		define GLM_LANG GLM_LANG_CXX98
+//  -std=c++0x or -std=gnu++0x
+#	elif(((GLM_COMPILER & GLM_COMPILER_GCC) == GLM_COMPILER_GCC) && defined(__GXX_EXPERIMENTAL_CXX0X__)) 
 #		define GLM_LANG GLM_LANG_CXX0X
 #		define GLM_LANG GLM_LANG_CXX0X
 #	elif(((GLM_COMPILER & GLM_COMPILER_VC) == GLM_COMPILER_VC) && defined(_MSC_EXTENSIONS))
 #	elif(((GLM_COMPILER & GLM_COMPILER_VC) == GLM_COMPILER_VC) && defined(_MSC_EXTENSIONS))
 #		define GLM_LANG GLM_LANG_CXXMS
 #		define GLM_LANG GLM_LANG_CXXMS

+ 6 - 0
test/core/core_setup_message.cpp

@@ -133,6 +133,12 @@ int test_compiler()
 		case GLM_COMPILER_CLANG29:
 		case GLM_COMPILER_CLANG29:
 			std::cout << "GLM_COMPILER_CLANG29" << std::endl;		
 			std::cout << "GLM_COMPILER_CLANG29" << std::endl;		
 			break;
 			break;
+		case GLM_COMPILER_CLANG30:
+			std::cout << "GLM_COMPILER_CLANG30" << std::endl;		
+			break;
+		case GLM_COMPILER_CLANG31:
+			std::cout << "GLM_COMPILER_CLANG31" << std::endl;		
+			break;
 	case GLM_COMPILER_LLVM_GCC:
 	case GLM_COMPILER_LLVM_GCC:
 		std::cout << "GLM_COMPILER_LLVM_GCC" << std::endl;		
 		std::cout << "GLM_COMPILER_LLVM_GCC" << std::endl;		
 		break;
 		break;