Diff
Modified: trunk/ChangeLog (287074 => 287075)
--- trunk/ChangeLog 2021-12-15 16:25:24 UTC (rev 287074)
+++ trunk/ChangeLog 2021-12-15 16:33:45 UTC (rev 287075)
@@ -1,3 +1,15 @@
+2021-12-15 Chris Lord <cl...@igalia.com>
+
+ [GTK] Use libgbm and the ANGLE gbm backend to fix initialisation
+ https://bugs.webkit.org/show_bug.cgi?id=234293
+
+ Reviewed by Don Olmstead.
+
+ Add cmake files to find gbm and libdrm.
+
+ * Source/cmake/FindGBM.cmake: Added.
+ * Source/cmake/FindLibDRM.cmake: Added.
+
2021-12-11 Aakash Jain <aakash_j...@apple.com>
Update my github username.
Modified: trunk/Source/ThirdParty/ANGLE/CMakeLists.txt (287074 => 287075)
--- trunk/Source/ThirdParty/ANGLE/CMakeLists.txt 2021-12-15 16:25:24 UTC (rev 287074)
+++ trunk/Source/ThirdParty/ANGLE/CMakeLists.txt 2021-12-15 16:33:45 UTC (rev 287075)
@@ -9,9 +9,7 @@
set(angle_is_winuwp FALSE)
elseif (UNIX)
set(is_linux TRUE)
- if (ENABLE_X11_TARGET)
- set(angle_use_x11 TRUE)
- endif ()
+ set(ozone_platform_gbm TRUE)
endif ()
include(Compiler.cmake)
Modified: trunk/Source/ThirdParty/ANGLE/ChangeLog (287074 => 287075)
--- trunk/Source/ThirdParty/ANGLE/ChangeLog 2021-12-15 16:25:24 UTC (rev 287074)
+++ trunk/Source/ThirdParty/ANGLE/ChangeLog 2021-12-15 16:33:45 UTC (rev 287075)
@@ -1,3 +1,16 @@
+2021-12-15 Chris Lord <cl...@igalia.com>
+
+ [GTK] Use libgbm and the ANGLE gbm backend to fix initialisation
+ https://bugs.webkit.org/show_bug.cgi?id=234293
+
+ Reviewed by Don Olmstead.
+
+ Use GBM backend for GTK platform.
+
+ * CMakeLists.txt:
+ * GL.cmake:
+ * PlatformGTK.cmake:
+
2021-12-15 Kyle Piddington <kpidding...@apple.com>
[ANGLE] Roll ANGLE to 12-14-2021 (5ee7dfbd5a3)
Modified: trunk/Source/ThirdParty/ANGLE/GL.cmake (287074 => 287075)
--- trunk/Source/ThirdParty/ANGLE/GL.cmake 2021-12-15 16:25:24 UTC (rev 287074)
+++ trunk/Source/ThirdParty/ANGLE/GL.cmake 2021-12-15 16:33:45 UTC (rev 287075)
@@ -163,9 +163,6 @@
"src/libANGLE/renderer/gl/egl/gbm/SurfaceGbm.cpp"
"src/libANGLE/renderer/gl/egl/gbm/SurfaceGbm.h"
)
-
- pkg_config("src/libANGLE/renderer/gl/libdrm")
- set(packages "src/libANGLE/renderer/gl/libdrm" )
endif()
Modified: trunk/Source/ThirdParty/ANGLE/PlatformGTK.cmake (287074 => 287075)
--- trunk/Source/ThirdParty/ANGLE/PlatformGTK.cmake 2021-12-15 16:25:24 UTC (rev 287074)
+++ trunk/Source/ThirdParty/ANGLE/PlatformGTK.cmake 2021-12-15 16:33:45 UTC (rev 287075)
@@ -22,10 +22,22 @@
list(APPEND ANGLE_DEFINITIONS
ANGLE_ENABLE_OPENGL
+ ANGLE_USE_GBM
+ USE_SYSTEM_EGL
)
+ find_package(LibDRM REQUIRED)
+ find_package(GBM REQUIRED)
+
+ list(APPEND ANGLE_PRIVATE_INCLUDE_DIRECTORIES
+ ${LIBDRM_INCLUDE_DIR}
+ {GBM_INCLUDE_DIR}
+ )
+
list(APPEND ANGLEGLESv2_LIBRARIES
${CMAKE_DL_LIBS}
+ ${LIBDRM_LIBRARIES}
+ ${GBM_LIBRARIES}
Threads::Threads
)
@@ -34,24 +46,4 @@
else ()
list(APPEND ANGLEGLESv2_LIBRARIES OpenGL::GLES)
endif ()
-
- # NOTE: When both Wayland and X11 are enabled, ANGLE_USE_X11 will be
- # defined and the X11 type definitions will be used for code involving
- # both. That works because types for both Wayland and X11 have the same
- # sizes and the code in WebKit casts the values to the proper types as
- # needed.
- set(GTK_ANGLE_DEFINITIONS)
-
- if (ENABLE_X11_TARGET)
- list(APPEND ANGLE_SOURCES ${libangle_gl_glx_sources})
- list(APPEND ANGLEGLESv2_LIBRARIES X11)
- list(APPEND GTK_ANGLE_DEFINITIONS ANGLE_USE_X11)
- endif ()
-
- # Allow building ANGLE on platforms which may not provide X11 headers.
- if (NOT GTK_ANGLE_DEFINITIONS)
- list(APPEND GTK_ANGLE_DEFINITIONS USE_SYSTEM_EGL)
- endif ()
-
- list(APPEND ANGLE_DEFINITIONS ${GTK_ANGLE_DEFINITIONS})
endif ()
Modified: trunk/Source/WebCore/ChangeLog (287074 => 287075)
--- trunk/Source/WebCore/ChangeLog 2021-12-15 16:25:24 UTC (rev 287074)
+++ trunk/Source/WebCore/ChangeLog 2021-12-15 16:33:45 UTC (rev 287075)
@@ -1,3 +1,15 @@
+2021-12-15 Chris Lord <cl...@igalia.com>
+
+ [GTK] Use libgbm and the ANGLE gbm backend to fix initialisation
+ https://bugs.webkit.org/show_bug.cgi?id=234293
+
+ Reviewed by Don Olmstead.
+
+ Make ANGLE context non-TEXTURE_2D drawingBufferTextureTarget Cocoa-specific.
+
+ * platform/graphics/angle/GraphicsContextGLANGLE.cpp:
+ (WebCore::GraphicsContextGLANGLE::drawingBufferTextureTarget):
+
2021-12-15 Carlos Garcia Campos <cgar...@igalia.com>
[GTK][a11y] Add support for loading events when building with ATSPI
Modified: trunk/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp (287074 => 287075)
--- trunk/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp 2021-12-15 16:25:24 UTC (rev 287074)
+++ trunk/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp 2021-12-15 16:33:45 UTC (rev 287075)
@@ -73,7 +73,7 @@
GCGLenum GraphicsContextGLANGLE::drawingBufferTextureTarget()
{
-#if PLATFORM(WIN)
+#if !PLATFORM(COCOA)
m_drawingBufferTextureTarget = EGL_TEXTURE_2D;
#else
if (m_drawingBufferTextureTarget == -1)
Added: trunk/Source/cmake/FindGBM.cmake (0 => 287075)
--- trunk/Source/cmake/FindGBM.cmake (rev 0)
+++ trunk/Source/cmake/FindGBM.cmake 2021-12-15 16:33:45 UTC (rev 287075)
@@ -0,0 +1,29 @@
+# - Find GBM
+# This module looks for GBM. This module defines the
+# following variables:
+# GBM_FOUND - system has gbm
+# GBM_INCLUDE_DIRS - the gbm include directories
+# GBM_LIBRARIES - link these to use gbm
+
+find_package(PkgConfig QUIET)
+pkg_check_modules(PC_GBM QUIET gbm)
+
+find_library(GBM_LIBRARIES
+ NAMES gbm
+ HINTS ${PC_GBM_LIBDIR}
+ ${PC_GBM_LIBRARY_DIRS}
+)
+
+find_path(GBM_INCLUDE_DIR
+ NAMES gbm.h
+ HINTS ${PC_GBM_INCLUDEDIR}
+ ${PC_GBM_INCLUDE_DIRS}
+)
+
+include(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(GBM DEFAULT_MSG GBM_LIBRARIES GBM_INCLUDE_DIR)
+
+mark_as_advanced(
+ GBM_INCLUDE_DIR
+ GBM_LIBRARIES
+)
Added: trunk/Source/cmake/FindLibDRM.cmake (0 => 287075)
--- trunk/Source/cmake/FindLibDRM.cmake (rev 0)
+++ trunk/Source/cmake/FindLibDRM.cmake 2021-12-15 16:33:45 UTC (rev 287075)
@@ -0,0 +1,30 @@
+# - Find libdrm
+# This module looks for libdrm. This module defines the
+# following variables:
+# LIBDRM_FOUND - system has libdrm
+# LIBDRM_INCLUDE_DIRS - the libdrm include directories
+# LIBDRM_LIBRARIES - link these to use libdrm
+
+find_package(PkgConfig QUIET)
+pkg_check_modules(PC_LIBDRM QUIET libdrm)
+
+find_library(LIBDRM_LIBRARIES
+ NAMES drm
+ HINTS ${PC_LIBDRM_LIBDIR}
+ ${PC_LIBDRM_LIBRARY_DIRS}
+)
+
+find_path(LIBDRM_INCLUDE_DIR
+ NAMES drm.h
+ HINTS ${PC_LIBDRM_INCLUDEDIR}
+ ${PC_LIBDRM_INCLUDE_DIRS}
+ PATH_SUFFIXES libdrm
+)
+
+include(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibDRM DEFAULT_MSG LIBDRM_LIBRARIES LIBDRM_INCLUDE_DIR)
+
+mark_as_advanced(
+ LIBDRM_INCLUDE_DIR
+ LIBDRM_LIBRARIES
+)