Title: [290506] trunk
Revision
290506
Author
[email protected]
Date
2022-02-25 05:28:38 -0800 (Fri, 25 Feb 2022)

Log Message

[GTK][WPE] Uncouple libgbm, libdrm dependencies from ANGLE functionality
https://bugs.webkit.org/show_bug.cgi?id=237199

Patch by Zan Dobersek <[email protected]> on 2022-02-25
Reviewed by Chris Lord.

.:

For both GTK and WPE, unconditionally search for the libgbm and libdrm
dependencies as they will also be needed outside of ANGLE functionality.
USE_ANGLE is defined along with USE_NICOSIA, but still only if the
relevant option was enabled.

* Source/cmake/OptionsGTK.cmake:
* Source/cmake/OptionsWPE.cmake:

Source/WebCore:

Unconditionally build with libgbm and libdrm cflags and linker flags
since these will be used outside of ANGLE functionality.

Remove USE(ANGLE) && USE(NICOSIA) guards from GBMDevice files.

* PlatformGTK.cmake:
* PlatformWPE.cmake:
* platform/graphics/gbm/GBMDevice.cpp:
* platform/graphics/gbm/GBMDevice.h:

Modified Paths

Diff

Modified: trunk/ChangeLog (290505 => 290506)


--- trunk/ChangeLog	2022-02-25 13:26:25 UTC (rev 290505)
+++ trunk/ChangeLog	2022-02-25 13:28:38 UTC (rev 290506)
@@ -1,3 +1,18 @@
+2022-02-25  Zan Dobersek  <[email protected]>
+
+        [GTK][WPE] Uncouple libgbm, libdrm dependencies from ANGLE functionality
+        https://bugs.webkit.org/show_bug.cgi?id=237199
+
+        Reviewed by Chris Lord.
+
+        For both GTK and WPE, unconditionally search for the libgbm and libdrm
+        dependencies as they will also be needed outside of ANGLE functionality.
+        USE_ANGLE is defined along with USE_NICOSIA, but still only if the
+        relevant option was enabled.
+
+        * Source/cmake/OptionsGTK.cmake:
+        * Source/cmake/OptionsWPE.cmake:
+
 2022-02-25  Carlos Garcia Campos  <[email protected]>
 
         Unreviewed. [GTK] Bump version numbers

Modified: trunk/Source/WebCore/ChangeLog (290505 => 290506)


--- trunk/Source/WebCore/ChangeLog	2022-02-25 13:26:25 UTC (rev 290505)
+++ trunk/Source/WebCore/ChangeLog	2022-02-25 13:28:38 UTC (rev 290506)
@@ -1,3 +1,20 @@
+2022-02-25  Zan Dobersek  <[email protected]>
+
+        [GTK][WPE] Uncouple libgbm, libdrm dependencies from ANGLE functionality
+        https://bugs.webkit.org/show_bug.cgi?id=237199
+
+        Reviewed by Chris Lord.
+
+        Unconditionally build with libgbm and libdrm cflags and linker flags
+        since these will be used outside of ANGLE functionality.
+
+        Remove USE(ANGLE) && USE(NICOSIA) guards from GBMDevice files.
+
+        * PlatformGTK.cmake:
+        * PlatformWPE.cmake:
+        * platform/graphics/gbm/GBMDevice.cpp:
+        * platform/graphics/gbm/GBMDevice.h:
+
 2022-02-25  Carlos Garcia Campos  <[email protected]>
 
         AX: List item marker not exposed when not a direct child of a list item

Modified: trunk/Source/WebCore/PlatformGTK.cmake (290505 => 290506)


--- trunk/Source/WebCore/PlatformGTK.cmake	2022-02-25 13:26:25 UTC (rev 290505)
+++ trunk/Source/WebCore/PlatformGTK.cmake	2022-02-25 13:28:38 UTC (rev 290506)
@@ -90,10 +90,12 @@
 list(APPEND WebCore_LIBRARIES
     ${ATK_LIBRARIES}
     ${ENCHANT_LIBRARIES}
+    ${GBM_LIBRARIES}
     ${GLIB_GIO_LIBRARIES}
     ${GLIB_GMODULE_LIBRARIES}
     ${GLIB_GOBJECT_LIBRARIES}
     ${GLIB_LIBRARIES}
+    ${LIBDRM_LIBRARIES}
     ${LIBSECRET_LIBRARIES}
     ${LIBTASN1_LIBRARIES}
     ${HYPHEN_LIBRARIES}
@@ -115,8 +117,10 @@
 list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
     ${ATK_INCLUDE_DIRS}
     ${ENCHANT_INCLUDE_DIRS}
+    ${GBM_INCLUDE_DIR}
     ${GIO_UNIX_INCLUDE_DIRS}
     ${GLIB_INCLUDE_DIRS}
+    ${LIBDRM_INCLUDE_DIR}
     ${LIBSECRET_INCLUDE_DIRS}
     ${LIBTASN1_INCLUDE_DIRS}
     ${UPOWERGLIB_INCLUDE_DIRS}
@@ -128,17 +132,6 @@
     )
 endif ()
 
-if (USE_ANGLE_WEBGL)
-    list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
-        ${LIBDRM_INCLUDE_DIR}
-        ${GBM_INCLUDE_DIR}
-    )
-    list(APPEND WebCore_LIBRARIES
-        ${LIBDRM_LIBRARIES}
-        ${GBM_LIBRARIES}
-    )
-endif ()
-
 if (ENABLE_WAYLAND_TARGET)
     list(APPEND WebCore_PRIVATE_FRAMEWORK_HEADERS
         platform/graphics/wayland/PlatformDisplayWayland.h

Modified: trunk/Source/WebCore/PlatformWPE.cmake (290505 => 290506)


--- trunk/Source/WebCore/PlatformWPE.cmake	2022-02-25 13:26:25 UTC (rev 290505)
+++ trunk/Source/WebCore/PlatformWPE.cmake	2022-02-25 13:28:38 UTC (rev 290506)
@@ -67,10 +67,12 @@
 list(APPEND WebCore_LIBRARIES
     WPE::libwpe
     ${ATK_LIBRARIES}
+    ${GBM_LIBRARIES}
     ${GLIB_GIO_LIBRARIES}
     ${GLIB_GMODULE_LIBRARIES}
     ${GLIB_GOBJECT_LIBRARIES}
     ${GLIB_LIBRARIES}
+    ${LIBDRM_LIBRARIES}
     ${LIBTASN1_LIBRARIES}
     ${UPOWERGLIB_LIBRARIES}
 )
@@ -77,8 +79,10 @@
 
 list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
     ${ATK_INCLUDE_DIRS}
+    ${GBM_INCLUDE_DIR}
     ${GIO_UNIX_INCLUDE_DIRS}
     ${GLIB_INCLUDE_DIRS}
+    ${LIBDRM_INCLUDE_DIR}
     ${LIBTASN1_INCLUDE_DIRS}
     ${UPOWERGLIB_INCLUDE_DIRS}
 )
@@ -94,17 +98,6 @@
     list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES ${OPENXR_INCLUDE_DIRS})
 endif ()
 
-if (USE_ANGLE_WEBGL)
-    list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
-        ${LIBDRM_INCLUDE_DIR}
-        ${GBM_INCLUDE_DIR}
-    )
-    list(APPEND WebCore_LIBRARIES
-        ${LIBDRM_LIBRARIES}
-        ${GBM_LIBRARIES}
-    )
-endif ()
-
 if (USE_ATSPI)
     set(WebCore_AtspiInterfaceFiles
         ${WEBCORE_DIR}/accessibility/atspi/xml/Accessible.xml

Modified: trunk/Source/WebCore/platform/graphics/gbm/GBMDevice.cpp (290505 => 290506)


--- trunk/Source/WebCore/platform/graphics/gbm/GBMDevice.cpp	2022-02-25 13:26:25 UTC (rev 290505)
+++ trunk/Source/WebCore/platform/graphics/gbm/GBMDevice.cpp	2022-02-25 13:28:38 UTC (rev 290506)
@@ -27,8 +27,6 @@
 #include "config.h"
 #include "GBMDevice.h"
 
-#if USE(ANGLE) && USE(NICOSIA)
-
 #include <fcntl.h>
 #include <gbm.h>
 #include <mutex>
@@ -91,5 +89,3 @@
 }
 
 } // namespace WebCore
-
-#endif // USE(ANGLE) && USE(NICOSIA)

Modified: trunk/Source/WebCore/platform/graphics/gbm/GBMDevice.h (290505 => 290506)


--- trunk/Source/WebCore/platform/graphics/gbm/GBMDevice.h	2022-02-25 13:26:25 UTC (rev 290505)
+++ trunk/Source/WebCore/platform/graphics/gbm/GBMDevice.h	2022-02-25 13:28:38 UTC (rev 290506)
@@ -26,8 +26,6 @@
 
 #pragma once
 
-#if USE(ANGLE) && USE(NICOSIA)
-
 struct gbm_device;
 
 namespace WebCore {
@@ -48,5 +46,3 @@
 };
 
 } // namespace WebCore
-
-#endif // USE(ANGLE) && USE(NICOSIA)

Modified: trunk/Source/cmake/OptionsGTK.cmake (290505 => 290506)


--- trunk/Source/cmake/OptionsGTK.cmake	2022-02-25 13:26:25 UTC (rev 290505)
+++ trunk/Source/cmake/OptionsGTK.cmake	2022-02-25 13:28:38 UTC (rev 290506)
@@ -12,10 +12,12 @@
 find_package(Fontconfig 2.8.0 REQUIRED)
 find_package(Freetype 2.4.2 REQUIRED)
 find_package(LibGcrypt 1.6.0 REQUIRED)
+find_package(GBM REQUIRED)
 find_package(GLIB 2.56.4 REQUIRED COMPONENTS gio gio-unix gobject gthread gmodule)
 find_package(HarfBuzz 0.9.18 REQUIRED COMPONENTS ICU)
 find_package(ICU 61.2 REQUIRED COMPONENTS data i18n uc)
 find_package(JPEG REQUIRED)
+find_package(LibDRM REQUIRED)
 find_package(LibXml2 2.8.0 REQUIRED)
 find_package(PNG REQUIRED)
 find_package(SQLite3 REQUIRED)
@@ -380,22 +382,9 @@
 
     SET_AND_EXPOSE_TO_BUILD(USE_COORDINATED_GRAPHICS TRUE)
     SET_AND_EXPOSE_TO_BUILD(USE_NICOSIA TRUE)
+    SET_AND_EXPOSE_TO_BUILD(USE_ANGLE ${USE_ANGLE_WEBGL})
 endif ()
 
-if (USE_ANGLE_WEBGL)
-    SET_AND_EXPOSE_TO_BUILD(USE_ANGLE TRUE)
-
-    find_package(GBM)
-    if (NOT GBM_FOUND)
-        message(FATAL_ERROR "GBM is needed for USE_ANGLE_WEBGL")
-    endif ()
-
-    find_package(LibDRM)
-    if (NOT LIBDRM_FOUND)
-        message(FATAL_ERROR "libdrm is needed for USE_ANGLE_WEBGL")
-    endif ()
-endif ()
-
 if (ENABLE_SPELLCHECK)
     find_package(Enchant)
     if (NOT PC_ENCHANT_FOUND)

Modified: trunk/Source/cmake/OptionsWPE.cmake (290505 => 290506)


--- trunk/Source/cmake/OptionsWPE.cmake	2022-02-25 13:26:25 UTC (rev 290505)
+++ trunk/Source/cmake/OptionsWPE.cmake	2022-02-25 13:28:38 UTC (rev 290506)
@@ -8,10 +8,12 @@
 find_package(Cairo 1.14.0 REQUIRED)
 find_package(Fontconfig 2.8.0 REQUIRED)
 find_package(Freetype 2.4.2 REQUIRED)
+find_package(GBM REQUIRED)
 find_package(GLIB 2.56.4 REQUIRED COMPONENTS gio gio-unix gobject gthread gmodule)
 find_package(HarfBuzz 0.9.18 REQUIRED COMPONENTS ICU)
 find_package(ICU 61.2 REQUIRED COMPONENTS data i18n uc)
 find_package(JPEG REQUIRED)
+find_package(LibDRM REQUIRED)
 find_package(LibEpoxy 1.4.0 REQUIRED)
 find_package(LibGcrypt 1.6.0 REQUIRED)
 find_package(LibXml2 2.8.0 REQUIRED)
@@ -175,20 +177,6 @@
     endif ()
 endif ()
 
-if (USE_ANGLE_WEBGL)
-    SET_AND_EXPOSE_TO_BUILD(USE_ANGLE TRUE)
-
-    find_package(GBM)
-    if (NOT GBM_FOUND)
-        message(FATAL_ERROR "GBM is needed for USE_ANGLE_WEBGL")
-    endif ()
-
-    find_package(LibDRM)
-    if (NOT LIBDRM_FOUND)
-        message(FATAL_ERROR "libdrm is needed for USE_ANGLE_WEBGL")
-    endif ()
-endif ()
-
 if (USE_JPEGXL)
     find_package(JPEGXL)
     if (NOT JPEGXL_FOUND)
@@ -320,6 +308,7 @@
 SET_AND_EXPOSE_TO_BUILD(USE_TILED_BACKING_STORE TRUE)
 SET_AND_EXPOSE_TO_BUILD(USE_COORDINATED_GRAPHICS TRUE)
 SET_AND_EXPOSE_TO_BUILD(USE_NICOSIA TRUE)
+SET_AND_EXPOSE_TO_BUILD(USE_ANGLE ${USE_ANGLE_WEBGL})
 SET_AND_EXPOSE_TO_BUILD(HAVE_OS_DARK_MODE_SUPPORT 1)
 
 # GUri is available in GLib since version 2.66, but we only want to use it if version is >= 2.67.1.
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to