134 lines
4.1 KiB
Diff
134 lines
4.1 KiB
Diff
diff -uNr ogre-1.9.0/RenderSystems/GL/include/GL/glew.h ogre-1.9.0.glew/RenderSystems/GL/include/GL/glew.h
|
|
--- ogre-1.9.0/RenderSystems/GL/include/GL/glew.h 2014-06-07 21:12:14.000000000 +0400
|
|
+++ ogre-1.9.0.glew/RenderSystems/GL/include/GL/glew.h 2014-06-07 21:45:03.422493324 +0400
|
|
@@ -109,6 +109,11 @@
|
|
#define __GLEXT_H_
|
|
#define __gl_ATI_h_
|
|
|
|
+// SJS
|
|
+// Build statically
|
|
+#define GLEW_STATIC
|
|
+// SJS
|
|
+
|
|
#if defined(_WIN32)
|
|
|
|
/*
|
|
diff -uNr ogre-1.9.0/RenderSystems/GL/src/glew.cpp ogre-1.9.0.glew/RenderSystems/GL/src/glew.cpp
|
|
--- ogre-1.9.0/RenderSystems/GL/src/glew.cpp 2014-06-07 21:12:16.000000000 +0400
|
|
+++ ogre-1.9.0.glew/RenderSystems/GL/src/glew.cpp 2014-06-07 21:48:09.519775784 +0400
|
|
@@ -29,6 +29,10 @@
|
|
** THE POSSIBILITY OF SUCH DAMAGE.
|
|
*/
|
|
|
|
+// SJS
|
|
+#include "OgreGLSupport.h"
|
|
+// SJS
|
|
+
|
|
#include <GL/glew.h>
|
|
|
|
#if defined(_WIN32)
|
|
@@ -57,13 +61,21 @@
|
|
# endif /* _WIN32 */
|
|
# define GLEW_CONTEXT_ARG_DEF_LIST GLEWContext* ctx
|
|
#else /* GLEW_MX */
|
|
-# define GLEW_CONTEXT_ARG_DEF_INIT void
|
|
-# define GLEW_CONTEXT_ARG_VAR_INIT
|
|
-# define GLEW_CONTEXT_ARG_DEF_LIST void
|
|
-# define WGLEW_CONTEXT_ARG_DEF_INIT void
|
|
-# define WGLEW_CONTEXT_ARG_DEF_LIST void
|
|
-# define GLXEW_CONTEXT_ARG_DEF_INIT void
|
|
-# define GLXEW_CONTEXT_ARG_DEF_LIST void
|
|
+// SJS
|
|
+# define GLEW_CONTEXT_ARG_DEF_INIT Ogre::GLSupport *glSupport
|
|
+# define GLEW_CONTEXT_ARG_VAR_INIT glSupport
|
|
+# define GLEW_CONTEXT_ARG_DEF_LIST Ogre::GLSupport *glSupport
|
|
+# define WGLEW_CONTEXT_ARG_DEF_INIT Ogre::GLSupport *glSupport
|
|
+# define WGLEW_CONTEXT_ARG_DEF_LIST Ogre::GLSupport *glSupport
|
|
+# define GLXEW_CONTEXT_ARG_DEF_INIT Ogre::GLSupport *glSupport
|
|
+# define GLXEW_CONTEXT_ARG_DEF_LIST Ogre::GLSupport *glSupport
|
|
+//# define GLEW_CONTEXT_ARG_DEF_INIT void
|
|
+//# define GLEW_CONTEXT_ARG_VAR_INIT
|
|
+//# define GLEW_CONTEXT_ARG_DEF_LIST void
|
|
+//# define WGLEW_CONTEXT_ARG_DEF_INIT void
|
|
+//# define WGLEW_CONTEXT_ARG_DEF_LIST void
|
|
+//# define GLXEW_CONTEXT_ARG_DEF_INIT void
|
|
+//# define GLXEW_CONTEXT_ARG_DEF_LIST void
|
|
#endif /* GLEW_MX */
|
|
|
|
#if defined(__sgi) || defined (__sun) || defined(GLEW_APPLE_GLX)
|
|
@@ -137,7 +149,7 @@
|
|
#endif
|
|
}
|
|
/* prepend a '_' for the Unix C symbol mangling convention */
|
|
- symbolName = malloc(strlen((const char*)name) + 2);
|
|
+ symbolName = (char*)malloc(strlen((const char*)name) + 2);
|
|
strcpy(symbolName+1, (const char*)name);
|
|
symbolName[0] = '_';
|
|
symbol = NULL;
|
|
@@ -9481,9 +9493,11 @@
|
|
|
|
/* ------------------------------------------------------------------------- */
|
|
|
|
-#ifndef GLEW_MX
|
|
-static
|
|
-#endif
|
|
+// SJS
|
|
+//#ifndef GLEW_MX
|
|
+//static
|
|
+//#endif
|
|
+// SJS
|
|
GLenum GLEWAPIENTRY glewContextInit (GLEW_CONTEXT_ARG_DEF_LIST)
|
|
{
|
|
const GLubyte* s;
|
|
@@ -12543,7 +12557,14 @@
|
|
{
|
|
GLboolean r = GL_FALSE;
|
|
|
|
- r = ((glXGetCurrentDisplay = (PFNGLXGETCURRENTDISPLAYPROC)glewGetProcAddress((const GLubyte*)"glXGetCurrentDisplay")) == NULL) || r;
|
|
+ // SJS
|
|
+ // FB: Patched to allow Ogre to overload glXGetCurrentDisplay
|
|
+ if (glXGetCurrentDisplay == NULL)
|
|
+ {
|
|
+ r = ((glXGetCurrentDisplay = (PFNGLXGETCURRENTDISPLAYPROC)glewGetProcAddress((const GLubyte*)"glXGetCurrentDisplay")) == NULL) || r;
|
|
+ }
|
|
+ //r = ((glXGetCurrentDisplay = (PFNGLXGETCURRENTDISPLAYPROC)glewGetProcAddress((const GLubyte*)"glXGetCurrentDisplay")) == NULL) || r;
|
|
+ // SJS
|
|
|
|
return r;
|
|
}
|
|
@@ -13476,19 +13497,21 @@
|
|
extern GLenum GLEWAPIENTRY glxewContextInit (void);
|
|
#endif /* _WIN32 */
|
|
|
|
-GLenum GLEWAPIENTRY glewInit (void)
|
|
-{
|
|
- GLenum r;
|
|
- r = glewContextInit();
|
|
- if ( r != 0 ) return r;
|
|
-#if defined(_WIN32)
|
|
- return wglewContextInit();
|
|
-#elif !defined(__ANDROID__) && !defined(__native_client__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX)) /* _UNIX */
|
|
- return glxewContextInit();
|
|
-#else
|
|
- return r;
|
|
-#endif /* _WIN32 */
|
|
-}
|
|
+// SJS
|
|
+//GLenum GLEWAPIENTRY glewInit (void)
|
|
+//{
|
|
+// GLenum r;
|
|
+// r = glewContextInit();
|
|
+// if ( r != 0 ) return r;
|
|
+//#if defined(_WIN32)
|
|
+// return wglewContextInit();
|
|
+//#elif !defined(__ANDROID__) && !defined(__native_client__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX)) /* _UNIX */
|
|
+// return glxewContextInit();
|
|
+//#else
|
|
+// return r;
|
|
+//#endif /* _WIN32 */
|
|
+//}
|
|
+// End SJS
|
|
|
|
#endif /* !GLEW_MX */
|
|
#ifdef GLEW_MX
|