summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMart Raudsepp <leio@gentoo.org>2017-02-09 08:21:02 +0200
committerMart Raudsepp <leio@gentoo.org>2017-02-11 16:51:24 +0200
commite30212f41a498cf5e6f38d4c4922035742a395db (patch)
tree27223b752209fd0517963d28ca50e035ea960041 /media-libs/gstreamer
parentnet-libs/libproxy: revbump to fix installed files (diff)
downloadgentoo-e30212f41a498cf5e6f38d4c4922035742a395db.tar.gz
gentoo-e30212f41a498cf5e6f38d4c4922035742a395db.tar.bz2
gentoo-e30212f41a498cf5e6f38d4c4922035742a395db.zip
media-libs/gstreamer: bump to 1.10.3 and fix configure argument passing
No configure arguments were passed since gstreamer-1.6.0 due to ${myconf[$@]} instead of "${myconf[@]}". Also removed multilib.eclass inherit as it seems to have been used only for get_libdir, which comes from EAPI-6 now. eutils is still used by einstalldocs for now. Package-Manager: Portage-2.3.3, Repoman-2.3.1
Diffstat (limited to 'media-libs/gstreamer')
-rw-r--r--media-libs/gstreamer/Manifest1
-rw-r--r--media-libs/gstreamer/files/gstreamer-1.10.3-automagic-libunwind.patch54
-rw-r--r--media-libs/gstreamer/gstreamer-1.10.3.ebuild112
-rw-r--r--media-libs/gstreamer/metadata.xml2
4 files changed, 169 insertions, 0 deletions
diff --git a/media-libs/gstreamer/Manifest b/media-libs/gstreamer/Manifest
index 3ce503df019a..fd866a026c9f 100644
--- a/media-libs/gstreamer/Manifest
+++ b/media-libs/gstreamer/Manifest
@@ -1,2 +1,3 @@
DIST gstreamer-0.10.36.tar.xz 3025876 SHA256 9151aa108c177054387885763fa0e433e76780f7c5655c70a5390f2a6c6871da SHA512 7468abb578398681d2adb0e9bbc9ee8ae25aaef72369d45a66ada6c67d1759afdce606cb32e68d9e30ae813196bdfef3d4d33202bc77839cc1fbf5fc436c1bd8 WHIRLPOOL 03b841624552be860d4bf824bde9d6d5d6afc629048244b02037c96370c88191f34a6d09f02af61f295a9d6f84952efec2c5d4b0a28e8e70cd17966ed1b01d93
+DIST gstreamer-1.10.3.tar.xz 3797056 SHA256 85b9dc1b2991f224fa90d534ec57014896c479e061dc9fa1bc16ae17cbebb63d SHA512 f601020026e159a8f52ade2fac2b25fb804a88bc6c04dc86ae9df64dc06b5b2315bb2209f8d3c17ca9f63379c9ab631d706c6138e4ed88db254442c05936774c WHIRLPOOL 30d9dde211767d35699c8f272b51389cf9a7856fbd2445dfe6d84cfd16f0c24653fc4615c510a61440ed59bb9ceedb33a9a89b691464673599fa203cc01203a9
DIST gstreamer-1.8.3.tar.xz 3711068 SHA256 66b37762d4fdcd63bce5a2bec57e055f92420e95037361609900278c0db7c53f SHA512 a5f0c2b1d16fd03e3bd3968a8304ed1c32a5b733440cd656ab2e0caabb2f7803ae1bfe7a8e331d5ebb1e8adbe21c5c47263bc73a8480bc16cc28f995241e9f4e WHIRLPOOL 8581d57e65f77b918ed98614e96726629c36c59e07700a32983482c16e0e40775351309465c55c4994fb830ca3044f9f74de05b673a63eeea53d1dc511a9b2ef
diff --git a/media-libs/gstreamer/files/gstreamer-1.10.3-automagic-libunwind.patch b/media-libs/gstreamer/files/gstreamer-1.10.3-automagic-libunwind.patch
new file mode 100644
index 000000000000..472726f56101
--- /dev/null
+++ b/media-libs/gstreamer/files/gstreamer-1.10.3-automagic-libunwind.patch
@@ -0,0 +1,54 @@
+From 930fc152babda61d2eab05f0c9cc1a1928ead731 Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Sun, 5 Feb 2017 09:03:46 +0200
+Subject: [PATCH] configure: Allow specifying libunwind usage explicitly
+
+https://bugzilla.gnome.org/show_bug.cgi?id=778193
+---
+ configure.ac | 23 ++++++++++++++++++-----
+ 1 file changed, 18 insertions(+), 5 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 5081a75..5905430 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -827,7 +827,24 @@ fi
+ AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes")
+
+ dnl libunwind is optionally used by the leaks tracer
+-PKG_CHECK_MODULES(UNWIND, libunwind, HAVE_UNWIND=yes, HAVE_UNWIND=no)
++AC_ARG_ENABLE(libunwind,
++ AS_HELP_STRING([--disable-libunwind],[disable using libunwind inside leaks tracer @<:@default=auto@:>@]),
++ [LIBUNWIND="$enableval"], [LIBUNWIND="auto"])
++
++if test "x$LIBUNWIND" != "xno"; then
++ PKG_CHECK_MODULES(UNWIND, libunwind, [
++ HAVE_UNWIND=yes
++ AC_DEFINE(HAVE_UNWIND, 1, [libunwind available])
++ ], [
++ HAVE_UNWIND=no
++ if test "x$LIBUNWIND" = "xyes"; then
++ AC_MSG_ERROR([libunwind requested but not installed.])
++ fi
++ ])
++else
++ HAVE_UNWIND=no
++fi
++AM_CONDITIONAL(HAVE_UNWIND, [test "x$HAVE_UNWIND" = "xyes"])
+
+ dnl Check for backtrace() from libc
+ AC_CHECK_FUNC(backtrace, [
+@@ -836,10 +853,6 @@ AC_CHECK_FUNC(backtrace, [
+ ], [], [])
+ ])
+
+-if test "x$HAVE_UNWIND" = "xyes"; then
+- AC_DEFINE(HAVE_UNWIND, 1, [libunwind available])
+-fi
+-
+ dnl building of unit test libraries
+ AC_ARG_ENABLE(check,
+ AS_HELP_STRING([--disable-check],[disable building unit test libraries]),
+--
+2.10.1
+
diff --git a/media-libs/gstreamer/gstreamer-1.10.3.ebuild b/media-libs/gstreamer/gstreamer-1.10.3.ebuild
new file mode 100644
index 000000000000..fe31fbc68324
--- /dev/null
+++ b/media-libs/gstreamer/gstreamer-1.10.3.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit bash-completion-r1 eutils multilib-minimal pax-utils autotools
+
+DESCRIPTION="Open source multimedia framework"
+HOMEPAGE="https://gstreamer.freedesktop.org/"
+SRC_URI="https://${PN}.freedesktop.org/src/${PN}/${P}.tar.xz"
+
+LICENSE="LGPL-2+"
+SLOT="1.0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="+caps +introspection nls +orc test unwind"
+
+RDEPEND="
+ >=dev-libs/glib-2.40.0:2[${MULTILIB_USEDEP}]
+ caps? ( sys-libs/libcap )
+ introspection? ( >=dev-libs/gobject-introspection-1.31.1:= )
+ unwind? ( >=sys-libs/libunwind-1.2_rc1[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+ >=dev-util/gtk-doc-am-1.12
+ sys-devel/bison
+ sys-devel/flex
+ >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+ nls? ( sys-devel/gettext )
+"
+# gtk-doc-am to install API docs
+
+# https://bugzilla.gnome.org/show_bug.cgi?id=778193 (remove src_prepare/eautoreconf once not needed on bump)
+PATCHES=( "${FILESDIR}"/${P}-automagic-libunwind.patch )
+
+src_prepare() {
+ default
+ eautoreconf # Due to automagic libunwind fix
+}
+
+src_configure() {
+ if [[ ${CHOST} == *-interix* ]] ; then
+ export ac_cv_lib_dl_dladdr=no
+ export ac_cv_func_poll=no
+ fi
+ if [[ ${CHOST} == powerpc-apple-darwin* ]] ; then
+ # GCC groks this, but then refers to an implementation (___multi3,
+ # ___udivti3) that don't exist (at least I can't find it), so force
+ # this one to be off, such that we use 2x64bit emulation code.
+ export gst_cv_uint128_t=no
+ fi
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ # Set 'libexecdir' to ABI-specific location for the library spawns
+ # helpers from there.
+ # Disable static archives and examples to speed up build time
+ # Disable debug, as it only affects -g passing (debugging symbols), this must done through make.conf in gentoo
+ local myconf=(
+ --libexecdir="${EPREFIX}"/usr/$(get_libdir)
+ --disable-debug
+ --disable-examples
+ --disable-static
+ --disable-valgrind
+ --enable-check
+ $(use_enable unwind libunwind)
+ $(multilib_native_use_enable introspection)
+ $(use_enable nls)
+ $(use_enable test tests)
+ --with-bash-completion-dir="$(get_bashcompdir)"
+ --with-package-name="GStreamer ebuild for Gentoo"
+ --with-package-origin="https://packages.gentoo.org/package/media-libs/gstreamer"
+ )
+
+ if use caps ; then
+ myconf+=( --with-ptp-helper-permissions=capabilities )
+ else
+ myconf+=(
+ --with-ptp-helper-permissions=setuid-root
+ --with-ptp-helper-setuid-user=nobody
+ --with-ptp-helper-setuid-group=nobody
+ )
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+
+ if multilib_is_native_abi; then
+ local x
+ for x in gst libs plugins; do
+ ln -s "${S}"/docs/${x}/html docs/${x}/html || die
+ done
+ fi
+}
+
+multilib_src_install() {
+ # can't do "default", we want to install docs in multilib_src_install_all
+ emake DESTDIR="${D}" install
+
+ # Needed for orc-using gst plugins on hardened/PaX systems, bug #421579
+ use orc && pax-mark -m "${ED}usr/$(get_libdir)/gstreamer-${SLOT}/gst-plugin-scanner"
+}
+
+multilib_src_install_all() {
+ DOCS="AUTHORS ChangeLog NEWS MAINTAINERS README RELEASE"
+ einstalldocs
+ prune_libtool_files --modules
+
+ # Needed for orc-using gst plugins on hardened/PaX systems, bug #421579
+ use orc && pax-mark -m "${ED}usr/bin/gst-launch-${SLOT}"
+}
diff --git a/media-libs/gstreamer/metadata.xml b/media-libs/gstreamer/metadata.xml
index a915b817dc3e..9834236e32c6 100644
--- a/media-libs/gstreamer/metadata.xml
+++ b/media-libs/gstreamer/metadata.xml
@@ -9,5 +9,7 @@
<flag name="orc">Disable some PaX memory protections to allow plugins
that use <pkg>dev-lang/orc</pkg> for runtime optimization to be
used on hardened PaX systems</flag>
+ <flag name="unwind">Enable <pkg>sys-libs/libunwind</pkg> usage for better
+ backtrace support in leaks tracer module</flag>
</use>
</pkgmetadata>