commit:     c07c57e0160764c61989510dd2ac3a6d67f3ec7f
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 17 20:16:13 2018 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Mon Sep 17 21:02:59 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c07c57e0

media-libs/gstreamer: bump to 1.14.3 for upstream bug fixes

Package-Manager: Portage-2.3.49, Repoman-2.3.10

 media-libs/gstreamer/Manifest                      |   1 +
 .../files/1.14.3-fix-gstsegment-test.patch         |  46 +++++++++
 media-libs/gstreamer/gstreamer-1.14.3.ebuild       | 115 +++++++++++++++++++++
 3 files changed, 162 insertions(+)

diff --git a/media-libs/gstreamer/Manifest b/media-libs/gstreamer/Manifest
index 6d32992eabb..61a56aace43 100644
--- a/media-libs/gstreamer/Manifest
+++ b/media-libs/gstreamer/Manifest
@@ -2,3 +2,4 @@ DIST gstreamer-0.10.36.tar.xz 3025876 BLAKE2B 
f0f70f483e8ccb2a294fb3bc8b51aac089
 DIST gstreamer-1.12.4.tar.xz 3177208 BLAKE2B 
cb859503edbe09cebbbfa70cb4edc5d433bbaa5b299e05921d30e6096f8765e17d449c45bd7d5ea3e4603ae46d337d4e3291b1d0456c7b72a7ebb41faad9e73a
 SHA512 
849aa4ddf8ef465f2915e05d36fc0c31c2e31ae28be2fa38f8069a64a91b7347020fac5b881b7f3ee54c2198c3596138d49f27b09f258303834164a5d68b38a2
 DIST gstreamer-1.14.1.tar.xz 3252440 BLAKE2B 
c2142621b126926dd9ec886f0478154b3f0d9b7adebc6169200b8bc7e4cd089dfe77cab2b436bf3c74cbcae5f84c95afbd05ba282d0afe3e8e226e6bc0f33e33
 SHA512 
9cf16d79774293dd7fa10c08f6628b83f4e77f0386bebbfd47ded0498e4abd48eee1aee164af53d59fbea2d395e42eb5a12ef4b8f631bc4fd5d4f69545191f9b
 DIST gstreamer-1.14.2.tar.xz 3255404 BLAKE2B 
290e8fec3eb6629a0e6e8f01c7c027fcc085f632afeac1ffe7bd4f1d8a9a3d3b78145334a11c91fcabea40b9f202a3b451ca55db13fd23be66c7167c76614932
 SHA512 
270dba318d15b54fff6e09d09d77dea13be55bbf82a5bb510efb43f954e234230505366cc6f19f5431e2dd24f5a7734daf5a89d9bd94de8302ed722df0e1eb84
+DIST gstreamer-1.14.3.tar.xz 3263036 BLAKE2B 
20170b831064ea49565d7a4529563e4e9273def28d33eda779c7e3f4a60989b64844c271da529bdbbaebf80a8a86c37b97af4a18c4d0aae6182be608f3dcf345
 SHA512 
bfbf76219b5275b00253797323c4fc7b4edb8513d5441c80a8f778b418837c68e9ff37a72a78ac2431a051e813397fb01464bebddd1522b9e4a225ed505342b7

diff --git a/media-libs/gstreamer/files/1.14.3-fix-gstsegment-test.patch 
b/media-libs/gstreamer/files/1.14.3-fix-gstsegment-test.patch
new file mode 100644
index 00000000000..9b2fb2402e1
--- /dev/null
+++ b/media-libs/gstreamer/files/1.14.3-fix-gstsegment-test.patch
@@ -0,0 +1,46 @@
+From 0a479c3cdc5d5745b6cc5084d5faf3b0ab8e604a Mon Sep 17 00:00:00 2001
+From: Jan Schmidt <[email protected]>
+Date: Mon, 17 Sep 2018 22:13:22 +1000
+Subject: [PATCH] tests: Use a different rate in a segment test.
+
+Using a rate of 1.1 in the test is causing the test to
+fail on 32-bit because ceil(1.1 * 10) can round to 12.
+
+Instead use a rate 2.0 that can be expressed as floating
+point number and doesn't trigger the problem.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=797154
+---
+ tests/check/gst/gstsegment.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/tests/check/gst/gstsegment.c b/tests/check/gst/gstsegment.c
+index 17ad18c2f..751469d76 100644
+--- a/tests/check/gst/gstsegment.c
++++ b/tests/check/gst/gstsegment.c
+@@ -888,7 +888,7 @@ GST_START_TEST (segment_full)
+   fail_unless_equals_int (pos, 190);
+ 
+   /* Test a non-1.0 rate that lands right before the segment, but still +ve */
+-  segment.rate = 1.1;
++  segment.rate = 2.0;
+   segment.start = 100;
+   segment.offset = 0;
+   segment.stop = 500;
+@@ -897,11 +897,11 @@ GST_START_TEST (segment_full)
+   segment.time = 10000;
+   fail_unless (gst_segment_position_from_running_time_full (&segment,
+           GST_FORMAT_TIME, 140, &pos) == 1);
+-  fail_unless (pos == 89);
++  fail_unless (pos == 80);
+   /* And now one that should give a position < 0 */
+   fail_unless (gst_segment_position_from_running_time_full (&segment,
+           GST_FORMAT_TIME, 0, &pos) == -1);
+-  fail_unless (pos == 65);
++  fail_unless (pos == 200);
+ 
+   /* Test a non-1.0 negative rate that lands right after the (reversed) 
segment, but still +ve position */
+   segment.rate = -2.0;
+-- 
+2.17.0
+

diff --git a/media-libs/gstreamer/gstreamer-1.14.3.ebuild 
b/media-libs/gstreamer/gstreamer-1.14.3.ebuild
new file mode 100644
index 00000000000..ff1a74c70a2
--- /dev/null
+++ b/media-libs/gstreamer/gstreamer-1.14.3.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit bash-completion-r1 multilib-minimal pax-utils
+
+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[${MULTILIB_USEDEP}] )
+       introspection? ( >=dev-libs/gobject-introspection-1.31.1:= )
+       unwind? (
+               >=sys-libs/libunwind-1.2_rc1[${MULTILIB_USEDEP}]
+               dev-libs/elfutils[${MULTILIB_USEDEP}]
+       )
+       !<media-libs/gst-plugins-bad-1.13.1:1.0
+"
+DEPEND="${RDEPEND}
+       dev-util/glib-utils
+       >=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
+
+PATCHES=(
+       "${FILESDIR}"/${PV}-fix-gstsegment-test.patch
+)
+
+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() {
+       local completiondir=$(get_bashcompdir)
+       # 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-benchmarks
+               --disable-debug
+               --disable-examples
+               --disable-static
+               --disable-valgrind
+               --enable-check
+               $(use_with unwind)
+               $(use_with unwind dw)
+               $(multilib_native_use_enable introspection)
+               $(use_enable nls)
+               $(use_enable test tests)
+               --with-bash-completion-dir="${completiondir%/*}"
+               --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
+       find "${ED}" -name '*.la' -delete || die
+
+       # Needed for orc-using gst plugins on hardened/PaX systems, bug #421579
+       use orc && pax-mark -m "${ED}usr/bin/gst-launch-${SLOT}"
+}

Reply via email to