From 1c7d6584a7811b7785ae5c1e378f14b5ba0971cf Mon Sep 17 00:00:00 2001 From: takeshi_hoshina Date: Mon, 2 Nov 2020 11:07:33 +0900 Subject: basesystem-jj recipes --- ...e-Qt-defines-GLsync-to-fix-compile-on-som.patch | 70 ++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 external/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-qmlgl-ensure-Qt-defines-GLsync-to-fix-compile-on-som.patch (limited to 'external/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-qmlgl-ensure-Qt-defines-GLsync-to-fix-compile-on-som.patch') diff --git a/external/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-qmlgl-ensure-Qt-defines-GLsync-to-fix-compile-on-som.patch b/external/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-qmlgl-ensure-Qt-defines-GLsync-to-fix-compile-on-som.patch new file mode 100644 index 00000000..13684876 --- /dev/null +++ b/external/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-qmlgl-ensure-Qt-defines-GLsync-to-fix-compile-on-som.patch @@ -0,0 +1,70 @@ +From 3e0d5577444b32579bdf5b69d720a322322ff7bc Mon Sep 17 00:00:00 2001 +From: Milian Wolff +Date: Tue, 26 Nov 2019 15:08:20 +0100 +Subject: [PATCH] qmlgl: ensure Qt defines GLsync to fix compile on some platforms +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +By explictly including QtGui/qopengl.h we force the code path that +defines GLsync in the Qt-specific way. Without that, some platforms +failed to compile the qmlgl plugin, since neither Qt nor gstreamer +defined GLsync then, leading to e.g.: + +``` +make[4]: Entering directory '/.../gst-plugins-good-1.16.1/ext/qt' + CXX libgstqmlgl_la-qtitem.lo +In file included from gstqtgl.h:32, + from qtitem.h:27, + from qtitem.cc:28: +/.../usr/include/gstreamer-1.0/ +gst/gl/gstglfuncs.h:93:17: error: expected identifier before ‘*’ token + ret (GSTGLAPI *name) args; + ^ +/.../usr/include/gstreamer-1.0/ +gst/gl/glprototypes/sync.h:27:1: note: in expansion of macro +‘GST_GL_EXT_FUNCTION’ + GST_GL_EXT_FUNCTION (GLsync, FenceSync, + ^~~~~~~~~~~~~~~~~~~ +``` +Signed-off-by: Khem Raj +Upstream-Status: Backport [https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/commit/3e0d5577444b32579bdf5b69d720a322322ff7bc] +--- + ext/qt/gstqtgl.h | 18 +++++++++++------- + 1 file changed, 11 insertions(+), 7 deletions(-) + +--- a/ext/qt/gstqtgl.h ++++ b/ext/qt/gstqtgl.h +@@ -22,14 +22,7 @@ + #include + #endif + +-/* qt uses the same trick as us to typedef GLsync on GLES2 but to a different +- * type which confuses the preprocessor. Instead of trying to reconcile the +- * two, we instead use the GLsync definition from Qt from above, and ensure +- * that we don't typedef GLsync in gstglfuncs.h */ + #include +-#undef GST_GL_HAVE_GLSYNC +-#define GST_GL_HAVE_GLSYNC 1 +-#include + + /* The glext.h guard was renamed in 2018, but some software which + * includes their own copy of the GL headers (such as qt) might have +@@ -46,6 +39,17 @@ + #endif + #endif + ++/* pulls in GLsync, see below */ ++#include ++ ++/* qt uses the same trick as us to typedef GLsync on GLES2 but to a different ++ * type which confuses the preprocessor. Instead of trying to reconcile the ++ * two, we instead use the GLsync definition from Qt from above, and ensure ++ * that we don't typedef GLsync in gstglfuncs.h */ ++#undef GST_GL_HAVE_GLSYNC ++#define GST_GL_HAVE_GLSYNC 1 ++#include ++ + #if defined(QT_OPENGL_ES_2) + #include + #include -- cgit 1.2.3-korg