]> git.cworth.org Git - apitrace/blobdiff - glimports.hpp
Force our glxext.h headers to be included instead of the system ones.
[apitrace] / glimports.hpp
index b5cdb4b279e6b80c0f94683b5aa4e4619195fc0a..1da1261968487e0e9c6944b8e4306551198f049f 100644 (file)
 #define _GLIMPORTS_HPP_
 
 
-// Prevent including system's glext.h
+// Prevent including MacOSX's glext.h which lives in OpenGL/glext.h and not
+// GL/glext.h
 #define __glext_h_
 
+
 // Some functions take GLenum disguised as GLint.  Apple noticed and fixed it
 // in the Mac OS X 10.6.x gl.h headers.  Regardless, C++ typechecking rules
 // force the wrappers to match the prototype precisely.
-#if defined(__APPLE__) && !defined(MAC_OS_X_VERSION_10_7)
-#define GLenum_int GLenum
+#if defined(__APPLE__)
+#  include <AvailabilityMacros.h> // for MAC_OS_X_VERSION_10_7
+#  if defined(MAC_OS_X_VERSION_10_7)
+#    define GLenum_int GLint
+#  else
+#    define GLenum_int GLenum
+#  endif
 #else
-#define GLenum_int GLint
+#  define GLenum_int GLint
 #endif
 
 
 
 #else
 
+#ifdef HAVE_X11
 #include <X11/Xlib.h>
+#endif
+
 #include <GL/gl.h>
 
 #endif /* !_WIN32 */
@@ -67,7 +77,7 @@
 
 // Include our own glext.h
 #undef __glext_h_
-#include "glext/glext.h"
+#include <GL/glext.h>
 
 
 #ifndef GL_TEXTURE_INDEX_SIZE_EXT
@@ -77,7 +87,7 @@
 
 #if defined(_WIN32)
 
-#include "glext/wglext.h"
+#include <GL/wglext.h>
 
 #define GLAPIENTRY __stdcall
 
@@ -128,8 +138,10 @@ CGLError CGLUpdateContext(CGLContextObj ctx);
 
 #else
 
+#ifdef HAVE_X11
 #include <GL/glx.h>
-#include "glext/glxext.h"
+#include <GL/glxext.h>
+#endif
 
 /* Prevent collision with trace::Bool */
 #undef Bool
@@ -137,4 +149,7 @@ CGLError CGLUpdateContext(CGLContextObj ctx);
 #endif
 
 
+#include "eglimports.hpp"
+
+
 #endif /* _GLIMPORTS_HPP_ */