[meta-freescale] [meta-fsl-arm][PATCH 11/13] gst-fsl-plugin: Update to version 3.0.7

Daiane Angolini daiane.angolini at freescale.com
Thu May 23 12:22:50 PDT 2013


The 3.0.7 version is compatible with MX28, MX53 and MX6 SoCs so we
move them all to this release.

Change-Id: I3ebf1c4ad6d02e2886450bc9c3dcfb1df98b6160
Signed-off-by: Daiane Angolini <daiane.angolini at freescale.com>
---
 recipes-multimedia/gst-plugins/gst-fsl-plugin.inc  |   14 +--
 ...c-Use-pkg-config-sysroot-when-checking-fo.patch |   58 +++++++++++++
 .../gst-fsl-plugin/v4lsink_back_compatible.patch   |   90 ++++++++++++++++++++
 .../gst-fsl-plugin/vss_build_failed.patch          |   16 ++++
 .../gst-plugins/gst-fsl-plugin_2.0.3.bb            |   17 ----
 .../gst-plugins/gst-fsl-plugin_3.0.5.bb            |   19 -----
 .../gst-plugins/gst-fsl-plugin_3.0.6.bb            |   19 -----
 .../gst-plugins/gst-fsl-plugin_3.0.7.bb            |   16 ++++
 8 files changed, 187 insertions(+), 62 deletions(-)
 create mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin/configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch
 create mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin/v4lsink_back_compatible.patch
 create mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin/vss_build_failed.patch
 delete mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin_2.0.3.bb
 delete mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.5.bb
 delete mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.6.bb
 create mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.7.bb

diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc b/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc
index 04f02b0..264beb2 100644
--- a/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc
+++ b/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc
@@ -1,21 +1,21 @@
-# Copyright (C) 2011, 2012 Freescale Semiconductor
+# Copyright (C) 2011, 2012, 2013 Freescale Semiconductor
 # Released under the MIT license (see COPYING.MIT for the terms)
 
 DESCRIPTION = "Gstreamer freescale plugins"
 LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1"
 SECTION = "multimedia"
-DEPENDS = "gstreamer gst-plugins-base imx-lib"
-INC_PR = "r9"
+
+DEPENDS = "gstreamer gst-plugins-base libfslcodec libfslparser"
+DEPENDS_append_mx5 = " imx-lib"
+DEPENDS_append_mx6 = " imx-lib libfslvpuwrap"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
                     file://COPYING-LGPL-2;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
                     file://COPYING-LGPL-2.1;md5=fbc093901857fcd118f065f900982c24"
 
-PACKAGE_NAME ?= "${PN}"
-
-S = "${WORKDIR}/${PACKAGE_NAME}-${PV}"
+S = "${WORKDIR}/gst-fsl-plugins-${PV}"
 
-SRC_URI = "${FSL_MIRROR}/${PACKAGE_NAME}-${PV}.tar.gz"
+SRC_URI = "${FSL_MIRROR}/gst-fsl-plugins-${PV}.tar.gz"
 
 inherit autotools pkgconfig
 
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin/configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch b/recipes-multimedia/gst-plugins/gst-fsl-plugin/configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch
new file mode 100644
index 0000000..cab9ff4
--- /dev/null
+++ b/recipes-multimedia/gst-plugins/gst-fsl-plugin/configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch
@@ -0,0 +1,58 @@
+From 6f75a9f4ad108c1f4a3dff4dd08def174ab83a69 Mon Sep 17 00:00:00 2001
+From: Otavio Salvador <otavio at ossystems.com.br>
+Date: Tue, 21 May 2013 16:43:31 -0300
+Subject: [PATCH] configure.ac: Use pkg-config sysroot when checking for soname
+
+Upstream-Status: Pending
+
+Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
+---
+ configure.ac | 12 +++++-------
+ 1 file changed, 5 insertions(+), 7 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index e4cdb86..c12ceb4 100755
+--- a/configure.ac
++++ b/configure.ac
+@@ -16,7 +16,7 @@ AC_DEFUN([FIND_PARSER_SONAME],
+ [
+     AC_MSG_CHECKING([for lib_$1_parser_$2_elinux.3.0.so soname])
+     path=`$PKG_CONFIG --variable=libdir libfslparser`
+-    SONAME=$( $CC -print-file-name=$path/lib_$1_parser_$2_elinux.so | \
++    SONAME=$( $CC -print-file-name=$PKG_CONFIG_SYSROOT_DIR$path/lib_$1_parser_$2_elinux.so | \
+ 	    while read output; do objdump -p $output | \
+ 	    grep "SONAME" | \
+ 	    sed -e 's/ \+SONAME \+//'; done 2> /dev/null )
+@@ -27,16 +27,15 @@ AC_DEFUN([FIND_PARSER_SONAME],
+     else
+     	AC_MSG_RESULT([$SONAME])
+     fi
+-    apath=`echo $path | sed -e 's|.*/imx-mm/|/usr/lib/imx-mm/|'`
+-    $1_$2_SONAME=$apath/$SONAME
++    $1_$2_SONAME=$path/$SONAME
+     AC_SUBST($1_$2_SONAME)
+ ])
+ 
+ AC_DEFUN([FIND_ACODEC_SONAME],
+ [
+     AC_MSG_CHECKING([for lib_$1_wrap_$2_elinux.so soname])
+-    path=`$PKG_CONFIG --variable=libdir libfslaudiocodec | sed -e 's|.*/imx-mm/|/usr/lib/imx-mm/|'`
+-    SONAME=$( $CC -print-file-name=$path/wrap/lib_$1_wrap_$2_elinux.so | \
++    path=`$PKG_CONFIG --variable=libdir libfslaudiocodec`
++    SONAME=$( $CC -print-file-name=$PKG_CONFIG_SYSROOT_DIR$path/wrap/lib_$1_wrap_$2_elinux.so | \
+ 	    while read output; do objdump -p $output | \
+ 	    grep "SONAME" | \
+ 	    sed -e 's/ \+SONAME \+//'; done 2> /dev/null )
+@@ -48,8 +47,7 @@ AC_DEFUN([FIND_ACODEC_SONAME],
+     	AC_MSG_RESULT([$SONAME])
+     fi
+ 
+-    apath=`echo $path | sed -e 's|.*/imx-mm/|/usr/lib/imx-mm/|'`
+-    $1_$2_SONAME=$apath/wrap/$SONAME
++    $1_$2_SONAME=$path/wrap/$SONAME
+     AC_SUBST($1_$2_SONAME)
+ ])
+ 
+-- 
+1.8.1
+
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin/v4lsink_back_compatible.patch b/recipes-multimedia/gst-plugins/gst-fsl-plugin/v4lsink_back_compatible.patch
new file mode 100644
index 0000000..fecc01e
--- /dev/null
+++ b/recipes-multimedia/gst-plugins/gst-fsl-plugin/v4lsink_back_compatible.patch
@@ -0,0 +1,90 @@
+Make v4lsink backward compatible
+
+Upstream-Status: Pending
+
+diff --git a/src/misc/v4l_sink/src/mfw_gst_v4lsink.c b/src/misc/v4l_sink/src/mfw_gst_v4lsink.c
+index c9ec887..da2bac1 100644
+--- a/src/misc/v4l_sink/src/mfw_gst_v4lsink.c
++++ b/src/misc/v4l_sink/src/mfw_gst_v4lsink.c
+@@ -310,6 +310,9 @@ mfw_gst_v4l2sink_query_support_formats ()
+ 
+   ret = TRUE;
+ 
++  if(fmtdesc.index == 0)
++      ret = FALSE;
++
+ fail:
+   return ret;
+ 
+@@ -2170,19 +2173,60 @@ mfw_gst_v4lsink_base_init (gpointer g_class)
+   GstCaps *capslist;
+   GstPadTemplate *sink_template = NULL;
+ 
+-  mfw_gst_v4l2sink_query_support_formats ();
+-  /* make a list of all available caps */
+-  capslist = gst_caps_new_empty ();
++  if(!mfw_gst_v4l2sink_query_support_formats ()) {
++      // failed query caps, use default setting
++      gint i;
++      guint32 formats[] = {
++          GST_MAKE_FOURCC ('I', '4', '2', '0'),
++          GST_MAKE_FOURCC ('Y', 'V', '1', '2'),
++          GST_MAKE_FOURCC ('U', 'Y', 'V', 'Y'),
++          GST_MAKE_FOURCC ('Y', 'U', 'Y', 'V'),
++          GST_MAKE_FOURCC ('Y', 'U', 'Y', '2'),
++          GST_MAKE_FOURCC ('N', 'V', '1', '2'),
++          GST_MAKE_FOURCC ('4', '2', '2', 'P'),
++          GST_MAKE_FOURCC ('Y', '4', '2', 'B')
+ 
+-  MfwV4lFmtMap * map = g_v4lfmt_maps;
++      };
+ 
+-  while (map->mime){
+-    if (map->enable){
+-      GstStructure * structure = gst_structure_from_string(map->mime, NULL);
+-      gst_caps_append_structure (capslist, structure);
+-    }
+-    map++;
+-  };
++      /* make a list of all available caps */
++      capslist = gst_caps_new_empty ();
++      for (i = 0; i < G_N_ELEMENTS (formats); i++) {
++          gst_caps_append_structure (capslist,
++                  gst_structure_new ("video/x-raw-yuv",
++                      "format",
++                      GST_TYPE_FOURCC,
++                      formats[i], "width",
++                      GST_TYPE_INT_RANGE, 1,
++                      G_MAXINT, "height",
++                      GST_TYPE_INT_RANGE, 1,
++                      G_MAXINT, "framerate",
++                      GST_TYPE_FRACTION_RANGE,
++                      0, 1, G_MAXINT, 1,
++                      NULL));
++      }
++      /* Add RGB support */
++      gst_caps_append_structure (capslist,
++              gst_structure_new ("video/x-raw-rgb",
++                  "bpp", GST_TYPE_INT_RANGE,
++                  1, 32, "depth",
++                  GST_TYPE_INT_RANGE, 1, 32,
++                  NULL));
++
++  }
++  else {
++      /* make a list of all available caps */
++      capslist = gst_caps_new_empty ();
++
++      MfwV4lFmtMap * map = g_v4lfmt_maps;
++
++      while (map->mime){
++          if (map->enable){
++              GstStructure * structure = gst_structure_from_string(map->mime, NULL);
++              gst_caps_append_structure (capslist, structure);
++          }
++          map++;
++      };
++  }
+ 
+   sink_template = gst_pad_template_new ("sink",
+       GST_PAD_SINK, GST_PAD_ALWAYS, capslist);
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin/vss_build_failed.patch b/recipes-multimedia/gst-plugins/gst-fsl-plugin/vss_build_failed.patch
new file mode 100644
index 0000000..c059234
--- /dev/null
+++ b/recipes-multimedia/gst-plugins/gst-fsl-plugin/vss_build_failed.patch
@@ -0,0 +1,16 @@
+diff --git a/libs/Makefile.am b/libs/Makefile.am
+index e9d3d54..89f79be 100755
+--- a/libs/Makefile.am
++++ b/libs/Makefile.am
+@@ -36,6 +36,11 @@ endif
+ 
+ 
+ libgstfsl_ at GST_MAJORMINOR@_la_CFLAGS  = $(GST_BASE_CFLAGS) $(IPU_CFLAGS) -I../inc/common
++
++if PLATFORM_IS_MX5X
++libgstfsl_ at GST_MAJORMINOR@_la_CFLAGS  += -DIPULIB
++endif
++
+ libgstfsl_ at GST_MAJORMINOR@_la_LDFLAGS = -version-info @GSTMXLIBS_VERSION@
+ libgstfsl_ at GST_MAJORMINOR@_la_LIBADD = $(GST_BASE_LIBS) -lgstvideo- at GST_MAJORMINOR@ -lgstinterfaces-$(GST_MAJORMINOR) $(IPU_LIBS)
+ 
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin_2.0.3.bb b/recipes-multimedia/gst-plugins/gst-fsl-plugin_2.0.3.bb
deleted file mode 100644
index f16e6c6..0000000
--- a/recipes-multimedia/gst-plugins/gst-fsl-plugin_2.0.3.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-# Copyright (C) 2011, 2012 Freescale Semicondutor
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-require gst-fsl-plugin.inc
-DEPENDS += "fsl-mm-codeclib fsl-mm-flv-codeclib fsl-mm-mp3enc-codeclib"
-RDEPENDS_${PN} = "fsl-mm-codeclib fsl-mm-flv-codeclib fsl-mm-mp3enc-codeclib"
-
-PR = "${INC_PR}.5"
-
-SRC_URI += "file://fix_segment_fault_in_v4lsink_for_yocto.patch \
-            file://fix-missing-sys-types-h.patch \
-            file://Use-librarys-SONAME-in-dlopen.patch"
-
-SRC_URI[md5sum] = "036a8e86031b0670f41b10796e268f9e"
-SRC_URI[sha256sum] = "ee024e6fe94ce309b10dc89ab247d1bbcf8ae9cc8006178c96101ce2d4d164a0"
-
-COMPATIBLE_MACHINE = "(mx5)"
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.5.bb b/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.5.bb
deleted file mode 100644
index 36fbe41..0000000
--- a/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.5.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright (C) 2012-2013 Freescale Semicondutor
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-require gst-fsl-plugin.inc
-
-DEPENDS += "libfslcodec libfslvpuwrap libfslparser"
-
-PR = "${INC_PR}.3"
-
-SRC_URI += "file://fix-missing-sys-types-h.patch \
-            file://Link-with-the-Real-Time-Extension-lib.patch \
-           "
-
-PACKAGE_NAME = "gst-fsl-plugins"
-
-SRC_URI[md5sum] = "fd7c9db129cbcc4dc79b7dd832061594"
-SRC_URI[sha256sum] = "546deb407993f726ef4e140f5bd734d612d5f8872c832ac820957f667f22306e"
-
-COMPATIBLE_MACHINE = "(mx6)"
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.6.bb b/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.6.bb
deleted file mode 100644
index 77baa9a..0000000
--- a/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.6.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright (C) 2012-2013 Freescale Semicondutor
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-require gst-fsl-plugin.inc
-
-DEPENDS = "virtual/kernel gstreamer gst-plugins-base libfslcodec libfslparser"
-
-PR = "${INC_PR}.1"
-
-SRC_URI += "file://fix-missing-sys-types-h.patch \
-            file://Link-with-the-Real-Time-Extension-lib.patch \
-           "
-
-PACKAGE_NAME = "gst-fsl-plugins"
-
-SRC_URI[md5sum] = "5416a727e8b0bd94eec077ac7d70aae7"
-SRC_URI[sha256sum] = "fdb0b5ab964f607a93664412702a131931da8ef0b557597cbf161c3d9c9d0c12"
-
-COMPATIBLE_MACHINE = "(mx28)"
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.7.bb b/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.7.bb
new file mode 100644
index 0000000..097b8cb
--- /dev/null
+++ b/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.7.bb
@@ -0,0 +1,16 @@
+# Copyright (C) 2012-2013 Freescale Semicondutor
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+require gst-fsl-plugin.inc
+
+SRC_URI[md5sum] = "08be9263c609b90e3b3e2e3aa888cd29"
+SRC_URI[sha256sum] = "f3cd4a51d1eb60c21219d8d94daa832e47fc51d8f4618bb79cdf36bcca0a0f7c"
+
+SRC_URI_append += "file://fix-missing-sys-types-h.patch \
+                   file://Link-with-the-Real-Time-Extension-lib.patch \
+                   file://vss_build_failed.patch \
+                   file://configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch \
+                   file://v4lsink_back_compatible.patch \
+                  "
+
+COMPATIBLE_MACHINE = "(mx28|mx5|mx6)"
-- 
1.7.10.4





More information about the meta-freescale mailing list