WebKit Bugzilla
Attachment 369780 Details for
Bug 197755
: Add preliminary ANGLE backend to WebCore
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-197755-20190513141043.patch (text/plain), 117.37 KB, created by
Alex Christensen
on 2019-05-13 14:10:44 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Alex Christensen
Created:
2019-05-13 14:10:44 PDT
Size:
117.37 KB
patch
obsolete
>Index: Source/ThirdParty/ANGLE/ChangeLog >=================================================================== >--- Source/ThirdParty/ANGLE/ChangeLog (revision 245248) >+++ Source/ThirdParty/ANGLE/ChangeLog (working copy) >@@ -1,3 +1,24 @@ >+2019-05-13 Alex Christensen <achristensen@webkit.org> >+ >+ Support using ANGLE as the backend for the WebGL implementation >+ https://bugs.webkit.org/show_bug.cgi?id=197755 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * include/EGL/egl.h: >+ * include/EGL/eglplatform.h: >+ * include/GLES2/gl2.h: >+ * include/GLES2/gl2platform.h: >+ * include/GLES3/gl3.h: >+ * include/GLES3/gl31.h: >+ * include/GLES3/gl32.h: >+ * include/GLES3/gl3platform.h: >+ * src/libGLESv2/entry_points_egl.h: >+ * src/libGLESv2/entry_points_egl_ext.h: >+ * src/libGLESv2/entry_points_gles_2_0_autogen.h: >+ * src/libGLESv2/entry_points_gles_3_0_autogen.h: >+ * src/libGLESv2/entry_points_gles_3_1_autogen.h: >+ > 2019-05-13 Alex Christensen <achristensen@webkit.org> > > Build more ANGLE files >Index: Source/ThirdParty/ANGLE/ANGLE.xcodeproj/project.pbxproj >=================================================================== >--- Source/ThirdParty/ANGLE/ANGLE.xcodeproj/project.pbxproj (revision 245248) >+++ Source/ThirdParty/ANGLE/ANGLE.xcodeproj/project.pbxproj (working copy) >@@ -411,6 +411,7 @@ > 5C55D7302282747700B5BA2C /* system_utils_posix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5C55D71F2282747700B5BA2C /* system_utils_posix.cpp */; }; > 5C55D733228274DE00B5BA2C /* Declarator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5C55D731228274DE00B5BA2C /* Declarator.cpp */; }; > 5C55D734228274DE00B5BA2C /* Declarator.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C55D732228274DE00B5BA2C /* Declarator.h */; }; >+ 5C9C670F228A0FB1007A3C31 /* gl2ext_angle.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C9C670E228A0FB1007A3C31 /* gl2ext_angle.h */; settings = {ATTRIBUTES = (Public, ); }; }; > 5C9FFF4E19102A000025B8FA /* FlagStd140Structs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5C9FFF4C19102A000025B8FA /* FlagStd140Structs.cpp */; }; > 5C9FFF4F19102A000025B8FA /* FlagStd140Structs.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C9FFF4D19102A000025B8FA /* FlagStd140Structs.h */; }; > 5CB301161DE39F1A00D2C405 /* BlitGL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CB300E01DE39F1A00D2C405 /* BlitGL.cpp */; }; >@@ -1047,6 +1048,7 @@ > 5C55D71F2282747700B5BA2C /* system_utils_posix.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = system_utils_posix.cpp; sourceTree = "<group>"; }; > 5C55D731228274DE00B5BA2C /* Declarator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Declarator.cpp; sourceTree = "<group>"; }; > 5C55D732228274DE00B5BA2C /* Declarator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Declarator.h; sourceTree = "<group>"; }; >+ 5C9C670E228A0FB1007A3C31 /* gl2ext_angle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = gl2ext_angle.h; path = include/GLES2/gl2ext_angle.h; sourceTree = "<group>"; }; > 5C9FFF4C19102A000025B8FA /* FlagStd140Structs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FlagStd140Structs.cpp; sourceTree = "<group>"; }; > 5C9FFF4D19102A000025B8FA /* FlagStd140Structs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlagStd140Structs.h; sourceTree = "<group>"; }; > 5CB300B51DE39E6300D2C405 /* libEGL.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = libEGL.cpp; sourceTree = "<group>"; }; >@@ -1515,6 +1517,7 @@ > children = ( > 5C1BAA9E1DFB610E002906BB /* gl2.h */, > 5C1BAA9F1DFB610E002906BB /* gl2ext.h */, >+ 5C9C670E228A0FB1007A3C31 /* gl2ext_angle.h */, > 5C1BAAA01DFB610E002906BB /* gl2platform.h */, > ); > name = GLES2; >@@ -2314,6 +2317,7 @@ > 5CCD59942284FC400018F2D8 /* generatemip.h in Headers */, > 5C1BAAA21DFB610E002906BB /* gl2.h in Headers */, > 5C1BAAA31DFB610E002906BB /* gl2ext.h in Headers */, >+ 5C9C670F228A0FB1007A3C31 /* gl2ext_angle.h in Headers */, > 5C1BAAA41DFB610E002906BB /* gl2platform.h in Headers */, > 5C1BAA9A1DFB60FF002906BB /* gl3.h in Headers */, > 5C1BAA9C1DFB60FF002906BB /* gl31.h in Headers */, >Index: Source/ThirdParty/ANGLE/include/EGL/egl.h >=================================================================== >--- Source/ThirdParty/ANGLE/include/EGL/egl.h (revision 245238) >+++ Source/ThirdParty/ANGLE/include/EGL/egl.h (working copy) >@@ -53,8 +53,8 @@ extern "C" { > #define EGL_VERSION_1_0 1 > typedef unsigned int EGLBoolean; > typedef void *EGLDisplay; >-#include <EGL/eglplatform.h> >-#include <KHR/khrplatform.h> >+#include <ANGLE/eglplatform.h> >+#include <ANGLE/khrplatform.h> > typedef void *EGLConfig; > typedef void *EGLSurface; > typedef void *EGLContext; >Index: Source/ThirdParty/ANGLE/include/EGL/eglplatform.h >=================================================================== >--- Source/ThirdParty/ANGLE/include/EGL/eglplatform.h (revision 245238) >+++ Source/ThirdParty/ANGLE/include/EGL/eglplatform.h (working copy) >@@ -34,7 +34,7 @@ > * by filing a bug against product "EGL" component "Registry". > */ > >-#include <KHR/khrplatform.h> >+#include <ANGLE/khrplatform.h> > > /* Macros used in EGL function prototype declarations. > * >Index: Source/ThirdParty/ANGLE/include/GLES2/gl2.h >=================================================================== >--- Source/ThirdParty/ANGLE/include/GLES2/gl2.h (revision 245238) >+++ Source/ThirdParty/ANGLE/include/GLES2/gl2.h (working copy) >@@ -34,7 +34,7 @@ extern "C" { > ** https://github.com/KhronosGroup/OpenGL-Registry > */ > >-#include <GLES2/gl2platform.h> >+#include <ANGLE/gl2platform.h> > > #ifndef GL_APIENTRYP > #define GL_APIENTRYP GL_APIENTRY* >@@ -58,7 +58,7 @@ extern "C" { > > #ifndef GL_ES_VERSION_2_0 > #define GL_ES_VERSION_2_0 1 >-#include <KHR/khrplatform.h> >+#include <ANGLE/khrplatform.h> > typedef khronos_int8_t GLbyte; > typedef khronos_float_t GLclampf; > typedef khronos_int32_t GLfixed; >Index: Source/ThirdParty/ANGLE/include/GLES2/gl2ext.h >=================================================================== >--- Source/ThirdParty/ANGLE/include/GLES2/gl2ext.h (revision 245238) >+++ Source/ThirdParty/ANGLE/include/GLES2/gl2ext.h (working copy) >@@ -3613,7 +3613,7 @@ GL_APICALL void GL_APIENTRY glEndTilingQ > #endif /* GL_VIV_shader_binary */ > > /* ANGLE GLES2 extensions */ >-#include "gl2ext_angle.h" >+// #include <ANGLE/gl2ext_angle.h> > > #ifdef __cplusplus > } >Index: Source/ThirdParty/ANGLE/include/GLES2/gl2platform.h >=================================================================== >--- Source/ThirdParty/ANGLE/include/GLES2/gl2platform.h (revision 245238) >+++ Source/ThirdParty/ANGLE/include/GLES2/gl2platform.h (working copy) >@@ -17,7 +17,7 @@ > * by filing a bug against product "OpenGL-ES" component "Registry". > */ > >-#include <KHR/khrplatform.h> >+#include <ANGLE/khrplatform.h> > > #ifndef GL_APICALL > #define GL_APICALL KHRONOS_APICALL >Index: Source/ThirdParty/ANGLE/include/GLES3/gl3.h >=================================================================== >--- Source/ThirdParty/ANGLE/include/GLES3/gl3.h (revision 245238) >+++ Source/ThirdParty/ANGLE/include/GLES3/gl3.h (working copy) >@@ -58,7 +58,7 @@ extern "C" { > > #ifndef GL_ES_VERSION_2_0 > #define GL_ES_VERSION_2_0 1 >-#include <KHR/khrplatform.h> >+#include <ANGLE/khrplatform.h> > typedef khronos_int8_t GLbyte; > typedef khronos_float_t GLclampf; > typedef khronos_int32_t GLfixed; >@@ -833,6 +833,10 @@ typedef khronos_uint16_t GLhalf; > #define GL_UNSIGNED_INT_24_8 0x84FA > #define GL_DEPTH24_STENCIL8 0x88F0 > #define GL_UNSIGNED_NORMALIZED 0x8C17 >+// This should not be committed. >+#ifdef GL_DRAW_FRAMEBUFFER_BINDING >+#undef GL_DRAW_FRAMEBUFFER_BINDING >+#endif > #define GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6 > #define GL_READ_FRAMEBUFFER 0x8CA8 > #define GL_DRAW_FRAMEBUFFER 0x8CA9 >Index: Source/ThirdParty/ANGLE/include/GLES3/gl3platform.h >=================================================================== >--- Source/ThirdParty/ANGLE/include/GLES3/gl3platform.h (revision 245238) >+++ Source/ThirdParty/ANGLE/include/GLES3/gl3platform.h (working copy) >@@ -17,7 +17,7 @@ > * by filing a bug against product "OpenGL-ES" component "Registry". > */ > >-#include <KHR/khrplatform.h> >+#include <ANGLE/khrplatform.h> > > #ifndef GL_APICALL > #define GL_APICALL KHRONOS_APICALL >Index: Source/ThirdParty/ANGLE/include/GLES3/gl31.h >=================================================================== >--- Source/ThirdParty/ANGLE/include/GLES3/gl31.h (revision 245238) >+++ Source/ThirdParty/ANGLE/include/GLES3/gl31.h (working copy) >@@ -60,7 +60,7 @@ extern "C" { > > #ifndef GL_ES_VERSION_2_0 > #define GL_ES_VERSION_2_0 1 >-#include <KHR/khrplatform.h> >+#include <ANGLE/khrplatform.h> > typedef khronos_int8_t GLbyte; > typedef khronos_float_t GLclampf; > typedef khronos_int32_t GLfixed; >Index: Source/ThirdParty/ANGLE/include/GLES3/gl32.h >=================================================================== >--- Source/ThirdParty/ANGLE/include/GLES3/gl32.h (revision 245238) >+++ Source/ThirdParty/ANGLE/include/GLES3/gl32.h (working copy) >@@ -60,7 +60,7 @@ extern "C" { > > #ifndef GL_ES_VERSION_2_0 > #define GL_ES_VERSION_2_0 1 >-#include <KHR/khrplatform.h> >+#include <ANGLE/khrplatform.h> > typedef khronos_int8_t GLbyte; > typedef khronos_float_t GLclampf; > typedef khronos_int32_t GLfixed; >Index: Source/ThirdParty/ANGLE/src/common/PackedEnums.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/common/PackedEnums.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/common/PackedEnums.cpp (working copy) >@@ -9,6 +9,7 @@ > #include "common/PackedEnums.h" > > #include "common/utilities.h" >+#include <ANGLE/gl2ext_angle.h> > > namespace gl > { >Index: Source/ThirdParty/ANGLE/src/common/PackedGLEnums_autogen.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/common/PackedGLEnums_autogen.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/common/PackedGLEnums_autogen.cpp (working copy) >@@ -12,6 +12,8 @@ > #include "common/PackedGLEnums_autogen.h" > #include "common/debug.h" > >+#include <ANGLE/gl2ext_angle.h> >+ > namespace gl > { > >Index: Source/ThirdParty/ANGLE/src/common/uniform_type_info_autogen.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/common/uniform_type_info_autogen.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/common/uniform_type_info_autogen.cpp (working copy) >@@ -10,6 +10,7 @@ > > #include <array> > #include "common/utilities.h" >+#include <ANGLE/gl2ext_angle.h> > > using namespace angle; > >Index: Source/ThirdParty/ANGLE/src/common/utilities.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/common/utilities.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/common/utilities.cpp (working copy) >@@ -20,6 +20,8 @@ > # include <wrl/wrappers/corewrappers.h> > #endif > >+#include <ANGLE/gl2ext_angle.h> >+ > namespace > { > >Index: Source/ThirdParty/ANGLE/src/compiler/translator/util.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/compiler/translator/util.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/compiler/translator/util.cpp (working copy) >@@ -13,6 +13,8 @@ > #include "compiler/translator/ImmutableStringBuilder.h" > #include "compiler/translator/SymbolTable.h" > >+#include <ANGLE/gl2ext_angle.h> >+ > bool atoi_clamp(const char *str, unsigned int *value) > { > bool success = angle::pp::numeric_lex_int(str, value); >Index: Source/ThirdParty/ANGLE/src/libANGLE/Context.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/libANGLE/Context.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libANGLE/Context.cpp (working copy) >@@ -46,6 +46,7 @@ > #include "libANGLE/renderer/EGLImplFactory.h" > #include "libANGLE/renderer/Format.h" > #include "libANGLE/validationES.h" >+#include <ANGLE/gl2ext_angle.h> > > namespace gl > { >Index: Source/ThirdParty/ANGLE/src/libANGLE/Path.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/libANGLE/Path.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libANGLE/Path.cpp (working copy) >@@ -13,6 +13,8 @@ > #include "common/debug.h" > #include "common/mathutil.h" > >+#include <ANGLE/gl2ext_angle.h> >+ > namespace gl > { > >Index: Source/ThirdParty/ANGLE/src/libANGLE/State.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/libANGLE/State.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libANGLE/State.cpp (working copy) >@@ -27,6 +27,7 @@ > #include "libANGLE/queryutils.h" > #include "libANGLE/renderer/ContextImpl.h" > #include "libANGLE/renderer/TextureImpl.h" >+#include <ANGLE/gl2ext_angle.h> > > namespace gl > { >Index: Source/ThirdParty/ANGLE/src/libANGLE/formatutils.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/libANGLE/formatutils.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libANGLE/formatutils.cpp (working copy) >@@ -11,6 +11,7 @@ > #include "common/mathutil.h" > #include "libANGLE/Context.h" > #include "libANGLE/Framebuffer.h" >+#include <ANGLE/gl2ext_angle.h> > > using namespace angle; > >Index: Source/ThirdParty/ANGLE/src/libANGLE/queryutils.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/libANGLE/queryutils.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libANGLE/queryutils.cpp (working copy) >@@ -27,6 +27,7 @@ > #include "libANGLE/Uniform.h" > #include "libANGLE/VertexAttribute.h" > #include "libANGLE/queryconversions.h" >+#include <ANGLE/gl2ext_angle.h> > > namespace gl > { >Index: Source/ThirdParty/ANGLE/src/libANGLE/validationES2.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/libANGLE/validationES2.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libANGLE/validationES2.cpp (working copy) >@@ -27,6 +27,7 @@ > #include "libANGLE/validationES.h" > #include "libANGLE/validationES2.h" > #include "libANGLE/validationES3_autogen.h" >+#include <ANGLE/gl2ext_angle.h> > > namespace gl > { >Index: Source/ThirdParty/ANGLE/src/libANGLE/validationES3.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/libANGLE/validationES3.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libANGLE/validationES3.cpp (working copy) >@@ -20,6 +20,7 @@ > #include "libANGLE/VertexArray.h" > #include "libANGLE/formatutils.h" > #include "libANGLE/validationES.h" >+#include <ANGLE/gl2ext_angle.h> > > using namespace angle; > >Index: Source/ThirdParty/ANGLE/src/libANGLE/validationES.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/libANGLE/validationES.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libANGLE/validationES.cpp (working copy) >@@ -27,6 +27,7 @@ > > #include "common/mathutil.h" > #include "common/utilities.h" >+#include <ANGLE/gl2ext_angle.h> > > using namespace angle; > >Index: Source/ThirdParty/ANGLE/src/libANGLE/renderer/Format_table_autogen.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/libANGLE/renderer/Format_table_autogen.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libANGLE/renderer/Format_table_autogen.cpp (working copy) >@@ -13,6 +13,7 @@ > #include "image_util/copyimage.h" > #include "image_util/generatemip.h" > #include "image_util/loadimage.h" >+#include <ANGLE/gl2ext_angle.h> > > namespace angle > { >Index: Source/ThirdParty/ANGLE/src/libANGLE/renderer/load_functions_table_autogen.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/libANGLE/renderer/load_functions_table_autogen.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libANGLE/renderer/load_functions_table_autogen.cpp (working copy) >@@ -14,6 +14,7 @@ > #include "image_util/copyimage.h" > #include "image_util/generatemip.h" > #include "image_util/loadimage.h" >+#include <ANGLE/gl2ext_angle.h> > > using namespace rx; > >Index: Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/StateManagerGL.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/StateManagerGL.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/StateManagerGL.cpp (working copy) >@@ -30,6 +30,7 @@ > #include "libANGLE/renderer/gl/TextureGL.h" > #include "libANGLE/renderer/gl/TransformFeedbackGL.h" > #include "libANGLE/renderer/gl/VertexArrayGL.h" >+#include <ANGLE/gl2ext_angle.h> > > namespace rx > { >Index: Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/renderergl_utils.cpp >=================================================================== >--- Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/renderergl_utils.cpp (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/renderergl_utils.cpp (working copy) >@@ -29,6 +29,7 @@ > #include <EGL/eglext.h> > #include <algorithm> > #include <sstream> >+#include <ANGLE/gl2ext_angle.h> > > using angle::CheckedNumeric; > >Index: Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl.h >=================================================================== >--- Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl.h (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl.h (working copy) >@@ -9,8 +9,8 @@ > #ifndef LIBGLESV2_ENTRYPOINTSEGL_H_ > #define LIBGLESV2_ENTRYPOINTSEGL_H_ > >-#include <EGL/egl.h> >-#include <export.h> >+#include <ANGLE/egl.h> >+#include <ANGLE/export.h> > > extern "C" { > >Index: Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl_ext.h >=================================================================== >--- Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl_ext.h (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl_ext.h (working copy) >@@ -9,9 +9,9 @@ > #ifndef LIBGLESV2_ENTRYPOINTSEGLEXT_H_ > #define LIBGLESV2_ENTRYPOINTSEGLEXT_H_ > >-#include <EGL/egl.h> >-#include <EGL/eglext.h> >-#include <export.h> >+#include <ANGLE/egl.h> >+#include <ANGLE/eglext.h> >+#include <ANGLE/export.h> > > extern "C" { > >Index: Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_2_0_autogen.h >=================================================================== >--- Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_2_0_autogen.h (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_2_0_autogen.h (working copy) >@@ -11,8 +11,8 @@ > #ifndef LIBGLESV2_ENTRY_POINTS_GLES_2_0_AUTOGEN_H_ > #define LIBGLESV2_ENTRY_POINTS_GLES_2_0_AUTOGEN_H_ > >-#include <GLES2/gl2.h> >-#include <export.h> >+#include <ANGLE/gl2.h> >+#include <ANGLE/export.h> > > namespace gl > { >Index: Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_0_autogen.h >=================================================================== >--- Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_0_autogen.h (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_0_autogen.h (working copy) >@@ -11,8 +11,8 @@ > #ifndef LIBGLESV2_ENTRY_POINTS_GLES_3_0_AUTOGEN_H_ > #define LIBGLESV2_ENTRY_POINTS_GLES_3_0_AUTOGEN_H_ > >-#include <GLES3/gl3.h> >-#include <export.h> >+#include <ANGLE/gl3.h> >+#include <ANGLE/export.h> > > namespace gl > { >Index: Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_1_autogen.h >=================================================================== >--- Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_1_autogen.h (revision 245238) >+++ Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_1_autogen.h (working copy) >@@ -12,7 +12,7 @@ > #define LIBGLESV2_ENTRY_POINTS_GLES_3_1_AUTOGEN_H_ > > #include <GLES3/gl31.h> >-#include <export.h> >+#include <ANGLE/export.h> > #include "common/platform.h" > > namespace gl >Index: Source/WebCore/ChangeLog >=================================================================== >--- Source/WebCore/ChangeLog (revision 245238) >+++ Source/WebCore/ChangeLog (working copy) >@@ -1,3 +1,188 @@ >+2019-05-13 Alex Christensen <achristensen@webkit.org> >+ >+ Support using ANGLE as the backend for the WebGL implementation >+ https://bugs.webkit.org/show_bug.cgi?id=197755 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * Configurations/WebCore.xcconfig: >+ * platform/graphics/ANGLEWebKitBridge.h: >+ * platform/graphics/cocoa/GraphicsContext3DCocoa.mm: >+ (WebCore::GraphicsContext3D::GraphicsContext3D): >+ (WebCore::GraphicsContext3D::~GraphicsContext3D): >+ (WebCore::GraphicsContext3D::presentRenderbuffer): >+ * platform/graphics/cocoa/WebGLLayer.mm: >+ (-[WebGLLayer bindFramebufferToNextAvailableSurface]): >+ * platform/graphics/cv/VideoTextureCopierCV.cpp: >+ (WebCore::VideoTextureCopierCV::copyImageToPlatformTexture): >+ * platform/graphics/opengl/Extensions3DOpenGL.cpp: >+ (WebCore::Extensions3DOpenGL::blitFramebuffer): >+ (WebCore::Extensions3DOpenGL::renderbufferStorageMultisample): >+ (WebCore::Extensions3DOpenGL::drawBuffersEXT): >+ (WebCore::Extensions3DOpenGL::drawArraysInstanced): >+ (WebCore::Extensions3DOpenGL::drawElementsInstanced): >+ (WebCore::Extensions3DOpenGL::vertexAttribDivisor): >+ (WebCore::Extensions3DOpenGL::getExtensions): >+ * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: >+ (WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon): >+ (WebCore::Extensions3DOpenGLCommon::initializeAvailableExtensions): >+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: >+ (WebCore::GraphicsContext3D::readPixelsAndConvertToBGRAIfNecessary): >+ (WebCore::GraphicsContext3D::reshapeFBOs): >+ (WebCore::GraphicsContext3D::attachDepthAndStencilBufferIfNeeded): >+ (WebCore::GraphicsContext3D::resolveMultisamplingIfNecessary): >+ (WebCore::GraphicsContext3D::renderbufferStorage): >+ (WebCore::GraphicsContext3D::getIntegerv): >+ (WebCore::GraphicsContext3D::texImage2D): >+ (WebCore::GraphicsContext3D::depthRange): >+ (WebCore::GraphicsContext3D::clearDepth): >+ (WebCore::GraphicsContext3D::readPixels): >+ * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp: >+ (WebCore::GraphicsContext3D::prepareTexture): >+ (WebCore::GraphicsContext3D::readRenderingResults): >+ (WebCore::GraphicsContext3D::reshape): >+ (WebCore::GraphicsContext3D::checkVaryingsPacking const): >+ (WebCore::GraphicsContext3D::precisionsMatch const): >+ (WebCore::GraphicsContext3D::activeTexture): >+ (WebCore::GraphicsContext3D::attachShader): >+ (WebCore::GraphicsContext3D::bindAttribLocation): >+ (WebCore::GraphicsContext3D::bindBuffer): >+ (WebCore::GraphicsContext3D::bindFramebuffer): >+ (WebCore::GraphicsContext3D::bindRenderbuffer): >+ (WebCore::GraphicsContext3D::bindTexture): >+ (WebCore::GraphicsContext3D::blendColor): >+ (WebCore::GraphicsContext3D::blendEquation): >+ (WebCore::GraphicsContext3D::blendEquationSeparate): >+ (WebCore::GraphicsContext3D::blendFunc): >+ (WebCore::GraphicsContext3D::blendFuncSeparate): >+ (WebCore::GraphicsContext3D::bufferData): >+ (WebCore::GraphicsContext3D::bufferSubData): >+ (WebCore::GraphicsContext3D::mapBufferRange): >+ (WebCore::GraphicsContext3D::unmapBuffer): >+ (WebCore::GraphicsContext3D::copyBufferSubData): >+ (WebCore::GraphicsContext3D::getInternalformativ): >+ (WebCore::GraphicsContext3D::renderbufferStorageMultisample): >+ (WebCore::GraphicsContext3D::texStorage2D): >+ (WebCore::GraphicsContext3D::texStorage3D): >+ (WebCore::GraphicsContext3D::getActiveUniforms): >+ (WebCore::GraphicsContext3D::checkFramebufferStatus): >+ (WebCore::GraphicsContext3D::clearColor): >+ (WebCore::GraphicsContext3D::clear): >+ (WebCore::GraphicsContext3D::clearStencil): >+ (WebCore::GraphicsContext3D::colorMask): >+ (WebCore::GraphicsContext3D::compileShader): >+ (WebCore::GraphicsContext3D::compileShaderDirect): >+ (WebCore::GraphicsContext3D::copyTexImage2D): >+ (WebCore::GraphicsContext3D::copyTexSubImage2D): >+ (WebCore::GraphicsContext3D::cullFace): >+ (WebCore::GraphicsContext3D::depthFunc): >+ (WebCore::GraphicsContext3D::depthMask): >+ (WebCore::GraphicsContext3D::detachShader): >+ (WebCore::GraphicsContext3D::disable): >+ (WebCore::GraphicsContext3D::disableVertexAttribArray): >+ (WebCore::GraphicsContext3D::drawArrays): >+ (WebCore::GraphicsContext3D::drawElements): >+ (WebCore::GraphicsContext3D::enable): >+ (WebCore::GraphicsContext3D::enableVertexAttribArray): >+ (WebCore::GraphicsContext3D::finish): >+ (WebCore::GraphicsContext3D::flush): >+ (WebCore::GraphicsContext3D::framebufferRenderbuffer): >+ (WebCore::GraphicsContext3D::framebufferTexture2D): >+ (WebCore::GraphicsContext3D::frontFace): >+ (WebCore::GraphicsContext3D::generateMipmap): >+ (WebCore::GraphicsContext3D::getActiveAttribImpl): >+ (WebCore::GraphicsContext3D::getActiveUniformImpl): >+ (WebCore::GraphicsContext3D::getAttachedShaders): >+ (WebCore::GraphicsContext3D::getAttribLocation): >+ (WebCore::GraphicsContext3D::getAttribLocationDirect): >+ (WebCore::GraphicsContext3D::getError): >+ (WebCore::GraphicsContext3D::getString): >+ (WebCore::GraphicsContext3D::hint): >+ (WebCore::GraphicsContext3D::isBuffer): >+ (WebCore::GraphicsContext3D::isEnabled): >+ (WebCore::GraphicsContext3D::isFramebuffer): >+ (WebCore::GraphicsContext3D::isProgram): >+ (WebCore::GraphicsContext3D::isRenderbuffer): >+ (WebCore::GraphicsContext3D::isShader): >+ (WebCore::GraphicsContext3D::isTexture): >+ (WebCore::GraphicsContext3D::lineWidth): >+ (WebCore::GraphicsContext3D::linkProgram): >+ (WebCore::GraphicsContext3D::pixelStorei): >+ (WebCore::GraphicsContext3D::polygonOffset): >+ (WebCore::GraphicsContext3D::sampleCoverage): >+ (WebCore::GraphicsContext3D::scissor): >+ (WebCore::GraphicsContext3D::stencilFunc): >+ (WebCore::GraphicsContext3D::stencilFuncSeparate): >+ (WebCore::GraphicsContext3D::stencilMask): >+ (WebCore::GraphicsContext3D::stencilMaskSeparate): >+ (WebCore::GraphicsContext3D::stencilOp): >+ (WebCore::GraphicsContext3D::stencilOpSeparate): >+ (WebCore::GraphicsContext3D::texParameterf): >+ (WebCore::GraphicsContext3D::texParameteri): >+ (WebCore::GraphicsContext3D::uniform1f): >+ (WebCore::GraphicsContext3D::uniform1fv): >+ (WebCore::GraphicsContext3D::uniform2f): >+ (WebCore::GraphicsContext3D::uniform2fv): >+ (WebCore::GraphicsContext3D::uniform3f): >+ (WebCore::GraphicsContext3D::uniform3fv): >+ (WebCore::GraphicsContext3D::uniform4f): >+ (WebCore::GraphicsContext3D::uniform4fv): >+ (WebCore::GraphicsContext3D::uniform1i): >+ (WebCore::GraphicsContext3D::uniform1iv): >+ (WebCore::GraphicsContext3D::uniform2i): >+ (WebCore::GraphicsContext3D::uniform2iv): >+ (WebCore::GraphicsContext3D::uniform3i): >+ (WebCore::GraphicsContext3D::uniform3iv): >+ (WebCore::GraphicsContext3D::uniform4i): >+ (WebCore::GraphicsContext3D::uniform4iv): >+ (WebCore::GraphicsContext3D::uniformMatrix2fv): >+ (WebCore::GraphicsContext3D::uniformMatrix3fv): >+ (WebCore::GraphicsContext3D::uniformMatrix4fv): >+ (WebCore::GraphicsContext3D::useProgram): >+ (WebCore::GraphicsContext3D::validateProgram): >+ (WebCore::GraphicsContext3D::vertexAttrib1f): >+ (WebCore::GraphicsContext3D::vertexAttrib1fv): >+ (WebCore::GraphicsContext3D::vertexAttrib2f): >+ (WebCore::GraphicsContext3D::vertexAttrib2fv): >+ (WebCore::GraphicsContext3D::vertexAttrib3f): >+ (WebCore::GraphicsContext3D::vertexAttrib3fv): >+ (WebCore::GraphicsContext3D::vertexAttrib4f): >+ (WebCore::GraphicsContext3D::vertexAttrib4fv): >+ (WebCore::GraphicsContext3D::vertexAttribPointer): >+ (WebCore::GraphicsContext3D::viewport): >+ (WebCore::GraphicsContext3D::createVertexArray): >+ (WebCore::GraphicsContext3D::deleteVertexArray): >+ (WebCore::GraphicsContext3D::isVertexArray): >+ (WebCore::GraphicsContext3D::bindVertexArray): >+ (WebCore::GraphicsContext3D::getBooleanv): >+ (WebCore::GraphicsContext3D::getBufferParameteriv): >+ (WebCore::GraphicsContext3D::getFloatv): >+ (WebCore::GraphicsContext3D::getInteger64v): >+ (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv): >+ (WebCore::GraphicsContext3D::getProgramiv): >+ (WebCore::GraphicsContext3D::getNonBuiltInActiveSymbolCount): >+ (WebCore::GraphicsContext3D::getProgramInfoLog): >+ (WebCore::GraphicsContext3D::getRenderbufferParameteriv): >+ (WebCore::GraphicsContext3D::getShaderiv): >+ (WebCore::GraphicsContext3D::getShaderInfoLog): >+ (WebCore::GraphicsContext3D::getTexParameterfv): >+ (WebCore::GraphicsContext3D::getTexParameteriv): >+ (WebCore::GraphicsContext3D::getUniformfv): >+ (WebCore::GraphicsContext3D::getUniformiv): >+ (WebCore::GraphicsContext3D::getUniformLocation): >+ (WebCore::GraphicsContext3D::getVertexAttribfv): >+ (WebCore::GraphicsContext3D::getVertexAttribiv): >+ (WebCore::GraphicsContext3D::getVertexAttribOffset): >+ (WebCore::GraphicsContext3D::texSubImage2D): >+ (WebCore::GraphicsContext3D::compressedTexImage2D): >+ (WebCore::GraphicsContext3D::compressedTexSubImage2D): >+ (WebCore::GraphicsContext3D::createFramebuffer): >+ (WebCore::GraphicsContext3D::createRenderbuffer): >+ (WebCore::GraphicsContext3D::deleteFramebuffer): >+ (WebCore::GraphicsContext3D::deleteRenderbuffer): >+ (WebCore::GraphicsContext3D::texImage2DDirect): >+ (WebCore::GraphicsContext3D::primitiveRestartIndex): >+ > 2019-05-13 Wenson Hsieh <wenson_hsieh@apple.com> > > [macOS] Font formatting options don't work when composing a message in Yahoo mail >Index: Source/WebCore/Configurations/WebCore.xcconfig >=================================================================== >--- Source/WebCore/Configurations/WebCore.xcconfig (revision 245238) >+++ Source/WebCore/Configurations/WebCore.xcconfig (working copy) >@@ -44,7 +44,8 @@ LIBRARY_SEARCH_PATHS = $(inherited) "$(W > WEBKITADDITIONS_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions $(SDKROOT)/usr/local/include/WebKitAdditions; > LIBWEBRTC_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/webrtc $(SDKROOT)/usr/local/include/webrtc $(BUILT_PRODUCTS_DIR)/usr/local/include/webrtc/sdk/objc/Framework/Headers $(SDKROOT)/usr/local/include/webrtc/sdk/objc/Framework/Headers; > >-HEADER_SEARCH_PATHS = PAL ForwardingHeaders /usr/include/libxslt /usr/include/libxml2 "$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore" "$(BUILT_PRODUCTS_DIR)/usr/local/include" $(WEBKITADDITIONS_HEADER_SEARCH_PATHS) $(LIBWEBRTC_HEADER_SEARCH_PATHS) $(HEADER_SEARCH_PATHS) $(SRCROOT); >+// This is a horrible hack. Don't actually commit this. >+HEADER_SEARCH_PATHS = PAL ForwardingHeaders /usr/include/libxslt /usr/include/libxml2 "$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore" "$(BUILT_PRODUCTS_DIR)/usr/local/include" $(WEBKITADDITIONS_HEADER_SEARCH_PATHS) $(LIBWEBRTC_HEADER_SEARCH_PATHS) $(HEADER_SEARCH_PATHS) $(SRCROOT) $(SRCROOT)/../ThirdParty/ANGLE/include; > INFOPLIST_FILE = Info.plist; > > INSTALL_PATH = $(INSTALL_PATH_$(WK_COCOA_TOUCH)); >Index: Source/WebCore/platform/graphics/ANGLEWebKitBridge.h >=================================================================== >--- Source/WebCore/platform/graphics/ANGLEWebKitBridge.h (revision 245238) >+++ Source/WebCore/platform/graphics/ANGLEWebKitBridge.h (working copy) >@@ -36,11 +36,8 @@ > > #if PLATFORM(COCOA) > >-#if USE(OPENGL_ES) >-#import <OpenGLES/ES2/glext.h> >-#else >-#include <OpenGL/gl.h> >-#endif >+#import <ANGLE/entry_points_gles_2_0_autogen.h> >+#import <ANGLE/entry_points_gles_3_0_autogen.h> > > #elif PLATFORM(WIN) > #include "OpenGLESShims.h" >Index: Source/WebCore/platform/graphics/cocoa/GraphicsContext3DCocoa.mm >=================================================================== >--- Source/WebCore/platform/graphics/cocoa/GraphicsContext3DCocoa.mm (revision 245238) >+++ Source/WebCore/platform/graphics/cocoa/GraphicsContext3DCocoa.mm (working copy) >@@ -43,25 +43,15 @@ > #import "WebGLLayer.h" > #import "WebGLObject.h" > #import "WebGLRenderingContextBase.h" >+#import <ANGLE/entry_points_gles_2_0_autogen.h> >+#import <ANGLE/entry_points_gles_3_0_autogen.h> >+#import <ANGLE/functionsgl_enums.h> > #import <CoreGraphics/CGBitmapContext.h> > #import <sys/sysctl.h> > #import <sysexits.h> > #import <wtf/BlockObjCExceptions.h> > #import <wtf/text/CString.h> > >-#if USE(OPENGL_ES) >-#import <OpenGLES/EAGL.h> >-#import <OpenGLES/EAGLDrawable.h> >-#import <OpenGLES/EAGLIOSurface.h> >-#import <OpenGLES/ES2/glext.h> >-#import <QuartzCore/QuartzCore.h> >-#import <pal/spi/ios/OpenGLESSPI.h> >-#else >-#import <IOKit/IOKitLib.h> >-#import <OpenGL/CGLRenderers.h> >-#import <OpenGL/gl.h> >-#endif >- > #if PLATFORM(MAC) > #import "ScreenProperties.h" > #endif >@@ -266,7 +256,7 @@ GraphicsContext3D::GraphicsContext3D(Gra > makeContextCurrent(); > > if (m_attrs.isWebGL2) >- ::glEnable(GraphicsContext3D::PRIMITIVE_RESTART_FIXED_INDEX); >+ gl::Enable(GraphicsContext3D::PRIMITIVE_RESTART_FIXED_INDEX); > #else > Vector<CGLPixelFormatAttribute> attribs; > CGLPixelFormatObj pixelFormatObj = 0; >@@ -351,7 +341,7 @@ GraphicsContext3D::GraphicsContext3D(Gra > > // WebGL 2 expects ES 3-only PRIMITIVE_RESTART_FIXED_INDEX to be enabled; we must emulate this on non-ES 3 systems. > if (m_isForWebGL2) >- ::glEnable(GraphicsContext3D::PRIMITIVE_RESTART); >+ gl::Enable(GraphicsContext3D::PRIMITIVE_RESTART); > > #endif // !USE(OPENGL_ES) > >@@ -367,40 +357,40 @@ GraphicsContext3D::GraphicsContext3D(Gra > > #if USE(OPENGL) > if (useMultisampling) >- ::glEnable(GL_MULTISAMPLE); >+ gl::Enable(GL_MULTISAMPLE); > #endif > > // Create the texture that will be used for the framebuffer. > #if USE(OPENGL_ES) >- ::glGenRenderbuffers(1, &m_texture); >+ gl::GenRenderbuffers(1, &m_texture); > #else >- ::glGenTextures(1, &m_texture); >- // We bind to GL_TEXTURE_RECTANGLE_EXT rather than TEXTURE_2D because >+ gl::GenTextures(1, &m_texture); >+ // We bind to GL_TEXTURE_RECTANGLE rather than TEXTURE_2D because > // that's what is required for a texture backed by IOSurface. >- ::glBindTexture(GL_TEXTURE_RECTANGLE_EXT, m_texture); >- ::glTexParameteri(GL_TEXTURE_RECTANGLE_EXT, GL_TEXTURE_MAG_FILTER, GL_LINEAR); >- ::glTexParameteri(GL_TEXTURE_RECTANGLE_EXT, GL_TEXTURE_MIN_FILTER, GL_LINEAR); >- ::glTexParameteri(GL_TEXTURE_RECTANGLE_EXT, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); >- ::glTexParameteri(GL_TEXTURE_RECTANGLE_EXT, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); >- ::glBindTexture(GL_TEXTURE_RECTANGLE_EXT, 0); >+ gl::BindTexture(GL_TEXTURE_RECTANGLE, m_texture); >+ gl::TexParameteri(GL_TEXTURE_RECTANGLE, GL_TEXTURE_MAG_FILTER, GL_LINEAR); >+ gl::TexParameteri(GL_TEXTURE_RECTANGLE, GL_TEXTURE_MIN_FILTER, GL_LINEAR); >+ gl::TexParameteri(GL_TEXTURE_RECTANGLE, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); >+ gl::TexParameteri(GL_TEXTURE_RECTANGLE, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); >+ gl::BindTexture(GL_TEXTURE_RECTANGLE, 0); > #endif > > // Create the framebuffer object. >- ::glGenFramebuffersEXT(1, &m_fbo); >- ::glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, m_fbo); >+ gl::GenFramebuffers(1, &m_fbo); >+ gl::BindFramebuffer(GL_FRAMEBUFFER, m_fbo); > > m_state.boundFBO = m_fbo; > if (!m_attrs.antialias && (m_attrs.stencil || m_attrs.depth)) >- ::glGenRenderbuffersEXT(1, &m_depthStencilBuffer); >+ gl::GenRenderbuffers(1, &m_depthStencilBuffer); > > // If necessary, create another framebuffer for the multisample results. > if (m_attrs.antialias) { >- ::glGenFramebuffersEXT(1, &m_multisampleFBO); >- ::glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, m_multisampleFBO); >+ gl::GenFramebuffers(1, &m_multisampleFBO); >+ gl::BindFramebuffer(GL_FRAMEBUFFER, m_multisampleFBO); > m_state.boundFBO = m_multisampleFBO; >- ::glGenRenderbuffersEXT(1, &m_multisampleColorBuffer); >+ gl::GenRenderbuffers(1, &m_multisampleColorBuffer); > if (m_attrs.stencil || m_attrs.depth) >- ::glGenRenderbuffersEXT(1, &m_multisampleDepthStencilBuffer); >+ gl::GenRenderbuffers(1, &m_multisampleDepthStencilBuffer); > } > > // ANGLE initialization. >@@ -426,12 +416,12 @@ GraphicsContext3D::GraphicsContext3D(Gra > m_compiler.setResources(ANGLEResources); > > #if USE(OPENGL) >- ::glEnable(GL_VERTEX_PROGRAM_POINT_SIZE); >+ gl::Enable(GL_VERTEX_PROGRAM_POINT_SIZE); > if (!isGLES2Compliant()) >- ::glEnable(GL_POINT_SPRITE); >+ gl::Enable(GL_POINT_SPRITE); > #endif > >- ::glClearColor(0, 0, 0, 0); >+ gl::ClearColor(0, 0, 0, 0); > > LOG(WebGL, "Created a GraphicsContext3D (%p).", this); > } >@@ -444,21 +434,21 @@ GraphicsContext3D::~GraphicsContext3D() > #if USE(OPENGL_ES) > makeContextCurrent(); > [m_contextObj renderbufferStorage:GL_RENDERBUFFER fromDrawable:nil]; >- ::glDeleteRenderbuffers(1, &m_texture); >+ gl::DeleteRenderbuffers(1, &m_texture); > #else > CGLSetCurrentContext(m_contextObj); >- ::glDeleteTextures(1, &m_texture); >+ gl::DeleteTextures(1, &m_texture); > #endif > if (m_attrs.antialias) { >- ::glDeleteRenderbuffersEXT(1, &m_multisampleColorBuffer); >+ gl::DeleteRenderbuffers(1, &m_multisampleColorBuffer); > if (m_attrs.stencil || m_attrs.depth) >- ::glDeleteRenderbuffersEXT(1, &m_multisampleDepthStencilBuffer); >- ::glDeleteFramebuffersEXT(1, &m_multisampleFBO); >+ gl::DeleteRenderbuffers(1, &m_multisampleDepthStencilBuffer); >+ gl::DeleteFramebuffers(1, &m_multisampleFBO); > } else { > if (m_attrs.stencil || m_attrs.depth) >- ::glDeleteRenderbuffersEXT(1, &m_depthStencilBuffer); >+ gl::DeleteRenderbuffers(1, &m_depthStencilBuffer); > } >- ::glDeleteFramebuffersEXT(1, &m_fbo); >+ gl::DeleteFramebuffers(1, &m_fbo); > #if USE(OPENGL_ES) > [EAGLContext setCurrentContext:0]; > [static_cast<EAGLContext*>(m_contextObj) release]; >@@ -554,8 +544,8 @@ void GraphicsContext3D::presentRenderbuf > if (m_attrs.antialias) > resolveMultisamplingIfNecessary(); > >- ::glFlush(); >- ::glBindRenderbuffer(GL_RENDERBUFFER, m_texture); >+ gl::Flush(); >+ gl::BindRenderbuffer(GL_RENDERBUFFER, m_texture); > [static_cast<EAGLContext*>(m_contextObj) presentRenderbuffer:GL_RENDERBUFFER]; > [EAGLContext setCurrentContext:nil]; > } >Index: Source/WebCore/platform/graphics/cocoa/WebGLLayer.mm >=================================================================== >--- Source/WebCore/platform/graphics/cocoa/WebGLLayer.mm (revision 245238) >+++ Source/WebCore/platform/graphics/cocoa/WebGLLayer.mm (working copy) >@@ -34,6 +34,7 @@ > #import "GraphicsLayerCA.h" > #import "ImageBufferUtilitiesCG.h" > #import "PlatformCALayer.h" >+#import <ANGLE/functionsgl_enums.h> > #import <pal/spi/cocoa/QuartzCoreSPI.h> > #import <wtf/FastMalloc.h> > #import <wtf/RetainPtr.h> >@@ -167,7 +168,7 @@ - (void)allocateIOSurfaceBackingStoreWit > - (void)bindFramebufferToNextAvailableSurface > { > GC3Denum texture = _context->platformTexture(); >- glBindTexture(GL_TEXTURE_RECTANGLE_ARB, texture); >+ glBindTexture(GL_TEXTURE_RECTANGLE, texture); > > if (_drawingBuffer && _drawingBuffer->isInUse()) > std::swap(_drawingBuffer, _spareBuffer); >@@ -176,7 +177,7 @@ - (void)bindFramebufferToNextAvailableSu > GC3Denum internalFormat = _usingAlpha ? GL_RGBA : GL_RGB; > > // Link the IOSurface to the texture. >- CGLError error = CGLTexImageIOSurface2D(_context->platformGraphicsContext3D(), GL_TEXTURE_RECTANGLE_ARB, internalFormat, _bufferSize.width(), _bufferSize.height(), GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV, ioSurface, 0); >+ CGLError error = CGLTexImageIOSurface2D(_context->platformGraphicsContext3D(), GL_TEXTURE_RECTANGLE, internalFormat, _bufferSize.width(), _bufferSize.height(), GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV, ioSurface, 0); > ASSERT_UNUSED(error, error == kCGLNoError); > } > #endif >Index: Source/WebCore/platform/graphics/cv/VideoTextureCopierCV.cpp >=================================================================== >--- Source/WebCore/platform/graphics/cv/VideoTextureCopierCV.cpp (revision 245238) >+++ Source/WebCore/platform/graphics/cv/VideoTextureCopierCV.cpp (working copy) >@@ -31,15 +31,14 @@ > #include "FourCC.h" > #include "Logging.h" > #include "TextureCacheCV.h" >+#include <ANGLE/entry_points_gles_2_0_autogen.h> >+#include <ANGLE/entry_points_gles_3_0_autogen.h> >+#include <ANGLE/functionsgl_enums.h> > #include <pal/spi/cocoa/IOSurfaceSPI.h> > #include <wtf/NeverDestroyed.h> > #include <wtf/StdMap.h> > #include <wtf/text/StringBuilder.h> > >-#if USE(OPENGL_ES) >-#include <OpenGLES/ES3/glext.h> >-#endif >- > #include "CoreVideoSoftLink.h" > > namespace WebCore { >@@ -791,7 +790,7 @@ bool VideoTextureCopierCV::copyImageToPl > #if USE(OPENGL_ES) > GC3Denum videoTextureTarget = GraphicsContext3D::TEXTURE_2D; > #else >- GC3Denum videoTextureTarget = GL_TEXTURE_RECTANGLE_ARB; >+ GC3Denum videoTextureTarget = GL_TEXTURE_RECTANGLE; > #endif > auto uvTexture = m_context->createTexture(); > m_context->activeTexture(GraphicsContext3D::TEXTURE1); >Index: Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp >=================================================================== >--- Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp (revision 245238) >+++ Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp (working copy) >@@ -24,24 +24,13 @@ > */ > > #include "config.h" >+#include "Extensions3DOpenGL.h" > > #if ENABLE(GRAPHICS_CONTEXT_3D) > >-#include "Extensions3DOpenGL.h" >- > #include "GraphicsContext3D.h" >- >-#if PLATFORM(GTK) || PLATFORM(WIN) >-#include "OpenGLShims.h" >-#elif USE(OPENGL_ES) >-#include <OpenGLES/ES2/glext.h> >-#elif USE(OPENGL) >-#include <OpenGL/gl.h> >-#endif >- >-#if PLATFORM(IOS_FAMILY) >-#include "GraphicsContext3DIOS.h" >-#endif >+#include <ANGLE/entry_points_gles_2_0_autogen.h> >+#include <ANGLE/entry_points_gles_3_0_autogen.h> > > namespace WebCore { > >@@ -66,15 +55,15 @@ void Extensions3DOpenGL::blitFramebuffer > UNUSED_PARAM(dstY1); > UNUSED_PARAM(mask); > UNUSED_PARAM(filter); >- ::glResolveMultisampleFramebufferAPPLE(); >+ gl::ResolveMultisampleFramebufferAPPLE(); > #else >- ::glBlitFramebufferEXT(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); >+ gl::BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); > #endif > } > > void Extensions3DOpenGL::renderbufferStorageMultisample(unsigned long target, unsigned long samples, unsigned long internalformat, unsigned long width, unsigned long height) > { >- ::glRenderbufferStorageMultisampleEXT(target, samples, internalformat, width, height); >+ gl::RenderbufferStorageMultisample(target, samples, internalformat, width, height); > } > > Platform3DObject Extensions3DOpenGL::createVertexArrayOES() >@@ -239,9 +228,9 @@ void Extensions3DOpenGL::drawBuffersEXT( > { > // FIXME: implement support for other platforms. > #if PLATFORM(MAC) >- ::glDrawBuffersARB(n, bufs); >+ gl::DrawBuffers(n, bufs); > #elif PLATFORM(GTK) >- ::glDrawBuffers(n, bufs); >+ gl::DrawBuffers(n, bufs); > #else > UNUSED_PARAM(n); > UNUSED_PARAM(bufs); >@@ -252,9 +241,9 @@ void Extensions3DOpenGL::drawArraysInsta > { > m_context->makeContextCurrent(); > #if PLATFORM(GTK) >- ::glDrawArraysInstanced(mode, first, count, primcount); >+ gl::DrawArraysInstanced(mode, first, count, primcount); > #elif PLATFORM(COCOA) >- ::glDrawArraysInstancedARB(mode, first, count, primcount); >+ gl::DrawArraysInstanced(mode, first, count, primcount); > #else > UNUSED_PARAM(mode); > UNUSED_PARAM(first); >@@ -267,9 +256,9 @@ void Extensions3DOpenGL::drawElementsIns > { > m_context->makeContextCurrent(); > #if PLATFORM(GTK) >- ::glDrawElementsInstanced(mode, count, type, reinterpret_cast<GLvoid*>(static_cast<intptr_t>(offset)), primcount); >+ gl::DrawElementsInstanced(mode, count, type, reinterpret_cast<GLvoid*>(static_cast<intptr_t>(offset)), primcount); > #elif PLATFORM(COCOA) >- ::glDrawElementsInstancedARB(mode, count, type, reinterpret_cast<GLvoid*>(static_cast<intptr_t>(offset)), primcount); >+ gl::DrawElementsInstanced(mode, count, type, reinterpret_cast<GLvoid*>(static_cast<intptr_t>(offset)), primcount); > #else > UNUSED_PARAM(mode); > UNUSED_PARAM(count); >@@ -283,9 +272,9 @@ void Extensions3DOpenGL::vertexAttribDiv > { > m_context->makeContextCurrent(); > #if PLATFORM(GTK) >- ::glVertexAttribDivisor(index, divisor); >+ gl::VertexAttribDivisor(index, divisor); > #elif PLATFORM(COCOA) >- ::glVertexAttribDivisorARB(index, divisor); >+ gl::VertexAttribDivisor(index, divisor); > #else > UNUSED_PARAM(index); > UNUSED_PARAM(divisor); >@@ -295,7 +284,7 @@ void Extensions3DOpenGL::vertexAttribDiv > String Extensions3DOpenGL::getExtensions() > { > ASSERT(!m_useIndexedGetString); >- return String(reinterpret_cast<const char*>(::glGetString(GL_EXTENSIONS))); >+ return String(reinterpret_cast<const char*>(gl::GetString(GL_EXTENSIONS))); > } > > #if PLATFORM(GTK) || PLATFORM(WIN) || (PLATFORM(COCOA) && USE(OPENGL_ES)) >Index: Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp >=================================================================== >--- Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp (revision 245238) >+++ Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp (working copy) >@@ -25,39 +25,14 @@ > */ > > #include "config.h" >+#include "Extensions3DOpenGLCommon.h" > > #if ENABLE(GRAPHICS_CONTEXT_3D) >-#include "Extensions3DOpenGLCommon.h" > > #include "ANGLEWebKitBridge.h" > #include "GraphicsContext3D.h" >- >-#if PLATFORM(COCOA) >- >-#if USE(OPENGL_ES) >-#include <OpenGLES/ES2/glext.h> >-#include <OpenGLES/ES3/gl.h> >-#else >-#define GL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED >-#include <OpenGL/gl.h> >-#include <OpenGL/gl3.h> >-#undef GL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED >-#endif >- >-#else >- >-#if USE(LIBEPOXY) >-#include "EpoxyShims.h" >-#elif USE(OPENGL_ES) >-#include "OpenGLESShims.h" >-#include <GLES2/gl2.h> >-#include <GLES2/gl2ext.h> >-#elif PLATFORM(GTK) || PLATFORM(WIN) >-#include "OpenGLShims.h" >-#endif >- >-#endif >- >+#include <ANGLE/entry_points_gles_2_0_autogen.h> >+#include <ANGLE/entry_points_gles_3_0_autogen.h> > #include <wtf/MainThread.h> > #include <wtf/Vector.h> > >@@ -74,8 +49,8 @@ Extensions3DOpenGLCommon::Extensions3DOp > , m_requiresRestrictedMaximumTextureSize(false) > , m_useIndexedGetString(useIndexedGetString) > { >- m_vendor = String(reinterpret_cast<const char*>(::glGetString(GL_VENDOR))); >- m_renderer = String(reinterpret_cast<const char*>(::glGetString(GL_RENDERER))); >+ m_vendor = String(reinterpret_cast<const char*>(gl::GetString(GL_VENDOR))); >+ m_renderer = String(reinterpret_cast<const char*>(gl::GetString(GL_RENDERER))); > > Vector<String> vendorComponents = m_vendor.convertToASCIILowercase().split(' '); > if (vendorComponents.contains("nvidia")) >@@ -217,7 +192,7 @@ void Extensions3DOpenGLCommon::initializ > #if (PLATFORM(COCOA) && USE(OPENGL)) || (PLATFORM(GTK) && !USE(OPENGL_ES)) > if (m_useIndexedGetString) { > GLint numExtensions = 0; >- ::glGetIntegerv(GL_NUM_EXTENSIONS, &numExtensions); >+ gl::GetIntegerv(GL_NUM_EXTENSIONS, &numExtensions); > for (GLint i = 0; i < numExtensions; ++i) > m_availableExtensions.add(glGetStringi(GL_EXTENSIONS, i)); > >Index: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp >=================================================================== >--- Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp (revision 245238) >+++ Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp (working copy) >@@ -47,19 +47,10 @@ > #include <Accelerate/Accelerate.h> > #endif > >-#if PLATFORM(GTK) || PLATFORM(WIN) >-#include "OpenGLShims.h" >-#elif USE(OPENGL_ES) >-#import <OpenGLES/ES2/glext.h> >-// From <OpenGLES/glext.h> >-#define GL_RGBA32F_ARB 0x8814 >-#define GL_RGB32F_ARB 0x8815 >-#elif USE(OPENGL) >-#define GL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED >-#include <OpenGL/gl.h> >-#include <OpenGL/gl3.h> >-#undef GL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED >-#endif >+#import <ANGLE/entry_points_gles_2_0_autogen.h> >+#import <ANGLE/entry_points_gles_3_0_autogen.h> >+#import <ANGLE/functionsgl_enums.h> >+#import <ANGLE/gl2ext.h> > > namespace WebCore { > >@@ -84,7 +75,7 @@ void GraphicsContext3D::readPixelsAndCon > { > // NVIDIA drivers have a bug where calling readPixels in BGRA can return the wrong values for the alpha channel when the alpha is off for the context. > if (!m_attrs.alpha && getExtensions().isNVIDIA()) { >- ::glReadPixels(x, y, width, height, GL_RGBA, GL_UNSIGNED_BYTE, pixels); >+ gl::ReadPixels(x, y, width, height, GL_RGBA, GL_UNSIGNED_BYTE, pixels); > #if USE(ACCELERATE) > vImage_Buffer src; > src.height = height; >@@ -107,7 +98,7 @@ void GraphicsContext3D::readPixelsAndCon > std::swap(pixels[i], pixels[i + 2]); > #endif > } else >- ::glReadPixels(x, y, width, height, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV, pixels); >+ gl::ReadPixels(x, y, width, height, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV, pixels); > > #if PLATFORM(MAC) > if (!m_attrs.alpha) >@@ -139,7 +130,7 @@ bool GraphicsContext3D::reshapeFBOs(cons > Extensions3D& extensions = getExtensions(); > // Use a 24 bit depth buffer where we know we have it. > if (extensions.supports("GL_EXT_packed_depth_stencil")) >- internalDepthStencilFormat = GL_DEPTH24_STENCIL8_EXT; >+ internalDepthStencilFormat = GL_DEPTH24_STENCIL8_OES; > else > #if PLATFORM(COCOA) && USE(OPENGL_ES) > internalDepthStencilFormat = GL_DEPTH_COMPONENT16; >@@ -151,59 +142,59 @@ bool GraphicsContext3D::reshapeFBOs(cons > // Resize multisample FBO. > if (m_attrs.antialias) { > GLint maxSampleCount; >- ::glGetIntegerv(GL_MAX_SAMPLES_EXT, &maxSampleCount); >+ gl::GetIntegerv(GL_MAX_SAMPLES_EXT, &maxSampleCount); > // Using more than 4 samples is slow on some hardware and is unlikely to > // produce a significantly better result. > GLint sampleCount = std::min(4, maxSampleCount); >- ::glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, m_multisampleFBO); >- ::glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, m_multisampleColorBuffer); >+ gl::BindFramebuffer(GL_FRAMEBUFFER, m_multisampleFBO); >+ gl::BindRenderbuffer(GL_RENDERBUFFER, m_multisampleColorBuffer); > #if PLATFORM(COCOA) && USE(OPENGL_ES) >- ::glRenderbufferStorageMultisampleEXT(GL_RENDERBUFFER_EXT, sampleCount, GL_RGBA8_OES, width, height); >+ gl::RenderbufferStorageMultisample(GL_RENDERBUFFER, sampleCount, GL_RGBA8_OES, width, height); > #else >- ::glRenderbufferStorageMultisampleEXT(GL_RENDERBUFFER_EXT, sampleCount, m_internalColorFormat, width, height); >+ gl::RenderbufferStorageMultisample(GL_RENDERBUFFER, sampleCount, m_internalColorFormat, width, height); > #endif >- ::glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_RENDERBUFFER_EXT, m_multisampleColorBuffer); >+ gl::FramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0_EXT, GL_RENDERBUFFER, m_multisampleColorBuffer); > if (m_attrs.stencil || m_attrs.depth) { >- ::glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, m_multisampleDepthStencilBuffer); >- ::glRenderbufferStorageMultisampleEXT(GL_RENDERBUFFER_EXT, sampleCount, internalDepthStencilFormat, width, height); >+ gl::BindRenderbuffer(GL_RENDERBUFFER, m_multisampleDepthStencilBuffer); >+ gl::RenderbufferStorageMultisample(GL_RENDERBUFFER, sampleCount, internalDepthStencilFormat, width, height); > if (m_attrs.stencil) >- ::glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_STENCIL_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, m_multisampleDepthStencilBuffer); >+ gl::FramebufferRenderbuffer(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, GL_RENDERBUFFER, m_multisampleDepthStencilBuffer); > if (m_attrs.depth) >- ::glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, m_multisampleDepthStencilBuffer); >+ gl::FramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, m_multisampleDepthStencilBuffer); > } >- ::glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, 0); >- if (glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT) != GL_FRAMEBUFFER_COMPLETE_EXT) { >+ gl::BindRenderbuffer(GL_RENDERBUFFER, 0); >+ if (glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE) { > // FIXME: cleanup. > notImplemented(); > } > } > > // resize regular FBO >- ::glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, m_fbo); >+ gl::BindFramebuffer(GL_FRAMEBUFFER, m_fbo); > ASSERT(m_texture); > #if PLATFORM(COCOA) > #if USE(OPENGL_ES) >- ::glBindRenderbuffer(GL_RENDERBUFFER, m_texture); >- ::glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, m_texture); >+ gl::BindRenderbuffer(GL_RENDERBUFFER, m_texture); >+ gl::FramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, m_texture); > setRenderbufferStorageFromDrawable(m_currentWidth, m_currentHeight); > #else > allocateIOSurfaceBackingStore(IntSize(width, height)); > updateFramebufferTextureBackingStoreFromLayer(); >- ::glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_RECTANGLE_ARB, m_texture, 0); >+ gl::FramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_RECTANGLE, m_texture, 0); > #endif // !USE(OPENGL_ES)) > #else >- ::glBindTexture(GL_TEXTURE_2D, m_texture); >- ::glTexImage2D(GL_TEXTURE_2D, 0, m_internalColorFormat, width, height, 0, colorFormat, GL_UNSIGNED_BYTE, 0); >- ::glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_2D, m_texture, 0); >+ gl::BindTexture(GL_TEXTURE_2D, m_texture); >+ gl::TexImage2D(GL_TEXTURE_2D, 0, m_internalColorFormat, width, height, 0, colorFormat, GL_UNSIGNED_BYTE, 0); >+ gl::FramebufferTexture2DEXT(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_2D, m_texture, 0); > > #if USE(COORDINATED_GRAPHICS) > if (m_compositorTexture) { >- ::glBindTexture(GL_TEXTURE_2D, m_compositorTexture); >- ::glTexImage2D(GL_TEXTURE_2D, 0, m_internalColorFormat, width, height, 0, colorFormat, GL_UNSIGNED_BYTE, 0); >- ::glBindTexture(GL_TEXTURE_2D, 0); >- ::glBindTexture(GL_TEXTURE_2D, m_intermediateTexture); >- ::glTexImage2D(GL_TEXTURE_2D, 0, m_internalColorFormat, width, height, 0, colorFormat, GL_UNSIGNED_BYTE, 0); >- ::glBindTexture(GL_TEXTURE_2D, 0); >+ gl::BindTexture(GL_TEXTURE_2D, m_compositorTexture); >+ gl::TexImage2D(GL_TEXTURE_2D, 0, m_internalColorFormat, width, height, 0, colorFormat, GL_UNSIGNED_BYTE, 0); >+ gl::BindTexture(GL_TEXTURE_2D, 0); >+ gl::BindTexture(GL_TEXTURE_2D, m_intermediateTexture); >+ gl::TexImage2D(GL_TEXTURE_2D, 0, m_internalColorFormat, width, height, 0, colorFormat, GL_UNSIGNED_BYTE, 0); >+ gl::BindTexture(GL_TEXTURE_2D, 0); > } > #endif > #endif >@@ -212,7 +203,7 @@ bool GraphicsContext3D::reshapeFBOs(cons > > bool mustRestoreFBO = true; > if (m_attrs.antialias) { >- ::glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, m_multisampleFBO); >+ gl::BindFramebuffer(GL_FRAMEBUFFER, m_multisampleFBO); > if (m_state.boundFBO == m_multisampleFBO) > mustRestoreFBO = false; > } else { >@@ -226,16 +217,16 @@ bool GraphicsContext3D::reshapeFBOs(cons > void GraphicsContext3D::attachDepthAndStencilBufferIfNeeded(GLuint internalDepthStencilFormat, int width, int height) > { > if (!m_attrs.antialias && (m_attrs.stencil || m_attrs.depth)) { >- ::glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, m_depthStencilBuffer); >- ::glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, internalDepthStencilFormat, width, height); >+ gl::BindRenderbuffer(GL_RENDERBUFFER, m_depthStencilBuffer); >+ gl::RenderbufferStorage(GL_RENDERBUFFER, internalDepthStencilFormat, width, height); > if (m_attrs.stencil) >- ::glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_STENCIL_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, m_depthStencilBuffer); >+ gl::FramebufferRenderbuffer(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, GL_RENDERBUFFER, m_depthStencilBuffer); > if (m_attrs.depth) >- ::glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, m_depthStencilBuffer); >- ::glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, 0); >+ gl::FramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, m_depthStencilBuffer); >+ gl::BindRenderbuffer(GL_RENDERBUFFER, 0); > } > >- if (glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT) != GL_FRAMEBUFFER_COMPLETE_EXT) { >+ if (gl::CheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE) { > // FIXME: cleanup > notImplemented(); > } >@@ -250,24 +241,24 @@ void GraphicsContext3D::resolveMultisamp > > #if PLATFORM(COCOA) && USE(OPENGL_ES) > GLint boundFrameBuffer; >- ::glGetIntegerv(GL_FRAMEBUFFER_BINDING, &boundFrameBuffer); >+ gl::GetIntegerv(GL_FRAMEBUFFER_BINDING, &boundFrameBuffer); > #endif > >- ::glBindFramebufferEXT(GL_READ_FRAMEBUFFER_EXT, m_multisampleFBO); >- ::glBindFramebufferEXT(GL_DRAW_FRAMEBUFFER_EXT, m_fbo); >+ gl::BindFramebuffer(GL_READ_FRAMEBUFFER, m_multisampleFBO); >+ gl::BindFramebuffer(GL_DRAW_FRAMEBUFFER, m_fbo); > #if PLATFORM(COCOA) && USE(OPENGL_ES) > UNUSED_PARAM(rect); >- ::glFlush(); >- ::glResolveMultisampleFramebufferAPPLE(); >+ gl::Flush(); >+ gl::ResolveMultisampleFramebufferAPPLE(); > const GLenum discards[] = { GL_COLOR_ATTACHMENT0, GL_DEPTH_ATTACHMENT }; >- ::glDiscardFramebufferEXT(GL_READ_FRAMEBUFFER_APPLE, 2, discards); >- ::glBindFramebuffer(GL_FRAMEBUFFER, boundFrameBuffer); >+ gl::DiscardFramebuffer(GL_READ_FRAMEBUFFER_APPLE, 2, discards); >+ gl::BindFramebuffer(GL_FRAMEBUFFER, boundFrameBuffer); > #else > IntRect resolveRect = rect; > if (rect.isEmpty()) > resolveRect = IntRect(0, 0, m_currentWidth, m_currentHeight); > >- ::glBlitFramebufferEXT(resolveRect.x(), resolveRect.y(), resolveRect.maxX(), resolveRect.maxY(), resolveRect.x(), resolveRect.y(), resolveRect.maxX(), resolveRect.maxY(), GL_COLOR_BUFFER_BIT, GL_LINEAR); >+ gl::BlitFramebuffer(resolveRect.x(), resolveRect.y(), resolveRect.maxX(), resolveRect.maxY(), resolveRect.x(), resolveRect.y(), resolveRect.maxX(), resolveRect.maxY(), GL_COLOR_BUFFER_BIT, GL_LINEAR); > #endif > } > >@@ -277,7 +268,7 @@ void GraphicsContext3D::renderbufferStor > #if USE(OPENGL) > switch (internalformat) { > case DEPTH_STENCIL: >- internalformat = GL_DEPTH24_STENCIL8_EXT; >+ internalformat = GL_DEPTH24_STENCIL8_OES; > break; > case DEPTH_COMPONENT16: > internalformat = GL_DEPTH_COMPONENT; >@@ -291,7 +282,7 @@ void GraphicsContext3D::renderbufferStor > break; > } > #endif >- ::glRenderbufferStorageEXT(target, internalformat, width, height); >+ gl::RenderbufferStorage(target, internalformat, width, height); > } > > void GraphicsContext3D::getIntegerv(GC3Denum pname, GC3Dint* value) >@@ -304,34 +295,34 @@ void GraphicsContext3D::getIntegerv(GC3D > switch (pname) { > #if USE(OPENGL) > case MAX_FRAGMENT_UNIFORM_VECTORS: >- ::glGetIntegerv(GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, value); >+ gl::GetIntegerv(GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, value); > *value /= 4; > break; > case MAX_VERTEX_UNIFORM_VECTORS: >- ::glGetIntegerv(GL_MAX_VERTEX_UNIFORM_COMPONENTS, value); >+ gl::GetIntegerv(GL_MAX_VERTEX_UNIFORM_COMPONENTS, value); > *value /= 4; > break; > case MAX_VARYING_VECTORS: > if (isGLES2Compliant()) { >- ASSERT(::glGetError() == GL_NO_ERROR); >- ::glGetIntegerv(GL_MAX_VARYING_VECTORS, value); >- if (::glGetError() == GL_INVALID_ENUM) { >- ::glGetIntegerv(GL_MAX_VARYING_COMPONENTS, value); >+ ASSERT(gl::GetError() == GL_NO_ERROR); >+ gl::GetIntegerv(GL_MAX_VARYING_VECTORS, value); >+ if (gl::GetError() == GL_INVALID_ENUM) { >+ gl::GetIntegerv(GL_MAX_VARYING_COMPONENTS, value); > *value /= 4; > } > } else { >- ::glGetIntegerv(GL_MAX_VARYING_FLOATS, value); >+ gl::GetIntegerv(GL_MAX_VARYING_FLOATS, value); > *value /= 4; > } > break; > #endif > case MAX_TEXTURE_SIZE: >- ::glGetIntegerv(MAX_TEXTURE_SIZE, value); >+ gl::GetIntegerv(MAX_TEXTURE_SIZE, value); > if (getExtensions().requiresRestrictedMaximumTextureSize()) > *value = std::min(4096, *value); > break; > case MAX_CUBE_MAP_TEXTURE_SIZE: >- ::glGetIntegerv(MAX_CUBE_MAP_TEXTURE_SIZE, value); >+ gl::GetIntegerv(MAX_CUBE_MAP_TEXTURE_SIZE, value); > if (getExtensions().requiresRestrictedMaximumTextureSize()) > *value = std::min(1024, *value); > break; >@@ -340,17 +331,17 @@ void GraphicsContext3D::getIntegerv(GC3D > // can actually handle. Rather than detecting such devices, simply > // clamp the maximum to 8192, which is big enough for a 5K display. > case MAX_RENDERBUFFER_SIZE: >- ::glGetIntegerv(MAX_RENDERBUFFER_SIZE, value); >+ gl::GetIntegerv(MAX_RENDERBUFFER_SIZE, value); > *value = std::min(8192, *value); > break; > case MAX_VIEWPORT_DIMS: >- ::glGetIntegerv(MAX_VIEWPORT_DIMS, value); >+ gl::GetIntegerv(MAX_VIEWPORT_DIMS, value); > value[0] = std::min(8192, value[0]); > value[1] = std::min(8192, value[1]); > break; > #endif > default: >- ::glGetIntegerv(pname, value); >+ gl::GetIntegerv(pname, value); > } > } > >@@ -397,21 +388,21 @@ bool GraphicsContext3D::texImage2D(GC3De > #if USE(OPENGL) > if (type == GL_FLOAT) { > if (format == GL_RGBA) >- openGLInternalFormat = GL_RGBA32F_ARB; >+ openGLInternalFormat = GL_RGBA32F_EXT; > else if (format == GL_RGB) >- openGLInternalFormat = GL_RGB32F_ARB; >+ openGLInternalFormat = GL_RGB32F_EXT; > } else if (type == HALF_FLOAT_OES) { > if (format == GL_RGBA) >- openGLInternalFormat = GL_RGBA16F_ARB; >+ openGLInternalFormat = GL_RGBA16F_EXT; > else if (format == GL_RGB) >- openGLInternalFormat = GL_RGB16F_ARB; >+ openGLInternalFormat = GL_RGB16F_EXT; > else if (format == GL_LUMINANCE) >- openGLInternalFormat = GL_LUMINANCE16F_ARB; >+ openGLInternalFormat = GL_LUMINANCE16F_EXT; > else if (format == GL_ALPHA) >- openGLInternalFormat = GL_ALPHA16F_ARB; >+ openGLInternalFormat = GL_ALPHA16F_EXT; > else if (format == GL_LUMINANCE_ALPHA) >- openGLInternalFormat = GL_LUMINANCE_ALPHA16F_ARB; >- type = GL_HALF_FLOAT_ARB; >+ openGLInternalFormat = GL_LUMINANCE_ALPHA16F_EXT; >+ type = GL_HALF_FLOAT_OES; > } > > ASSERT(format != Extensions3D::SRGB8_ALPHA8_EXT); >@@ -455,9 +446,9 @@ void GraphicsContext3D::depthRange(GC3Dc > { > makeContextCurrent(); > #if PLATFORM(COCOA) && USE(OPENGL_ES) >- ::glDepthRangef(static_cast<float>(zNear), static_cast<float>(zFar)); >+ gl::DepthRangef(static_cast<float>(zNear), static_cast<float>(zFar)); > #else >- ::glDepthRange(zNear, zFar); >+ gl::DepthRangef(zNear, zFar); > #endif > } > >@@ -465,9 +456,9 @@ void GraphicsContext3D::clearDepth(GC3Dc > { > makeContextCurrent(); > #if PLATFORM(COCOA) && USE(OPENGL_ES) >- ::glClearDepthf(static_cast<float>(depth)); >+ gl::ClearDepthf(static_cast<float>(depth)); > #else >- ::glClearDepth(depth); >+ gl::ClearDepthf(depth); > #endif > } > >@@ -485,15 +476,15 @@ void GraphicsContext3D::readPixels(GC3Di > // FIXME: remove the two glFlush calls when the driver bug is fixed, i.e., > // all previous rendering calls should be done before reading pixels. > makeContextCurrent(); >- ::glFlush(); >+ gl::Flush(); > if (m_attrs.antialias && m_state.boundFBO == m_multisampleFBO) { > resolveMultisamplingIfNecessary(IntRect(x, y, width, height)); >- ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_fbo); >- ::glFlush(); >+ gl::BindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_fbo); >+ gl::Flush(); > } >- ::glReadPixels(x, y, width, height, format, type, data); >+ gl::ReadPixels(x, y, width, height, format, type, data); > if (m_attrs.antialias && m_state.boundFBO == m_multisampleFBO) >- ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_multisampleFBO); >+ gl::BindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_multisampleFBO); > > #if PLATFORM(MAC) > if (!m_attrs.alpha && (format == GraphicsContext3D::RGBA || format == GraphicsContext3D::BGRA) && (m_state.boundFBO == m_fbo || (m_attrs.antialias && m_state.boundFBO == m_multisampleFBO))) >Index: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp >=================================================================== >--- Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp (revision 245238) >+++ Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp (working copy) >@@ -49,6 +49,9 @@ > #include "Logging.h" > #include "TemporaryOpenGLSetting.h" > #include "WebGLRenderingContextBase.h" >+#include <ANGLE/entry_points_gles_2_0_autogen.h> >+#include <ANGLE/entry_points_gles_3_0_autogen.h> >+#include <ANGLE/functionsgl_enums.h> > #include <JavaScriptCore/RegularExpression.h> > #include <cstring> > #include <wtf/HexNumber.h> >@@ -59,35 +62,6 @@ > #include <wtf/text/CString.h> > #include <wtf/text/StringBuilder.h> > >-#if PLATFORM(COCOA) >- >-#if USE(OPENGL_ES) >-#import <OpenGLES/ES2/glext.h> >-#import <OpenGLES/ES3/gl.h> >-// From <OpenGLES/glext.h> >-#define GL_RGBA32F_ARB 0x8814 >-#define GL_RGB32F_ARB 0x8815 >-#else >-#define GL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED >-#include <OpenGL/gl.h> >-#include <OpenGL/gl3.h> >-#include <OpenGL/gl3ext.h> >-#undef GL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED >-#endif >- >-#else >- >-#if USE(LIBEPOXY) >-#include "EpoxyShims.h" >-#elif USE(OPENGL_ES) >-#include "OpenGLESShims.h" >-#elif PLATFORM(GTK) || PLATFORM(WIN) >-#include "OpenGLShims.h" >-#endif >- >-#endif >- >- > namespace WebCore { > > static ThreadSpecific<ShaderNameHash*>& getCurrentNameHashMapForShader() >@@ -238,23 +212,23 @@ void GraphicsContext3D::prepareTexture() > #if USE(COORDINATED_GRAPHICS) > std::swap(m_texture, m_compositorTexture); > std::swap(m_texture, m_intermediateTexture); >- ::glBindFramebuffer(GL_FRAMEBUFFER, m_fbo); >- ::glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_2D, m_texture, 0); >+ gl::BindFramebuffer(GL_FRAMEBUFFER, m_fbo); >+ gl::FramebufferTexture2D(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_2D, m_texture, 0); > glFlush(); > > if (m_state.boundFBO != m_fbo) >- ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_state.boundFBO); >+ gl::BindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_state.boundFBO); > else >- ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_fbo); >+ gl::BindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_fbo); > return; > #endif > >- ::glActiveTexture(GL_TEXTURE0); >- ::glBindTexture(GL_TEXTURE_2D, m_state.boundTarget(GL_TEXTURE0) == GL_TEXTURE_2D ? m_state.boundTexture(GL_TEXTURE0) : 0); >- ::glActiveTexture(m_state.activeTextureUnit); >+ gl::ActiveTexture(GL_TEXTURE0); >+ gl::BindTexture(GL_TEXTURE_2D, m_state.boundTarget(GL_TEXTURE0) == GL_TEXTURE_2D ? m_state.boundTexture(GL_TEXTURE0) : 0); >+ gl::ActiveTexture(m_state.activeTextureUnit); > if (m_state.boundFBO != m_fbo) >- ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_state.boundFBO); >- ::glFlush(); >+ gl::BindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_state.boundFBO); >+ gl::Flush(); > } > > void GraphicsContext3D::readRenderingResults(unsigned char *pixels, int pixelsSize) >@@ -267,30 +241,30 @@ void GraphicsContext3D::readRenderingRes > bool mustRestoreFBO = false; > if (m_attrs.antialias) { > resolveMultisamplingIfNecessary(); >- ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_fbo); >+ gl::BindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_fbo); > mustRestoreFBO = true; > } else { > if (m_state.boundFBO != m_fbo) { > mustRestoreFBO = true; >- ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_fbo); >+ gl::BindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_fbo); > } > } > > GLint packAlignment = 4; > bool mustRestorePackAlignment = false; >- ::glGetIntegerv(GL_PACK_ALIGNMENT, &packAlignment); >+ gl::GetIntegerv(GL_PACK_ALIGNMENT, &packAlignment); > if (packAlignment > 4) { >- ::glPixelStorei(GL_PACK_ALIGNMENT, 4); >+ gl::PixelStorei(GL_PACK_ALIGNMENT, 4); > mustRestorePackAlignment = true; > } > > readPixelsAndConvertToBGRAIfNecessary(0, 0, m_currentWidth, m_currentHeight, pixels); > > if (mustRestorePackAlignment) >- ::glPixelStorei(GL_PACK_ALIGNMENT, packAlignment); >+ gl::PixelStorei(GL_PACK_ALIGNMENT, packAlignment); > > if (mustRestoreFBO) >- ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_state.boundFBO); >+ gl::BindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_state.boundFBO); > } > > void GraphicsContext3D::reshape(int width, int height) >@@ -324,45 +298,45 @@ void GraphicsContext3D::reshape(int widt > GLboolean colorMask[] = {GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE}, depthMask = GL_TRUE; > GLuint stencilMask = 0xffffffff, stencilMaskBack = 0xffffffff; > GLbitfield clearMask = GL_COLOR_BUFFER_BIT; >- ::glGetFloatv(GL_COLOR_CLEAR_VALUE, clearColor); >- ::glClearColor(0, 0, 0, 0); >- ::glGetBooleanv(GL_COLOR_WRITEMASK, colorMask); >- ::glColorMask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE); >+ gl::GetFloatv(GL_COLOR_CLEAR_VALUE, clearColor); >+ gl::ClearColor(0, 0, 0, 0); >+ gl::GetBooleanv(GL_COLOR_WRITEMASK, colorMask); >+ gl::ColorMask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE); > if (m_attrs.depth) { >- ::glGetFloatv(GL_DEPTH_CLEAR_VALUE, &clearDepth); >+ gl::GetFloatv(GL_DEPTH_CLEAR_VALUE, &clearDepth); > GraphicsContext3D::clearDepth(1); >- ::glGetBooleanv(GL_DEPTH_WRITEMASK, &depthMask); >- ::glDepthMask(GL_TRUE); >+ gl::GetBooleanv(GL_DEPTH_WRITEMASK, &depthMask); >+ gl::DepthMask(GL_TRUE); > clearMask |= GL_DEPTH_BUFFER_BIT; > } > if (m_attrs.stencil) { >- ::glGetIntegerv(GL_STENCIL_CLEAR_VALUE, &clearStencil); >- ::glClearStencil(0); >- ::glGetIntegerv(GL_STENCIL_WRITEMASK, reinterpret_cast<GLint*>(&stencilMask)); >- ::glGetIntegerv(GL_STENCIL_BACK_WRITEMASK, reinterpret_cast<GLint*>(&stencilMaskBack)); >- ::glStencilMaskSeparate(GL_FRONT, 0xffffffff); >- ::glStencilMaskSeparate(GL_BACK, 0xffffffff); >+ gl::GetIntegerv(GL_STENCIL_CLEAR_VALUE, &clearStencil); >+ gl::ClearStencil(0); >+ gl::GetIntegerv(GL_STENCIL_WRITEMASK, reinterpret_cast<GLint*>(&stencilMask)); >+ gl::GetIntegerv(GL_STENCIL_BACK_WRITEMASK, reinterpret_cast<GLint*>(&stencilMaskBack)); >+ gl::StencilMaskSeparate(GL_FRONT, 0xffffffff); >+ gl::StencilMaskSeparate(GL_BACK, 0xffffffff); > clearMask |= GL_STENCIL_BUFFER_BIT; > } > >- ::glClear(clearMask); >+ gl::Clear(clearMask); > >- ::glClearColor(clearColor[0], clearColor[1], clearColor[2], clearColor[3]); >- ::glColorMask(colorMask[0], colorMask[1], colorMask[2], colorMask[3]); >+ gl::ClearColor(clearColor[0], clearColor[1], clearColor[2], clearColor[3]); >+ gl::ColorMask(colorMask[0], colorMask[1], colorMask[2], colorMask[3]); > if (m_attrs.depth) { > GraphicsContext3D::clearDepth(clearDepth); >- ::glDepthMask(depthMask); >+ gl::DepthMask(depthMask); > } > if (m_attrs.stencil) { >- ::glClearStencil(clearStencil); >- ::glStencilMaskSeparate(GL_FRONT, stencilMask); >- ::glStencilMaskSeparate(GL_BACK, stencilMaskBack); >+ gl::ClearStencil(clearStencil); >+ gl::StencilMaskSeparate(GL_FRONT, stencilMask); >+ gl::StencilMaskSeparate(GL_BACK, stencilMaskBack); > } > > if (mustRestoreFBO) >- ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_state.boundFBO); >+ gl::BindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_state.boundFBO); > >- ::glFlush(); >+ gl::Flush(); > } > > bool GraphicsContext3D::checkVaryingsPacking(Platform3DObject vertexShader, Platform3DObject fragmentShader) const >@@ -400,27 +374,28 @@ bool GraphicsContext3D::checkVaryingsPac > > GC3Dint maxVaryingVectors = 0; > #if USE(OPENGL_ES) >- ::glGetIntegerv(MAX_VARYING_VECTORS, &maxVaryingVectors); >+ gl::GetIntegerv(MAX_VARYING_VECTORS, &maxVaryingVectors); > #else > if (m_isForWebGL2) >- ::glGetIntegerv(GL_MAX_VARYING_VECTORS, &maxVaryingVectors); >+ gl::GetIntegerv(GL_MAX_VARYING_VECTORS, &maxVaryingVectors); > else { > GC3Dint maxVaryingFloats = 0; >- ::glGetIntegerv(GL_MAX_VARYING_FLOATS, &maxVaryingFloats); >+ gl::GetIntegerv(GL_MAX_VARYING_FLOATS, &maxVaryingFloats); > maxVaryingVectors = maxVaryingFloats / 4; > } > #endif > return sh::CheckVariablesWithinPackingLimits(maxVaryingVectors, variables); > } > >-bool GraphicsContext3D::precisionsMatch(Platform3DObject vertexShader, Platform3DObject fragmentShader) const >+bool GraphicsContext3D::precisionsMatch(Platform3DObject, Platform3DObject) const > { >+ /* > ASSERT(m_shaderSourceMap.contains(vertexShader)); > ASSERT(m_shaderSourceMap.contains(fragmentShader)); > const auto& vertexEntry = m_shaderSourceMap.find(vertexShader)->value; > const auto& fragmentEntry = m_shaderSourceMap.find(fragmentShader)->value; > >- HashMap<String, sh::GLenum> vertexSymbolPrecisionMap; >+ HashMap<String, shgl::enum> vertexSymbolPrecisionMap; > > for (const auto& entry : vertexEntry.uniformMap) { > const std::string& mappedName = entry.value.mappedName; >@@ -433,7 +408,7 @@ bool GraphicsContext3D::precisionsMatch( > if (vertexSymbol != vertexSymbolPrecisionMap.end() && vertexSymbol->value != entry.value.precision) > return false; > } >- >+*/ > return true; > } > >@@ -446,7 +421,7 @@ void GraphicsContext3D::activeTexture(GC > { > makeContextCurrent(); > m_state.activeTextureUnit = texture; >- ::glActiveTexture(texture); >+ gl::ActiveTexture(texture); > } > > void GraphicsContext3D::attachShader(Platform3DObject program, Platform3DObject shader) >@@ -455,7 +430,7 @@ void GraphicsContext3D::attachShader(Pla > ASSERT(shader); > makeContextCurrent(); > m_shaderProgramSymbolCountMap.remove(program); >- ::glAttachShader(program, shader); >+ gl::AttachShader(program, shader); > } > > void GraphicsContext3D::bindAttribLocation(Platform3DObject program, GC3Duint index, const String& name) >@@ -465,13 +440,13 @@ void GraphicsContext3D::bindAttribLocati > > String mappedName = mappedSymbolName(program, SHADER_SYMBOL_TYPE_ATTRIBUTE, name); > LOG(WebGL, "::bindAttribLocation is mapping %s to %s", name.utf8().data(), mappedName.utf8().data()); >- ::glBindAttribLocation(program, index, mappedName.utf8().data()); >+ gl::BindAttribLocation(program, index, mappedName.utf8().data()); > } > > void GraphicsContext3D::bindBuffer(GC3Denum target, Platform3DObject buffer) > { > makeContextCurrent(); >- ::glBindBuffer(target, buffer); >+ gl::BindBuffer(target, buffer); > } > > void GraphicsContext3D::bindFramebuffer(GC3Denum target, Platform3DObject buffer) >@@ -483,7 +458,7 @@ void GraphicsContext3D::bindFramebuffer( > else > fbo = (m_attrs.antialias ? m_multisampleFBO : m_fbo); > if (fbo != m_state.boundFBO) { >- ::glBindFramebufferEXT(target, fbo); >+ gl::BindFramebuffer(target, fbo); > m_state.boundFBO = fbo; > } > } >@@ -491,7 +466,7 @@ void GraphicsContext3D::bindFramebuffer( > void GraphicsContext3D::bindRenderbuffer(GC3Denum target, Platform3DObject renderbuffer) > { > makeContextCurrent(); >- ::glBindRenderbufferEXT(target, renderbuffer); >+ gl::BindRenderbuffer(target, renderbuffer); > } > > >@@ -499,82 +474,82 @@ void GraphicsContext3D::bindTexture(GC3D > { > makeContextCurrent(); > m_state.setBoundTexture(m_state.activeTextureUnit, texture, target); >- ::glBindTexture(target, texture); >+ gl::BindTexture(target, texture); > } > > void GraphicsContext3D::blendColor(GC3Dclampf red, GC3Dclampf green, GC3Dclampf blue, GC3Dclampf alpha) > { > makeContextCurrent(); >- ::glBlendColor(red, green, blue, alpha); >+ gl::BlendColor(red, green, blue, alpha); > } > > void GraphicsContext3D::blendEquation(GC3Denum mode) > { > makeContextCurrent(); >- ::glBlendEquation(mode); >+ gl::BlendEquation(mode); > } > > void GraphicsContext3D::blendEquationSeparate(GC3Denum modeRGB, GC3Denum modeAlpha) > { > makeContextCurrent(); >- ::glBlendEquationSeparate(modeRGB, modeAlpha); >+ gl::BlendEquationSeparate(modeRGB, modeAlpha); > } > > > void GraphicsContext3D::blendFunc(GC3Denum sfactor, GC3Denum dfactor) > { > makeContextCurrent(); >- ::glBlendFunc(sfactor, dfactor); >+ gl::BlendFunc(sfactor, dfactor); > } > > void GraphicsContext3D::blendFuncSeparate(GC3Denum srcRGB, GC3Denum dstRGB, GC3Denum srcAlpha, GC3Denum dstAlpha) > { > makeContextCurrent(); >- ::glBlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha); >+ gl::BlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha); > } > > void GraphicsContext3D::bufferData(GC3Denum target, GC3Dsizeiptr size, GC3Denum usage) > { > makeContextCurrent(); >- ::glBufferData(target, size, 0, usage); >+ gl::BufferData(target, size, 0, usage); > } > > void GraphicsContext3D::bufferData(GC3Denum target, GC3Dsizeiptr size, const void* data, GC3Denum usage) > { > makeContextCurrent(); >- ::glBufferData(target, size, data, usage); >+ gl::BufferData(target, size, data, usage); > } > > void GraphicsContext3D::bufferSubData(GC3Denum target, GC3Dintptr offset, GC3Dsizeiptr size, const void* data) > { > makeContextCurrent(); >- ::glBufferSubData(target, offset, size, data); >+ gl::BufferSubData(target, offset, size, data); > } > > #if PLATFORM(MAC) || PLATFORM(IOS_FAMILY) || PLATFORM(WPE) > void* GraphicsContext3D::mapBufferRange(GC3Denum target, GC3Dintptr offset, GC3Dsizeiptr length, GC3Dbitfield access) > { > makeContextCurrent(); >- return ::glMapBufferRange(target, offset, length, access); >+ return gl::MapBufferRange(target, offset, length, access); > } > > GC3Dboolean GraphicsContext3D::unmapBuffer(GC3Denum target) > { > makeContextCurrent(); >- return ::glUnmapBuffer(target); >+ return gl::UnmapBuffer(target); > } > > void GraphicsContext3D::copyBufferSubData(GC3Denum readTarget, GC3Denum writeTarget, GC3Dintptr readOffset, GC3Dintptr writeOffset, GC3Dsizeiptr size) > { > makeContextCurrent(); >- ::glCopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size); >+ gl::CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size); > } > > void GraphicsContext3D::getInternalformativ(GC3Denum target, GC3Denum internalformat, GC3Denum pname, GC3Dsizei bufSize, GC3Dint* params) > { > #if USE(OPENGL_ES) > makeContextCurrent(); >- ::glGetInternalformativ(target, internalformat, pname, bufSize, params); >+ gl::GetInternalformativ(target, internalformat, pname, bufSize, params); > #else > UNUSED_PARAM(target); > UNUSED_PARAM(internalformat); >@@ -587,20 +562,20 @@ void GraphicsContext3D::getInternalforma > void GraphicsContext3D::renderbufferStorageMultisample(GC3Denum target, GC3Dsizei samples, GC3Denum internalformat, GC3Dsizei width, GC3Dsizei height) > { > makeContextCurrent(); >- ::glRenderbufferStorageMultisample(target, samples, internalformat, width, height); >+ gl::RenderbufferStorageMultisample(target, samples, internalformat, width, height); > } > > void GraphicsContext3D::texStorage2D(GC3Denum target, GC3Dsizei levels, GC3Denum internalformat, GC3Dsizei width, GC3Dsizei height) > { > makeContextCurrent(); >- ::glTexStorage2D(target, levels, internalformat, width, height); >+ gl::TexStorage2D(target, levels, internalformat, width, height); > m_state.textureSeedCount.add(m_state.currentBoundTexture()); > } > > void GraphicsContext3D::texStorage3D(GC3Denum target, GC3Dsizei levels, GC3Denum internalformat, GC3Dsizei width, GC3Dsizei height, GC3Dsizei depth) > { > makeContextCurrent(); >- ::glTexStorage3D(target, levels, internalformat, width, height, depth); >+ gl::TexStorage3D(target, levels, internalformat, width, height, depth); > m_state.textureSeedCount.add(m_state.currentBoundTexture()); > } > >@@ -609,39 +584,39 @@ void GraphicsContext3D::getActiveUniform > ASSERT(program); > makeContextCurrent(); > >- ::glGetActiveUniformsiv(program, uniformIndices.size(), uniformIndices.data(), pname, params.data()); >+ gl::GetActiveUniformsiv(program, uniformIndices.size(), uniformIndices.data(), pname, params.data()); > } > #endif > > GC3Denum GraphicsContext3D::checkFramebufferStatus(GC3Denum target) > { > makeContextCurrent(); >- return ::glCheckFramebufferStatusEXT(target); >+ return gl::CheckFramebufferStatus(target); > } > > void GraphicsContext3D::clearColor(GC3Dclampf r, GC3Dclampf g, GC3Dclampf b, GC3Dclampf a) > { > makeContextCurrent(); >- ::glClearColor(r, g, b, a); >+ gl::ClearColor(r, g, b, a); > } > > void GraphicsContext3D::clear(GC3Dbitfield mask) > { > makeContextCurrent(); >- ::glClear(mask); >+ gl::Clear(mask); > checkGPUStatus(); > } > > void GraphicsContext3D::clearStencil(GC3Dint s) > { > makeContextCurrent(); >- ::glClearStencil(s); >+ gl::ClearStencil(s); > } > > void GraphicsContext3D::colorMask(GC3Dboolean red, GC3Dboolean green, GC3Dboolean blue, GC3Dboolean alpha) > { > makeContextCurrent(); >- ::glColorMask(red, green, blue, alpha); >+ gl::ColorMask(red, green, blue, alpha); > } > > void GraphicsContext3D::compileShader(Platform3DObject shader) >@@ -676,25 +651,25 @@ void GraphicsContext3D::compileShader(Pl > LOG(WebGL, "--- begin original shader source ---\n%s\n--- end original shader source ---\n", getShaderSource(shader).utf8().data()); > LOG(WebGL, "--- begin translated shader source ---\n%s\n--- end translated shader source ---", translatedShaderPtr); > >- ::glShaderSource(shader, 1, &translatedShaderPtr, &translatedShaderLength); >+ gl::ShaderSource(shader, 1, &translatedShaderPtr, &translatedShaderLength); > >- ::glCompileShader(shader); >+ gl::CompileShader(shader); > > int compileStatus; > >- ::glGetShaderiv(shader, COMPILE_STATUS, &compileStatus); >+ gl::GetShaderiv(shader, COMPILE_STATUS, &compileStatus); > > ShaderSourceMap::iterator result = m_shaderSourceMap.find(shader); > GraphicsContext3D::ShaderSourceEntry& entry = result->value; > > // Populate the shader log > GLint length = 0; >- ::glGetShaderiv(shader, GL_INFO_LOG_LENGTH, &length); >+ gl::GetShaderiv(shader, GL_INFO_LOG_LENGTH, &length); > > if (length) { > GLsizei size = 0; > Vector<GLchar> info(length); >- ::glGetShaderInfoLog(shader, length, &size, info.data()); >+ gl::GetShaderInfoLog(shader, length, &size, info.data()); > > Platform3DObject shaders[2] = { shader, 0 }; > entry.log = getUnmangledInfoLog(shaders, 1, String(info.data(), size)); >@@ -724,13 +699,13 @@ void GraphicsContext3D::compileShaderDir > > LOG(WebGL, "--- begin direct shader source ---\n%s\n--- end direct shader source ---\n", shaderSourcePtr); > >- ::glShaderSource(shader, 1, &shaderSourcePtr, &shaderSourceLength); >+ gl::ShaderSource(shader, 1, &shaderSourcePtr, &shaderSourceLength); > >- ::glCompileShader(shader); >+ gl::CompileShader(shader); > > int compileStatus; > >- ::glGetShaderiv(shader, COMPILE_STATUS, &compileStatus); >+ gl::GetShaderiv(shader, COMPILE_STATUS, &compileStatus); > > if (compileStatus == GL_TRUE) { > entry.isValid = true; >@@ -746,11 +721,11 @@ void GraphicsContext3D::copyTexImage2D(G > makeContextCurrent(); > if (m_attrs.antialias && m_state.boundFBO == m_multisampleFBO) { > resolveMultisamplingIfNecessary(IntRect(x, y, width, height)); >- ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_fbo); >+ gl::BindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_fbo); > } >- ::glCopyTexImage2D(target, level, internalformat, x, y, width, height, border); >+ gl::CopyTexImage2D(target, level, internalformat, x, y, width, height, border); > if (m_attrs.antialias && m_state.boundFBO == m_multisampleFBO) >- ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_multisampleFBO); >+ gl::BindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_multisampleFBO); > } > > void GraphicsContext3D::copyTexSubImage2D(GC3Denum target, GC3Dint level, GC3Dint xoffset, GC3Dint yoffset, GC3Dint x, GC3Dint y, GC3Dsizei width, GC3Dsizei height) >@@ -758,29 +733,29 @@ void GraphicsContext3D::copyTexSubImage2 > makeContextCurrent(); > if (m_attrs.antialias && m_state.boundFBO == m_multisampleFBO) { > resolveMultisamplingIfNecessary(IntRect(x, y, width, height)); >- ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_fbo); >+ gl::BindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_fbo); > } >- ::glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height); >+ gl::CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height); > if (m_attrs.antialias && m_state.boundFBO == m_multisampleFBO) >- ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_multisampleFBO); >+ gl::BindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_multisampleFBO); > } > > void GraphicsContext3D::cullFace(GC3Denum mode) > { > makeContextCurrent(); >- ::glCullFace(mode); >+ gl::CullFace(mode); > } > > void GraphicsContext3D::depthFunc(GC3Denum func) > { > makeContextCurrent(); >- ::glDepthFunc(func); >+ gl::DepthFunc(func); > } > > void GraphicsContext3D::depthMask(GC3Dboolean flag) > { > makeContextCurrent(); >- ::glDepthMask(flag); >+ gl::DepthMask(flag); > } > > void GraphicsContext3D::detachShader(Platform3DObject program, Platform3DObject shader) >@@ -789,82 +764,82 @@ void GraphicsContext3D::detachShader(Pla > ASSERT(shader); > makeContextCurrent(); > m_shaderProgramSymbolCountMap.remove(program); >- ::glDetachShader(program, shader); >+ gl::DetachShader(program, shader); > } > > void GraphicsContext3D::disable(GC3Denum cap) > { > makeContextCurrent(); >- ::glDisable(cap); >+ gl::Disable(cap); > } > > void GraphicsContext3D::disableVertexAttribArray(GC3Duint index) > { > makeContextCurrent(); >- ::glDisableVertexAttribArray(index); >+ gl::DisableVertexAttribArray(index); > } > > void GraphicsContext3D::drawArrays(GC3Denum mode, GC3Dint first, GC3Dsizei count) > { > makeContextCurrent(); >- ::glDrawArrays(mode, first, count); >+ gl::DrawArrays(mode, first, count); > checkGPUStatus(); > } > > void GraphicsContext3D::drawElements(GC3Denum mode, GC3Dsizei count, GC3Denum type, GC3Dintptr offset) > { > makeContextCurrent(); >- ::glDrawElements(mode, count, type, reinterpret_cast<GLvoid*>(static_cast<intptr_t>(offset))); >+ gl::DrawElements(mode, count, type, reinterpret_cast<GLvoid*>(static_cast<intptr_t>(offset))); > checkGPUStatus(); > } > > void GraphicsContext3D::enable(GC3Denum cap) > { > makeContextCurrent(); >- ::glEnable(cap); >+ gl::Enable(cap); > } > > void GraphicsContext3D::enableVertexAttribArray(GC3Duint index) > { > makeContextCurrent(); >- ::glEnableVertexAttribArray(index); >+ gl::EnableVertexAttribArray(index); > } > > void GraphicsContext3D::finish() > { > makeContextCurrent(); >- ::glFinish(); >+ gl::Finish(); > } > > void GraphicsContext3D::flush() > { > makeContextCurrent(); >- ::glFlush(); >+ gl::Flush(); > } > > void GraphicsContext3D::framebufferRenderbuffer(GC3Denum target, GC3Denum attachment, GC3Denum renderbuffertarget, Platform3DObject buffer) > { > makeContextCurrent(); >- ::glFramebufferRenderbufferEXT(target, attachment, renderbuffertarget, buffer); >+ gl::FramebufferRenderbuffer(target, attachment, renderbuffertarget, buffer); > } > > void GraphicsContext3D::framebufferTexture2D(GC3Denum target, GC3Denum attachment, GC3Denum textarget, Platform3DObject texture, GC3Dint level) > { > makeContextCurrent(); >- ::glFramebufferTexture2DEXT(target, attachment, textarget, texture, level); >+ gl::FramebufferTexture2D(target, attachment, textarget, texture, level); > m_state.textureSeedCount.add(m_state.currentBoundTexture()); > } > > void GraphicsContext3D::frontFace(GC3Denum mode) > { > makeContextCurrent(); >- ::glFrontFace(mode); >+ gl::FrontFace(mode); > } > > void GraphicsContext3D::generateMipmap(GC3Denum target) > { > makeContextCurrent(); >- ::glGenerateMipmap(target); >+ gl::GenerateMipmap(target); > } > > bool GraphicsContext3D::getActiveAttribImpl(Platform3DObject program, GC3Duint index, ActiveInfo& info) >@@ -875,12 +850,12 @@ bool GraphicsContext3D::getActiveAttribI > } > makeContextCurrent(); > GLint maxAttributeSize = 0; >- ::glGetProgramiv(program, GL_ACTIVE_ATTRIBUTE_MAX_LENGTH, &maxAttributeSize); >+ gl::GetProgramiv(program, GL_ACTIVE_ATTRIBUTE_MAX_LENGTH, &maxAttributeSize); > Vector<GLchar> name(maxAttributeSize); // GL_ACTIVE_ATTRIBUTE_MAX_LENGTH includes null termination. > GLsizei nameLength = 0; > GLint size = 0; > GLenum type = 0; >- ::glGetActiveAttrib(program, index, maxAttributeSize, &nameLength, &size, &type, name.data()); >+ gl::GetActiveAttrib(program, index, maxAttributeSize, &nameLength, &size, &type, name.data()); > if (!nameLength) > return false; > >@@ -921,13 +896,13 @@ bool GraphicsContext3D::getActiveUniform > > makeContextCurrent(); > GLint maxUniformSize = 0; >- ::glGetProgramiv(program, GL_ACTIVE_UNIFORM_MAX_LENGTH, &maxUniformSize); >+ gl::GetProgramiv(program, GL_ACTIVE_UNIFORM_MAX_LENGTH, &maxUniformSize); > > Vector<GLchar> name(maxUniformSize); // GL_ACTIVE_UNIFORM_MAX_LENGTH includes null termination. > GLsizei nameLength = 0; > GLint size = 0; > GLenum type = 0; >- ::glGetActiveUniform(program, index, maxUniformSize, &nameLength, &size, &type, name.data()); >+ gl::GetActiveUniform(program, index, maxUniformSize, &nameLength, &size, &type, name.data()); > if (!nameLength) > return false; > >@@ -966,7 +941,7 @@ void GraphicsContext3D::getAttachedShade > return; > } > makeContextCurrent(); >- ::glGetAttachedShaders(program, maxCount, count, shaders); >+ gl::GetAttachedShaders(program, maxCount, count, shaders); > } > > static String generateHashedName(const String& name) >@@ -1114,8 +1089,8 @@ int GraphicsContext3D::getAttribLocation > makeContextCurrent(); > > String mappedName = mappedSymbolName(program, SHADER_SYMBOL_TYPE_ATTRIBUTE, name); >- LOG(WebGL, "::glGetAttribLocation is mapping %s to %s", name.utf8().data(), mappedName.utf8().data()); >- return ::glGetAttribLocation(program, mappedName.utf8().data()); >+ LOG(WebGL, "gl::GetAttribLocation is mapping %s to %s", name.utf8().data(), mappedName.utf8().data()); >+ return gl::GetAttribLocation(program, mappedName.utf8().data()); > } > > int GraphicsContext3D::getAttribLocationDirect(Platform3DObject program, const String& name) >@@ -1125,7 +1100,7 @@ int GraphicsContext3D::getAttribLocation > > makeContextCurrent(); > >- return ::glGetAttribLocation(program, name.utf8().data()); >+ return gl::GetAttribLocation(program, name.utf8().data()); > } > > GraphicsContext3DAttributes GraphicsContext3D::getContextAttributes() >@@ -1163,19 +1138,19 @@ GC3Denum GraphicsContext3D::getError() > } > > makeContextCurrent(); >- return ::glGetError(); >+ return gl::GetError(); > } > > String GraphicsContext3D::getString(GC3Denum name) > { > makeContextCurrent(); >- return String(reinterpret_cast<const char*>(::glGetString(name))); >+ return String(reinterpret_cast<const char*>(gl::GetString(name))); > } > > void GraphicsContext3D::hint(GC3Denum target, GC3Denum mode) > { > makeContextCurrent(); >- ::glHint(target, mode); >+ gl::Hint(target, mode); > } > > GC3Dboolean GraphicsContext3D::isBuffer(Platform3DObject buffer) >@@ -1184,13 +1159,13 @@ GC3Dboolean GraphicsContext3D::isBuffer( > return GL_FALSE; > > makeContextCurrent(); >- return ::glIsBuffer(buffer); >+ return gl::IsBuffer(buffer); > } > > GC3Dboolean GraphicsContext3D::isEnabled(GC3Denum cap) > { > makeContextCurrent(); >- return ::glIsEnabled(cap); >+ return gl::IsEnabled(cap); > } > > GC3Dboolean GraphicsContext3D::isFramebuffer(Platform3DObject framebuffer) >@@ -1199,7 +1174,7 @@ GC3Dboolean GraphicsContext3D::isFramebu > return GL_FALSE; > > makeContextCurrent(); >- return ::glIsFramebufferEXT(framebuffer); >+ return gl::IsFramebuffer(framebuffer); > } > > GC3Dboolean GraphicsContext3D::isProgram(Platform3DObject program) >@@ -1208,7 +1183,7 @@ GC3Dboolean GraphicsContext3D::isProgram > return GL_FALSE; > > makeContextCurrent(); >- return ::glIsProgram(program); >+ return gl::IsProgram(program); > } > > GC3Dboolean GraphicsContext3D::isRenderbuffer(Platform3DObject renderbuffer) >@@ -1217,7 +1192,7 @@ GC3Dboolean GraphicsContext3D::isRenderb > return GL_FALSE; > > makeContextCurrent(); >- return ::glIsRenderbufferEXT(renderbuffer); >+ return gl::IsRenderbuffer(renderbuffer); > } > > GC3Dboolean GraphicsContext3D::isShader(Platform3DObject shader) >@@ -1226,7 +1201,7 @@ GC3Dboolean GraphicsContext3D::isShader( > return GL_FALSE; > > makeContextCurrent(); >- return ::glIsShader(shader); >+ return gl::IsShader(shader); > } > > GC3Dboolean GraphicsContext3D::isTexture(Platform3DObject texture) >@@ -1235,13 +1210,13 @@ GC3Dboolean GraphicsContext3D::isTexture > return GL_FALSE; > > makeContextCurrent(); >- return ::glIsTexture(texture); >+ return gl::IsTexture(texture); > } > > void GraphicsContext3D::lineWidth(GC3Dfloat width) > { > makeContextCurrent(); >- ::glLineWidth(width); >+ gl::LineWidth(width); > } > > void GraphicsContext3D::linkProgram(Platform3DObject program) >@@ -1256,31 +1231,31 @@ void GraphicsContext3D::linkProgram(Plat > if (count == 2) > m_linkedShaderMap.set(program, std::make_pair(shaders[0], shaders[1])); > >- ::glLinkProgram(program); >+ gl::LinkProgram(program); > } > > void GraphicsContext3D::pixelStorei(GC3Denum pname, GC3Dint param) > { > makeContextCurrent(); >- ::glPixelStorei(pname, param); >+ gl::PixelStorei(pname, param); > } > > void GraphicsContext3D::polygonOffset(GC3Dfloat factor, GC3Dfloat units) > { > makeContextCurrent(); >- ::glPolygonOffset(factor, units); >+ gl::PolygonOffset(factor, units); > } > > void GraphicsContext3D::sampleCoverage(GC3Dclampf value, GC3Dboolean invert) > { > makeContextCurrent(); >- ::glSampleCoverage(value, invert); >+ gl::SampleCoverage(value, invert); > } > > void GraphicsContext3D::scissor(GC3Dint x, GC3Dint y, GC3Dsizei width, GC3Dsizei height) > { > makeContextCurrent(); >- ::glScissor(x, y, width, height); >+ gl::Scissor(x, y, width, height); > } > > void GraphicsContext3D::shaderSource(Platform3DObject shader, const String& string) >@@ -1299,178 +1274,178 @@ void GraphicsContext3D::shaderSource(Pla > void GraphicsContext3D::stencilFunc(GC3Denum func, GC3Dint ref, GC3Duint mask) > { > makeContextCurrent(); >- ::glStencilFunc(func, ref, mask); >+ gl::StencilFunc(func, ref, mask); > } > > void GraphicsContext3D::stencilFuncSeparate(GC3Denum face, GC3Denum func, GC3Dint ref, GC3Duint mask) > { > makeContextCurrent(); >- ::glStencilFuncSeparate(face, func, ref, mask); >+ gl::StencilFuncSeparate(face, func, ref, mask); > } > > void GraphicsContext3D::stencilMask(GC3Duint mask) > { > makeContextCurrent(); >- ::glStencilMask(mask); >+ gl::StencilMask(mask); > } > > void GraphicsContext3D::stencilMaskSeparate(GC3Denum face, GC3Duint mask) > { > makeContextCurrent(); >- ::glStencilMaskSeparate(face, mask); >+ gl::StencilMaskSeparate(face, mask); > } > > void GraphicsContext3D::stencilOp(GC3Denum fail, GC3Denum zfail, GC3Denum zpass) > { > makeContextCurrent(); >- ::glStencilOp(fail, zfail, zpass); >+ gl::StencilOp(fail, zfail, zpass); > } > > void GraphicsContext3D::stencilOpSeparate(GC3Denum face, GC3Denum fail, GC3Denum zfail, GC3Denum zpass) > { > makeContextCurrent(); >- ::glStencilOpSeparate(face, fail, zfail, zpass); >+ gl::StencilOpSeparate(face, fail, zfail, zpass); > } > > void GraphicsContext3D::texParameterf(GC3Denum target, GC3Denum pname, GC3Dfloat value) > { > makeContextCurrent(); >- ::glTexParameterf(target, pname, value); >+ gl::TexParameterf(target, pname, value); > } > > void GraphicsContext3D::texParameteri(GC3Denum target, GC3Denum pname, GC3Dint value) > { > makeContextCurrent(); >- ::glTexParameteri(target, pname, value); >+ gl::TexParameteri(target, pname, value); > } > > void GraphicsContext3D::uniform1f(GC3Dint location, GC3Dfloat v0) > { > makeContextCurrent(); >- ::glUniform1f(location, v0); >+ gl::Uniform1f(location, v0); > } > > void GraphicsContext3D::uniform1fv(GC3Dint location, GC3Dsizei size, const GC3Dfloat* array) > { > makeContextCurrent(); >- ::glUniform1fv(location, size, array); >+ gl::Uniform1fv(location, size, array); > } > > void GraphicsContext3D::uniform2f(GC3Dint location, GC3Dfloat v0, GC3Dfloat v1) > { > makeContextCurrent(); >- ::glUniform2f(location, v0, v1); >+ gl::Uniform2f(location, v0, v1); > } > > void GraphicsContext3D::uniform2fv(GC3Dint location, GC3Dsizei size, const GC3Dfloat* array) > { > // FIXME: length needs to be a multiple of 2. > makeContextCurrent(); >- ::glUniform2fv(location, size, array); >+ gl::Uniform2fv(location, size, array); > } > > void GraphicsContext3D::uniform3f(GC3Dint location, GC3Dfloat v0, GC3Dfloat v1, GC3Dfloat v2) > { > makeContextCurrent(); >- ::glUniform3f(location, v0, v1, v2); >+ gl::Uniform3f(location, v0, v1, v2); > } > > void GraphicsContext3D::uniform3fv(GC3Dint location, GC3Dsizei size, const GC3Dfloat* array) > { > // FIXME: length needs to be a multiple of 3. > makeContextCurrent(); >- ::glUniform3fv(location, size, array); >+ gl::Uniform3fv(location, size, array); > } > > void GraphicsContext3D::uniform4f(GC3Dint location, GC3Dfloat v0, GC3Dfloat v1, GC3Dfloat v2, GC3Dfloat v3) > { > makeContextCurrent(); >- ::glUniform4f(location, v0, v1, v2, v3); >+ gl::Uniform4f(location, v0, v1, v2, v3); > } > > void GraphicsContext3D::uniform4fv(GC3Dint location, GC3Dsizei size, const GC3Dfloat* array) > { > // FIXME: length needs to be a multiple of 4. > makeContextCurrent(); >- ::glUniform4fv(location, size, array); >+ gl::Uniform4fv(location, size, array); > } > > void GraphicsContext3D::uniform1i(GC3Dint location, GC3Dint v0) > { > makeContextCurrent(); >- ::glUniform1i(location, v0); >+ gl::Uniform1i(location, v0); > } > > void GraphicsContext3D::uniform1iv(GC3Dint location, GC3Dsizei size, const GC3Dint* array) > { > makeContextCurrent(); >- ::glUniform1iv(location, size, array); >+ gl::Uniform1iv(location, size, array); > } > > void GraphicsContext3D::uniform2i(GC3Dint location, GC3Dint v0, GC3Dint v1) > { > makeContextCurrent(); >- ::glUniform2i(location, v0, v1); >+ gl::Uniform2i(location, v0, v1); > } > > void GraphicsContext3D::uniform2iv(GC3Dint location, GC3Dsizei size, const GC3Dint* array) > { > // FIXME: length needs to be a multiple of 2. > makeContextCurrent(); >- ::glUniform2iv(location, size, array); >+ gl::Uniform2iv(location, size, array); > } > > void GraphicsContext3D::uniform3i(GC3Dint location, GC3Dint v0, GC3Dint v1, GC3Dint v2) > { > makeContextCurrent(); >- ::glUniform3i(location, v0, v1, v2); >+ gl::Uniform3i(location, v0, v1, v2); > } > > void GraphicsContext3D::uniform3iv(GC3Dint location, GC3Dsizei size, const GC3Dint* array) > { > // FIXME: length needs to be a multiple of 3. > makeContextCurrent(); >- ::glUniform3iv(location, size, array); >+ gl::Uniform3iv(location, size, array); > } > > void GraphicsContext3D::uniform4i(GC3Dint location, GC3Dint v0, GC3Dint v1, GC3Dint v2, GC3Dint v3) > { > makeContextCurrent(); >- ::glUniform4i(location, v0, v1, v2, v3); >+ gl::Uniform4i(location, v0, v1, v2, v3); > } > > void GraphicsContext3D::uniform4iv(GC3Dint location, GC3Dsizei size, const GC3Dint* array) > { > // FIXME: length needs to be a multiple of 4. > makeContextCurrent(); >- ::glUniform4iv(location, size, array); >+ gl::Uniform4iv(location, size, array); > } > > void GraphicsContext3D::uniformMatrix2fv(GC3Dint location, GC3Dsizei size, GC3Dboolean transpose, const GC3Dfloat* array) > { > // FIXME: length needs to be a multiple of 4. > makeContextCurrent(); >- ::glUniformMatrix2fv(location, size, transpose, array); >+ gl::UniformMatrix2fv(location, size, transpose, array); > } > > void GraphicsContext3D::uniformMatrix3fv(GC3Dint location, GC3Dsizei size, GC3Dboolean transpose, const GC3Dfloat* array) > { > // FIXME: length needs to be a multiple of 9. > makeContextCurrent(); >- ::glUniformMatrix3fv(location, size, transpose, array); >+ gl::UniformMatrix3fv(location, size, transpose, array); > } > > void GraphicsContext3D::uniformMatrix4fv(GC3Dint location, GC3Dsizei size, GC3Dboolean transpose, const GC3Dfloat* array) > { > // FIXME: length needs to be a multiple of 16. > makeContextCurrent(); >- ::glUniformMatrix4fv(location, size, transpose, array); >+ gl::UniformMatrix4fv(location, size, transpose, array); > } > > void GraphicsContext3D::useProgram(Platform3DObject program) > { > makeContextCurrent(); >- ::glUseProgram(program); >+ gl::UseProgram(program); > } > > void GraphicsContext3D::validateProgram(Platform3DObject program) >@@ -1478,67 +1453,67 @@ void GraphicsContext3D::validateProgram( > ASSERT(program); > > makeContextCurrent(); >- ::glValidateProgram(program); >+ gl::ValidateProgram(program); > } > > void GraphicsContext3D::vertexAttrib1f(GC3Duint index, GC3Dfloat v0) > { > makeContextCurrent(); >- ::glVertexAttrib1f(index, v0); >+ gl::VertexAttrib1f(index, v0); > } > > void GraphicsContext3D::vertexAttrib1fv(GC3Duint index, const GC3Dfloat* array) > { > makeContextCurrent(); >- ::glVertexAttrib1fv(index, array); >+ gl::VertexAttrib1fv(index, array); > } > > void GraphicsContext3D::vertexAttrib2f(GC3Duint index, GC3Dfloat v0, GC3Dfloat v1) > { > makeContextCurrent(); >- ::glVertexAttrib2f(index, v0, v1); >+ gl::VertexAttrib2f(index, v0, v1); > } > > void GraphicsContext3D::vertexAttrib2fv(GC3Duint index, const GC3Dfloat* array) > { > makeContextCurrent(); >- ::glVertexAttrib2fv(index, array); >+ gl::VertexAttrib2fv(index, array); > } > > void GraphicsContext3D::vertexAttrib3f(GC3Duint index, GC3Dfloat v0, GC3Dfloat v1, GC3Dfloat v2) > { > makeContextCurrent(); >- ::glVertexAttrib3f(index, v0, v1, v2); >+ gl::VertexAttrib3f(index, v0, v1, v2); > } > > void GraphicsContext3D::vertexAttrib3fv(GC3Duint index, const GC3Dfloat* array) > { > makeContextCurrent(); >- ::glVertexAttrib3fv(index, array); >+ gl::VertexAttrib3fv(index, array); > } > > void GraphicsContext3D::vertexAttrib4f(GC3Duint index, GC3Dfloat v0, GC3Dfloat v1, GC3Dfloat v2, GC3Dfloat v3) > { > makeContextCurrent(); >- ::glVertexAttrib4f(index, v0, v1, v2, v3); >+ gl::VertexAttrib4f(index, v0, v1, v2, v3); > } > > void GraphicsContext3D::vertexAttrib4fv(GC3Duint index, const GC3Dfloat* array) > { > makeContextCurrent(); >- ::glVertexAttrib4fv(index, array); >+ gl::VertexAttrib4fv(index, array); > } > > void GraphicsContext3D::vertexAttribPointer(GC3Duint index, GC3Dint size, GC3Denum type, GC3Dboolean normalized, GC3Dsizei stride, GC3Dintptr offset) > { > makeContextCurrent(); >- ::glVertexAttribPointer(index, size, type, normalized, stride, reinterpret_cast<GLvoid*>(static_cast<intptr_t>(offset))); >+ gl::VertexAttribPointer(index, size, type, normalized, stride, reinterpret_cast<GLvoid*>(static_cast<intptr_t>(offset))); > } > > void GraphicsContext3D::viewport(GC3Dint x, GC3Dint y, GC3Dsizei width, GC3Dsizei height) > { > makeContextCurrent(); >- ::glViewport(x, y, width, height); >+ gl::Viewport(x, y, width, height); > } > > Platform3DObject GraphicsContext3D::createVertexArray() >@@ -1546,7 +1521,7 @@ Platform3DObject GraphicsContext3D::crea > makeContextCurrent(); > GLuint array = 0; > #if (!USE(OPENGL_ES) && (PLATFORM(GTK) || PLATFORM(WIN))) || PLATFORM(COCOA) >- ::glGenVertexArrays(1, &array); >+ gl::GenVertexArrays(1, &array); > #endif > return array; > } >@@ -1558,7 +1533,7 @@ void GraphicsContext3D::deleteVertexArra > > makeContextCurrent(); > #if (!USE(OPENGL_ES) && (PLATFORM(GTK) || PLATFORM(WIN))) || PLATFORM(COCOA) >- ::glDeleteVertexArrays(1, &array); >+ gl::DeleteVertexArrays(1, &array); > #endif > } > >@@ -1569,7 +1544,7 @@ GC3Dboolean GraphicsContext3D::isVertexA > > makeContextCurrent(); > #if (!USE(OPENGL_ES) && (PLATFORM(GTK) || PLATFORM(WIN))) || PLATFORM(COCOA) >- return ::glIsVertexArray(array); >+ return gl::IsVertexArray(array); > #endif > return GL_FALSE; > } >@@ -1578,7 +1553,7 @@ void GraphicsContext3D::bindVertexArray( > { > makeContextCurrent(); > #if (!USE(OPENGL_ES) && (PLATFORM(GTK) || PLATFORM(WIN))) || PLATFORM(COCOA) >- ::glBindVertexArray(array); >+ gl::BindVertexArray(array); > #else > UNUSED_PARAM(array); > #endif >@@ -1587,19 +1562,19 @@ void GraphicsContext3D::bindVertexArray( > void GraphicsContext3D::getBooleanv(GC3Denum pname, GC3Dboolean* value) > { > makeContextCurrent(); >- ::glGetBooleanv(pname, value); >+ gl::GetBooleanv(pname, value); > } > > void GraphicsContext3D::getBufferParameteriv(GC3Denum target, GC3Denum pname, GC3Dint* value) > { > makeContextCurrent(); >- ::glGetBufferParameteriv(target, pname, value); >+ gl::GetBufferParameteriv(target, pname, value); > } > > void GraphicsContext3D::getFloatv(GC3Denum pname, GC3Dfloat* value) > { > makeContextCurrent(); >- ::glGetFloatv(pname, value); >+ gl::GetFloatv(pname, value); > } > > void GraphicsContext3D::getInteger64v(GC3Denum pname, GC3Dint64* value) >@@ -1608,7 +1583,7 @@ void GraphicsContext3D::getInteger64v(GC > makeContextCurrent(); > *value = 0; > // FIXME 141178: Before enabling this we must first switch over to using gl3.h and creating and initialing the WebGL2 context using OpenGL ES 3.0. >- // ::glGetInteger64v(pname, value); >+ // gl::GetInteger64v(pname, value); > } > > void GraphicsContext3D::getFramebufferAttachmentParameteriv(GC3Denum target, GC3Denum attachment, GC3Denum pname, GC3Dint* value) >@@ -1616,13 +1591,13 @@ void GraphicsContext3D::getFramebufferAt > makeContextCurrent(); > if (attachment == DEPTH_STENCIL_ATTACHMENT) > attachment = DEPTH_ATTACHMENT; // Or STENCIL_ATTACHMENT, either works. >- ::glGetFramebufferAttachmentParameterivEXT(target, attachment, pname, value); >+ gl::GetFramebufferAttachmentParameteriv(target, attachment, pname, value); > } > > void GraphicsContext3D::getProgramiv(Platform3DObject program, GC3Denum pname, GC3Dint* value) > { > makeContextCurrent(); >- ::glGetProgramiv(program, pname, value); >+ gl::GetProgramiv(program, pname, value); > } > > void GraphicsContext3D::getNonBuiltInActiveSymbolCount(Platform3DObject program, GC3Denum pname, GC3Dint* value) >@@ -1644,7 +1619,7 @@ void GraphicsContext3D::getNonBuiltInAct > // Retrieve the active attributes, build a filtered count, and a mapping of > // our internal attributes indexes to the real unfiltered indexes inside OpenGL. > GC3Dint attributeCount = 0; >- ::glGetProgramiv(program, ACTIVE_ATTRIBUTES, &attributeCount); >+ gl::GetProgramiv(program, ACTIVE_ATTRIBUTES, &attributeCount); > for (GC3Dint i = 0; i < attributeCount; ++i) { > ActiveInfo info; > getActiveAttribImpl(program, i, info); >@@ -1656,7 +1631,7 @@ void GraphicsContext3D::getNonBuiltInAct > > // Do the same for uniforms. > GC3Dint uniformCount = 0; >- ::glGetProgramiv(program, ACTIVE_UNIFORMS, &uniformCount); >+ gl::GetProgramiv(program, ACTIVE_UNIFORMS, &uniformCount); > for (GC3Dint i = 0; i < uniformCount; ++i) { > ActiveInfo info; > getActiveUniformImpl(program, i, info); >@@ -1711,13 +1686,13 @@ String GraphicsContext3D::getProgramInfo > > makeContextCurrent(); > GLint length = 0; >- ::glGetProgramiv(program, GL_INFO_LOG_LENGTH, &length); >+ gl::GetProgramiv(program, GL_INFO_LOG_LENGTH, &length); > if (!length) > return String(); > > GLsizei size = 0; > Vector<GLchar> info(length); >- ::glGetProgramInfoLog(program, length, &size, info.data()); >+ gl::GetProgramInfoLog(program, length, &size, info.data()); > > GC3Dsizei count; > Platform3DObject shaders[2]; >@@ -1729,7 +1704,7 @@ String GraphicsContext3D::getProgramInfo > void GraphicsContext3D::getRenderbufferParameteriv(GC3Denum target, GC3Denum pname, GC3Dint* value) > { > makeContextCurrent(); >- ::glGetRenderbufferParameterivEXT(target, pname, value); >+ gl::GetRenderbufferParameteriv(target, pname, value); > } > > void GraphicsContext3D::getShaderiv(Platform3DObject shader, GC3Denum pname, GC3Dint* value) >@@ -1743,7 +1718,7 @@ void GraphicsContext3D::getShaderiv(Plat > switch (pname) { > case DELETE_STATUS: > case SHADER_TYPE: >- ::glGetShaderiv(shader, pname, value); >+ gl::GetShaderiv(shader, pname, value); > break; > case COMPILE_STATUS: > if (result == m_shaderSourceMap.end()) { >@@ -1782,13 +1757,13 @@ String GraphicsContext3D::getShaderInfoL > return entry.log; > > GLint length = 0; >- ::glGetShaderiv(shader, GL_INFO_LOG_LENGTH, &length); >+ gl::GetShaderiv(shader, GL_INFO_LOG_LENGTH, &length); > if (!length) > return String(); > > GLsizei size = 0; > Vector<GLchar> info(length); >- ::glGetShaderInfoLog(shader, length, &size, info.data()); >+ gl::GetShaderInfoLog(shader, length, &size, info.data()); > > Platform3DObject shaders[2] = { shader, 0 }; > return getUnmangledInfoLog(shaders, 1, String(info.data(), size)); >@@ -1811,25 +1786,25 @@ String GraphicsContext3D::getShaderSourc > void GraphicsContext3D::getTexParameterfv(GC3Denum target, GC3Denum pname, GC3Dfloat* value) > { > makeContextCurrent(); >- ::glGetTexParameterfv(target, pname, value); >+ gl::GetTexParameterfv(target, pname, value); > } > > void GraphicsContext3D::getTexParameteriv(GC3Denum target, GC3Denum pname, GC3Dint* value) > { > makeContextCurrent(); >- ::glGetTexParameteriv(target, pname, value); >+ gl::GetTexParameteriv(target, pname, value); > } > > void GraphicsContext3D::getUniformfv(Platform3DObject program, GC3Dint location, GC3Dfloat* value) > { > makeContextCurrent(); >- ::glGetUniformfv(program, location, value); >+ gl::GetUniformfv(program, location, value); > } > > void GraphicsContext3D::getUniformiv(Platform3DObject program, GC3Dint location, GC3Dint* value) > { > makeContextCurrent(); >- ::glGetUniformiv(program, location, value); >+ gl::GetUniformiv(program, location, value); > } > > GC3Dint GraphicsContext3D::getUniformLocation(Platform3DObject program, const String& name) >@@ -1840,19 +1815,19 @@ GC3Dint GraphicsContext3D::getUniformLoc > > String mappedName = mappedSymbolName(program, SHADER_SYMBOL_TYPE_UNIFORM, name); > LOG(WebGL, "::getUniformLocation is mapping %s to %s", name.utf8().data(), mappedName.utf8().data()); >- return ::glGetUniformLocation(program, mappedName.utf8().data()); >+ return gl::GetUniformLocation(program, mappedName.utf8().data()); > } > > void GraphicsContext3D::getVertexAttribfv(GC3Duint index, GC3Denum pname, GC3Dfloat* value) > { > makeContextCurrent(); >- ::glGetVertexAttribfv(index, pname, value); >+ gl::GetVertexAttribfv(index, pname, value); > } > > void GraphicsContext3D::getVertexAttribiv(GC3Duint index, GC3Denum pname, GC3Dint* value) > { > makeContextCurrent(); >- ::glGetVertexAttribiv(index, pname, value); >+ gl::GetVertexAttribiv(index, pname, value); > } > > GC3Dsizeiptr GraphicsContext3D::getVertexAttribOffset(GC3Duint index, GC3Denum pname) >@@ -1860,7 +1835,7 @@ GC3Dsizeiptr GraphicsContext3D::getVerte > makeContextCurrent(); > > GLvoid* pointer = 0; >- ::glGetVertexAttribPointerv(index, pname, &pointer); >+ gl::GetVertexAttribPointerv(index, pname, &pointer); > return static_cast<GC3Dsizeiptr>(reinterpret_cast<intptr_t>(pointer)); > } > >@@ -1868,11 +1843,6 @@ void GraphicsContext3D::texSubImage2D(GC > { > makeContextCurrent(); > >-#if !USE(OPENGL_ES) >- if (type == HALF_FLOAT_OES) >- type = GL_HALF_FLOAT_ARB; >-#endif >- > if (m_usingCoreProfile) { > // There are some format values used in WebGL that are deprecated when using a core profile, so we need > // to adapt them, as we do in GraphicsContext3D::texImage2D(). >@@ -1891,21 +1861,21 @@ void GraphicsContext3D::texSubImage2D(GC > } > > // FIXME: we will need to deal with PixelStore params when dealing with image buffers that differ from the subimage size. >- ::glTexSubImage2D(target, level, xoff, yoff, width, height, format, type, pixels); >+ gl::TexSubImage2D(target, level, xoff, yoff, width, height, format, type, pixels); > m_state.textureSeedCount.add(m_state.currentBoundTexture()); > } > > void GraphicsContext3D::compressedTexImage2D(GC3Denum target, GC3Dint level, GC3Denum internalformat, GC3Dsizei width, GC3Dsizei height, GC3Dint border, GC3Dsizei imageSize, const void* data) > { > makeContextCurrent(); >- ::glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data); >+ gl::CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data); > m_state.textureSeedCount.add(m_state.currentBoundTexture()); > } > > void GraphicsContext3D::compressedTexSubImage2D(GC3Denum target, GC3Dint level, GC3Dint xoffset, GC3Dint yoffset, GC3Dsizei width, GC3Dsizei height, GC3Denum format, GC3Dsizei imageSize, const void* data) > { > makeContextCurrent(); >- ::glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data); >+ gl::CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data); > m_state.textureSeedCount.add(m_state.currentBoundTexture()); > } > >@@ -1921,7 +1891,7 @@ Platform3DObject GraphicsContext3D::crea > { > makeContextCurrent(); > GLuint o = 0; >- glGenFramebuffersEXT(1, &o); >+ glGenFramebuffers(1, &o); > return o; > } > >@@ -1935,7 +1905,7 @@ Platform3DObject GraphicsContext3D::crea > { > makeContextCurrent(); > GLuint o = 0; >- glGenRenderbuffersEXT(1, &o); >+ glGenRenderbuffers(1, &o); > return o; > } > >@@ -1968,7 +1938,7 @@ void GraphicsContext3D::deleteFramebuffe > // operations after it gets deleted. > bindFramebuffer(FRAMEBUFFER, 0); > } >- glDeleteFramebuffersEXT(1, &framebuffer); >+ glDeleteFramebuffers(1, &framebuffer); > } > > void GraphicsContext3D::deleteProgram(Platform3DObject program) >@@ -1981,7 +1951,7 @@ void GraphicsContext3D::deleteProgram(Pl > void GraphicsContext3D::deleteRenderbuffer(Platform3DObject renderbuffer) > { > makeContextCurrent(); >- glDeleteRenderbuffersEXT(1, &renderbuffer); >+ glDeleteRenderbuffers(1, &renderbuffer); > } > > void GraphicsContext3D::deleteShader(Platform3DObject shader) >@@ -2048,7 +2018,7 @@ void GraphicsContext3D::dispatchContextC > void GraphicsContext3D::texImage2DDirect(GC3Denum target, GC3Dint level, GC3Denum internalformat, GC3Dsizei width, GC3Dsizei height, GC3Dint border, GC3Denum format, GC3Denum type, const void* pixels) > { > makeContextCurrent(); >- ::glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels); >+ gl::TexImage2D(target, level, internalformat, width, height, border, format, type, pixels); > m_state.textureSeedCount.add(m_state.currentBoundTexture()); > } > >@@ -2070,10 +2040,10 @@ void GraphicsContext3D::vertexAttribDivi > } > > #if USE(OPENGL) && ENABLE(WEBGL2) >-void GraphicsContext3D::primitiveRestartIndex(GC3Duint index) >+void GraphicsContext3D::primitiveRestartIndex(GC3Duint) > { >- makeContextCurrent(); >- ::glPrimitiveRestartIndex(index); >+ // makeContextCurrent(); >+ // gl::PrimitiveRestartIndex(index); > } > #endif > >Index: Source/WebKit/ChangeLog >=================================================================== >--- Source/WebKit/ChangeLog (revision 245238) >+++ Source/WebKit/ChangeLog (working copy) >@@ -1,3 +1,12 @@ >+2019-05-13 Alex Christensen <achristensen@webkit.org> >+ >+ Support using ANGLE as the backend for the WebGL implementation >+ https://bugs.webkit.org/show_bug.cgi?id=197755 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * Configurations/BaseTarget.xcconfig: >+ > 2019-05-13 Chris Fleizach <cfleizach@apple.com> > > AX: Need an entitlement for WebContent to send accessibility notifications >Index: Source/WebKit/Configurations/BaseTarget.xcconfig >=================================================================== >--- Source/WebKit/Configurations/BaseTarget.xcconfig (revision 245238) >+++ Source/WebKit/Configurations/BaseTarget.xcconfig (working copy) >@@ -40,7 +40,8 @@ GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_D > WEBKITADDITIONS_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions $(SDKROOT)/usr/local/include/WebKitAdditions; > LIBWEBRTC_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/webrtc $(SDKROOT)/usr/local/include/webrtc; > >-HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include "$(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders" $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2 $(WEBKITADDITIONS_HEADER_SEARCH_PATHS) $(LIBWEBRTC_HEADER_SEARCH_PATHS) $(SRCROOT) $(HEADER_SEARCH_PATHS); >+// This is a horrible hack. Don't actually commit this. >+HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include "$(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders" $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2 $(WEBKITADDITIONS_HEADER_SEARCH_PATHS) $(LIBWEBRTC_HEADER_SEARCH_PATHS) $(SRCROOT) $(HEADER_SEARCH_PATHS) $(SRCROOT)/../ThirdParty/ANGLE/include; > > OTHER_CFLAGS = $(inherited) -iframework $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks; > OTHER_CPLUSPLUSFLAGS = $(OTHER_CFLAGS) -isystem $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders;
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 197755
:
369534
|
369780
|
369786
|
369787
|
369793
|
371212
|
371576
|
371764
|
371784
|
371798
|
372093
|
372129
|
372309
|
372349