summaryrefslogtreecommitdiffstats
path: root/meta/recipes-multimedia
diff options
context:
space:
mode:
authorCarlos Rafael Giani <dv@pseudoterminal.org>2014-08-27 16:47:03 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-08-28 15:12:43 +0100
commit49ade79ec243bac49fea21667037ee29a8ccb82f (patch)
tree94bd43404a5973483047a58d0d6011206dbac956 /meta/recipes-multimedia
parentf0f50a97839cb3b9a9c67280c119ea5c2ec336e0 (diff)
downloadpoky-49ade79ec243bac49fea21667037ee29a8ccb82f.tar.gz
gstreamer1.0-plugins-bad: Fix GL/GLES configuration
* Replace --disable/enable-gl with the individual EGL, GLES, GL switches (--disable-gl turns off GL support entirely) * Put the default opengl packageconfig into its own variable to make it easier for distros and BSP layers to define what to use (GL, GLES, or neither) * Add libglu as a dependency for desktop GL * Patch configure.ac to ensure libraries are only searched and linked to if the corresponding API isn't disabled (this prevents cases where libgstgl is linked to GLU even though desktop GL is dis- and GLES enabled) (From OE-Core rev: 7bf062f2e2b92c2401fa2386b6281aae023b21a8) Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-multimedia')
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc9
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-gl-do-not-check-for-GL-GLU-EGL-GLES2-libs-if-disable.patch41
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.4.0.bb3
3 files changed, 51 insertions, 2 deletions
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc
index 8a7c5c1d62..52ef3b8486 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc
@@ -8,19 +8,24 @@ S = "${WORKDIR}/gst-plugins-bad-${PV}"
8 8
9inherit gettext 9inherit gettext
10 10
11# opengl packageconfig factored out to make it easy for distros
12# and BSP layers to pick either (desktop) opengl, gles2, or no GL
13PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2', '', d)}"
11 14
12PACKAGECONFIG ??= " \ 15PACKAGECONFIG ??= " \
16 ${PACKAGECONFIG_GL} \
13 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \ 17 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \
14 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)} \
15 ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \ 18 ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
16 ${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)} \ 19 ${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)} \
17 orc curl uvch264 neon sndfile \ 20 orc curl uvch264 neon sndfile \
18 hls sbc dash bz2 smoothstreaming \ 21 hls sbc dash bz2 smoothstreaming \
19 " 22 "
23
20# dash = Dynamic Adaptive Streaming over HTTP 24# dash = Dynamic Adaptive Streaming over HTTP
21PACKAGECONFIG[assrender] = "--enable-assrender,--disable-assrender,libass" 25PACKAGECONFIG[assrender] = "--enable-assrender,--disable-assrender,libass"
22PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl" 26PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl"
23PACKAGECONFIG[gl] = "--enable-gl,--disable-gl,virtual/egl virtual/libgles2" 27PACKAGECONFIG[gles2] = "--enable-gles2 --enable-egl,--disable-gles2 --disable-egl,virtual/libgles2 virtual/egl"
28PACKAGECONFIG[opengl] = "--enable-opengl,--disable-opengl,virtual/libgl libglu"
24PACKAGECONFIG[faac] = "--enable-faac,--disable-faac,faac" 29PACKAGECONFIG[faac] = "--enable-faac,--disable-faac,faac"
25PACKAGECONFIG[faad] = "--enable-faad,--disable-faad,faad2" 30PACKAGECONFIG[faad] = "--enable-faad,--disable-faad,faad2"
26PACKAGECONFIG[libmms] = "--enable-libmms,--disable-libmms,libmms" 31PACKAGECONFIG[libmms] = "--enable-libmms,--disable-libmms,libmms"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-gl-do-not-check-for-GL-GLU-EGL-GLES2-libs-if-disable.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-gl-do-not-check-for-GL-GLU-EGL-GLES2-libs-if-disable.patch
new file mode 100644
index 0000000000..042a32c04d
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-gl-do-not-check-for-GL-GLU-EGL-GLES2-libs-if-disable.patch
@@ -0,0 +1,41 @@
1From deba0da45ec821209a7ed148a4521d562e6512cd Mon Sep 17 00:00:00 2001
2From: Carlos Rafael Giani <dv@pseudoterminal.org>
3Date: Wed, 27 Aug 2014 14:47:25 +0200
4Subject: [PATCH] gl: do not check for GL/GLU/EGL/GLES2 libs if disabled in
5 configuration
6
7Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=735522]
8
9Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
10---
11 configure.ac | 14 ++++++++++----
12 1 file changed, 10 insertions(+), 4 deletions(-)
13
14diff --git a/configure.ac b/configure.ac
15index 1a46afb..e85d4ba 100644
16--- a/configure.ac
17+++ b/configure.ac
18@@ -661,10 +661,16 @@ case $host in
19 fi
20 ;;
21 *)
22- AG_GST_CHECK_LIBHEADER(GL, GL, glTexImage2D,, GL/gl.h)
23- AG_GST_CHECK_LIBHEADER(GLU, GLU, gluSphere,, GL/glu.h)
24- AG_GST_CHECK_LIBHEADER(GLES2, GLESv2, glTexImage2D,, GLES2/gl2.h)
25- AG_GST_CHECK_LIBHEADER(EGL, EGL, eglGetError,, EGL/egl.h)
26+ if test "x$NEED_GL" != "xno"; then
27+ AG_GST_CHECK_LIBHEADER(GL, GL, glTexImage2D,, GL/gl.h)
28+ AG_GST_CHECK_LIBHEADER(GLU, GLU, gluSphere,, GL/glu.h)
29+ fi
30+ if test "x$NEED_GLES2" != "xno"; then
31+ AG_GST_CHECK_LIBHEADER(GLES2, GLESv2, glTexImage2D,, GLES2/gl2.h)
32+ fi
33+ if test "x$NEED_EGL" != "xno"; then
34+ AG_GST_CHECK_LIBHEADER(EGL, EGL, eglGetError,, EGL/egl.h)
35+ fi
36
37 old_LIBS=$LIBS
38 old_CFLAGS=$CFLAGS
39--
401.8.3.2
41
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.4.0.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.4.0.bb
index e6edb26736..ff92f097f4 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.4.0.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.4.0.bb
@@ -4,6 +4,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=73a5855a8119deb017f5f13cf327095d \
4 file://gst/tta/filters.h;beginline=12;endline=29;md5=8a08270656f2f8ad7bb3655b83138e5a \ 4 file://gst/tta/filters.h;beginline=12;endline=29;md5=8a08270656f2f8ad7bb3655b83138e5a \
5 file://COPYING.LIB;md5=21682e4e8fea52413fd26c60acb907e5 \ 5 file://COPYING.LIB;md5=21682e4e8fea52413fd26c60acb907e5 \
6 file://gst/tta/crc32.h;beginline=12;endline=29;md5=27db269c575d1e5317fffca2d33b3b50" 6 file://gst/tta/crc32.h;beginline=12;endline=29;md5=27db269c575d1e5317fffca2d33b3b50"
7
8SRC_URI += "file://0001-gl-do-not-check-for-GL-GLU-EGL-GLES2-libs-if-disable.patch"
9
7SRC_URI[md5sum] = "3bc0fcfe8d16ad1295f0454c1fcb4ba3" 10SRC_URI[md5sum] = "3bc0fcfe8d16ad1295f0454c1fcb4ba3"
8SRC_URI[sha256sum] = "ff2cb754f7725b205aec66002b1406e440f3a03194b6cad2d126ef5cd00902f9" 11SRC_URI[sha256sum] = "ff2cb754f7725b205aec66002b1406e440f3a03194b6cad2d126ef5cd00902f9"
9S = "${WORKDIR}/gst-plugins-bad-${PV}" 12S = "${WORKDIR}/gst-plugins-bad-${PV}"