summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMart Raudsepp <leio@gentoo.org>2014-07-18 04:04:28 +0300
committerMart Raudsepp <leio@gentoo.org>2014-07-18 04:11:09 +0300
commitf7a3160b1970d45c61984ae09f805e9f6652c4b2 (patch)
tree0e7d453064795dee69e2a1005c09dbcebab8431c
parentHacks to gst-plugins-bad ebuild to achieve a glimagesink that can play video ... (diff)
downloadleio-f7a3160b1970d45c61984ae09f805e9f6652c4b2.tar.gz
leio-f7a3160b1970d45c61984ae09f805e9f6652c4b2.tar.bz2
leio-f7a3160b1970d45c61984ae09f805e9f6652c4b2.zip
Add forgotten to stage gst-plugins-bad RPi patches
Those were mostly needed due to local changes to raspberrypi-userland to ship with pkg-config files, which point at a custom include path. Two of them are already upstream for upcoming 1.4.0, but the one that actually makes gst-plugins-bad configure use raspberrypi-userland pkg-config files won't be until raspberrypi-userland doesn't ship them upstream.
-rw-r--r--media-libs/gst-plugins-bad/files/egl-gl_cflags.patch28
-rw-r--r--media-libs/gst-plugins-bad/files/egl-rpi-pkgconfig.patch58
-rw-r--r--media-libs/gst-plugins-bad/files/gl_typechecks_cflags.patch39
3 files changed, 125 insertions, 0 deletions
diff --git a/media-libs/gst-plugins-bad/files/egl-gl_cflags.patch b/media-libs/gst-plugins-bad/files/egl-gl_cflags.patch
new file mode 100644
index 0000000..ae6869e
--- /dev/null
+++ b/media-libs/gst-plugins-bad/files/egl-gl_cflags.patch
@@ -0,0 +1,28 @@
+From 46ce2cce2fcab4aa26b020aa2a47d8981ea3f082 Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Wed, 16 Jul 2014 16:29:10 +0300
+Subject: [PATCH 2/3] gl: Always include EGL_CFLAGS in GL_CFLAGS when EGL_LIBS
+ is added to GL_LIBS
+
+They should be handled in tandem, in case any EGL provider could require some
+CFLAGS and set them (possibly once moved to prefer pkg-config files),
+such as for a custom header location.
+---
+ configure.ac | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/configure.ac b/configure.ac
+index 4b73ebc..8261ee2 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1006,6 +1006,7 @@ case $host in
+ if test "x$NEED_EGL" != "xno"; then
+ if test "x$HAVE_WINDOW_WAYLAND" = "xyes" -o "x$HAVE_WINDOW_X11" = "xyes" -o "x$HAVE_WINDOW_DISPMANX" = "xyes"; then
+ GL_LIBS="$GL_LIBS -lEGL $EGL_LIBS"
++ GL_CFLAGS="$GL_CFLAGS $EGL_CFLAGS"
+ USE_EGL=yes
+ fi
+ fi
+--
+1.9.1
+
diff --git a/media-libs/gst-plugins-bad/files/egl-rpi-pkgconfig.patch b/media-libs/gst-plugins-bad/files/egl-rpi-pkgconfig.patch
new file mode 100644
index 0000000..6cf6533
--- /dev/null
+++ b/media-libs/gst-plugins-bad/files/egl-rpi-pkgconfig.patch
@@ -0,0 +1,58 @@
+From d7a726d0764197db64ca826bb16d92e7875682de Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Wed, 16 Jul 2014 16:25:16 +0300
+Subject: [PATCH 1/3] gl: Check for raspberrypi-userland pkg-config files
+ before manual checks
+
+Some distributions or developers prefer to patch raspberrypi-userland to ship
+with pkg-config files, or to add them manually. This uses them if present.
+
+Note: Not a clean patch yet as its inclusion at this point is still doubtful
+due to no raspberrypi-userland upstream inclusion of these pkg-config files
+---
+ configure.ac | 22 +++++++++++++++++++---
+ 1 file changed, 19 insertions(+), 3 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 1cb7c88..4b73ebc 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -698,8 +698,24 @@ case $host in
+
+ dnl FIXME: EGL of RPi depends on GLESv1 or GLESv2
+ dnl FIXME: GLESv2 of RPi depends on EGL... WTF!
+- LIBS="$LIBS -lvcos -lvchiq_arm"
+- AC_CHECK_LIB([bcm_host], [bcm_host_init],
++ PKG_CHECK_MODULES(BCM_HOST, bcm_host, [HAVE_BCM_HOST="yes"], [HAVE_BCM_HOST="no"])
++ AC_SUBST(BCM_HOST_LIBS)
++ AC_SUBST(BCM_HOST_CFLAGS)
++
++ PKG_CHECK_MODULES(EGL, egl, [HAVE_EGL="yes"], [HAVE_EGL="no"])
++ AC_SUBST(EGL_LIBS)
++ AC_SUBST(EGL_CFLAGS)
++
++ PKG_CHECK_MODULES(GLES2, glesv2, [HAVE_GLES2="yes"], [HAVE_GLES2="no"])
++ AC_SUBST(GLES2_LIBS)
++ AC_SUBST(GLES2_CFLAGS)
++
++ if test x"$HAVE_BCM_HOST" = x"yes"; then
++ HAVE_EGL_RPI=yes
++ AC_DEFINE(USE_EGL_RPI, [1], [Use RPi platform])
++ else
++ LIBS="$LIBS -lvcos -lvchiq_arm"
++ AC_CHECK_LIB([bcm_host], [bcm_host_init],
+ [
+ LIBS="$LIBS -lbcm_host"
+ AC_CHECK_HEADER(bcm_host.h,
+@@ -726,7 +742,7 @@ case $host in
+ ])
+ ])
+ ])
+-
++ fi
+ LIBS=$old_LIBS
+ CFLAGS=$old_CFLAGS
+
+--
+1.9.1
+
diff --git a/media-libs/gst-plugins-bad/files/gl_typechecks_cflags.patch b/media-libs/gst-plugins-bad/files/gl_typechecks_cflags.patch
new file mode 100644
index 0000000..3f6d955
--- /dev/null
+++ b/media-libs/gst-plugins-bad/files/gl_typechecks_cflags.patch
@@ -0,0 +1,39 @@
+From c194a9f6fba702ced2e7b5771a792a517bbed033 Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Wed, 16 Jul 2014 16:31:27 +0300
+Subject: [PATCH 3/3] gl: Include GL_CFLAGS while checking for GL typedefs
+
+Otherwise those checks may fail at configure time if they contain extra
+include paths, while at build time they are included, potentially causing
+incompatible typedefs between system GL headers and gstreamer compatibility
+prototypes.
+---
+ configure.ac | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 8261ee2..e87081c 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1343,6 +1343,9 @@ GST_GL_HAVE_GLCHAR=0
+ GST_GL_HAVE_GLSIZEIPTR=0
+ GST_GL_HAVE_GLINTPTR=0
+
++old_CFLAGS=$CFLAGS
++CFLAGS="$GL_CFLAGS $CFLAGS"
++
+ AC_CHECK_TYPES(GLeglImageOES, [], [], [[$GL_INCLUDES]])
+ if test "x$ac_cv_type_GLeglImageOES" = "xyes"; then
+ GST_GL_HAVE_GLEGLIMAGEOES=1
+@@ -1363,6 +1366,8 @@ if test "x$ac_cv_type_GLintptr" = "xyes"; then
+ GST_GL_HAVE_GLINTPTR=1
+ fi
+
++CFLAGS=$old_CFLAGS
++
+ GL_CONFIG_DEFINES="$GL_CONFIG_DEFINES
+ #define GST_GL_HAVE_GLEGLIMAGEOES $GST_GL_HAVE_GLEGLIMAGEOES
+ #define GST_GL_HAVE_GLCHAR $GST_GL_HAVE_GLCHAR
+--
+1.9.1
+