Source/ThirdParty/ANGLE:
Fix High Sierra build.

* src/libANGLE/State.cpp:
(gl::State::kBufferSetters):
* src/libANGLE/State.h:
(gl::State::setBufferBinding):
Remove the need for a global constructor.

Source/WebCore:
Try to fix Linux build

* platform/graphics/ANGLEWebKitBridge.h:
Include headers consistently on all platforms.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@245089 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/ThirdParty/ANGLE/ChangeLog b/Source/ThirdParty/ANGLE/ChangeLog
index e99eb42..5471a36 100644
--- a/Source/ThirdParty/ANGLE/ChangeLog
+++ b/Source/ThirdParty/ANGLE/ChangeLog
@@ -1,3 +1,13 @@
+2019-05-08  Alex Christensen  <achristensen@webkit.org>
+
+        Fix High Sierra build.
+
+        * src/libANGLE/State.cpp:
+        (gl::State::kBufferSetters):
+        * src/libANGLE/State.h:
+        (gl::State::setBufferBinding):
+        Remove the need for a global constructor.
+
 2019-05-08  Don Olmstead  <don.olmstead@sony.com>
 
         Update ANGLE
diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/State.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/State.cpp
index e4ed138..9e47bda 100644
--- a/Source/ThirdParty/ANGLE/src/libANGLE/State.cpp
+++ b/Source/ThirdParty/ANGLE/src/libANGLE/State.cpp
@@ -216,20 +216,24 @@
     mDirtyObjects.set(DIRTY_OBJECT_VERTEX_ARRAY);
 }
 
-const angle::PackedEnumMap<BufferBinding, State::BufferBindingSetter> State::kBufferSetters = {{
-    GetBufferBindingSetter<BufferBinding::Array>(),
-    GetBufferBindingSetter<BufferBinding::AtomicCounter>(),
-    GetBufferBindingSetter<BufferBinding::CopyRead>(),
-    GetBufferBindingSetter<BufferBinding::CopyWrite>(),
-    GetBufferBindingSetter<BufferBinding::DispatchIndirect>(),
-    GetBufferBindingSetter<BufferBinding::DrawIndirect>(),
-    GetBufferBindingSetter<BufferBinding::ElementArray>(),
-    GetBufferBindingSetter<BufferBinding::PixelPack>(),
-    GetBufferBindingSetter<BufferBinding::PixelUnpack>(),
-    GetBufferBindingSetter<BufferBinding::ShaderStorage>(),
-    GetBufferBindingSetter<BufferBinding::TransformFeedback>(),
-    GetBufferBindingSetter<BufferBinding::Uniform>(),
-}};
+const angle::PackedEnumMap<BufferBinding, State::BufferBindingSetter>& State::kBufferSetters()
+{
+    static const angle::PackedEnumMap<BufferBinding, State::BufferBindingSetter> setters {{
+        GetBufferBindingSetter<BufferBinding::Array>(),
+        GetBufferBindingSetter<BufferBinding::AtomicCounter>(),
+        GetBufferBindingSetter<BufferBinding::CopyRead>(),
+        GetBufferBindingSetter<BufferBinding::CopyWrite>(),
+        GetBufferBindingSetter<BufferBinding::DispatchIndirect>(),
+        GetBufferBindingSetter<BufferBinding::DrawIndirect>(),
+        GetBufferBindingSetter<BufferBinding::ElementArray>(),
+        GetBufferBindingSetter<BufferBinding::PixelPack>(),
+        GetBufferBindingSetter<BufferBinding::PixelUnpack>(),
+        GetBufferBindingSetter<BufferBinding::ShaderStorage>(),
+        GetBufferBindingSetter<BufferBinding::TransformFeedback>(),
+        GetBufferBindingSetter<BufferBinding::Uniform>(),
+    }};
+    return setters;
+}
 
 State::State(ContextID contextIn,
              const State *shareContextState,
diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/State.h b/Source/ThirdParty/ANGLE/src/libANGLE/State.h
index bec9a5e..5a49431 100644
--- a/Source/ThirdParty/ANGLE/src/libANGLE/State.h
+++ b/Source/ThirdParty/ANGLE/src/libANGLE/State.h
@@ -318,7 +318,7 @@
     //// Typed buffer binding point manipulation ////
     ANGLE_INLINE void setBufferBinding(const Context *context, BufferBinding target, Buffer *buffer)
     {
-        (this->*(kBufferSetters[target]))(context, buffer);
+        (this->*(kBufferSetters()[target]))(context, buffer);
     }
 
     ANGLE_INLINE Buffer *getTargetBuffer(BufferBinding target) const
@@ -693,7 +693,7 @@
     static_assert(DIRTY_OBJECT_MAX == 9, "check DIRTY_OBJECT_MAX");
 
     // Dispatch table for buffer update functions.
-    static const angle::PackedEnumMap<BufferBinding, BufferBindingSetter> kBufferSetters;
+    static const angle::PackedEnumMap<BufferBinding, BufferBindingSetter>& kBufferSetters();
 
     Version mClientVersion;
     ContextID mContext;
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index 376f422..1b75a1e 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -1,3 +1,10 @@
+2019-05-08  Alex Christensen  <achristensen@webkit.org>
+
+        Try to fix Linux build
+
+        * platform/graphics/ANGLEWebKitBridge.h:
+        Include headers consistently on all platforms.
+
 2019-05-08  Don Olmstead  <don.olmstead@sony.com>
 
         Update ANGLE
diff --git a/Source/WebCore/platform/graphics/ANGLEWebKitBridge.h b/Source/WebCore/platform/graphics/ANGLEWebKitBridge.h
index 55a84b12..4f38bf3 100644
--- a/Source/WebCore/platform/graphics/ANGLEWebKitBridge.h
+++ b/Source/WebCore/platform/graphics/ANGLEWebKitBridge.h
@@ -23,8 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-#ifndef ANGLEWebKitBridge_h
-#define ANGLEWebKitBridge_h
+#pragma once
 
 #if USE(LIBEPOXY)
 // libepoxy headers have to be included before <ANGLE/ShaderLang.h> in order to avoid
@@ -32,11 +31,7 @@
 #include <epoxy/gl.h>
 #endif
 
-#if PLATFORM(COCOA)
 #include <ANGLE/ShaderLang.h>
-#else
-#include <ANGLE/GLSLANG/ShaderLang.h>
-#endif
 #include <wtf/text/WTFString.h>
 
 #if PLATFORM(COCOA)
@@ -100,5 +95,3 @@
 };
 
 } // namespace WebCore
-
-#endif