Skip to content

Commit

Permalink
webkitgtk: Unbreak build on platforms using pvr graphics drivers
Browse files Browse the repository at this point in the history
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
  • Loading branch information
kraj authored and rpurdie committed Jul 14, 2023
1 parent 09a1a04 commit c3068df
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
Add additional check on GST_GL_HAVE_PLATFORM_GLX before using gst_gl_display_x11_new_with_display

This ensures that there is a compile time check for glx support in gstreamer as
runtime check is not enough because gst_gl_display_x11_new_with_display() API comes from
gst/gl/x11/gstgldisplay_x11.h which is only included when GST_GL_HAVE_PLATFORM_GLX is defined
therefore make this check consistent to fix build with some platforms which use pvr gl drivers
where this problem appear at compile time.


/mnt/b/yoe/master/build/tmp/work/riscv64-yoe-linux/webkitgtk/2.40.2-r0/webkitgtk-2.40.2/Source/WebCore/platform/graphics/gstreamer/PlatformDisplayGStreamer.cpp:68:31: error: use of undeclared identifier 'gst_gl_display_x11_new_with_display'; did you mean 'gst_gl_display_egl_new_with_egl_display'?
68 | return GST_GL_DISPLAY(gst_gl_display_x11_new_with_display(downcast<PlatformDisplayX11>(sharedDisplay).native()));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| gst_gl_display_egl_new_with_egl_display

This issue is 2.40 specific since GLX support is removed [1] from trunk upstream, therefore
this patch wont be needed when upgrading to 2.42+

[1] https://github.com/WebKit/WebKit/commit/320560f9e53ddcd53954059bd005e0c75eb91abf

Upstream-Status: Inappropriate [GLX support is gone in 2.41+]
Signed-off-by: Khem Raj <raj.khem@gmail.com>

--- a/Source/WebCore/platform/graphics/gstreamer/PlatformDisplayGStreamer.cpp 2023-02-20 01:22:18.917743700 -0800
+++ b/Source/WebCore/platform/graphics/gstreamer/PlatformDisplayGStreamer.cpp 2023-07-08 08:45:09.739177065 -0700
@@ -63,7 +63,7 @@
if (glPlatform == GST_GL_PLATFORM_EGL)
return GST_GL_DISPLAY(gst_gl_display_egl_new_with_egl_display(sharedDisplay.eglDisplay()));
#endif
-#if USE(GLX)
+#if USE(GLX) && GST_GL_HAVE_PLATFORM_GLX
if (is<PlatformDisplayX11>(sharedDisplay) && glPlatform == GST_GL_PLATFORM_GLX)
return GST_GL_DISPLAY(gst_gl_display_x11_new_with_display(downcast<PlatformDisplayX11>(sharedDisplay).native()));
#endif
1 change: 1 addition & 0 deletions meta/recipes-sato/webkit/webkitgtk_2.40.2.bb
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ SRC_URI = "https://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \
file://0d3344e17d258106617b0e6d783d073b188a2548.patch \
file://4977290ab4ab35258a6da9b13795c9b0f7894bf4.patch \
file://0001-Source-JavaScriptCore-CMakeLists.txt-ensure-reproduc.patch \
file://check-GST_GL_HAVE_PLATFORM_GLX.patch \
"
SRC_URI[sha256sum] = "96898870d994da406ee7a632816dcde9a3bb395ee5f344fcb3f3b8cc8a77e000"

Expand Down

0 comments on commit c3068df

Please sign in to comment.