Changeset 92130 in webkit
- Timestamp:
- Aug 1, 2011, 9:10:12 AM (15 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 3 edited
-
ChangeLog (modified) (1 diff)
-
platform/graphics/cairo/OpenGLShims.cpp (modified) (4 diffs)
-
platform/graphics/cairo/OpenGLShims.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r92125 r92130 1 2011-08-01 Benjamin Poulain <benjamin@webkit.org> 2 3 [Qt] OpenGLShims does not build on ARM 4 https://bugs.webkit.org/show_bug.cgi?id=65465 5 6 Reviewed by Noam Rosenthal. 7 8 Fix the build with OpenGL ES 2: 9 -lookupOpenGLFunctionAddress() was defined but not used for OpenGL ES. 10 -glBlitFramebuffer() and glRenderbufferStorageMultisample() are not part of the specification. 11 When those are available as platform extension, the extension has been added. 12 -GLchar is not defined on some platform. The patch adds the same typedef as the official definition 13 to avoid conflicts. 14 15 * platform/graphics/cairo/OpenGLShims.cpp: 16 (lookupOpenGLFunctionAddress): 17 (WebCore::initializeOpenGLShims): 18 * platform/graphics/cairo/OpenGLShims.h: 19 1 20 2011-08-01 Yury Semikhatsky <yurys@chromium.org> 2 21 -
trunk/Source/WebCore/platform/graphics/cairo/OpenGLShims.cpp
r91363 r92130 27 27 #include <wtf/text/WTFString.h> 28 28 29 namespace WebCore { 30 31 OpenGLFunctionTable* openGLFunctionTable() 32 { 33 static OpenGLFunctionTable table; 34 return &table; 35 } 36 29 37 #if PLATFORM(QT) && defined(QT_OPENGL_ES_2) 30 38 #define ASSIGN_FUNCTION_TABLE_ENTRY(FunctionName, success) \ 31 39 openGLFunctionTable()->FunctionName = ::FunctionName 32 40 #else 33 #define ASSIGN_FUNCTION_TABLE_ENTRY(FunctionName, success) \34 openGLFunctionTable()->FunctionName = reinterpret_cast<FunctionName##Type>(lookupOpenGLFunctionAddress(#FunctionName, success))35 #endif36 37 namespace WebCore {38 41 39 42 #if PLATFORM(QT) … … 87 90 } 88 91 89 OpenGLFunctionTable* openGLFunctionTable() 90 { 91 static OpenGLFunctionTable table; 92 return &table; 93 } 92 #define ASSIGN_FUNCTION_TABLE_ENTRY(FunctionName, success) \ 93 openGLFunctionTable()->FunctionName = reinterpret_cast<FunctionName##Type>(lookupOpenGLFunctionAddress(#FunctionName, success)) 94 #endif 94 95 95 96 bool initializeOpenGLShims() … … 111 112 ASSIGN_FUNCTION_TABLE_ENTRY(glBlendEquationSeparate, success); 112 113 ASSIGN_FUNCTION_TABLE_ENTRY(glBlendFuncSeparate, success); 114 #if defined(GL_ES_VERSION_2_0) 115 116 #if defined(GL_ANGLE_framebuffer_blit) 117 openGLFunctionTable()->glBlitFramebuffer = ::GL_ANGLE_framebuffer_blit; 118 #else 119 openGLFunctionTable()->glBlitFramebuffer = 0; 120 #endif 121 122 #else 113 123 ASSIGN_FUNCTION_TABLE_ENTRY(glBlitFramebuffer, success); 124 #endif 114 125 ASSIGN_FUNCTION_TABLE_ENTRY(glBufferData, success); 115 126 ASSIGN_FUNCTION_TABLE_ENTRY(glBufferSubData, success); … … 157 168 ASSIGN_FUNCTION_TABLE_ENTRY(glLinkProgram, success); 158 169 ASSIGN_FUNCTION_TABLE_ENTRY(glRenderbufferStorage, success); 170 #if defined(GL_ES_VERSION_2_0) 171 172 #if defined(GL_APPLE_framebuffer_multisample) 173 openGLFunctionTable()->glRenderbufferStorageMultisample = ::glRenderbufferStorageMultisampleAPPLE; 174 #elif defined(GL_ANGLE_framebuffer_multisample) 175 openGLFunctionTable()->glRenderbufferStorageMultisample = ::glRenderbufferStorageMultisampleANGLE; 176 #else 177 openGLFunctionTable()->glRenderbufferStorageMultisample = 0; 178 #endif 179 180 #else 159 181 ASSIGN_FUNCTION_TABLE_ENTRY(glRenderbufferStorageMultisample, success); 182 #endif 160 183 ASSIGN_FUNCTION_TABLE_ENTRY(glSampleCoverage, success); 161 184 ASSIGN_FUNCTION_TABLE_ENTRY(glShaderSource, success); -
trunk/Source/WebCore/platform/graphics/cairo/OpenGLShims.h
r91363 r92130 22 22 #else 23 23 #include <GL/gl.h> 24 #endif 25 26 #if defined(GL_ES_VERSION_2_0) 27 // Some openGL ES systems miss this typedef. 28 typedef char GLchar; 24 29 #endif 25 30
Note:
See TracChangeset
for help on using the changeset viewer.