From f7a3160b1970d45c61984ae09f805e9f6652c4b2 Mon Sep 17 00:00:00 2001 From: Mart Raudsepp Date: Fri, 18 Jul 2014 04:04:28 +0300 Subject: 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. --- .../gst-plugins-bad/files/egl-gl_cflags.patch | 28 +++++++++++ .../gst-plugins-bad/files/egl-rpi-pkgconfig.patch | 58 ++++++++++++++++++++++ .../files/gl_typechecks_cflags.patch | 39 +++++++++++++++ 3 files changed, 125 insertions(+) create mode 100644 media-libs/gst-plugins-bad/files/egl-gl_cflags.patch create mode 100644 media-libs/gst-plugins-bad/files/egl-rpi-pkgconfig.patch create mode 100644 media-libs/gst-plugins-bad/files/gl_typechecks_cflags.patch 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 +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 +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 +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 + -- cgit v1.2.3-65-gdbad