<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[209832] trunk/Source</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/209832">209832</a></dd>
<dt>Author</dt> <dd>achristensen@apple.com</dd>
<dt>Date</dt> <dd>2016-12-14 13:45:28 -0800 (Wed, 14 Dec 2016)</dd>
</dl>

<h3>Log Message</h3>
<pre>Progress towards using ANGLE to do WebGL rendering
https://bugs.webkit.org/show_bug.cgi?id=165864

Reviewed by Dean Jackson.

Source/ThirdParty/ANGLE:

* ANGLE.xcodeproj/project.pbxproj:
Compile more files, and add some more &quot;public&quot; headers.
ANGLE is not a public framework, so these headers just go in 
WebKitBuild/Release/usr/local/include/ANGLE to be included when compiling WebCore.
* ANGLE/egl.h: Added.
* ANGLE/eglext.h: Added.
* ANGLE/eglplatform.h: Added.
* ANGLE/entry_points_gles_2_0.h: Added.
* ANGLE/entry_points_gles_2_0_ext.h: Added.
* ANGLE/entry_points_gles_3_0.h: Added.
* ANGLE/export.h: Added.
* ANGLE/gl2.h: Added.
* ANGLE/gl2ext.h: Added.
* ANGLE/gl2platform.h: Added.
* ANGLE/gl3.h: Added.
* ANGLE/gl31.h: Added.
* ANGLE/gl3platform.h: Added.
* ANGLE/khrplatform.h: Added.
Add more forwarding headers.  There are already a few, but we need more.
* CMakeLists.txt:
* PlatformMac.cmake:
Make the frameworks linked to by ANGLE be private so frameworks that link with 
ANGLE don't automatically link with them. This allows me to switch ANGLE from a 
static library to a dynamic library to make sure WebCore isn't directly using OpenGL.
* PlatformWin.cmake:
Move HLSL-specific files to only be built on Windows.
* 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.h:
* src/libGLESv2/entry_points_gles_2_0_ext.h:
* src/libGLESv2/entry_points_gles_3_0.h:
* src/libGLESv2/entry_points_gles_3_1.h:
Include ANGLE headers as #include &lt;ANGLE/*&gt; instead of #include &lt;KHR/*&gt; or #include &lt;GLES/*&gt;
This is needed to distinguish the ANGLE headers from any system OpenGL/OpenGLES headers.
We will eventually only include ANGLE's entry_points_*.h directly from WebCore.

Source/WebCore:

No new tests, no change in behavior.
Just compile fixes for a configuration that will soon be standard
that can be landed now without breaking anything.

* platform/graphics/PlatformDisplay.cpp:
(WebCore::PlatformDisplay::sharedDisplay):
Ignore some clang warnings that will cause problems when this is compiled on Mac.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceThirdPartyANGLEANGLExcodeprojprojectpbxproj">trunk/Source/ThirdParty/ANGLE/ANGLE.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceThirdPartyANGLECMakeListstxt">trunk/Source/ThirdParty/ANGLE/CMakeLists.txt</a></li>
<li><a href="#trunkSourceThirdPartyANGLEChangeLog">trunk/Source/ThirdParty/ANGLE/ChangeLog</a></li>
<li><a href="#trunkSourceThirdPartyANGLEPlatformMaccmake">trunk/Source/ThirdParty/ANGLE/PlatformMac.cmake</a></li>
<li><a href="#trunkSourceThirdPartyANGLEPlatformWincmake">trunk/Source/ThirdParty/ANGLE/PlatformWin.cmake</a></li>
<li><a href="#trunkSourceThirdPartyANGLEincludeEGLeglh">trunk/Source/ThirdParty/ANGLE/include/EGL/egl.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEincludeEGLeglplatformh">trunk/Source/ThirdParty/ANGLE/include/EGL/eglplatform.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEincludeGLES2gl2h">trunk/Source/ThirdParty/ANGLE/include/GLES2/gl2.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEincludeGLES2gl2platformh">trunk/Source/ThirdParty/ANGLE/include/GLES2/gl2platform.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEincludeGLES3gl3h">trunk/Source/ThirdParty/ANGLE/include/GLES3/gl3.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEincludeGLES3gl31h">trunk/Source/ThirdParty/ANGLE/include/GLES3/gl31.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEincludeGLES3gl32h">trunk/Source/ThirdParty/ANGLE/include/GLES3/gl32.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEincludeGLES3gl3platformh">trunk/Source/ThirdParty/ANGLE/include/GLES3/gl3platform.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEsrclibGLESv2entry_points_eglh">trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEsrclibGLESv2entry_points_egl_exth">trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl_ext.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEsrclibGLESv2entry_points_gles_2_0h">trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_2_0.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEsrclibGLESv2entry_points_gles_2_0_exth">trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_2_0_ext.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEsrclibGLESv2entry_points_gles_3_0h">trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_0.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEsrclibGLESv2entry_points_gles_3_1h">trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_1.h</a></li>
<li><a href="#trunkSourceWebCoreCMakeListstxt">trunk/Source/WebCore/CMakeLists.txt</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsPlatformDisplaycpp">trunk/Source/WebCore/platform/graphics/PlatformDisplay.cpp</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkSourceThirdPartyANGLEANGLEeglh">trunk/Source/ThirdParty/ANGLE/ANGLE/egl.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEANGLEeglexth">trunk/Source/ThirdParty/ANGLE/ANGLE/eglext.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEANGLEeglplatformh">trunk/Source/ThirdParty/ANGLE/ANGLE/eglplatform.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEANGLEentry_points_gles_2_0h">trunk/Source/ThirdParty/ANGLE/ANGLE/entry_points_gles_2_0.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEANGLEentry_points_gles_2_0_exth">trunk/Source/ThirdParty/ANGLE/ANGLE/entry_points_gles_2_0_ext.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEANGLEentry_points_gles_3_0h">trunk/Source/ThirdParty/ANGLE/ANGLE/entry_points_gles_3_0.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEANGLEexporth">trunk/Source/ThirdParty/ANGLE/ANGLE/export.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEANGLEgl2h">trunk/Source/ThirdParty/ANGLE/ANGLE/gl2.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEANGLEgl2exth">trunk/Source/ThirdParty/ANGLE/ANGLE/gl2ext.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEANGLEgl2platformh">trunk/Source/ThirdParty/ANGLE/ANGLE/gl2platform.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEANGLEgl3h">trunk/Source/ThirdParty/ANGLE/ANGLE/gl3.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEANGLEgl31h">trunk/Source/ThirdParty/ANGLE/ANGLE/gl31.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEANGLEgl3platformh">trunk/Source/ThirdParty/ANGLE/ANGLE/gl3platform.h</a></li>
<li><a href="#trunkSourceThirdPartyANGLEANGLEkhrplatformh">trunk/Source/ThirdParty/ANGLE/ANGLE/khrplatform.h</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceThirdPartyANGLEANGLEeglh"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/egl.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/egl.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/egl.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;include/EGL/egl.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLEeglexth"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/eglext.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/eglext.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/eglext.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;include/EGL/eglext.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLEeglplatformh"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/eglplatform.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/eglplatform.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/eglplatform.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;include/EGL/eglplatform.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLEentry_points_gles_2_0h"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/entry_points_gles_2_0.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/entry_points_gles_2_0.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/entry_points_gles_2_0.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;src/libGLESv2/entry_points_gles_2_0.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLEentry_points_gles_2_0_exth"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/entry_points_gles_2_0_ext.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/entry_points_gles_2_0_ext.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/entry_points_gles_2_0_ext.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;src/libGLESv2/entry_points_gles_2_0_ext.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLEentry_points_gles_3_0h"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/entry_points_gles_3_0.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/entry_points_gles_3_0.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/entry_points_gles_3_0.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;src/libGLESv2/entry_points_gles_3_0.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLEexporth"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/export.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/export.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/export.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;include/export.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLEgl2h"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/gl2.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/gl2.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/gl2.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;include/GLES2/gl2.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLEgl2exth"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/gl2ext.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/gl2ext.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/gl2ext.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;include/GLES2/gl2ext.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLEgl2platformh"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/gl2platform.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/gl2platform.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/gl2platform.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;include/GLES2/gl2platform.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLEgl3h"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/gl3.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/gl3.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/gl3.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;include/GLES3/gl3.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLEgl31h"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/gl31.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/gl31.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/gl31.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;include/GLES3/gl31.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLEgl3platformh"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/gl3platform.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/gl3platform.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/gl3platform.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;include/GLES3/gl3platform.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLEkhrplatformh"></a>
<div class="addfile"><h4>Added: trunk/Source/ThirdParty/ANGLE/ANGLE/khrplatform.h (0 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE/khrplatform.h                                (rev 0)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE/khrplatform.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+#include &quot;include/KHR/khrplatform.h&quot;
</ins></span></pre></div>
<a id="trunkSourceThirdPartyANGLEANGLExcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/ANGLE.xcodeproj/project.pbxproj (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ANGLE.xcodeproj/project.pbxproj        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE.xcodeproj/project.pbxproj        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -83,6 +83,24 @@
</span><span class="cx">                 31012E8018B97B9B0039062F /* VersionGLSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 31012E1118B97B9B0039062F /* VersionGLSL.h */; };
</span><span class="cx">                 312BDB0C15FECAC90097EBC7 /* ANGLE.plist in CopyFiles */ = {isa = PBXBuildFile; fileRef = 312BDB0915FEC91E0097EBC7 /* ANGLE.plist */; };
</span><span class="cx">                 312BDB0E15FECAE50097EBC7 /* ANGLE.txt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 312BDB0A15FECA3A0097EBC7 /* ANGLE.txt */; };
</span><ins>+                5C1BAA9A1DFB60FF002906BB /* gl3.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C1BAA961DFB60FF002906BB /* gl3.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5C1BAA9B1DFB60FF002906BB /* gl3platform.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C1BAA971DFB60FF002906BB /* gl3platform.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5C1BAA9C1DFB60FF002906BB /* gl31.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C1BAA981DFB60FF002906BB /* gl31.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5C1BAA9D1DFB60FF002906BB /* gl32.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C1BAA991DFB60FF002906BB /* gl32.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5C1BAAA21DFB610E002906BB /* gl2.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C1BAA9E1DFB610E002906BB /* gl2.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5C1BAAA31DFB610E002906BB /* gl2ext.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C1BAA9F1DFB610E002906BB /* gl2ext.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5C1BAAA41DFB610E002906BB /* gl2platform.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C1BAAA01DFB610E002906BB /* gl2platform.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5C1BAAAA1DFB6124002906BB /* egl.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C1BAAA61DFB6124002906BB /* egl.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5C1BAAAB1DFB6124002906BB /* eglext.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C1BAAA71DFB6124002906BB /* eglext.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5C1BAAAC1DFB6124002906BB /* eglplatform.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C1BAAA81DFB6124002906BB /* eglplatform.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5C1BAAAF1DFB6A12002906BB /* export.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C1BAAAE1DFB6A12002906BB /* export.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5C1BAAB01DFB6EC6002906BB /* entry_points_gles_3_0.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CB300C31DE39E7500D2C405 /* entry_points_gles_3_0.cpp */; };
+                5C1BAAB11DFB6F33002906BB /* global_state.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CB300C71DE39E7500D2C405 /* global_state.cpp */; };
+                5C1BAAB21DFB6F45002906BB /* entry_points_gles_3_1.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CB300C51DE39E7500D2C405 /* entry_points_gles_3_1.cpp */; };
+                5C1BAAB31DFB6F4B002906BB /* entry_points_gles_2_0.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CB300C11DE39E7500D2C405 /* entry_points_gles_2_0.cpp */; };
+                5C1BAAB41DFB6F4F002906BB /* entry_points_gles_2_0_ext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CB300BF1DE39E7500D2C405 /* entry_points_gles_2_0_ext.cpp */; };
+                5C1BAAB51DFB6F54002906BB /* entry_points_egl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CB300BD1DE39E7500D2C405 /* entry_points_egl.cpp */; };
+                5C1BAAB61DFB6F58002906BB /* entry_points_egl_ext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CB300BB1DE39E7500D2C405 /* entry_points_egl_ext.cpp */; };
</ins><span class="cx">                 5C1DBBE61B04075B00235552 /* ShaderVars.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C1DBBE51B04075B00235552 /* ShaderVars.h */; settings = {ATTRIBUTES = (Public, ); }; };
</span><span class="cx">                 5C1DBBF01B0436EC00235552 /* angleutils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5C1DBBE71B0436EC00235552 /* angleutils.cpp */; };
</span><span class="cx">                 5C1DBBF11B0436EC00235552 /* MemoryBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5C1DBBE81B0436EC00235552 /* MemoryBuffer.cpp */; };
</span><span class="lines">@@ -282,12 +300,12 @@
</span><span class="cx">                 5CB304921DE4156200D2C405 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CB3048D1DE4144400D2C405 /* OpenGL.framework */; };
</span><span class="cx">                 5CB304931DE4156B00D2C405 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CB3048F1DE4145500D2C405 /* QuartzCore.framework */; };
</span><span class="cx">                 5CB304941DE4157200D2C405 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CB3048B1DE4143500D2C405 /* CoreGraphics.framework */; };
</span><del>-                5CB304961DE4157B00D2C405 /* entry_points_egl_ext.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300BC1DE39E7500D2C405 /* entry_points_egl_ext.h */; };
-                5CB304981DE4157B00D2C405 /* entry_points_egl.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300BE1DE39E7500D2C405 /* entry_points_egl.h */; };
-                5CB3049A1DE4157B00D2C405 /* entry_points_gles_2_0_ext.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300C01DE39E7500D2C405 /* entry_points_gles_2_0_ext.h */; };
-                5CB3049C1DE4157B00D2C405 /* entry_points_gles_2_0.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300C21DE39E7500D2C405 /* entry_points_gles_2_0.h */; };
-                5CB3049E1DE4157B00D2C405 /* entry_points_gles_3_0.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300C41DE39E7500D2C405 /* entry_points_gles_3_0.h */; };
-                5CB304A01DE4157B00D2C405 /* entry_points_gles_3_1.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300C61DE39E7500D2C405 /* entry_points_gles_3_1.h */; };
</del><ins>+                5CB304961DE4157B00D2C405 /* entry_points_egl_ext.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300BC1DE39E7500D2C405 /* entry_points_egl_ext.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5CB304981DE4157B00D2C405 /* entry_points_egl.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300BE1DE39E7500D2C405 /* entry_points_egl.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5CB3049A1DE4157B00D2C405 /* entry_points_gles_2_0_ext.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300C01DE39E7500D2C405 /* entry_points_gles_2_0_ext.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5CB3049C1DE4157B00D2C405 /* entry_points_gles_2_0.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300C21DE39E7500D2C405 /* entry_points_gles_2_0.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5CB3049E1DE4157B00D2C405 /* entry_points_gles_3_0.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300C41DE39E7500D2C405 /* entry_points_gles_3_0.h */; settings = {ATTRIBUTES = (Public, ); }; };
+                5CB304A01DE4157B00D2C405 /* entry_points_gles_3_1.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300C61DE39E7500D2C405 /* entry_points_gles_3_1.h */; settings = {ATTRIBUTES = (Public, ); }; };
</ins><span class="cx">                 5CB304A21DE4157B00D2C405 /* global_state.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300C81DE39E7500D2C405 /* global_state.h */; };
</span><span class="cx">                 5CB304A41DE4157B00D2C405 /* resource.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300CC1DE39E7500D2C405 /* resource.h */; };
</span><span class="cx">                 5CB304A61DE4157E00D2C405 /* resource.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB300B81DE39E6300D2C405 /* resource.h */; };
</span><span class="lines">@@ -333,6 +351,7 @@
</span><span class="cx">                 5CB305011DE4164800D2C405 /* TransformFeedbackImpl_mock.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB304D71DE4164800D2C405 /* TransformFeedbackImpl_mock.h */; };
</span><span class="cx">                 5CB305021DE4164800D2C405 /* TransformFeedbackImpl.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB304D81DE4164800D2C405 /* TransformFeedbackImpl.h */; };
</span><span class="cx">                 5CB305031DE4164800D2C405 /* VertexArrayImpl.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB304D91DE4164800D2C405 /* VertexArrayImpl.h */; };
</span><ins>+                5CB5E1A71DFB8AF600F90FC9 /* libEGL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CB300B51DE39E6300D2C405 /* libEGL.cpp */; };
</ins><span class="cx">                 5CC7D452191024E4000B8C1F /* LoopInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CC7D44B191024E3000B8C1F /* LoopInfo.cpp */; };
</span><span class="cx">                 5CC7D453191024E4000B8C1F /* LoopInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CC7D44C191024E4000B8C1F /* LoopInfo.h */; };
</span><span class="cx">                 5CC7D457191024E4000B8C1F /* ValidateOutputs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CC7D450191024E4000B8C1F /* ValidateOutputs.cpp */; };
</span><span class="lines">@@ -530,6 +549,17 @@
</span><span class="cx">                 31012E1118B97B9B0039062F /* VersionGLSL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VersionGLSL.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 312BDB0915FEC91E0097EBC7 /* ANGLE.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = ANGLE.plist; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 312BDB0A15FECA3A0097EBC7 /* ANGLE.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ANGLE.txt; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><ins>+                5C1BAA961DFB60FF002906BB /* gl3.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = gl3.h; path = include/GLES3/gl3.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                5C1BAA971DFB60FF002906BB /* gl3platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = gl3platform.h; path = include/GLES3/gl3platform.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                5C1BAA981DFB60FF002906BB /* gl31.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = gl31.h; path = include/GLES3/gl31.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                5C1BAA991DFB60FF002906BB /* gl32.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = gl32.h; path = include/GLES3/gl32.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                5C1BAA9E1DFB610E002906BB /* gl2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = gl2.h; path = include/GLES2/gl2.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                5C1BAA9F1DFB610E002906BB /* gl2ext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = gl2ext.h; path = include/GLES2/gl2ext.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                5C1BAAA01DFB610E002906BB /* gl2platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = gl2platform.h; path = include/GLES2/gl2platform.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                5C1BAAA61DFB6124002906BB /* egl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = egl.h; path = include/EGL/egl.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                5C1BAAA71DFB6124002906BB /* eglext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = eglext.h; path = include/EGL/eglext.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                5C1BAAA81DFB6124002906BB /* eglplatform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = eglplatform.h; path = include/EGL/eglplatform.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                5C1BAAAE1DFB6A12002906BB /* export.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = export.h; path = include/export.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</ins><span class="cx">                 5C1DBBE51B04075B00235552 /* ShaderVars.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ShaderVars.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 5C1DBBE71B0436EC00235552 /* angleutils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = angleutils.cpp; path = src/common/angleutils.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 5C1DBBE81B0436EC00235552 /* MemoryBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = MemoryBuffer.cpp; path = src/common/MemoryBuffer.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -1092,6 +1122,37 @@
</span><span class="cx">                         name = misc;
</span><span class="cx">                         sourceTree = &quot;&lt;group&gt;&quot;;
</span><span class="cx">                 };
</span><ins>+                5C1BAA931DFB60E2002906BB /* EGL */ = {
+                        isa = PBXGroup;
+                        children = (
+                                5C1BAAA61DFB6124002906BB /* egl.h */,
+                                5C1BAAA71DFB6124002906BB /* eglext.h */,
+                                5C1BAAA81DFB6124002906BB /* eglplatform.h */,
+                        );
+                        name = EGL;
+                        sourceTree = &quot;&lt;group&gt;&quot;;
+                };
+                5C1BAA941DFB60EA002906BB /* GLES2 */ = {
+                        isa = PBXGroup;
+                        children = (
+                                5C1BAA9E1DFB610E002906BB /* gl2.h */,
+                                5C1BAA9F1DFB610E002906BB /* gl2ext.h */,
+                                5C1BAAA01DFB610E002906BB /* gl2platform.h */,
+                        );
+                        name = GLES2;
+                        sourceTree = &quot;&lt;group&gt;&quot;;
+                };
+                5C1BAA951DFB60EF002906BB /* GLES3 */ = {
+                        isa = PBXGroup;
+                        children = (
+                                5C1BAA961DFB60FF002906BB /* gl3.h */,
+                                5C1BAA971DFB60FF002906BB /* gl3platform.h */,
+                                5C1BAA981DFB60FF002906BB /* gl31.h */,
+                                5C1BAA991DFB60FF002906BB /* gl32.h */,
+                        );
+                        name = GLES3;
+                        sourceTree = &quot;&lt;group&gt;&quot;;
+                };
</ins><span class="cx">                 5C1DBC471B0438B700235552 /* libANGLE */ = {
</span><span class="cx">                         isa = PBXGroup;
</span><span class="cx">                         children = (
</span><span class="lines">@@ -1433,6 +1494,10 @@
</span><span class="cx">                 A29B15E916978B7D00111D97 /* include */ = {
</span><span class="cx">                         isa = PBXGroup;
</span><span class="cx">                         children = (
</span><ins>+                                5C1BAAAE1DFB6A12002906BB /* export.h */,
+                                5C1BAA951DFB60EF002906BB /* GLES3 */,
+                                5C1BAA941DFB60EA002906BB /* GLES2 */,
+                                5C1BAA931DFB60E2002906BB /* EGL */,
</ins><span class="cx">                                 FB39D2BD1200F3E600088E69 /* GLSLANG */,
</span><span class="cx">                                 A264F8CB169762AA006FAA5A /* KHR */,
</span><span class="cx">                         );
</span><span class="lines">@@ -1531,11 +1596,14 @@
</span><span class="cx">                         buildActionMask = 2147483647;
</span><span class="cx">                         files = (
</span><span class="cx">                                 5C315D131CC5B6DA00776697 /* ValidateMaxParameters.h in Headers */,
</span><ins>+                                5C1BAAAB1DFB6124002906BB /* eglext.h in Headers */,
</ins><span class="cx">                                 5CB3012A1DE39F1A00D2C405 /* functionsgl_typedefs.h in Headers */,
</span><ins>+                                5C1BAA9C1DFB60FF002906BB /* gl31.h in Headers */,
</ins><span class="cx">                                 5C315D071CC5B6DA00776697 /* RemoveDynamicIndexing.h in Headers */,
</span><span class="cx">                                 31012E3C18B97B9B0039062F /* InitializeParseContext.h in Headers */,
</span><span class="cx">                                 A08C3CDD16D6CB61003F0B83 /* ArrayBoundsClamper.h in Headers */,
</span><span class="cx">                                 5CB3011D1DE39F1A00D2C405 /* ContextGL.h in Headers */,
</span><ins>+                                5C1BAA9B1DFB60FF002906BB /* gl3platform.h in Headers */,
</ins><span class="cx">                                 5CB304F21DE4164800D2C405 /* ProgramImpl_mock.h in Headers */,
</span><span class="cx">                                 5CCD81731DBFE999006066B8 /* Debug.h in Headers */,
</span><span class="cx">                                 5CC7D46F19102621000B8C1F /* debug.h in Headers */,
</span><span class="lines">@@ -1592,6 +1660,7 @@
</span><span class="cx">                                 5C1DBF3E1B0438D300235552 /* validationES3.h in Headers */,
</span><span class="cx">                                 5CB301261DE39F1A00D2C405 /* formatutilsgl.h in Headers */,
</span><span class="cx">                                 5C1DBC2F1B04375F00235552 /* Intermediate.h in Headers */,
</span><ins>+                                5C1BAAAA1DFB6124002906BB /* egl.h in Headers */,
</ins><span class="cx">                                 5CB3013A1DE39F1A00D2C405 /* SamplerGL.h in Headers */,
</span><span class="cx">                                 5CB304F81DE4164800D2C405 /* renderer_utils.h in Headers */,
</span><span class="cx">                                 31012E5F18B97B9B0039062F /* RewriteElseBlocks.h in Headers */,
</span><span class="lines">@@ -1608,6 +1677,8 @@
</span><span class="cx">                                 5C315D051CC5B6DA00776697 /* RecordConstantPrecision.h in Headers */,
</span><span class="cx">                                 5C1DBDFA1B0438D300235552 /* histogram_macros.h in Headers */,
</span><span class="cx">                                 5C1DBDD71B0438D300235552 /* BinaryStream.h in Headers */,
</span><ins>+                                5C1BAAAF1DFB6A12002906BB /* export.h in Headers */,
+                                5C1BAA9A1DFB60FF002906BB /* gl3.h in Headers */,
</ins><span class="cx">                                 5CCD81AB1DBFEA5C006066B8 /* AddAndTrueToLoopCondition.h in Headers */,
</span><span class="cx">                                 31012E3A18B97B9B0039062F /* InitializeGlobals.h in Headers */,
</span><span class="cx">                                 5C1DBC291B04375F00235552 /* BuiltInFunctionEmulatorGLSL.h in Headers */,
</span><span class="lines">@@ -1627,7 +1698,9 @@
</span><span class="cx">                                 5C1DBDF91B0438D300235552 /* HandleAllocator.h in Headers */,
</span><span class="cx">                                 5CB304FA1DE4164800D2C405 /* ShaderImpl.h in Headers */,
</span><span class="cx">                                 5C1DBDD91B0438D300235552 /* Buffer.h in Headers */,
</span><ins>+                                5C1BAA9D1DFB60FF002906BB /* gl32.h in Headers */,
</ins><span class="cx">                                 5CCD81BC1DBFEA5C006066B8 /* SimplifyLoopConditions.h in Headers */,
</span><ins>+                                5C1BAAA41DFB610E002906BB /* gl2platform.h in Headers */,
</ins><span class="cx">                                 31012E2718B97B9B0039062F /* Diagnostics.h in Headers */,
</span><span class="cx">                                 5CB305031DE4164800D2C405 /* VertexArrayImpl.h in Headers */,
</span><span class="cx">                                 5C1DBC361B04375F00235552 /* PruneEmptyDeclarations.h in Headers */,
</span><span class="lines">@@ -1652,6 +1725,7 @@
</span><span class="cx">                                 5CB304A21DE4157B00D2C405 /* global_state.h in Headers */,
</span><span class="cx">                                 31012E6518B97B9B0039062F /* SymbolTable.h in Headers */,
</span><span class="cx">                                 5C1DBC321B04375F00235552 /* length_limits.h in Headers */,
</span><ins>+                                5C1BAAA31DFB610E002906BB /* gl2ext.h in Headers */,
</ins><span class="cx">                                 5CC7D458191024E4000B8C1F /* ValidateOutputs.h in Headers */,
</span><span class="cx">                                 31012E7418B97B9B0039062F /* UnfoldShortCircuitAST.h in Headers */,
</span><span class="cx">                                 5C1DBDF41B0438D300235552 /* Framebuffer.h in Headers */,
</span><span class="lines">@@ -1691,6 +1765,7 @@
</span><span class="cx">                                 5C1DBBF51B0436EC00235552 /* platform.h in Headers */,
</span><span class="cx">                                 5C315D0F1CC5B6DA00776697 /* UnfoldShortCircuitToIf.h in Headers */,
</span><span class="cx">                                 5CC7D47A19102621000B8C1F /* utilities.h in Headers */,
</span><ins>+                                5C1BAAA21DFB610E002906BB /* gl2.h in Headers */,
</ins><span class="cx">                                 5CB304F51DE4164800D2C405 /* RenderbufferImpl_mock.h in Headers */,
</span><span class="cx">                                 5CB301511DE39F4700D2C405 /* PbufferSurfaceCGL.h in Headers */,
</span><span class="cx">                                 31012E3918B97B9B0039062F /* InitializeDll.h in Headers */,
</span><span class="lines">@@ -1755,6 +1830,7 @@
</span><span class="cx">                                 5CCD818D1DBFEA10006066B8 /* BitSetIterator.h in Headers */,
</span><span class="cx">                                 5CB301531DE39F4700D2C405 /* WindowSurfaceCGL.h in Headers */,
</span><span class="cx">                                 5C1DBC401B04375F00235552 /* SeparateDeclarations.h in Headers */,
</span><ins>+                                5C1BAAAC1DFB6124002906BB /* eglplatform.h in Headers */,
</ins><span class="cx">                                 5C315CFF1CC5B6DA00776697 /* Cache.h in Headers */,
</span><span class="cx">                                 5C1DBDD61B0438D300235552 /* AttributeMap.h in Headers */,
</span><span class="cx">                                 5CCD81841DBFE999006066B8 /* Version.h in Headers */,
</span><span class="lines">@@ -1842,6 +1918,7 @@
</span><span class="cx">                                 A264F8AC16974DED006FAA5A /* DiagnosticsBase.cpp in Sources */,
</span><span class="cx">                                 5C315D101CC5B6DA00776697 /* ValidateGlobalInitializer.cpp in Sources */,
</span><span class="cx">                                 5C1DBF291B0438D300235552 /* Shader.cpp in Sources */,
</span><ins>+                                5CB5E1A71DFB8AF600F90FC9 /* libEGL.cpp in Sources */,
</ins><span class="cx">                                 31012E1518B97B9B0039062F /* CodeGen.cpp in Sources */,
</span><span class="cx">                                 5C1DBDF81B0438D300235552 /* HandleAllocator.cpp in Sources */,
</span><span class="cx">                                 31012E3F18B97B9B0039062F /* Intermediate.cpp in Sources */,
</span><span class="lines">@@ -1901,6 +1978,8 @@
</span><span class="cx">                                 5C1DBC261B04375F00235552 /* blocklayoutHLSL.cpp in Sources */,
</span><span class="cx">                                 5CB301161DE39F1A00D2C405 /* BlitGL.cpp in Sources */,
</span><span class="cx">                                 5CB301231DE39F1A00D2C405 /* FenceSyncGL.cpp in Sources */,
</span><ins>+                                5C1BAAB01DFB6EC6002906BB /* entry_points_gles_3_0.cpp in Sources */,
+                                5C1BAAB41DFB6F4F002906BB /* entry_points_gles_2_0_ext.cpp in Sources */,
</ins><span class="cx">                                 5C315D081CC5B6DA00776697 /* RemovePow.cpp in Sources */,
</span><span class="cx">                                 5CB301201DE39F1A00D2C405 /* FeatureSupportGL.md in Sources */,
</span><span class="cx">                                 A264F8B416974DED006FAA5A /* Input.cpp in Sources */,
</span><span class="lines">@@ -1913,6 +1992,7 @@
</span><span class="cx">                                 31012E6218B97B9B0039062F /* ShaderLang.cpp in Sources */,
</span><span class="cx">                                 5C1DBF2E1B0438D300235552 /* Surface.cpp in Sources */,
</span><span class="cx">                                 5C1DBF3B1B0438D300235552 /* validationES2.cpp in Sources */,
</span><ins>+                                5C1BAAB31DFB6F4B002906BB /* entry_points_gles_2_0.cpp in Sources */,
</ins><span class="cx">                                 5CB3013D1DE39F1A00D2C405 /* StateManagerGL.cpp in Sources */,
</span><span class="cx">                                 5CCD81801DBFE999006066B8 /* Stream.cpp in Sources */,
</span><span class="cx">                                 31012E3818B97B9B0039062F /* InitializeDll.cpp in Sources */,
</span><span class="lines">@@ -1939,6 +2019,8 @@
</span><span class="cx">                                 31012E5618B97B9B0039062F /* PoolAlloc.cpp in Sources */,
</span><span class="cx">                                 5C1DBC351B04375F00235552 /* PruneEmptyDeclarations.cpp in Sources */,
</span><span class="cx">                                 5C1DBDF11B0438D300235552 /* formatutils.cpp in Sources */,
</span><ins>+                                5C1BAAB51DFB6F54002906BB /* entry_points_egl.cpp in Sources */,
+                                5C1BAAB61DFB6F58002906BB /* entry_points_egl_ext.cpp in Sources */,
</ins><span class="cx">                                 5CB3013B1DE39F1A00D2C405 /* ShaderGL.cpp in Sources */,
</span><span class="cx">                                 31012E7918B97B9B0039062F /* ValidateLimitations.cpp in Sources */,
</span><span class="cx">                                 5CB301411DE39F1A00D2C405 /* TextureGL.cpp in Sources */,
</span><span class="lines">@@ -1945,6 +2027,7 @@
</span><span class="cx">                                 31012E7718B97B9B0039062F /* util.cpp in Sources */,
</span><span class="cx">                                 5CB304FC1DE4164800D2C405 /* SurfaceImpl.cpp in Sources */,
</span><span class="cx">                                 5C1DBDE21B0438D300235552 /* Context.cpp in Sources */,
</span><ins>+                                5C1BAAB21DFB6F45002906BB /* entry_points_gles_3_1.cpp in Sources */,
</ins><span class="cx">                                 5CB304FF1DE4164800D2C405 /* TextureImpl.cpp in Sources */,
</span><span class="cx">                                 31012E5118B97B9B0039062F /* OutputHLSL.cpp in Sources */,
</span><span class="cx">                                 5CCD81AC1DBFEA5C006066B8 /* AddDefaultReturnStatements.cpp in Sources */,
</span><span class="lines">@@ -1995,6 +2078,7 @@
</span><span class="cx">                                 5C1DBC281B04375F00235552 /* BuiltInFunctionEmulatorGLSL.cpp in Sources */,
</span><span class="cx">                                 5CCD81B01DBFEA5C006066B8 /* ConstantUnion.cpp in Sources */,
</span><span class="cx">                                 5C1DBDD51B0438D300235552 /* AttributeMap.cpp in Sources */,
</span><ins>+                                5C1BAAB11DFB6F33002906BB /* global_state.cpp in Sources */,
</ins><span class="cx">                                 31012E6A18B97B9B0039062F /* TranslatorESSL.cpp in Sources */,
</span><span class="cx">                                 31012E4F18B97B9B0039062F /* OutputGLSLBase.cpp in Sources */,
</span><span class="cx">                                 5C1DBC3B1B04375F00235552 /* ScalarizeVecAndMatConstructorArgs.cpp in Sources */,
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLECMakeListstxt"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/CMakeLists.txt (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/CMakeLists.txt        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/CMakeLists.txt        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -1,4 +1,5 @@
</span><span class="cx"> include_directories(
</span><ins>+    .
</ins><span class="cx">     src
</span><span class="cx">     src/common/third_party/numerics
</span><span class="cx">     include
</span><span class="lines">@@ -61,7 +62,6 @@
</span><span class="cx">     src/compiler/translator/BreakVariableAliasingInInnerLoops.cpp
</span><span class="cx">     src/compiler/translator/BuiltInFunctionEmulator.cpp
</span><span class="cx">     src/compiler/translator/BuiltInFunctionEmulatorGLSL.cpp
</span><del>-    src/compiler/translator/BuiltInFunctionEmulatorHLSL.cpp
</del><span class="cx">     src/compiler/translator/Cache.cpp
</span><span class="cx">     src/compiler/translator/CallDAG.cpp
</span><span class="cx">     src/compiler/translator/CodeGen.cpp
</span><span class="lines">@@ -93,7 +93,6 @@
</span><span class="cx">     src/compiler/translator/OutputESSL.cpp
</span><span class="cx">     src/compiler/translator/OutputGLSL.cpp
</span><span class="cx">     src/compiler/translator/OutputGLSLBase.cpp
</span><del>-    src/compiler/translator/OutputHLSL.cpp
</del><span class="cx">     src/compiler/translator/ParseContext.cpp
</span><span class="cx">     src/compiler/translator/PoolAlloc.cpp
</span><span class="cx">     src/compiler/translator/PruneEmptyDeclarations.cpp
</span><span class="lines">@@ -111,7 +110,6 @@
</span><span class="cx">     src/compiler/translator/SearchSymbol.cpp
</span><span class="cx">     src/compiler/translator/SearchSymbol.cpp
</span><span class="cx">     src/compiler/translator/SearchSymbol.cpp
</span><del>-    src/compiler/translator/SeparateArrayInitialization.cpp
</del><span class="cx">     src/compiler/translator/SeparateDeclarations.cpp
</span><span class="cx">     src/compiler/translator/SeparateExpressionsReturningArrays.cpp
</span><span class="cx">     src/compiler/translator/ShaderLang.cpp
</span><span class="lines">@@ -118,19 +116,14 @@
</span><span class="cx">     src/compiler/translator/ShaderVars.cpp
</span><span class="cx">     src/compiler/translator/SimplifyLoopConditions.cpp
</span><span class="cx">     src/compiler/translator/SplitSequenceOperator.cpp
</span><del>-    src/compiler/translator/StructureHLSL.cpp
</del><span class="cx">     src/compiler/translator/SymbolTable.cpp
</span><del>-    src/compiler/translator/TextureFunctionHLSL.cpp
</del><span class="cx">     src/compiler/translator/TranslatorESSL.cpp
</span><span class="cx">     src/compiler/translator/TranslatorGLSL.cpp
</span><del>-    src/compiler/translator/TranslatorHLSL.cpp
</del><span class="cx">     src/compiler/translator/Types.cpp
</span><span class="cx">     src/compiler/translator/UnfoldShortCircuitAST.cpp
</span><span class="cx">     src/compiler/translator/UnfoldShortCircuitToIf.cpp
</span><del>-    src/compiler/translator/UniformHLSL.cpp
</del><span class="cx">     src/compiler/translator/UseInterfaceBlockFields.cpp
</span><span class="cx">     src/compiler/translator/util.cpp
</span><del>-    src/compiler/translator/UtilsHLSL.cpp
</del><span class="cx">     src/compiler/translator/ValidateGlobalInitializer.cpp
</span><span class="cx">     src/compiler/translator/ValidateLimitations.cpp
</span><span class="cx">     src/compiler/translator/ValidateMaxParameters.cpp
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/ChangeLog (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/ChangeLog        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/ChangeLog        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -1,3 +1,54 @@
</span><ins>+2016-12-14  Alex Christensen  &lt;achristensen@webkit.org&gt;
+
+        Progress towards using ANGLE to do WebGL rendering
+        https://bugs.webkit.org/show_bug.cgi?id=165864
+
+        Reviewed by Dean Jackson.
+
+        * ANGLE.xcodeproj/project.pbxproj:
+        Compile more files, and add some more &quot;public&quot; headers.
+        ANGLE is not a public framework, so these headers just go in 
+        WebKitBuild/Release/usr/local/include/ANGLE to be included when compiling WebCore.
+        * ANGLE/egl.h: Added.
+        * ANGLE/eglext.h: Added.
+        * ANGLE/eglplatform.h: Added.
+        * ANGLE/entry_points_gles_2_0.h: Added.
+        * ANGLE/entry_points_gles_2_0_ext.h: Added.
+        * ANGLE/entry_points_gles_3_0.h: Added.
+        * ANGLE/export.h: Added.
+        * ANGLE/gl2.h: Added.
+        * ANGLE/gl2ext.h: Added.
+        * ANGLE/gl2platform.h: Added.
+        * ANGLE/gl3.h: Added.
+        * ANGLE/gl31.h: Added.
+        * ANGLE/gl3platform.h: Added.
+        * ANGLE/khrplatform.h: Added.
+        Add more forwarding headers.  There are already a few, but we need more.
+        * CMakeLists.txt:
+        * PlatformMac.cmake:
+        Make the frameworks linked to by ANGLE be private so frameworks that link with 
+        ANGLE don't automatically link with them. This allows me to switch ANGLE from a 
+        static library to a dynamic library to make sure WebCore isn't directly using OpenGL.
+        * PlatformWin.cmake:
+        Move HLSL-specific files to only be built on Windows.
+        * 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.h:
+        * src/libGLESv2/entry_points_gles_2_0_ext.h:
+        * src/libGLESv2/entry_points_gles_3_0.h:
+        * src/libGLESv2/entry_points_gles_3_1.h:
+        Include ANGLE headers as #include &lt;ANGLE/*&gt; instead of #include &lt;KHR/*&gt; or #include &lt;GLES/*&gt;
+        This is needed to distinguish the ANGLE headers from any system OpenGL/OpenGLES headers.
+        We will eventually only include ANGLE's entry_points_*.h directly from WebCore.
+
</ins><span class="cx"> 2016-12-07  Alex Christensen  &lt;achristensen@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         Build more of ANGLE on Mac and Windows
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEPlatformMaccmake"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/PlatformMac.cmake (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/PlatformMac.cmake        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/PlatformMac.cmake        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -8,7 +8,7 @@
</span><span class="cx"> find_library(OPENGL_LIBRARY OpenGL)
</span><span class="cx"> find_library(QUARTZCORE_LIBRARY QuartzCore)
</span><span class="cx"> list(APPEND ANGLEGLESv2_LIBRARIES
</span><del>-    ${COREGRAPHICS_LIBRARY}
-    ${OPENGL_LIBRARY}
-    ${QUARTZCORE_LIBRARY}
</del><ins>+    PRIVATE ${COREGRAPHICS_LIBRARY}
+    PRIVATE ${OPENGL_LIBRARY}
+    PRIVATE ${QUARTZCORE_LIBRARY}
</ins><span class="cx"> )
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEPlatformWincmake"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/PlatformWin.cmake (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/PlatformWin.cmake        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/PlatformWin.cmake        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -39,6 +39,14 @@
</span><span class="cx"> 
</span><span class="cx"> list(APPEND ANGLE_SOURCES
</span><span class="cx">     src/compiler/translator/ASTMetadataHLSL.cpp
</span><ins>+    src/compiler/translator/BuiltInFunctionEmulatorHLSL.cpp
+    src/compiler/translator/OutputHLSL.cpp
+    src/compiler/translator/SeparateArrayInitialization.cpp
+    src/compiler/translator/StructureHLSL.cpp
+    src/compiler/translator/TextureFunctionHLSL.cpp
+    src/compiler/translator/TranslatorHLSL.cpp
+    src/compiler/translator/UniformHLSL.cpp
+    src/compiler/translator/UtilsHLSL.cpp
</ins><span class="cx">     src/compiler/translator/blocklayoutHLSL.cpp
</span><span class="cx">     src/libANGLE/renderer/d3d/BufferD3D.cpp
</span><span class="cx">     src/libANGLE/renderer/d3d/CompilerD3D.cpp
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEincludeEGLeglh"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/include/EGL/egl.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/include/EGL/egl.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/include/EGL/egl.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -59,8 +59,8 @@
</span><span class="cx"> #define EGL_VERSION_1_0 1
</span><span class="cx"> typedef unsigned int EGLBoolean;
</span><span class="cx"> typedef void *EGLDisplay;
</span><del>-#include &lt;KHR/khrplatform.h&gt;
-#include &lt;EGL/eglplatform.h&gt;
</del><ins>+#include &lt;ANGLE/khrplatform.h&gt;
+#include &lt;ANGLE/eglplatform.h&gt;
</ins><span class="cx"> typedef void *EGLConfig;
</span><span class="cx"> typedef void *EGLSurface;
</span><span class="cx"> typedef void *EGLContext;
</span><span class="lines">@@ -313,7 +313,7 @@
</span><span class="cx"> #endif /* EGL_VERSION_1_5 */
</span><span class="cx"> 
</span><span class="cx"> #if EGL_SOFT_LINKING
</span><del>-#include &lt;EGL/eglsoftlinking.h&gt;
</del><ins>+#include &lt;ANGLE/eglsoftlinking.h&gt;
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #ifdef __cplusplus
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEincludeEGLeglplatformh"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/include/EGL/eglplatform.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/include/EGL/eglplatform.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/include/EGL/eglplatform.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -34,7 +34,7 @@
</span><span class="cx">  * by filing a bug against product &quot;EGL&quot; component &quot;Registry&quot;.
</span><span class="cx">  */
</span><span class="cx"> 
</span><del>-#include &lt;KHR/khrplatform.h&gt;
</del><ins>+#include &lt;ANGLE/khrplatform.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> /* Macros used in EGL function prototype declarations.
</span><span class="cx">  *
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEincludeGLES2gl2h"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/include/GLES2/gl2.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/include/GLES2/gl2.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/include/GLES2/gl2.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -56,7 +56,7 @@
</span><span class="cx"> 
</span><span class="cx"> #ifndef GL_ES_VERSION_2_0
</span><span class="cx"> #define GL_ES_VERSION_2_0 1
</span><del>-#include &lt;KHR/khrplatform.h&gt;
</del><ins>+#include &lt;ANGLE/khrplatform.h&gt;
</ins><span class="cx"> typedef khronos_int8_t GLbyte;
</span><span class="cx"> typedef khronos_float_t GLclampf;
</span><span class="cx"> typedef khronos_int32_t GLfixed;
</span><span class="lines">@@ -522,7 +522,7 @@
</span><span class="cx"> typedef void (GL_APIENTRYP PFNGLVIEWPORTPROC) (GLint x, GLint y, GLsizei width, GLsizei height);
</span><span class="cx"> 
</span><span class="cx"> #if defined(_MSC_VER) &amp;&amp; !defined(ANGLE_WEBKIT_WIN)
</span><del>-#include &lt;GLES2/gl2softlinking.h&gt;
</del><ins>+#include &lt;ANGLE/gl2softlinking.h&gt;
</ins><span class="cx"> #else
</span><span class="cx"> 
</span><span class="cx"> #ifdef GL_GLEXT_PROTOTYPES
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEincludeGLES2gl2platformh"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/include/GLES2/gl2platform.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/include/GLES2/gl2platform.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/include/GLES2/gl2platform.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -17,7 +17,7 @@
</span><span class="cx">  * by filing a bug against product &quot;OpenGL-ES&quot; component &quot;Registry&quot;.
</span><span class="cx">  */
</span><span class="cx"> 
</span><del>-#include &lt;KHR/khrplatform.h&gt;
</del><ins>+#include &lt;ANGLE/khrplatform.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> #ifndef GL_APICALL
</span><span class="cx"> #define GL_APICALL  KHRONOS_APICALL
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEincludeGLES3gl3h"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/include/GLES3/gl3.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/include/GLES3/gl3.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/include/GLES3/gl3.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -36,7 +36,7 @@
</span><span class="cx"> ** Khronos $Revision: 31811 $ on $Date: 2015-08-10 00:01:11 -0700 (Mon, 10 Aug 2015) $
</span><span class="cx"> */
</span><span class="cx"> 
</span><del>-#include &lt;GLES3/gl3platform.h&gt;
</del><ins>+#include &lt;ANGLE/gl3platform.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> #ifndef GL_APIENTRYP
</span><span class="cx"> #define GL_APIENTRYP GL_APIENTRY*
</span><span class="lines">@@ -56,7 +56,7 @@
</span><span class="cx"> 
</span><span class="cx"> #ifndef GL_ES_VERSION_2_0
</span><span class="cx"> #define GL_ES_VERSION_2_0 1
</span><del>-#include &lt;KHR/khrplatform.h&gt;
</del><ins>+#include &lt;ANGLE/khrplatform.h&gt;
</ins><span class="cx"> typedef khronos_int8_t GLbyte;
</span><span class="cx"> typedef khronos_float_t GLclampf;
</span><span class="cx"> typedef khronos_int32_t GLfixed;
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEincludeGLES3gl31h"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/include/GLES3/gl31.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/include/GLES3/gl31.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/include/GLES3/gl31.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -36,7 +36,7 @@
</span><span class="cx"> ** Khronos $Revision$ on $Date$
</span><span class="cx"> */
</span><span class="cx"> 
</span><del>-#include &lt;GLES3/gl3platform.h&gt;
</del><ins>+#include &lt;ANGLE/gl3platform.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> #ifndef GL_APIENTRYP
</span><span class="cx"> #define GL_APIENTRYP GL_APIENTRY*
</span><span class="lines">@@ -56,7 +56,7 @@
</span><span class="cx"> 
</span><span class="cx"> #ifndef GL_ES_VERSION_2_0
</span><span class="cx"> #define GL_ES_VERSION_2_0 1
</span><del>-#include &lt;KHR/khrplatform.h&gt;
</del><ins>+#include &lt;ANGLE/khrplatform.h&gt;
</ins><span class="cx"> typedef khronos_int8_t GLbyte;
</span><span class="cx"> typedef khronos_float_t GLclampf;
</span><span class="cx"> typedef khronos_int32_t GLfixed;
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEincludeGLES3gl32h"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/include/GLES3/gl32.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/include/GLES3/gl32.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/include/GLES3/gl32.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -36,7 +36,7 @@
</span><span class="cx"> ** Khronos $Revision$ on $Date$
</span><span class="cx"> */
</span><span class="cx"> 
</span><del>-#include &lt;GLES3/gl3platform.h&gt;
</del><ins>+#include &lt;ANGLE/gl3platform.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> #ifndef GL_APIENTRYP
</span><span class="cx"> #define GL_APIENTRYP GL_APIENTRY*
</span><span class="lines">@@ -56,7 +56,7 @@
</span><span class="cx"> 
</span><span class="cx"> #ifndef GL_ES_VERSION_2_0
</span><span class="cx"> #define GL_ES_VERSION_2_0 1
</span><del>-#include &lt;KHR/khrplatform.h&gt;
</del><ins>+#include &lt;ANGLE/khrplatform.h&gt;
</ins><span class="cx"> typedef khronos_int8_t GLbyte;
</span><span class="cx"> typedef khronos_float_t GLclampf;
</span><span class="cx"> typedef khronos_int32_t GLfixed;
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEincludeGLES3gl3platformh"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/include/GLES3/gl3platform.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/include/GLES3/gl3platform.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/include/GLES3/gl3platform.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -17,7 +17,7 @@
</span><span class="cx">  * by filing a bug against product &quot;OpenGL-ES&quot; component &quot;Registry&quot;.
</span><span class="cx">  */
</span><span class="cx"> 
</span><del>-#include &lt;KHR/khrplatform.h&gt;
</del><ins>+#include &lt;ANGLE/khrplatform.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> #ifndef GL_APICALL
</span><span class="cx"> #define GL_APICALL  KHRONOS_APICALL
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEsrclibGLESv2entry_points_eglh"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -9,8 +9,8 @@
</span><span class="cx"> #ifndef LIBGLESV2_ENTRYPOINTSEGL_H_
</span><span class="cx"> #define LIBGLESV2_ENTRYPOINTSEGL_H_
</span><span class="cx"> 
</span><del>-#include &lt;EGL/egl.h&gt;
-#include &lt;export.h&gt;
</del><ins>+#include &lt;ANGLE/egl.h&gt;
+#include &lt;ANGLE/export.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> namespace egl
</span><span class="cx"> {
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEsrclibGLESv2entry_points_egl_exth"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl_ext.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl_ext.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl_ext.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -9,9 +9,9 @@
</span><span class="cx"> #ifndef LIBGLESV2_ENTRYPOINTSEGLEXT_H_
</span><span class="cx"> #define LIBGLESV2_ENTRYPOINTSEGLEXT_H_
</span><span class="cx"> 
</span><del>-#include &lt;EGL/egl.h&gt;
-#include &lt;EGL/eglext.h&gt;
-#include &lt;export.h&gt;
</del><ins>+#include &lt;ANGLE/egl.h&gt;
+#include &lt;ANGLE/eglext.h&gt;
+#include &lt;ANGLE/export.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> namespace egl
</span><span class="cx"> {
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEsrclibGLESv2entry_points_gles_2_0h"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_2_0.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_2_0.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_2_0.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -9,8 +9,8 @@
</span><span class="cx"> #ifndef LIBGLESV2_ENTRYPOINTGLES20_H_
</span><span class="cx"> #define LIBGLESV2_ENTRYPOINTGLES20_H_
</span><span class="cx"> 
</span><del>-#include &lt;GLES2/gl2.h&gt;
-#include &lt;export.h&gt;
</del><ins>+#include &lt;ANGLE/gl2.h&gt;
+#include &lt;ANGLE/export.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> namespace gl
</span><span class="cx"> {
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEsrclibGLESv2entry_points_gles_2_0_exth"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_2_0_ext.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_2_0_ext.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_2_0_ext.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -9,9 +9,9 @@
</span><span class="cx"> #ifndef LIBGLESV2_ENTRYPOINTGLES20EXT_H_
</span><span class="cx"> #define LIBGLESV2_ENTRYPOINTGLES20EXT_H_
</span><span class="cx"> 
</span><del>-#include &lt;GLES2/gl2.h&gt;
-#include &lt;GLES2/gl2ext.h&gt;
-#include &lt;export.h&gt;
</del><ins>+#include &lt;ANGLE/gl2.h&gt;
+#include &lt;ANGLE/gl2ext.h&gt;
+#include &lt;ANGLE/export.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> namespace gl
</span><span class="cx"> {
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEsrclibGLESv2entry_points_gles_3_0h"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_0.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_0.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_0.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -9,8 +9,8 @@
</span><span class="cx"> #ifndef LIBGLESV2_ENTRYPOINTGLES30_H_
</span><span class="cx"> #define LIBGLESV2_ENTRYPOINTGLES30_H_
</span><span class="cx"> 
</span><del>-#include &lt;GLES3/gl3.h&gt;
-#include &lt;export.h&gt;
</del><ins>+#include &lt;ANGLE/gl3.h&gt;
+#include &lt;ANGLE/export.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> namespace gl
</span><span class="cx"> {
</span></span></pre></div>
<a id="trunkSourceThirdPartyANGLEsrclibGLESv2entry_points_gles_3_1h"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_1.h (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_1.h        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_gles_3_1.h        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -9,8 +9,8 @@
</span><span class="cx"> #ifndef LIBGLESV2_ENTRYPOINTGLES31_H_
</span><span class="cx"> #define LIBGLESV2_ENTRYPOINTGLES31_H_
</span><span class="cx"> 
</span><del>-#include &lt;GLES3/gl31.h&gt;
-#include &lt;export.h&gt;
</del><ins>+#include &lt;ANGLE/gl31.h&gt;
+#include &lt;ANGLE/export.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> // we include the platform.h header since it undefines the conflicting MemoryBarrier macro
</span><span class="cx"> #include &quot;common/platform.h&quot;
</span></span></pre></div>
<a id="trunkSourceWebCoreCMakeListstxt"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/CMakeLists.txt (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/CMakeLists.txt        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/WebCore/CMakeLists.txt        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -3910,6 +3910,7 @@
</span><span class="cx">         ANGLE_ENABLE_GLSL)
</span><span class="cx"> 
</span><span class="cx">     target_include_directories(ANGLESupport PRIVATE
</span><ins>+        &quot;${THIRDPARTY_DIR}/ANGLE&quot;
</ins><span class="cx">         &quot;${THIRDPARTY_DIR}/ANGLE/include&quot;
</span><span class="cx">         &quot;${THIRDPARTY_DIR}/ANGLE/include/KHR&quot;
</span><span class="cx">         &quot;${THIRDPARTY_DIR}/ANGLE/src&quot;
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/WebCore/ChangeLog        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -1,3 +1,18 @@
</span><ins>+2016-12-14  Alex Christensen  &lt;achristensen@webkit.org&gt;
+
+        Progress towards using ANGLE to do WebGL rendering
+        https://bugs.webkit.org/show_bug.cgi?id=165864
+
+        Reviewed by Dean Jackson.
+
+        No new tests, no change in behavior.
+        Just compile fixes for a configuration that will soon be standard
+        that can be landed now without breaking anything.
+
+        * platform/graphics/PlatformDisplay.cpp:
+        (WebCore::PlatformDisplay::sharedDisplay):
+        Ignore some clang warnings that will cause problems when this is compiled on Mac.
+
</ins><span class="cx"> 2016-12-14  Dean Jackson  &lt;dino@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [iOS] MediaDocuments have controls on the bottom of the page
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsPlatformDisplaycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/PlatformDisplay.cpp (209831 => 209832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/PlatformDisplay.cpp        2016-12-14 21:31:26 UTC (rev 209831)
+++ trunk/Source/WebCore/platform/graphics/PlatformDisplay.cpp        2016-12-14 21:45:28 UTC (rev 209832)
</span><span class="lines">@@ -113,7 +113,10 @@
</span><span class="cx"> PlatformDisplay&amp; PlatformDisplay::sharedDisplay()
</span><span class="cx"> {
</span><span class="cx">     static std::once_flag onceFlag;
</span><ins>+#pragma clang diagnostic push
+#pragma clang diagnostic ignored &quot;-Wexit-time-destructors&quot;
</ins><span class="cx">     static std::unique_ptr&lt;PlatformDisplay&gt; display;
</span><ins>+#pragma clang diagnostic pop
</ins><span class="cx">     std::call_once(onceFlag, []{
</span><span class="cx">         display = createPlatformDisplay();
</span><span class="cx">     });
</span></span></pre>
</div>
</div>

</body>
</html>