From: Andrey Zhizhikin Date: Sat, 22 Feb 2020 14:23:56 +0000 (+0000) Subject: gstreamer1.0-plugins-base: Transition to meson based builds X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=f7608795ce9273090257f47015e367b7efc69989;p=meta-freescale.git gstreamer1.0-plugins-base: Transition to meson based builds Update gstreamer base plugins to meson build system. This update follows the strategy and description provided in commit [e957fbc5d82368934f721e3773bf3942c5177ed7] from upstream. Autotools patches are dropped from the layer and additional meson-relevant patches are introduced from upstream. In addition, patch required to support meson build of NXP fork is included. Signed-off-by: Andrey Zhizhikin --- diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-Makefile.am-prefix-calls-to-pkg-config-with-PKG_CONF.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-Makefile.am-prefix-calls-to-pkg-config-with-PKG_CONF.patch deleted file mode 100644 index 4f141866..00000000 --- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-Makefile.am-prefix-calls-to-pkg-config-with-PKG_CONF.patch +++ /dev/null @@ -1,301 +0,0 @@ -From ae10bb875c88321a719a3dbcc94c78eb75b4b97f Mon Sep 17 00:00:00 2001 -From: Andrey Zhizhikin -Date: Sun, 22 Dec 2019 14:34:16 +0000 -Subject: [PATCH 1/2] Makefile.am: prefix calls to pkg-config with - PKG_CONFIG_SYSROOT_DIR - -Rebase following patch to match version 1.16.0 of gstreamer - -From: Yuqing Zhu -Date: Fri, 20 Apr 2018 02:03:57 +0800 -Subject: [PATCH] Makefile.am: prefix calls to pkg-config with - PKG_CONFIG_SYSROOT_DIR - -Do patch refine base on commit: 990b653c7b6de1937ec759019982d6c5f15770f7 - -Upstream-Status: Pending [review on oe-core maillist] - -Signed-off-by: Yuqing Zhu -Signed-off-by: Andrey Zhizhikin ---- - gst-libs/gst/allocators/Makefile.am | 4 ++-- - gst-libs/gst/app/Makefile.am | 8 ++++---- - gst-libs/gst/audio/Makefile.am | 12 ++++++------ - gst-libs/gst/pbutils/Makefile.am | 12 ++++++------ - gst-libs/gst/riff/Makefile.am | 8 ++++---- - gst-libs/gst/rtp/Makefile.am | 8 ++++---- - gst-libs/gst/rtsp/Makefile.am | 8 ++++---- - gst-libs/gst/sdp/Makefile.am | 4 ++-- - gst-libs/gst/tag/Makefile.am | 8 ++++---- - gst-libs/gst/video/Makefile.am | 8 ++++---- - 10 files changed, 40 insertions(+), 40 deletions(-) - -diff --git a/gst-libs/gst/allocators/Makefile.am b/gst-libs/gst/allocators/Makefile.am -index 3e5f2a692..ca66056d3 100644 ---- a/gst-libs/gst/allocators/Makefile.am -+++ b/gst-libs/gst/allocators/Makefile.am -@@ -55,7 +55,7 @@ GstAllocators-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstallocators-@ - --c-include "gst/allocators/allocators.h" \ - -I$(top_srcdir)/gst-libs \ - -I$(top_builddir)/gst-libs \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ - --library=libgstallocators-@GST_API_VERSION@.la \ - --include=Gst-@GST_API_VERSION@ \ - --libtool="${LIBTOOL}" \ -@@ -79,7 +79,7 @@ typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib) - $(INTROSPECTION_COMPILER) \ - --includedir=$(srcdir) \ - --includedir=$(builddir) \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ - $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F) - - CLEANFILES = $(BUILT_GIRSOURCES) $(typelibs_DATA) -diff --git a/gst-libs/gst/app/Makefile.am b/gst-libs/gst/app/Makefile.am -index 11018b694..bd48a313c 100644 ---- a/gst-libs/gst/app/Makefile.am -+++ b/gst-libs/gst/app/Makefile.am -@@ -51,8 +51,8 @@ GstApp-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstapp-@GST_API_VERSIO - --c-include "gst/app/app.h" \ - -I$(top_srcdir)/gst-libs \ - -I$(top_builddir)/gst-libs \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - --library=libgstapp-@GST_API_VERSION@.la \ - --include=Gst-@GST_API_VERSION@ \ - --include=GstBase-@GST_API_VERSION@ \ -@@ -79,8 +79,8 @@ typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib) - $(INTROSPECTION_COMPILER) \ - --includedir=$(srcdir) \ - --includedir=$(builddir) \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F) - - CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA) -diff --git a/gst-libs/gst/audio/Makefile.am b/gst-libs/gst/audio/Makefile.am -index f2d46e8a8..482902746 100644 ---- a/gst-libs/gst/audio/Makefile.am -+++ b/gst-libs/gst/audio/Makefile.am -@@ -176,12 +176,12 @@ GstAudio-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstaudio-@GST_API_VE - -I$(top_srcdir)/gst-libs \ - -I$(top_builddir)/gst-libs \ - --c-include "gst/audio/audio.h" \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - --add-include-path="$(top_builddir)/gst-libs/gst/tag/" \ - --library=libgstaudio-@GST_API_VERSION@.la \ -- --library-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=libdir gstreamer-@GST_API_VERSION@` \ -- --library-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=libdir gstreamer-base-@GST_API_VERSION@` \ -+ --library-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=libdir gstreamer-@GST_API_VERSION@` \ -+ --library-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=libdir gstreamer-base-@GST_API_VERSION@` \ - --library-path="$(top_builddir)/gst-libs/gst/tag/" \ - --include=Gst-@GST_API_VERSION@ \ - --include=GstBase-@GST_API_VERSION@ \ -@@ -210,8 +210,8 @@ typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib) - --includedir=$(srcdir) \ - --includedir=$(builddir) \ - --includedir="$(top_builddir)/gst-libs/gst/tag/" \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ - $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F) - - CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA) -diff --git a/gst-libs/gst/pbutils/Makefile.am b/gst-libs/gst/pbutils/Makefile.am -index a771d5a8a..e926a5ef8 100644 ---- a/gst-libs/gst/pbutils/Makefile.am -+++ b/gst-libs/gst/pbutils/Makefile.am -@@ -88,14 +88,14 @@ GstPbutils-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstpbutils-@GST_AP - --c-include "gst/pbutils/pbutils.h" \ - -I$(top_srcdir)/gst-libs \ - -I$(top_builddir)/gst-libs \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - --add-include-path="$(top_builddir)/gst-libs/gst/tag/" \ - --add-include-path="$(top_builddir)/gst-libs/gst/video/" \ - --add-include-path="$(top_builddir)/gst-libs/gst/audio/" \ - --library=libgstpbutils-@GST_API_VERSION@.la \ -- --library-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=libdir gstreamer-@GST_API_VERSION@` \ -- --library-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=libdir gstreamer-base-@GST_API_VERSION@` \ -+ --library-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=libdir gstreamer-@GST_API_VERSION@` \ -+ --library-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=libdir gstreamer-base-@GST_API_VERSION@` \ - --library-path="$(top_builddir)/gst-libs/gst/tag/" \ - --library-path="$(top_builddir)/gst-libs/gst/video/" \ - --library-path="$(top_builddir)/gst-libs/gst/audio/" \ -@@ -128,8 +128,8 @@ typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib) - $(INTROSPECTION_COMPILER) \ - --includedir=$(srcdir) \ - --includedir=$(builddir) \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - --includedir="$(top_builddir)/gst-libs/gst/tag/" \ - --includedir="$(top_builddir)/gst-libs/gst/video/" \ - --includedir="$(top_builddir)/gst-libs/gst/audio/" \ -diff --git a/gst-libs/gst/riff/Makefile.am b/gst-libs/gst/riff/Makefile.am -index 8f32b48d6..ecec07d1a 100644 ---- a/gst-libs/gst/riff/Makefile.am -+++ b/gst-libs/gst/riff/Makefile.am -@@ -43,8 +43,8 @@ libgstriff_@GST_API_VERSION@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS) - # --c-include "gst/riff/riff.h" \ - # --add-include-path=$(builddir)/../tag \ - # --add-include-path=$(builddir)/../audio \ --# --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ --# --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+# --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+# --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - # --library=libgstriff-@GST_API_VERSION@.la \ - # --include=GstAudio-@GST_API_VERSION@ \ - # --include=GstTag-@GST_API_VERSION@ \ -@@ -75,8 +75,8 @@ libgstriff_@GST_API_VERSION@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS) - # --includedir=$(builddir) \ - # --includedir=$(builddir)/../tag \ - # --includedir=$(builddir)/../audio \ --# --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ --# --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+# --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+# --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - # $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F) - # - #CLEANFILES = $(BUILT_GIRSOURCES) $(typelibs_DATA) -diff --git a/gst-libs/gst/rtp/Makefile.am b/gst-libs/gst/rtp/Makefile.am -index f6b996324..25122188f 100644 ---- a/gst-libs/gst/rtp/Makefile.am -+++ b/gst-libs/gst/rtp/Makefile.am -@@ -66,8 +66,8 @@ GstRtp-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstrtp-@GST_API_VERSIO - --c-include "gst/rtp/rtp.h" \ - -I$(top_builddir)/gst-libs \ - -I$(top_srcdir)/gst-libs \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - --library=libgstrtp-@GST_API_VERSION@.la \ - --include=Gst-@GST_API_VERSION@ \ - --include=GstBase-@GST_API_VERSION@ \ -@@ -94,8 +94,8 @@ typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib) - $(INTROSPECTION_COMPILER) \ - --includedir=$(srcdir) \ - --includedir=$(builddir) \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F) - - CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA) -diff --git a/gst-libs/gst/rtsp/Makefile.am b/gst-libs/gst/rtsp/Makefile.am -index 02aaf4f9a..13ac1b395 100644 ---- a/gst-libs/gst/rtsp/Makefile.am -+++ b/gst-libs/gst/rtsp/Makefile.am -@@ -71,8 +71,8 @@ GstRtsp-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstrtsp-@GST_API_VERS - -I$(top_builddir)/gst-libs \ - -I$(top_srcdir)/gst-libs \ - --add-include-path=$(builddir)/../sdp \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - --library=libgstrtsp-@GST_API_VERSION@.la \ - --include=Gio-2.0 \ - --include=Gst-@GST_API_VERSION@ \ -@@ -104,8 +104,8 @@ typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib) - --includedir=$(srcdir) \ - --includedir=$(builddir) \ - --includedir=$(builddir)/../sdp \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F) - - CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA) -diff --git a/gst-libs/gst/sdp/Makefile.am b/gst-libs/gst/sdp/Makefile.am -index cf8c001ad..61b8d83db 100644 ---- a/gst-libs/gst/sdp/Makefile.am -+++ b/gst-libs/gst/sdp/Makefile.am -@@ -31,7 +31,7 @@ GstSdp-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstsdp-@GST_API_VERSIO - --warn-all \ - --c-include "gst/sdp/sdp.h" \ - -I$(top_srcdir)/gst-libs \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ - --library=libgstsdp-@GST_API_VERSION@.la \ - --include=Gst-@GST_API_VERSION@ \ - --libtool="${LIBTOOL}" \ -@@ -55,7 +55,7 @@ typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib) - $(INTROSPECTION_COMPILER) \ - --includedir=$(srcdir) \ - --includedir=$(builddir) \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ - $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F) - - CLEANFILES = $(BUILT_GIRSOURCES) $(typelibs_DATA) -diff --git a/gst-libs/gst/tag/Makefile.am b/gst-libs/gst/tag/Makefile.am -index 83bda29eb..6c3accbe0 100644 ---- a/gst-libs/gst/tag/Makefile.am -+++ b/gst-libs/gst/tag/Makefile.am -@@ -61,8 +61,8 @@ GstTag-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgsttag-@GST_API_VERSIO - --c-include "gst/tag/tag.h" \ - -I$(top_srcdir)/gst-libs \ - -I$(top_builddir)/gst-libs \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - --library=libgsttag-@GST_API_VERSION@.la \ - --include=Gst-@GST_API_VERSION@ \ - --include=GstBase-@GST_API_VERSION@ \ -@@ -89,8 +89,8 @@ typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib) - $(INTROSPECTION_COMPILER) \ - --includedir=$(srcdir) \ - --includedir=$(builddir) \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F) - - CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA) -diff --git a/gst-libs/gst/video/Makefile.am b/gst-libs/gst/video/Makefile.am -index 22c3f96f9..97342ef3c 100644 ---- a/gst-libs/gst/video/Makefile.am -+++ b/gst-libs/gst/video/Makefile.am -@@ -126,8 +126,8 @@ GstVideo-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstvideo-@GST_API_VE - --c-include "gst/video/video.h" \ - -I$(top_srcdir)/gst-libs \ - -I$(top_builddir)/gst-libs \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -- --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - --library=libgstvideo-@GST_API_VERSION@.la \ - --include=Gst-@GST_API_VERSION@ \ - --include=GstBase-@GST_API_VERSION@ \ -@@ -154,8 +154,8 @@ typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib) - $(INTROSPECTION_COMPILER) \ - --includedir=$(srcdir) \ - --includedir=$(builddir) \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -- --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ -+ --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \ - $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F) - - CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA) --- -2.17.1 - diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gst-libs-gst-gl-wayland-fix-meson-build.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gst-libs-gst-gl-wayland-fix-meson-build.patch new file mode 100644 index 00000000..61baf2f9 --- /dev/null +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gst-libs-gst-gl-wayland-fix-meson-build.patch @@ -0,0 +1,36 @@ +From a145a129a8122f21c1e243b3dc2e5708f4c13bef Mon Sep 17 00:00:00 2001 +From: Andrey Zhizhikin +Date: Thu, 23 Jan 2020 12:54:10 +0000 +Subject: [PATCH] gst-libs gst gl wayland: fix meson build + +Since introduction of meson build system, modifications introduced in +NXP fork are breaking the build, where xdg-shell-client-protocol.h +is searched via relative path. This code is only present in NXP fork and +should be removed. + +This reverts commit [48bde732b00fb42df636ebbaf3b06e5e7971c206] +("wayland: fix build break in yocto") from upstream. + +Upstream-Status: Pending + +Signed-off-by: Andrey Zhizhikin +--- + gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h b/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h +index d1795591f..89dedd9b5 100644 +--- a/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h ++++ b/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h +@@ -22,7 +22,7 @@ + #define __GST_GL_WINDOW_WAYLAND_EGL_H__ + + #include +-#include ++#include "xdg-shell-client-protocol.h" + #include + #include + +-- +2.17.1 + diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstreamer-plugins-base-fix-meson-build-in-nxp-fork.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstreamer-plugins-base-fix-meson-build-in-nxp-fork.patch new file mode 100644 index 00000000..da152531 --- /dev/null +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstreamer-plugins-base-fix-meson-build-in-nxp-fork.patch @@ -0,0 +1,220 @@ +From def285f623bc30b9d1acede00393188e693cc741 Mon Sep 17 00:00:00 2001 +From: Andrey Zhizhikin +Date: Sat, 22 Feb 2020 13:22:57 +0000 +Subject: [PATCH] gstreamer-plugins-base: fix meson build in nxp fork + +- Add missing IMX header file into istall target; +- Allocator's meta data files are missing in meson.build, bring them back; +- Add ION NXP-specific allocator to meson.build; +- Introduce additional configuration option to pass extra include paths, + which are required to build ION allocator; +- Some video sources are missing, bring them also into the build; + +Upstream-Status: Pending + +Signed-off-by: Andrey Zhizhikin +--- + gst-libs/gst/allocators/meson.build | 30 +++++++++++++++++++++++++++-- + gst-libs/gst/gl/gstglconfig.h.meson | 2 ++ + gst-libs/gst/gl/meson.build | 20 +++++++++++++++++++ + gst-libs/gst/meson.build | 6 ++++++ + gst-libs/gst/video/meson.build | 11 +++++++++++ + meson.build | 3 +++ + meson_options.txt | 4 ++++ + 7 files changed, 74 insertions(+), 2 deletions(-) + +diff --git a/gst-libs/gst/allocators/meson.build b/gst-libs/gst/allocators/meson.build +index 364baeebf..30b1495c9 100644 +--- a/gst-libs/gst/allocators/meson.build ++++ b/gst-libs/gst/allocators/meson.build +@@ -5,18 +5,44 @@ gst_allocators_headers = [ + 'gstphysmemory.h', + 'gstdmabuf.h', + ] ++ ++imx_gst_allocators_headers = [ ++ 'gstphymemmeta.h', ++ 'gstdmabufmeta.h', ++ 'gstallocatorphymem.h', ++] ++ ++if cc.has_header('linux/ion.h', include_directories : imx_includes) ++ imx_gst_allocators_headers += [ ++ 'gstionmemory.h', ++ ] ++endif ++ ++gst_allocators_headers += imx_gst_allocators_headers ++ + install_headers(gst_allocators_headers, subdir : 'gstreamer-1.0/gst/allocators/') + + gst_allocators_sources = [ 'gstdmabuf.c', 'gstfdmemory.c', 'gstphysmemory.c'] ++ ++imx_gst_allocators_sources = ['gstdmabufmeta.c', 'gstphymemmeta.c', 'gstallocatorphymem.c'] ++ ++if cc.has_header('linux/ion.h', include_directories : imx_includes) ++ imx_gst_allocators_sources += [ ++ 'gstionmemory.c', ++ ] ++endif ++ ++gst_allocators_sources += imx_gst_allocators_sources ++ + gstallocators = library('gstallocators-@0@'.format(api_version), + gst_allocators_sources, + c_args : gst_plugins_base_args + ['-DBUILDING_GST_ALLOCATORS'], +- include_directories: [configinc, libsinc], ++ include_directories: [configinc, libsinc, imx_includes], + version : libversion, + soversion : soversion, + darwin_versions : osxversion, + install : true, +- dependencies : [gst_dep], ++ dependencies : [video_dep, gst_dep], + ) + + allocators_gen_sources = [] +diff --git a/gst-libs/gst/gl/gstglconfig.h.meson b/gst-libs/gst/gl/gstglconfig.h.meson +index 11795c16c..66cd54a7e 100644 +--- a/gst-libs/gst/gl/gstglconfig.h.meson ++++ b/gst-libs/gst/gl/gstglconfig.h.meson +@@ -32,8 +32,10 @@ G_BEGIN_DECLS + #mesondefine GST_GL_HAVE_PLATFORM_CGL + #mesondefine GST_GL_HAVE_PLATFORM_EAGL + ++#mesondefine GST_GL_HAVE_IONDMA + #mesondefine GST_GL_HAVE_DMABUF + #mesondefine GST_GL_HAVE_VIV_DIRECTVIV ++#mesondefine GST_GL_HAVE_PHYMEM + + #mesondefine GST_GL_HAVE_GLEGLIMAGEOES + #mesondefine GST_GL_HAVE_GLCHAR +diff --git a/gst-libs/gst/gl/meson.build b/gst-libs/gst/gl/meson.build +index 0e0ba1b7d..6f6c6866d 100644 +--- a/gst-libs/gst/gl/meson.build ++++ b/gst-libs/gst/gl/meson.build +@@ -123,8 +123,10 @@ glconf_options = [ + 'GST_GL_HAVE_PLATFORM_CGL', + 'GST_GL_HAVE_PLATFORM_EAGL', + ++ 'GST_GL_HAVE_IONDMA', + 'GST_GL_HAVE_DMABUF', + 'GST_GL_HAVE_VIV_DIRECTVIV', ++ 'GST_GL_HAVE_PHYMEM', + + 'GST_GL_HAVE_GLEGLIMAGEOES', + 'GST_GL_HAVE_GLCHAR', +@@ -146,6 +148,18 @@ if unneeded_dep.found() + error ('Found unfindable dependency') + endif + ++if cc.has_header('linux/ion.h', include_directories : imx_includes) ++ glconf.set10('GST_GL_HAVE_IONDMA', 1) ++ gl_sources += [ ++ 'gstglmemorydma.c', ++ ] ++ gl_headers += [ ++ 'gstglmemorydma.h', ++ ] ++else ++ error('i.MX platform requires ION support to be enabled!') ++endif ++ + # OpenGL/GLES2 libraries + gl_lib_deps = [] + # GL platform - EGL, GLX, CGL, WGL, etc +@@ -501,6 +515,7 @@ if need_platform_egl != 'no' + glconf.set10('GST_GL_HAVE_DMABUF', 1) + endif + ++ + egl_includes = ''' + #include + #include +@@ -808,9 +823,14 @@ if need_platform_egl != 'no' and need_win_viv_fb != 'no' + enabled_gl_winsys += 'viv-fb' + glconf.set10('GST_GL_HAVE_WINDOW_VIV_FB', 1) + glconf.set10('GST_GL_HAVE_VIV_DIRECTVIV', 1) ++ glconf.set10('GST_GL_HAVE_PHYMEM', 1) + gl_sources += [ + 'viv-fb/gstgldisplay_viv_fb.c', + 'viv-fb/gstglwindow_viv_fb_egl.c', ++ 'gstglphymemory.c', ++ ] ++ gl_headers += [ ++ 'gstglphymemory.h', + ] + gl_cpp_args += ['-DEGL_API_FB'] + endif +diff --git a/gst-libs/gst/meson.build b/gst-libs/gst/meson.build +index cd3b5b043..1935f46e5 100644 +--- a/gst-libs/gst/meson.build ++++ b/gst-libs/gst/meson.build +@@ -11,3 +11,9 @@ subdir('app') + subdir('allocators') + # FIXME: gl deps are automagic + subdir('gl') ++ ++# Install dangling imx header, required by other plugins ++gst_imx_header = [ ++ 'gstimxcommon.h', ++] ++install_headers(gst_imx_header, subdir : 'gstreamer-1.0/') +diff --git a/gst-libs/gst/video/meson.build b/gst-libs/gst/video/meson.build +index b4dfcdf65..d8531f199 100644 +--- a/gst-libs/gst/video/meson.build ++++ b/gst-libs/gst/video/meson.build +@@ -35,6 +35,11 @@ video_sources = [ + 'videooverlay.c', + ] + ++imx_video_sources = [ ++ 'gstvideohdr10meta.c', ++] ++video_sources += imx_video_sources ++ + video_headers = [ + 'colorbalance.h', + 'colorbalancechannel.h', +@@ -70,6 +75,12 @@ video_headers = [ + 'video-overlay-composition.h', + 'video-multiview.h', + ] ++ ++imx_video_headers = [ ++ 'gstvideohdr10meta.h', ++] ++video_headers += imx_video_headers ++ + install_headers(video_headers, subdir : 'gstreamer-1.0/gst/video/') + + video_mkenum_headers = [ +diff --git a/meson.build b/meson.build +index 2fca28205..7781934cd 100644 +--- a/meson.build ++++ b/meson.build +@@ -103,6 +103,9 @@ if glib_checks.disabled() or (glib_checks.auto() and not gst_version_is_dev) + add_project_arguments('-DG_DISABLE_CHECKS', language: 'c') + endif + ++# Define i.MX-specific include path as variable from options ++imx_includes = include_directories(get_option('extra_imx_incdir')) ++ + check_headers = [ + ['HAVE_DLFCN_H', 'dlfcn.h'], + ['HAVE_EMMINTRIN_H', 'emmintrin.h'], +diff --git a/meson_options.txt b/meson_options.txt +index e7af4dd45..d44401ca6 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -85,3 +85,7 @@ option('package-name', type : 'string', yield : true, + description : 'package name to use in plugins') + option('package-origin', type : 'string', value : 'Unknown package origin', yield : true, + description : 'package origin URL to use in plugins') ++ ++# NXP specific options ++option('extra_imx_incdir', type : 'string', yield : true, description : 'i.MX specific header include path') ++ +-- +2.17.1 + diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-meson-build-gir-even-when-cross-compiling-if-introsp.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-meson-build-gir-even-when-cross-compiling-if-introsp.patch new file mode 100644 index 00000000..55871883 --- /dev/null +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-meson-build-gir-even-when-cross-compiling-if-introsp.patch @@ -0,0 +1,34 @@ +From f82db8496df8ffb8352248e895258c19f8f4776b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= +Date: Thu, 17 Oct 2019 20:06:24 +0100 +Subject: [PATCH] meson: build gir even when cross-compiling if introspection + was enabled explicitly + +This can be made to work in certain circumstances when +cross-compiling, so default to not building g-i stuff +when cross-compiling, but allow it if introspection was +enabled explicitly via -Dintrospection=enabled. + +See gstreamer/gstreamer#454 and gstreamer/gstreamer#381. + +Upstream-Status: Backport [30672ba7d134553e59935ddc875104adba26f25c] + +Signed-off-by: Carlos Rafael Giani + +--- + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 2fca28205..2714af718 100644 +--- a/meson.build ++++ b/meson.build +@@ -355,7 +355,7 @@ endif + + gir = find_program('g-ir-scanner', required : get_option('introspection')) + gnome = import('gnome') +-build_gir = gir.found() and not meson.is_cross_build() ++build_gir = gir.found() and (not meson.is_cross_build() or get_option('introspection').enabled()) + gir_init_section = [ '--add-init-section=extern void gst_init(gint*,gchar**);' + \ + 'g_setenv("GST_REGISTRY_DISABLE", "yes", TRUE);' + \ + 'g_setenv("GST_REGISTRY_1.0", "@0@", TRUE);'.format(meson.current_build_dir() + '/gir_empty_registry.reg') + \ diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-meson-Add-variables-for-gir-files.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-meson-Add-variables-for-gir-files.patch new file mode 100644 index 00000000..9494f622 --- /dev/null +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-meson-Add-variables-for-gir-files.patch @@ -0,0 +1,233 @@ +From 7a21c86a3facfc7fe8285e764324839b2e55df8a Mon Sep 17 00:00:00 2001 +From: Thibault Saunier +Date: Mon, 22 Oct 2018 11:44:37 +0200 +Subject: [PATCH] meson: Add variables for gir files + +And flatten list of sources for dependencies + +Upstream-Status: Backport [685731e989dc074a4b0d48b6c8062e2738f09719] + +Signed-off-by: Carlos Rafael Giani + +--- + gst-libs/gst/allocators/meson.build | 5 +++-- + gst-libs/gst/app/meson.build | 6 ++++-- + gst-libs/gst/audio/meson.build | 5 +++-- + gst-libs/gst/pbutils/meson.build | 5 +++-- + gst-libs/gst/rtp/meson.build | 6 ++++-- + gst-libs/gst/rtsp/meson.build | 5 +++-- + gst-libs/gst/sdp/meson.build | 6 ++++-- + gst-libs/gst/tag/meson.build | 5 +++-- + gst-libs/gst/video/meson.build | 5 +++-- + 9 files changed, 30 insertions(+), 18 deletions(-) + +diff --git a/gst-libs/gst/allocators/meson.build b/gst-libs/gst/allocators/meson.build +index 364baeebf..56f156dc3 100644 +--- a/gst-libs/gst/allocators/meson.build ++++ b/gst-libs/gst/allocators/meson.build +@@ -22,7 +22,7 @@ gstallocators = library('gstallocators-@0@'.format(api_version), + allocators_gen_sources = [] + if build_gir + gst_gir_extra_args = gir_init_section + [ '--c-include=gst/allocators/allocators.h' ] +- allocators_gen_sources += [gnome.generate_gir(gstallocators, ++ allocators_gir = gnome.generate_gir(gstallocators, + sources : gst_allocators_sources + gst_allocators_headers, + namespace : 'GstAllocators', + nsversion : api_version, +@@ -33,7 +33,8 @@ if build_gir + install : true, + extra_args : gst_gir_extra_args, + dependencies : [gst_dep] +- )] ++ ) ++ allocators_gen_sources += allocators_gir + endif + + allocators_dep = declare_dependency(link_with: gstallocators, +diff --git a/gst-libs/gst/app/meson.build b/gst-libs/gst/app/meson.build +index 81dd0f42c..7a90f5e10 100644 +--- a/gst-libs/gst/app/meson.build ++++ b/gst-libs/gst/app/meson.build +@@ -32,7 +32,7 @@ gstapp = library('gstapp-@0@'.format(api_version), + + if build_gir + gst_gir_extra_args = gir_init_section + [ '--c-include=gst/app/app.h' ] +- app_gen_sources += [gnome.generate_gir(gstapp, ++ app_gir = gnome.generate_gir(gstapp, + sources : app_sources + app_headers + [gstapp_c] + [gstapp_h], + namespace : 'GstApp', + nsversion : api_version, +@@ -43,7 +43,9 @@ if build_gir + install : true, + extra_args : gst_gir_extra_args, + dependencies : [gst_dep, gst_base_dep] +- )] ++ ) ++ ++ app_gen_sources += app_gir + endif + + app_dep = declare_dependency(link_with: gstapp, +diff --git a/gst-libs/gst/audio/meson.build b/gst-libs/gst/audio/meson.build +index 0e4efab2e..2a449d4bf 100644 +--- a/gst-libs/gst/audio/meson.build ++++ b/gst-libs/gst/audio/meson.build +@@ -153,7 +153,7 @@ gstaudio = library('gstaudio-@0@'.format(api_version), + + if build_gir + gst_gir_extra_args = gir_init_section + [ '--c-include=gst/audio/audio.h' ] +- audio_gen_sources += [gnome.generate_gir(gstaudio, ++ audio_gir = gnome.generate_gir(gstaudio, + sources : audio_src + audio_headers + [gstaudio_c] + [gstaudio_h], + namespace : 'GstAudio', + nsversion : api_version, +@@ -164,7 +164,8 @@ if build_gir + install : true, + extra_args : gst_gir_extra_args, + dependencies : gstaudio_deps +- )] ++ ) ++ audio_gen_sources += [audio_gir] + endif + + audio_dep = declare_dependency(link_with : gstaudio, +diff --git a/gst-libs/gst/pbutils/meson.build b/gst-libs/gst/pbutils/meson.build +index 2faf62622..0e96722fd 100644 +--- a/gst-libs/gst/pbutils/meson.build ++++ b/gst-libs/gst/pbutils/meson.build +@@ -63,7 +63,7 @@ pbutils = library('gstpbutils-@0@'.format(api_version), + pbutils_gen_sources = [gstpbutils_h, gst_pbutils_version_h] + if build_gir + gst_gir_extra_args = gir_init_section + [ '--c-include=gst/pbutils/pbutils.h' ] +- pbutils_gen_sources += [gnome.generate_gir(pbutils, ++ pbutils_gir = gnome.generate_gir(pbutils, + sources : pbutils_sources + pbutils_headers + [gstpbutils_h, gst_pbutils_version_h], + namespace : 'GstPbutils', + nsversion : api_version, +@@ -74,7 +74,8 @@ if build_gir + install : true, + extra_args : gst_gir_extra_args, + dependencies : gstpbutils_deps +- )] ++ ) ++ pbutils_gen_sources += [pbutils_gir] + endif + + pbutils_dep = declare_dependency(link_with : pbutils, +diff --git a/gst-libs/gst/rtp/meson.build b/gst-libs/gst/rtp/meson.build +index f47ec6592..7ea6658d5 100644 +--- a/gst-libs/gst/rtp/meson.build ++++ b/gst-libs/gst/rtp/meson.build +@@ -49,7 +49,7 @@ gst_rtp = library('gstrtp-@0@'.format(api_version), + rtp_gen_sources = [gstrtp_enum_h] + if build_gir + gst_gir_extra_args = gir_init_section + [ '--c-include=gst/rtp/rtp.h' ] +- rtp_gen_sources += [gnome.generate_gir(gst_rtp, ++ rtp_gir = gnome.generate_gir(gst_rtp, + sources : rtp_sources + rtp_headers + [gstrtp_enum_c] + [gstrtp_enum_h], + namespace : 'GstRtp', + nsversion : api_version, +@@ -60,7 +60,9 @@ if build_gir + install : true, + extra_args : gst_gir_extra_args, + dependencies : gstrtp_deps +- )] ++ ) ++ ++ rtp_gen_sources += [rtp_gir] + endif + + +diff --git a/gst-libs/gst/rtsp/meson.build b/gst-libs/gst/rtsp/meson.build +index 27e309d5a..3632adceb 100644 +--- a/gst-libs/gst/rtsp/meson.build ++++ b/gst-libs/gst/rtsp/meson.build +@@ -54,7 +54,7 @@ gst_rtsp = library('gstrtsp-@0@'.format(api_version), + rtsp_gen_sources = [gstrtsp_h] + if build_gir + gst_gir_extra_args = gir_init_section + [ '--c-include=gst/rtsp/rtsp.h' ] +- rtsp_gen_sources += [gnome.generate_gir(gst_rtsp, ++ rtsp_gir = gnome.generate_gir(gst_rtsp, + sources : rtsp_sources + rtsp_headers + [gstrtsp_c] + [gstrtsp_h], + namespace : 'GstRtsp', + nsversion : api_version, +@@ -65,7 +65,8 @@ if build_gir + install : true, + extra_args : gst_gir_extra_args, + dependencies : gstrtsp_deps + [sdp_dep] +- )] ++ ) ++ rtsp_gen_sources += [rtsp_gir] + endif + + rtsp_dep = declare_dependency(link_with : gst_rtsp, +diff --git a/gst-libs/gst/sdp/meson.build b/gst-libs/gst/sdp/meson.build +index 62c18b732..24cdb5293 100644 +--- a/gst-libs/gst/sdp/meson.build ++++ b/gst-libs/gst/sdp/meson.build +@@ -23,7 +23,7 @@ gstsdp = library('gstsdp-@0@'.format(api_version), + sdp_gen_sources = [] + if build_gir + gst_gir_extra_args = gir_init_section + [ '--c-include=gst/sdp/sdp.h' ] +- sdp_gen_sources += [gnome.generate_gir(gstsdp, ++ sdp_gir = gnome.generate_gir(gstsdp, + sources : gst_sdp_sources + gst_sdp_headers, + namespace : 'GstSdp', + nsversion : api_version, +@@ -34,7 +34,9 @@ if build_gir + install : true, + extra_args : gst_gir_extra_args, + dependencies : rtsp_deps +- )] ++ ) ++ ++ sdp_gen_sources += [sdp_gir] + endif + + sdp_dep = declare_dependency(link_with: gstsdp, +diff --git a/gst-libs/gst/tag/meson.build b/gst-libs/gst/tag/meson.build +index 27e66fd63..5ec37392a 100644 +--- a/gst-libs/gst/tag/meson.build ++++ b/gst-libs/gst/tag/meson.build +@@ -93,7 +93,7 @@ gsttag = library('gsttag-@0@'.format(api_version), + + if build_gir + gst_gir_extra_args = gir_init_section + [ '--c-include=gst/tag/tag.h' ] +- tag_gen_sources += [gnome.generate_gir(gsttag, ++ tag_gir = gnome.generate_gir(gsttag, + sources : tag_sources + tag_headers + [gsttag_h] + [gsttag_c], + namespace : 'GstTag', + nsversion : api_version, +@@ -104,7 +104,8 @@ if build_gir + install : true, + extra_args : gst_gir_extra_args, + dependencies : tag_deps +- )] ++ ) ++ tag_gen_sources += [tag_gir] + endif + + tag_dep = declare_dependency(link_with: gsttag, +diff --git a/gst-libs/gst/video/meson.build b/gst-libs/gst/video/meson.build +index b4dfcdf65..036c3a6a7 100644 +--- a/gst-libs/gst/video/meson.build ++++ b/gst-libs/gst/video/meson.build +@@ -135,7 +135,7 @@ gstvideo = library('gstvideo-@0@'.format(api_version), + + if build_gir + gst_gir_extra_args = gir_init_section + [ '--c-include=gst/video/video.h' ] +- video_gen_sources += [gnome.generate_gir(gstvideo, ++ video_gir = gnome.generate_gir(gstvideo, + sources : video_sources + video_headers + [gstvideo_c] + [gstvideo_h], + namespace : 'GstVideo', + nsversion : api_version, +@@ -146,7 +146,8 @@ if build_gir + install : true, + extra_args : gst_gir_extra_args, + dependencies : gstvideo_deps +- )] ++ ) ++ video_gen_sources += [video_gir] + endif + + video_dep = declare_dependency(link_with : gstvideo, diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch deleted file mode 100644 index b3e4326b..00000000 --- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 836769c4a26231f36a48aeadb9e332bd7224c785 Mon Sep 17 00:00:00 2001 -From: Andrey Zhizhikin -Date: Sun, 22 Dec 2019 14:49:57 +0000 -Subject: [PATCH 2/2] rtsp: drop incorrect reference to gstreamer-sdp in - Makefile.am - -Rebase following patch from upstream to match NXP version 1.16: - -From: Alexander Kanavin -Date: Mon, 26 Oct 2015 17:30:14 +0200 -Subject: [PATCH 4/4] rtsp: drop incorrect reference to gstreamer-sdp in - Makefile.am - -Upstream-Status: Pending [review on oe-core maillist] -Signed-off-by: Alexander Kanavin -Signed-off-by: Andrey Zhizhikin ---- - gst-libs/gst/rtsp/Makefile.am | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/gst-libs/gst/rtsp/Makefile.am b/gst-libs/gst/rtsp/Makefile.am -index 13ac1b395..8b03125c7 100644 ---- a/gst-libs/gst/rtsp/Makefile.am -+++ b/gst-libs/gst/rtsp/Makefile.am -@@ -82,7 +82,6 @@ GstRtsp-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstrtsp-@GST_API_VERS - --pkg gio-2.0 \ - --pkg gstreamer-@GST_API_VERSION@ \ - --pkg gstreamer-base-@GST_API_VERSION@ \ -- --pkg gstreamer-sdp-@GST_API_VERSION@ \ - --pkg-export gstreamer-rtsp-@GST_API_VERSION@ \ - --add-init-section="$(INTROSPECTION_INIT)" \ - --output $@ \ --- -2.17.1 - diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-riff-add-missing-include-directories-when-calling-in.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-riff-add-missing-include-directories-when-calling-in.patch deleted file mode 100644 index 9b66f7f4..00000000 --- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-riff-add-missing-include-directories-when-calling-in.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 3c2c2d5dd08aa30ed0e8acd8566ec99412bb8209 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Mon, 26 Oct 2015 17:29:37 +0200 -Subject: [PATCH 3/4] riff: add missing include directories when calling - introspection scanner - -Upstream-Status: Pending [review on oe-core maillist] -Signed-off-by: Alexander Kanavin ---- - gst-libs/gst/riff/Makefile.am | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/gst-libs/gst/riff/Makefile.am b/gst-libs/gst/riff/Makefile.am -index 0a115cc..5057a58 100644 ---- a/gst-libs/gst/riff/Makefile.am -+++ b/gst-libs/gst/riff/Makefile.am -@@ -39,6 +39,8 @@ libgstriff_@GST_API_VERSION@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS) - # --strip-prefix=Gst \ - # --warn-all \ - # --c-include "gst/riff/riff.h" \ -+# -I$(top_srcdir)/gst-libs \ -+# -I$(top_builddir)/gst-libs \ - # --add-include-path=$(builddir)/../tag \ - # --add-include-path=$(builddir)/../audio \ - # --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \ --- -2.6.2 - diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0005-viv-fb-Make-sure-config.h-is-included.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0005-viv-fb-Make-sure-config.h-is-included.patch new file mode 100644 index 00000000..731ba873 --- /dev/null +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0005-viv-fb-Make-sure-config.h-is-included.patch @@ -0,0 +1,30 @@ +From 616cf194dfd26818ed7b776321582b8e0ff9b3f1 Mon Sep 17 00:00:00 2001 +From: Carlos Rafael Giani +Date: Tue, 21 May 2019 14:01:11 +0200 +Subject: [PATCH] viv-fb: Make sure config.h is included + +This prevents build errors due to missing GST_API_* symbols + +Upstream-Status: Pending + +Signed-off-by: Carlos Rafael Giani + +--- + gst-libs/gst/gl/gl-prelude.h | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/gst-libs/gst/gl/gl-prelude.h b/gst-libs/gst/gl/gl-prelude.h +index 05e1f6229..96ce5e685 100644 +--- a/gst-libs/gst/gl/gl-prelude.h ++++ b/gst-libs/gst/gl/gl-prelude.h +@@ -22,6 +22,10 @@ + #ifndef __GST_GL_PRELUDE_H__ + #define __GST_GL_PRELUDE_H__ + ++#ifdef HAVE_CONFIG_H ++#include "config.h" ++#endif ++ + #include + + #ifdef BUILDING_GST_GL diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0009-glimagesink-Downrank-to-marginal.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0009-glimagesink-Downrank-to-marginal.patch new file mode 100644 index 00000000..fc67a486 --- /dev/null +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0009-glimagesink-Downrank-to-marginal.patch @@ -0,0 +1,30 @@ +From f18f1206ec44f4154e60546ecb82823f7a6569d7 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Thu, 24 Sep 2015 19:47:32 +0300 +Subject: [PATCH] glimagesink: Downrank to marginal + +On desktop, where there is good OpenGL, xvimagesink will come up first, +on other platforms, OpenGL can't be trusted because it's either software (like +in a VM) or broken (like on embedded)., so let ximagesink come above. + +Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=751684] + +Signed-off-by: Alexander Kanavin + +--- + ext/gl/gstopengl.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ext/gl/gstopengl.c b/ext/gl/gstopengl.c +index 302e8452c..463be9cd8 100644 +--- a/ext/gl/gstopengl.c ++++ b/ext/gl/gstopengl.c +@@ -127,7 +127,7 @@ plugin_init (GstPlugin * plugin) + #endif + + if (!gst_element_register (plugin, "glimagesink", +- GST_RANK_SECONDARY, gst_gl_image_sink_bin_get_type ())) { ++ GST_RANK_MARGINAL, gst_gl_image_sink_bin_get_type ())) { + return FALSE; + } + diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/make-gio_unix_2_0-dependency-configurable.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/make-gio_unix_2_0-dependency-configurable.patch deleted file mode 100644 index 23950b67..00000000 --- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/make-gio_unix_2_0-dependency-configurable.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 7ffa6e3d00e1d8a060f3f4c2bb9a72691af05d79 Mon Sep 17 00:00:00 2001 -From: Andre McCurdy -Date: Wed, 20 Jan 2016 13:00:00 -0800 -Subject: [PATCH] make gio_unix_2_0 dependency configurable - -Prior to 1.7.1, gst-plugins-base accepted a configure option to -disable gio_unix_2_0, however it was implemented incorrectly using -AG_GST_CHECK_FEATURE. That was fixed in 1.7.1 by making the -dependency unconditional. - - http://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=aadefefba88afe4acbe64454650f24e7ce7c8d70 - -To make builds deterministic, re-instate support for ---disable-gio_unix_2_0, but implement it using the AC_ARG_ENABLE -instead of AG_GST_CHECK_FEATURE. - -Upstream-Status: Pending - -Signed-off-by: Andre McCurdy - ---- - configure.ac | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/configure.ac b/configure.ac -index 12807bc..35a0bf3 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -806,9 +806,16 @@ AM_CONDITIONAL(HAVE_PNG, test "x$HAVE_PNG" = "xyes") - AM_CONDITIONAL(HAVE_JPEG, test "x$HAVE_JPEG" = "xyes") - - dnl *** gio-unix-2.0 for tests/check/pipelines/tcp.c *** -+AC_ARG_ENABLE([gio_unix_2_0], -+ [AS_HELP_STRING([--disable-gio_unix_2_0],[disable use of gio_unix_2_0])], -+ [], -+ [enable_gio_unix_2_0=yes]) -+ -+if test "x${enable_gio_unix_2_0}" != "xno"; then - PKG_CHECK_MODULES(GIO_UNIX_2_0, gio-unix-2.0 >= 2.24, - HAVE_GIO_UNIX_2_0="yes", - HAVE_GIO_UNIX_2_0="no") -+fi - AM_CONDITIONAL(USE_GIO_UNIX_2_0, test "x$HAVE_GIO_UNIX_2_0" = "xyes") - - dnl *** finalize CFLAGS, LDFLAGS, LIBS diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.imx.bb index 1310d94d..0329fc2a 100644 --- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.imx.bb +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.imx.bb @@ -4,81 +4,97 @@ LICENSE = "GPLv2+ & LGPLv2+" LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \ file://common/coverage/coverage-report.pl;beginline=2;endline=17;md5=a4e1830fce078028c8f0974161272607" -DEPENDS += "iso-codes util-linux" -DEPENDS_append_imxgpu2d = " virtual/libg2d" - GST1.0-PLUGINS-BASE_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-base.git;protocol=https" SRCBRANCH = "MM_04.05.01_1909_L4.19.35" SRCREV = "df30480711d68a1c1d2152bf4d6a7b245a85f967" -SRC_URI = " \ - ${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} \ - file://0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch \ - file://make-gio_unix_2_0-dependency-configurable.patch \ - file://0001-Makefile.am-prefix-calls-to-pkg-config-with-PKG_CONF.patch \ - file://0003-riff-add-missing-include-directories-when-calling-in.patch \ - file://0002-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch \ -" +SRC_URI = "${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} \ + file://0001-meson-build-gir-even-when-cross-compiling-if-introsp.patch \ + file://0001-gstreamer-plugins-base-fix-meson-build-in-nxp-fork.patch \ + file://0002-meson-Add-variables-for-gir-files.patch \ + file://0005-viv-fb-Make-sure-config.h-is-included.patch \ + file://0009-glimagesink-Downrank-to-marginal.patch \ + file://0001-gst-libs-gst-gl-wayland-fix-meson-build.patch \ + " S = "${WORKDIR}/git" -inherit gettext use-imx-headers +DEPENDS += "iso-codes util-linux zlib" +DEPENDS_append_imxgpu2d = " virtual/libg2d" -DEFAULT_PREFERENCE = "-1" +inherit use-imx-headers gobject-introspection gtk-doc -EXTRA_AUTORECONF = "" +DEFAULT_PREFERENCE = "-1" -# opengl packageconfig factored out to make it easy for distros -# and BSP layers to pick either (desktop) opengl, gles2, or no GL PACKAGES_DYNAMIC =+ "^libgst.*" +# opengl packageconfig factored out to make it easy for distros +# and BSP layers to choose OpenGL APIs/platforms/window systems PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}" PACKAGECONFIG ??= " \ ${GSTREAMER_ORC} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'alsa x11', d)} \ - ogg pango theora vorbis \ ${PACKAGECONFIG_GL} \ - gio-unix-2.0 zlib \ + ${@bb.utils.filter('DISTRO_FEATURES', 'alsa x11', d)} \ + ogg pango png theora vorbis \ ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland egl', '', d)} \ " +OPENGL_APIS = 'opengl gles2' +OPENGL_PLATFORMS = 'egl' +OPENGL_WINSYS = 'x11 wayland gbm' + X11DEPENDS = "virtual/libx11 libsm libxrender libxv" -X11ENABLEOPTS = "--enable-x --enable-xvideo --enable-xshm" -X11DISABLEOPTS = "--disable-x --disable-xvideo --disable-xshm" - -PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib" -PACKAGECONFIG[cdparanoia] = "--enable-cdparanoia,--disable-cdparanoia,cdparanoia" -PACKAGECONFIG[ivorbis] = "--enable-ivorbis,--disable-ivorbis,tremor" -PACKAGECONFIG[ogg] = "--enable-ogg,--disable-ogg,libogg" -PACKAGECONFIG[opus] = "--enable-opus,--disable-opus,libopus" -PACKAGECONFIG[pango] = "--enable-pango,--disable-pango,pango" -PACKAGECONFIG[theora] = "--enable-theora,--disable-theora,libtheora" -PACKAGECONFIG[visual] = "--enable-libvisual,--disable-libvisual,libvisual" -PACKAGECONFIG[vorbis] = "--enable-vorbis,--disable-vorbis,libvorbis" +X11ENABLEOPTS = "-Dx11=enabled -Dxvideo=enabled -Dxshm=enabled" +X11DISABLEOPTS = "-Dx11=disabled -Dxvideo=disabled -Dxshm=disabled" + +PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib" +PACKAGECONFIG[cdparanoia] = "-Dcdparanoia=enabled,-Dcdparanoia=disabled,cdparanoia" +PACKAGECONFIG[jpeg] = "-Dgl-jpeg=enabled,-Dgl-jpeg=disabled,jpeg" +PACKAGECONFIG[ogg] = "-Dogg=enabled,-Dogg=disabled,libogg" +PACKAGECONFIG[opus] = "-Dopus=enabled,-Dopus=disabled,libopus" +PACKAGECONFIG[pango] = "-Dpango=enabled,-Dpango=disabled,pango" +PACKAGECONFIG[png] = "-Dgl-png=enabled,-Dgl-png=disabled,libpng" +PACKAGECONFIG[theora] = "-Dtheora=enabled,-Dtheora=disabled,libtheora" +PACKAGECONFIG[tremor] = "-Dtremor=enabled,-Dtremor=disabled,tremor" +PACKAGECONFIG[visual] = "-Dlibvisual=enabled,-Dlibvisual=disabled,libvisual" +PACKAGECONFIG[vorbis] = "-Dvorbis=enabled,-Dvorbis=disabled,libvorbis" PACKAGECONFIG[x11] = "${X11ENABLEOPTS},${X11DISABLEOPTS},${X11DEPENDS}" -PACKAGECONFIG[egl] = "--enable-egl,--disable-egl,virtual/egl" -PACKAGECONFIG[gio-unix-2.0] = "--enable-gio_unix_2_0,--disable-gio_unix_2_0,glib-2.0" -PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,virtual/libgles2" -PACKAGECONFIG[opengl] = "--enable-opengl,--disable-opengl,virtual/libgl libglu" -PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland-native wayland wayland-protocols libdrm" -PACKAGECONFIG[zlib] = "--enable-zlib,--disable-zlib,zlib" - -# Disable introspection to fix [GstGL-1.0.gir] Error -EXTRA_OECONF += " \ - --enable-zlib \ - CPPFLAGS="-I${STAGING_INCDIR_IMX}" \ - --disable-introspection \ - --disable-opengl \ - --enable-wayland \ + +# OpenGL API packageconfigs +PACKAGECONFIG[opengl] = ",,virtual/libgl libglu" +PACKAGECONFIG[gles2] = ",,virtual/libgles2" + +# OpenGL platform packageconfigs +PACKAGECONFIG[egl] = ",,virtual/egl" + +# OpenGL window systems (except for X11) +PACKAGECONFIG[gbm] = ",,virtual/libgbm libgudev libdrm" +PACKAGECONFIG[wayland] = ",,wayland-native wayland wayland-protocols libdrm" + +EXTRA_OEMESON += " \ + -Dgl-graphene=disabled \ + ${@get_opengl_cmdline_list('gl_api', d.getVar('OPENGL_APIS'), d)} \ + ${@get_opengl_cmdline_list('gl_platform', d.getVar('OPENGL_PLATFORMS'), d)} \ + ${@get_opengl_cmdline_list('gl_winsys', d.getVar('OPENGL_WINSYS'), d)} \ + -Dextra_imx_incdir=${STAGING_INCDIR_IMX} \ " +GTKDOC_MESON_OPTION = "gtk_doc" +GTKDOC_MESON_ENABLE_FLAG = "enabled" +GTKDOC_MESON_DISABLE_FLAG = "disabled" + FILES_${PN} += "${libdir}/gstreamer-1.0/include" FILES_${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict" -CACHED_CONFIGUREVARS_append_x86 = " ac_cv_header_emmintrin_h=no ac_cv_header_xmmintrin_h=no" - -do_compile_prepend() { - export GIR_EXTRA_LIBS_PATH="${B}/gst-libs/gst/tag/.libs:${B}/gst-libs/gst/video/.libs:${B}/gst-libs/gst/audio/.libs:${B}/gst-libs/gst/rtp/.libs" -} - COMPATIBLE_MACHINE = "(mx6|mx7|mx8)" + +def get_opengl_cmdline_list(switch_name, options, d): + selected_options = [] + if bb.utils.contains('DISTRO_FEATURES', 'opengl', True, False, d): + for option in options.split(): + if bb.utils.contains('PACKAGECONFIG', option, True, False, d): + selected_options += [option] + if selected_options: + return '-D' + switch_name + '=' + ','.join(selected_options) + else: + return ''