Skip to content

Commit

Permalink
Merge r181629 - [CMake] Use a forwarding header for ANGLE's ShaderLan…
Browse files Browse the repository at this point in the history
…g.h to avoid picking up ANGLE's EGL headers

https://bugs.webkit.org/show_bug.cgi?id=142530

Reviewed by Darin Adler.

Source/ThirdParty/ANGLE:

* ANGLE/ShaderLang.h: Added. Includes include/GLSLANG/ShaderLang.h. Used in WebCore
so we can avoid using ANGLE's EGL headers and use the system-default headers instead.

Source/WebCore:

Include the ANGLE's ShaderLang.h through the new forwarding header. This allows
us to not list Source/ThirdParty/ANGLE/include in the list of inclusion directories
and thus avoid ANGLE's EGL and GLES2/GLES3 headers, defaulting to the system-provided
headers instead.

Source/ThirdParty/ANGLE/include/KHR is still used because ANGLE's khrplatform.h is
required by the ShaderLang.h header. Source/ThirdParty/ANGLE/src is not used for the
whole WebCore library anymore, only the ANGLESupport library.

* CMakeLists.txt:
* platform/graphics/ANGLEWebKitBridge.h:
* platform/graphics/cairo/GraphicsContext3DCairo.cpp:

Source/WebKit2:

* CMakeLists.txt: Replace the Source/ThirdParty/ANGLE/include/GLSLANG entry
in the list of inclusion directories for WebKit2 with Source/ThirdParty/ANGLE,
possible due to the new forwarding header for ANGLE's ShaderLang.h.
  • Loading branch information
zdobersek authored and carlosgcampos committed Mar 17, 2015
1 parent f6e2a5c commit 56b9ffb
Show file tree
Hide file tree
Showing 8 changed files with 47 additions and 6 deletions.
1 change: 1 addition & 0 deletions Source/ThirdParty/ANGLE/ANGLE/ShaderLang.h
@@ -0,0 +1 @@
#include "include/GLSLANG/ShaderLang.h"
10 changes: 10 additions & 0 deletions Source/ThirdParty/ANGLE/ChangeLog
@@ -1,3 +1,13 @@
2015-03-17 Zan Dobersek <zdobersek@igalia.com>

[CMake] Use a forwarding header for ANGLE's ShaderLang.h to avoid picking up ANGLE's EGL headers
https://bugs.webkit.org/show_bug.cgi?id=142530

Reviewed by Darin Adler.

* ANGLE/ShaderLang.h: Added. Includes include/GLSLANG/ShaderLang.h. Used in WebCore
so we can avoid using ANGLE's EGL headers and use the system-default headers instead.

2015-01-28 Dana Burkart <dburkart@apple.com>

Move ASan flag settings from DebugRelease.xcconfig to Base.xcconfig
Expand Down
5 changes: 2 additions & 3 deletions Source/WebCore/CMakeLists.txt
Expand Up @@ -2969,10 +2969,8 @@ if (WTF_USE_3D_GRAPHICS)
endif ()

list(APPEND WebCore_INCLUDE_DIRECTORIES
"${THIRDPARTY_DIR}/ANGLE/src"
"${THIRDPARTY_DIR}/ANGLE/include/"
"${THIRDPARTY_DIR}/ANGLE/"
"${THIRDPARTY_DIR}/ANGLE/include/KHR"
"${THIRDPARTY_DIR}/ANGLE/include/GLSLANG"
"${WEBCORE_DIR}/platform/graphics/gpu"
)

Expand Down Expand Up @@ -3500,6 +3498,7 @@ if (WTF_USE_3D_GRAPHICS)
APPEND
PROPERTY INCLUDE_DIRECTORIES
"${THIRDPARTY_DIR}/ANGLE/include"
"${THIRDPARTY_DIR}/ANGLE/src"
)
list(APPEND WebCore_LIBRARIES ANGLESupport)
WEBKIT_SET_EXTRA_COMPILER_FLAGS(ANGLESupport IGNORECXX_WARNINGS)
Expand Down
20 changes: 20 additions & 0 deletions Source/WebCore/ChangeLog
@@ -1,3 +1,23 @@
2015-03-17 Zan Dobersek <zdobersek@igalia.com>

[CMake] Use a forwarding header for ANGLE's ShaderLang.h to avoid picking up ANGLE's EGL headers
https://bugs.webkit.org/show_bug.cgi?id=142530

Reviewed by Darin Adler.

Include the ANGLE's ShaderLang.h through the new forwarding header. This allows
us to not list Source/ThirdParty/ANGLE/include in the list of inclusion directories
and thus avoid ANGLE's EGL and GLES2/GLES3 headers, defaulting to the system-provided
headers instead.

Source/ThirdParty/ANGLE/include/KHR is still used because ANGLE's khrplatform.h is
required by the ShaderLang.h header. Source/ThirdParty/ANGLE/src is not used for the
whole WebCore library anymore, only the ANGLESupport library.

* CMakeLists.txt:
* platform/graphics/ANGLEWebKitBridge.h:
* platform/graphics/cairo/GraphicsContext3DCairo.cpp:

2015-03-16 Joanmarie Diggs <jdiggs@igalia.com>

AX: Crash viewing http://www.last.fm/
Expand Down
2 changes: 1 addition & 1 deletion Source/WebCore/platform/graphics/ANGLEWebKitBridge.h
Expand Up @@ -34,7 +34,7 @@
#elif PLATFORM(WIN)
#include "GLSLANG/ShaderLang.h"
#else
#include "ShaderLang.h"
#include <ANGLE/ShaderLang.h>
#endif

namespace WebCore {
Expand Down
Expand Up @@ -39,7 +39,7 @@
#include "NotImplemented.h"
#include "PlatformContextCairo.h"
#include "RefPtrCairo.h"
#include <GLSLANG/ShaderLang.h>
#include <ANGLE/ShaderLang.h>
#include <cairo.h>

#if USE(OPENGL_ES_2)
Expand Down
2 changes: 1 addition & 1 deletion Source/WebKit2/CMakeLists.txt
Expand Up @@ -149,8 +149,8 @@ set(WebKit2_INCLUDE_DIRECTORIES

if (WTF_USE_3D_GRAPHICS)
list(APPEND WebKit2_INCLUDE_DIRECTORIES
"${THIRDPARTY_DIR}/ANGLE"
"${THIRDPARTY_DIR}/ANGLE/include/KHR"
"${THIRDPARTY_DIR}/ANGLE/include/GLSLANG"
)
endif ()

Expand Down
11 changes: 11 additions & 0 deletions Source/WebKit2/ChangeLog
@@ -1,3 +1,14 @@
2015-03-17 Zan Dobersek <zdobersek@igalia.com>

[CMake] Use a forwarding header for ANGLE's ShaderLang.h to avoid picking up ANGLE's EGL headers
https://bugs.webkit.org/show_bug.cgi?id=142530

Reviewed by Darin Adler.

* CMakeLists.txt: Replace the Source/ThirdParty/ANGLE/include/GLSLANG entry
in the list of inclusion directories for WebKit2 with Source/ThirdParty/ANGLE,
possible due to the new forwarding header for ANGLE's ShaderLang.h.

2015-03-17 Gwang Yoon Hwang <yoon@igalia.com>

REGRESSION(r180924): Unable to build WebKitGTK+ with threaded compositor
Expand Down

0 comments on commit 56b9ffb

Please sign in to comment.