summaryrefslogtreecommitdiffstats
path: root/meta/recipes-multimedia/gstreamer
diff options
context:
space:
mode:
authorCarlos Rafael Giani <dv@pseudoterminal.org>2018-07-24 12:52:17 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-07-26 13:16:41 +0100
commite484aee1b9bd58e89e966be211e789de01735bcc (patch)
treecf6edf242256fee9c77f48c47a6968eaee157316 /meta/recipes-multimedia/gstreamer
parentfe258fb84a15850546f60db474050288c24d95d8 (diff)
downloadpoky-e484aee1b9bd58e89e966be211e789de01735bcc.tar.gz
gstreamer1.0-plugin-base: Update packageconfigs
* Add patches for gbm, libpng, libjpeg to conditionally enable/disable them in the configure script * Reorder the packageconfigs alphabetically (From OE-Core rev: 6e915c47b9626e706e6d0e96399d46ea28f318c6) Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-multimedia/gstreamer')
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0010-gl-Add-switch-for-explicitely-enabling-disabling-GBM.patch70
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0011-gl-Add-switches-for-explicitely-enabling-disabling-P.patch109
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.1.bb24
3 files changed, 194 insertions, 9 deletions
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0010-gl-Add-switch-for-explicitely-enabling-disabling-GBM.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0010-gl-Add-switch-for-explicitely-enabling-disabling-GBM.patch
new file mode 100644
index 0000000000..45ba50750d
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0010-gl-Add-switch-for-explicitely-enabling-disabling-GBM.patch
@@ -0,0 +1,70 @@
1From a1b59ca6b1781442f37ffc1b697635db126b3a22 Mon Sep 17 00:00:00 2001
2From: Carlos Rafael Giani <dv@pseudoterminal.org>
3Date: Thu, 19 Jul 2018 10:30:54 +0200
4Subject: [PATCH] gl: Add switch for explicitely enabling/disabling GBM support
5
6Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=796833]
7
8Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
9---
10 m4/gst-gl.m4 | 30 ++++++++++++++++++++++++++++--
11 1 file changed, 28 insertions(+), 2 deletions(-)
12
13diff --git a/m4/gst-gl.m4 b/m4/gst-gl.m4
14index 1e9724094..aca5295cc 100644
15--- a/m4/gst-gl.m4
16+++ b/m4/gst-gl.m4
17@@ -117,6 +117,15 @@ AC_ARG_ENABLE([dispmanx],
18 *) AC_MSG_ERROR([bad value ${enableval} for --enable-dispmanx]) ;;
19 esac],[NEED_DISPMANX=auto])
20
21+AC_ARG_ENABLE([gbm],
22+ [ --enable-gbm Enable Mesa3D GBM support (requires EGL) @<:@default=auto@:>@],
23+ [case "${enableval}" in
24+ yes) NEED_GBM=yes ;;
25+ no) NEED_GBM=no ;;
26+ auto) NEED_GBM=auto ;;
27+ *) AC_MSG_ERROR([bad value ${enableval} for --enable-gbm]) ;;
28+ esac],[NEED_GBM=auto])
29+
30 AG_GST_PKG_CHECK_MODULES(X11_XCB, x11-xcb)
31 save_CPPFLAGS="$CPPFLAGS"
32 save_LIBS="$LIBS"
33@@ -172,15 +181,32 @@ case $host in
34 AC_CHECK_LIB([EGL], [fbGetDisplay], [HAVE_VIV_FB_EGL=yes])
35 fi
36
37- if test "x$HAVE_EGL" = "xyes"; then
38+ if test "x$NEED_GBM" != "xno"; then
39+ if test "x$HAVE_EGL" = "xyes"; then
40 PKG_CHECK_MODULES(DRM, libdrm >= 2.4.55, HAVE_DRM=yes, HAVE_DRM=no)
41 AC_SUBST(DRM_CFLAGS)
42 AC_SUBST(DRM_LIBS)
43+ if test "x$NEED_GBM" = "xyes"; then
44+ if test "x$HAVE_DRM" = "xno"; then
45+ AC_MSG_ERROR([GBM support requested but libdrm is not available])
46+ fi
47+ if test "x$HAVE_GUDEV" = "xno"; then
48+ AC_MSG_ERROR([GBM support requested but gudev is not available])
49+ fi
50+ fi
51 if test "x$HAVE_DRM" = "xyes" -a "x$HAVE_GUDEV" = "xyes"; then
52 PKG_CHECK_MODULES(GBM, gbm, HAVE_GBM_EGL=yes, HAVE_GBM_EGL=no)
53+ if test "x$HAVE_GBM_EGL" = "xno" -a "x$NEED_GBM" = "xyes"; then
54+ AC_MSG_ERROR([GBM support requested but gbm library is not available])
55+ fi
56 AC_SUBST(GBM_CFLAGS)
57 AC_SUBST(GBM_LIBS)
58- fi
59+ fi
60+ elif test "x$NEED_GBM" = "xyes"; then
61+ AC_MSG_ERROR([GBM support requested but EGL is not available])
62+ else
63+ AC_MSG_NOTICE([GBM support requested but EGL is not available; not enabling GBM support])
64+ fi
65 fi
66
67 dnl FIXME: Mali EGL depends on GLESv1 or GLESv2
68--
692.17.1
70
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0011-gl-Add-switches-for-explicitely-enabling-disabling-P.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0011-gl-Add-switches-for-explicitely-enabling-disabling-P.patch
new file mode 100644
index 0000000000..65d191a396
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0011-gl-Add-switches-for-explicitely-enabling-disabling-P.patch
@@ -0,0 +1,109 @@
1From 092aadfc1df69c46d920b0cd39f98d363d6988b3 Mon Sep 17 00:00:00 2001
2From: Carlos Rafael Giani <dv@pseudoterminal.org>
3Date: Thu, 19 Jul 2018 11:16:05 +0200
4Subject: [PATCH] gl: Add switches for explicitely enabling/disabling PNG and
5 JPEG support
6
7Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=796833]
8
9Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
10---
11 m4/gst-gl.m4 | 66 ++++++++++++++++++++++++++++++++++++----------------
12 1 file changed, 46 insertions(+), 20 deletions(-)
13
14diff --git a/m4/gst-gl.m4 b/m4/gst-gl.m4
15index 20b2233de..f8809981c 100644
16--- a/m4/gst-gl.m4
17+++ b/m4/gst-gl.m4
18@@ -126,6 +126,24 @@ AC_ARG_ENABLE([gbm],
19 *) AC_MSG_ERROR([bad value ${enableval} for --enable-gbm]) ;;
20 esac],[NEED_GBM=auto])
21
22+AC_ARG_ENABLE([png],
23+ [ --enable-png Enable libpng support @<:@default=auto@:>@],
24+ [case "${enableval}" in
25+ yes) NEED_PNG=yes ;;
26+ no) NEED_PNG=no ;;
27+ auto) NEED_PNG=auto ;;
28+ *) AC_MSG_ERROR([bad value ${enableval} for --enable-png]) ;;
29+ esac],[NEED_PNG=auto])
30+
31+AC_ARG_ENABLE([jpeg],
32+ [ --enable-jpeg Enable libjpeg support @<:@default=auto@:>@],
33+ [case "${enableval}" in
34+ yes) NEED_JPEG=yes ;;
35+ no) NEED_JPEG=no ;;
36+ auto) NEED_JPEG=auto ;;
37+ *) AC_MSG_ERROR([bad value ${enableval} for --enable-jpeg]) ;;
38+ esac],[NEED_JPEG=auto])
39+
40 AG_GST_PKG_CHECK_MODULES(X11_XCB, x11-xcb)
41 save_CPPFLAGS="$CPPFLAGS"
42 save_LIBS="$LIBS"
43@@ -1043,9 +1061,13 @@ dnl Needed by plugins that use g_module_*() API
44 PKG_CHECK_MODULES(GMODULE_NO_EXPORT, gmodule-no-export-2.0)
45
46 dnl libpng is optional
47-PKG_CHECK_MODULES(LIBPNG, libpng >= 1.0, HAVE_PNG=yes, HAVE_PNG=no)
48-if test "x$HAVE_PNG" = "xyes"; then
49- AC_DEFINE(HAVE_PNG, [1] , [Use libpng])
50+if test "x$NEED_PNG" != "xno"; then
51+ PKG_CHECK_MODULES(LIBPNG, libpng >= 1.0, HAVE_PNG=yes, HAVE_PNG=no)
52+ if test "x$HAVE_PNG" = "xyes"; then
53+ AC_DEFINE(HAVE_PNG, [1] , [Use libpng])
54+ elif test "x$NEED_PNG" = "xyes"; then
55+ AC_MSG_ERROR([libpng support requested but libpng is not available])
56+ fi
57 fi
58 AC_SUBST(HAVE_PNG)
59 AC_SUBST(LIBPNG_LIBS)
60@@ -1053,25 +1075,29 @@ AC_SUBST(LIBPNG_CFLAGS)
61
62 dnl libjpeg is optional
63 AC_ARG_WITH(jpeg-mmx, [ --with-jpeg-mmx, path to MMX'ified JPEG library])
64-OLD_LIBS="$LIBS"
65-if test x$with_jpeg_mmx != x; then
66- LIBS="$LIBS -L$with_jpeg_mmx"
67-fi
68-AC_CHECK_LIB(jpeg-mmx, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no")
69-JPEG_LIBS="$LIBS -ljpeg-mmx"
70-LIBS="$OLD_LIBS"
71-if test x$HAVE_JPEG != xyes; then
72- JPEG_LIBS="-ljpeg"
73- AC_CHECK_LIB(jpeg, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no")
74-fi
75+if test "x$NEED_JPEG" != "xno"; then
76+ OLD_LIBS="$LIBS"
77+ if test x$with_jpeg_mmx != x; then
78+ LIBS="$LIBS -L$with_jpeg_mmx"
79+ fi
80+ AC_CHECK_LIB(jpeg-mmx, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no")
81+ JPEG_LIBS="$LIBS -ljpeg-mmx"
82+ LIBS="$OLD_LIBS"
83+ if test x$HAVE_JPEG != xyes; then
84+ JPEG_LIBS="-ljpeg"
85+ AC_CHECK_LIB(jpeg, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no")
86+ fi
87
88-if test x$HAVE_JPEG = xyes; then
89- AC_DEFINE(HAVE_JPEG, [1], [Use libjpeg])
90-else
91- JPEG_LIBS=
92+ if test x$HAVE_JPEG = xyes; then
93+ AC_DEFINE(HAVE_JPEG, [1], [Use libjpeg])
94+ elif test "x$NEED_JPEG" = "xyes"; then
95+ AC_MSG_ERROR([libjpeg support requested but libjpeg is not available])
96+ else
97+ JPEG_LIBS=
98+ fi
99+ AC_SUBST(JPEG_LIBS)
100+ AC_SUBST(HAVE_JPEG)
101 fi
102-AC_SUBST(JPEG_LIBS)
103-AC_SUBST(HAVE_JPEG)
104 ])
105
106 dnl --------------------------------------------------------------------------
107--
1082.17.1
109
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.1.bb
index 8d7d3c6192..17f234e1db 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.1.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.1.bb
@@ -17,6 +17,8 @@ SRC_URI = " \
17 file://0004-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch \ 17 file://0004-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch \
18 file://0009-glimagesink-Downrank-to-marginal.patch \ 18 file://0009-glimagesink-Downrank-to-marginal.patch \
19 file://0001-gstreamer-gl.pc.in-don-t-append-GL_CFLAGS-to-CFLAGS.patch \ 19 file://0001-gstreamer-gl.pc.in-don-t-append-GL_CFLAGS-to-CFLAGS.patch \
20 file://0010-gl-Add-switch-for-explicitely-enabling-disabling-GBM.patch \
21 file://0011-gl-Add-switches-for-explicitely-enabling-disabling-P.patch \
20 file://link-with-libvchostif.patch \ 22 file://link-with-libvchostif.patch \
21 " 23 "
22SRC_URI[md5sum] = "c42154ab6f85c59f0e449d8d7e290342" 24SRC_URI[md5sum] = "c42154ab6f85c59f0e449d8d7e290342"
@@ -30,12 +32,15 @@ inherit gettext
30 32
31PACKAGES_DYNAMIC =+ "^libgst.*" 33PACKAGES_DYNAMIC =+ "^libgst.*"
32 34
35# opengl packageconfig factored out to make it easy for distros
36# and BSP layers to pick either (desktop) opengl, gles2, or no GL
33PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}" 37PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
38
34PACKAGECONFIG ??= " \ 39PACKAGECONFIG ??= " \
35 ${GSTREAMER_ORC} \ 40 ${GSTREAMER_ORC} \
36 ${@bb.utils.filter('DISTRO_FEATURES', 'alsa x11', d)} \
37 gio-unix-2.0 ogg pango theora vorbis zlib jpeg \
38 ${PACKAGECONFIG_GL} \ 41 ${PACKAGECONFIG_GL} \
42 ${@bb.utils.filter('DISTRO_FEATURES', 'alsa x11', d)} \
43 gio-unix-2.0 jpeg ogg pango png theora vorbis zlib \
39 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland egl', '', d)} \ 44 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland egl', '', d)} \
40" 45"
41 46
@@ -45,26 +50,27 @@ X11DISABLEOPTS = "--disable-x --disable-xvideo --disable-xshm"
45 50
46PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib" 51PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib"
47PACKAGECONFIG[cdparanoia] = "--enable-cdparanoia,--disable-cdparanoia,cdparanoia" 52PACKAGECONFIG[cdparanoia] = "--enable-cdparanoia,--disable-cdparanoia,cdparanoia"
53PACKAGECONFIG[egl] = "--enable-egl,--disable-egl,virtual/egl"
54PACKAGECONFIG[gbm] = "--enable-gbm,--disable-gbm,virtual/libgbm libgudev libdrm"
48PACKAGECONFIG[gio-unix-2.0] = "--enable-gio_unix_2_0,--disable-gio_unix_2_0,glib-2.0" 55PACKAGECONFIG[gio-unix-2.0] = "--enable-gio_unix_2_0,--disable-gio_unix_2_0,glib-2.0"
56PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,virtual/libgles2"
49PACKAGECONFIG[ivorbis] = "--enable-ivorbis,--disable-ivorbis,tremor" 57PACKAGECONFIG[ivorbis] = "--enable-ivorbis,--disable-ivorbis,tremor"
58PACKAGECONFIG[jpeg] = "--enable-jpeg,--disable-jpeg,jpeg"
50PACKAGECONFIG[ogg] = "--enable-ogg,--disable-ogg,libogg" 59PACKAGECONFIG[ogg] = "--enable-ogg,--disable-ogg,libogg"
60PACKAGECONFIG[opengl] = "--enable-opengl,--disable-opengl,virtual/libgl libglu"
51PACKAGECONFIG[opus] = "--enable-opus,--disable-opus,libopus" 61PACKAGECONFIG[opus] = "--enable-opus,--disable-opus,libopus"
52PACKAGECONFIG[pango] = "--enable-pango,--disable-pango,pango" 62PACKAGECONFIG[pango] = "--enable-pango,--disable-pango,pango"
63PACKAGECONFIG[png] = "--enable-png,--disable-png,libpng"
53PACKAGECONFIG[theora] = "--enable-theora,--disable-theora,libtheora" 64PACKAGECONFIG[theora] = "--enable-theora,--disable-theora,libtheora"
54PACKAGECONFIG[visual] = "--enable-libvisual,--disable-libvisual,libvisual" 65PACKAGECONFIG[visual] = "--enable-libvisual,--disable-libvisual,libvisual"
55PACKAGECONFIG[vorbis] = "--enable-vorbis,--disable-vorbis,libvorbis" 66PACKAGECONFIG[vorbis] = "--enable-vorbis,--disable-vorbis,libvorbis"
56PACKAGECONFIG[x11] = "${X11ENABLEOPTS},${X11DISABLEOPTS},${X11DEPENDS}" 67PACKAGECONFIG[x11] = "${X11ENABLEOPTS},${X11DISABLEOPTS},${X11DEPENDS}"
57PACKAGECONFIG[zlib] = "--enable-zlib,--disable-zlib,zlib"
58PACKAGECONFIG[opengl] = "--enable-opengl,--disable-opengl,virtual/libgl libglu"
59PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,virtual/libgles2"
60PACKAGECONFIG[egl] = "--enable-egl,--disable-egl,virtual/egl"
61PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland-native wayland wayland-protocols libdrm" 68PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland-native wayland wayland-protocols libdrm"
62PACKAGECONFIG[jpeg] = ",,jpeg" 69PACKAGECONFIG[zlib] = "--enable-zlib,--disable-zlib,zlib"
63 70
71FILES_${PN}-dev += "${libdir}/gstreamer-${LIBV}/include/gst/gl/gstglconfig.h"
64FILES_${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict" 72FILES_${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict"
65 73
66do_compile_prepend() { 74do_compile_prepend() {
67 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:${B}/gst-libs/gst/allocators/.libs" 75 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:${B}/gst-libs/gst/allocators/.libs"
68} 76}
69
70FILES_${PN}-dev += "${libdir}/gstreamer-${LIBV}/include/gst/gl/gstglconfig.h"