I have a working build of WebGL on Windows that uses most of ANGLE, so we should included the additional parts of ANGLE. Before we do this, we may as well update to the latest revision. Blink is currently using r2184 of ANGLE. We're currently using r1987. I suggest we update to the latest revision of ANGLE, r2249. Our current differences from the ANGLE repository are that we used Bison 2.4.2 instead of Bison 2.3 to generate glslang_tab and ExpressionParser cpp and h files, we put #if defined(_MSC_VER) around #pragma warning(disable: 4718) in DependencyGraph.cpp, and we include khrplatform.h instead of KHR/khrplatform.h in ShaderLang.h. The current revision of ANGLE used Bison 2.4.2 to generate the files, so we won't need to rerun Bison. We may as well keep the other two changes for now. Updating to the latest revision moves DetectRecursion.cpp and DetectRecursion.h to DetectCallDepth.cpp and DetectCallDepth.h and adds builtin_symbol_table.cpp and builtin_symbol_table.h, so I've tried to do that by hand with all build systems. "DetectRecursion" was also in Source\WebCore\WebCore.order, and I'm not sure what that is, so I may have broken whatever that is (Stephanie - you added that). I would not be surprised if this first patch breaks build systems, but that's what the EWS system is for. I don't want to land a patch that breaks anything.
Created attachment 206429 [details] Patch
Comment on attachment 206429 [details] Patch Attachment 206429 [details] did not pass gtk-ews (gtk): Output: http://webkit-queues.appspot.com/results/931496
Comment on attachment 206429 [details] Patch Attachment 206429 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/1026461
Comment on attachment 206429 [details] Patch Attachment 206429 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/1058082
Created attachment 206566 [details] Patch
Comment on attachment 206566 [details] Patch Attachment 206566 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/1067030
Comment on attachment 206566 [details] Patch Attachment 206566 [details] did not pass gtk-ews (gtk): Output: http://webkit-queues.appspot.com/results/1067031
Created attachment 206579 [details] Patch
Comment on attachment 206579 [details] Patch Attachment 206579 [details] did not pass gtk-ews (gtk): Output: http://webkit-queues.appspot.com/results/1064222
The build error on GTK+ is due to the combination of the bitfields with the enum. I haven't yet determined if this is a bug in gcc yet, but I did confirm that making the enums members sans bitfields fixed the issue.
Created attachment 206620 [details] Patch
Comment on attachment 206620 [details] Patch Attachment 206620 [details] did not pass efl-ews (efl): Output: http://webkit-queues.appspot.com/results/970772
Comment on attachment 206620 [details] Patch Attachment 206620 [details] did not pass efl-wk2-ews (efl-wk2): Output: http://webkit-queues.appspot.com/results/1045681
Comment on attachment 206620 [details] Patch Attachment 206620 [details] did not pass qt-ews (qt): Output: http://webkit-queues.appspot.com/results/1066395
Comment on attachment 206620 [details] Patch Attachment 206620 [details] did not pass qt-wk2-ews (qt-wk2): Output: http://webkit-queues.appspot.com/results/1069137
Created attachment 206622 [details] Patch
This is the workaround I did for getting Types.h to compile with GCC: +#ifdef __GNUC__ + TBasicType type; + TPrecision precision; + TQualifier qualifier; +#else TBasicType type : 6; TPrecision precision; TQualifier qualifier : 7; +#endif Running webgl tests on Mac doesn't add any failures with this patch, and running Safari with this patch seems to render webgl fine.
Comment on attachment 206622 [details] Patch We explicitly use the older Bison so that we don't commit code with a license that is incompatible with WebKit's terms. You'll need to regenerate the files with the older Bison.
i.e. use Bison 2.3, not 2.4x Otherwise it all looks good.
Created attachment 206683 [details] changes I made to ANGLE before running bison
Created attachment 206700 [details] Patch
Comment on attachment 206700 [details] Patch Attachment 206700 [details] did not pass qt-ews (qt): Output: http://webkit-queues.appspot.com/results/1067846
Comment on attachment 206700 [details] Patch Attachment 206700 [details] did not pass qt-wk2-ews (qt-wk2): Output: http://webkit-queues.appspot.com/results/1071599
Comment on attachment 206700 [details] Patch Attachment 206700 [details] did not pass gtk-ews (gtk): Output: http://webkit-queues.appspot.com/results/1073307
Comment on attachment 206700 [details] Patch Attachment 206700 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/1071600
Created attachment 206705 [details] Patch
Created attachment 206713 [details] Patch
Comment on attachment 206713 [details] Patch rs=me
Comment on attachment 206713 [details] Patch Clearing flags on attachment: 206713 Committed r152755: <http://trac.webkit.org/changeset/152755>
All reviewed patches have been landed. Closing bug.
Rolled out in https://trac.webkit.org/r152946
Created attachment 207292 [details] Patch
This time I ran leaks tests and it doesn't add 4 million leaks
Comment on attachment 207292 [details] Patch Attachment 207292 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/1092434
Comment on attachment 207292 [details] Patch Attachment 207292 [details] did not pass efl-ews (efl): Output: http://webkit-queues.appspot.com/results/1082683
Comment on attachment 207292 [details] Patch Attachment 207292 [details] did not pass qt-ews (qt): Output: http://webkit-queues.appspot.com/results/1172159
Comment on attachment 207292 [details] Patch Attachment 207292 [details] did not pass qt-wk2-ews (qt-wk2): Output: http://webkit-queues.appspot.com/results/1177257
Comment on attachment 207292 [details] Patch Attachment 207292 [details] did not pass efl-wk2-ews (efl-wk2): Output: http://webkit-queues.appspot.com/results/1092437
Comment on attachment 207292 [details] Patch Attachment 207292 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/1082681
Created attachment 207296 [details] Patch
Comment on attachment 207296 [details] Patch Attachment 207296 [details] did not pass qt-wk2-ews (qt-wk2): Output: http://webkit-queues.appspot.com/results/1135460
Comment on attachment 207296 [details] Patch Attachment 207296 [details] did not pass efl-wk2-ews (efl-wk2): Output: http://webkit-queues.appspot.com/results/1137488
Comment on attachment 207296 [details] Patch Attachment 207296 [details] did not pass gtk-ews (gtk): Output: http://webkit-queues.appspot.com/results/1137489
Created attachment 207298 [details] Patch
Comment on attachment 207298 [details] Patch Attachment 207298 [details] did not pass gtk-ews (gtk): Output: http://webkit-queues.appspot.com/results/1184016
I'm pretty sure my patch didn't break the GTK build because the error has nothing to do with ANGLE and GTK-WK2 built successfully. I also ran leak tests locally with this patch and it does not add 4 million leaks like the last one did.
Created attachment 207338 [details] Patch
Comment on attachment 207338 [details] Patch Attachment 207338 [details] did not pass qt-wk2-ews (qt-wk2): Output: http://webkit-queues.appspot.com/results/1119317
Comment on attachment 207338 [details] Patch Attachment 207338 [details] did not pass gtk-ews (gtk): Output: http://webkit-queues.appspot.com/results/1183293
Created attachment 207343 [details] Patch
Comment on attachment 207343 [details] Patch rs=me
Comment on attachment 207343 [details] Patch Rejecting attachment 207343 [details] from commit-queue. Failed to run "['/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch', '--status-host=webkit-queues.appspot.com', '--bot-id=webkit-cq-02', 'land-attachment', '--force-clean', '--non-interactive', '--parent-command=commit-queue', 207343, '--port=mac']" exit_code: 2 cwd: /Volumes/Data/EWS/WebKit Last 500 characters of output: /git.webkit.org/WebKit 576a5fb..9ce069c master -> origin/master Partial-rebuilding .git/svn/refs/remotes/origin/master/.rev_map.268f45cc-cd09-0410-ab3c-d52691b4dbfc ... Currently at 153061 = 576a5fb847db0f1a9dd8fb3db2d257c8f2d817c5 r153062 = 9ce069c97e2f045384ba83f8d8c96113820779de Done rebuilding .git/svn/refs/remotes/origin/master/.rev_map.268f45cc-cd09-0410-ab3c-d52691b4dbfc First, rewinding head to replay your work on top of it... Fast-forwarded master to refs/remotes/origin/master. Full output: http://webkit-queues.appspot.com/results/1158437
r153064