ANGLE is a library from Google (http://code.google.com/p/angleproject/) useful for compiling OpenGL ES shaders into desktop GL and DirectX shaders, and for performing code validation. Here are some patches, one for moving the ANGLE source code into the WebCore tree, along with some code (ANGLEWebkitBridge.cpp) for calling the ANGLE compiler, and some hooks in WebCore itself. I also made some changes in the xcode project to link and build ANGLE with the rest of WebCore.
Created attachment 62233 [details] ANGLE changes in webcore
Created attachment 62234 [details] ANGLE source code, removed bison.exe and flex.exe, left all else intact.
Created attachment 62235 [details] Changes to WebCore.xcodeproj for ANGLE
Comment on attachment 62233 [details] ANGLE changes in webcore In the future, you should mark your patches as patches and review? if you want them to be reviewed. For now, you should run the check-webkit-style on this patch (ignoring the ANGLE lib itself) and repost). Please also remove commented out and debugging code.
Created attachment 62242 [details] Changes to existing files in webkit for ANGLE
Created attachment 62243 [details] New ANGLE files for webcore Contains ANGLEWebkitBridge and the ShaderLang and ResourceLimits headers from ANGLE.
Attachment 62242 [details] did not pass style-queue: Failed to run "['WebKitTools/Scripts/check-webkit-style']" exit_code: 1 WebCore/html/canvas/WebGLShader.h:46: Tab found; better to use spaces [whitespace/tab] [1] WebCore/html/canvas/WebGLShader.h:47: Tab found; better to use spaces [whitespace/tab] [1] WebCore/html/canvas/WebGLShader.h:48: Tab found; better to use spaces [whitespace/tab] [1] WebCore/html/canvas/WebGLShader.h:49: Tab found; better to use spaces [whitespace/tab] [1] WebCore/html/canvas/WebGLShader.h:50: Tab found; better to use spaces [whitespace/tab] [1] WebCore/html/canvas/WebGLShader.h:51: Tab found; better to use spaces [whitespace/tab] [1] WebCore/html/canvas/WebGLShader.h:52: Tab found; better to use spaces [whitespace/tab] [1] WebCore/html/canvas/WebGLShader.h:53: Tab found; better to use spaces [whitespace/tab] [1] WebCore/html/canvas/WebGLShader.h:64: Tab found; better to use spaces [whitespace/tab] [1] WebCore/html/canvas/WebGLShader.h:65: Tab found; better to use spaces [whitespace/tab] [1] WebCore/html/canvas/WebGLShader.h:66: Tab found; better to use spaces [whitespace/tab] [1] WebCore/html/canvas/WebGLShader.h:66: Should have a space between // and comment [whitespace/comments] [4] WebCore/html/canvas/WebGLShader.h:67: Tab found; better to use spaces [whitespace/tab] [1] WebCore/html/canvas/WebGLShader.h:69: Tab found; better to use spaces [whitespace/tab] [1] Total errors found: 14 in 3 files If any of these errors are false positives, please file a bug against check-webkit-style.
Attachment 62243 [details] did not pass style-queue: Failed to run "['WebKitTools/Scripts/check-webkit-style']" exit_code: 1 Last 3072 characters of output: ebCore/platform/graphics/angle/ShaderLang.h:129: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:130: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:130: One space before end of line comments [whitespace/comments] [5] WebCore/platform/graphics/angle/ShaderLang.h:131: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:134: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:134: One space before end of line comments [whitespace/comments] [5] WebCore/platform/graphics/angle/ShaderLang.h:135: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:135: One space before end of line comments [whitespace/comments] [5] WebCore/platform/graphics/angle/ShaderLang.h:136: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:137: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:137: One space before end of line comments [whitespace/comments] [5] WebCore/platform/graphics/angle/ShaderLang.h:138: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:138: One space before end of line comments [whitespace/comments] [5] WebCore/platform/graphics/angle/ShaderLang.h:139: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:142: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:142: One space before end of line comments [whitespace/comments] [5] WebCore/platform/graphics/angle/ShaderLang.h:143: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:143: One space before end of line comments [whitespace/comments] [5] WebCore/platform/graphics/angle/ShaderLang.h:144: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:160: One space before end of line comments [whitespace/comments] [5] WebCore/platform/graphics/angle/ShaderLang.h:161: One space before end of line comments [whitespace/comments] [5] WebCore/platform/graphics/angle/ShaderLang.h:175: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:176: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:177: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:178: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:179: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:180: Tab found; better to use spaces [whitespace/tab] [1] WebCore/platform/graphics/angle/ShaderLang.h:183: Tab found; better to use spaces [whitespace/tab] [1] Total errors found: 72 in 4 files If any of these errors are false positives, please file a bug against check-webkit-style.
Why was the ANGLE source code marked R-?
Created attachment 62321 [details] ANGLE source code Moved ANGLE to /OpenSource/ANGLE, removed ANGLEWebkitBridge which I mistakenly included in my last patch
Created attachment 62905 [details] Contains ANGLE source code and new xcodeproject. Should build correctly into WebKitBuild
You shouldn't include your .move1v3 or pbxuser files. I also don't see a Changelog file. You should add a new Changelog file to the ANGLE directory, following the style of the others. Hopefully this will only ever contain "updating to the new version of ANGLE" entries, but it allows us to keep track of what is there. In this case you should indicate what version of ANGLE this is and/or what date you took the drop
Created attachment 63268 [details] ANGLE source code and xcodeproject. Contains no changes to WebCore.
Please make your changelog match WebKit style (8 spaces before each line, "Reviewed by..." line, bug link). I don't think it needs to list all the files, but it should state their vintage.
Created attachment 63269 [details] ANGLE source code and xcodeproject. Improvements to ChangeLog
Note: see http://webkit.org/coding/contributing.html for instructions on using the prepare-ChangeLog, svn-create-patch, etc. scripts which assist in producing patches.
Created attachment 63278 [details] ANGLE source code and Xcode project. Cleaned up ChangeLog Sorry about all of these gigantic patches. Cleaned up ChangeLog, generated using prepare-ChangeLog
Created attachment 63282 [details] ANGLE source code and Xcode project. Got rid of errant files This is the latest patch from Paul. Looks good to me
Comment on attachment 63282 [details] ANGLE source code and Xcode project. Got rid of errant files I think we need a Makefile in the Angle directory - is that right?
Attachment 63282 [details] did not pass style-queue: Failed to run "['WebKitTools/Scripts/check-webkit-style']" exit_code: 1 Last 3072 characters of output: { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2802: Declaration has space between type name and * in Framebuffer *framebuffer [whitespace/declaration] [3] ANGLE/src/libGLESv2/Context.cpp:2805: This { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2817: This { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2829: This { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2838: Declaration has space between type name and * in Framebuffer *framebuffer [whitespace/declaration] [3] ANGLE/src/libGLESv2/Context.cpp:2841: This { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2846: Declaration has space between type name and * in Texture *Context [whitespace/declaration] [3] ANGLE/src/libGLESv2/Context.cpp:2848: Declaration has space between type name and * in Texture *t [whitespace/declaration] [3] ANGLE/src/libGLESv2/Context.cpp:2850: Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons. [readability/comparison_to_zero] [5] ANGLE/src/libGLESv2/Context.cpp:2850: Use 0 instead of NULL. [readability/null] [5] ANGLE/src/libGLESv2/Context.cpp:2851: This { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2855: This { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2862: Declaration has space between type name and * in Texture2D *incomplete2d [whitespace/declaration] [3] ANGLE/src/libGLESv2/Context.cpp:2870: Declaration has space between type name and * in TextureCubeMap *incompleteCube [whitespace/declaration] [3] ANGLE/src/libGLESv2/Context.cpp:2898: This { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2916: Declaration has space between type name and * in Framebuffer *framebufferObject [whitespace/declaration] [3] ANGLE/src/libGLESv2/Context.cpp:2919: This { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2920: Declaration has space between type name and * in Stencilbuffer *stencilbufferObject [whitespace/declaration] [3] ANGLE/src/libGLESv2/Context.cpp:2923: This { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2946: This { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2952: This { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2965: This { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2976: This { should be at the end of the previous line [whitespace/braces] [4] ANGLE/src/libGLESv2/Context.cpp:2977: Use 0 instead of NULL. [readability/null] [5] Total errors found: 6126 in 132 files If any of these errors are false positives, please file a bug against check-webkit-style.
Landed in http://trac.webkit.org/changeset/64560