Gentoo Archives: gentoo-commits

From: Mart Raudsepp <leio@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-libs/gstreamer/, media-libs/gstreamer/files/
Date: Mon, 17 Sep 2018 21:06:14
Message-Id: 1537218179.c07c57e0160764c61989510dd2ac3a6d67f3ec7f.leio@gentoo
1 commit: c07c57e0160764c61989510dd2ac3a6d67f3ec7f
2 Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
3 AuthorDate: Mon Sep 17 20:16:13 2018 +0000
4 Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
5 CommitDate: Mon Sep 17 21:02:59 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c07c57e0
7
8 media-libs/gstreamer: bump to 1.14.3 for upstream bug fixes
9
10 Package-Manager: Portage-2.3.49, Repoman-2.3.10
11
12 media-libs/gstreamer/Manifest | 1 +
13 .../files/1.14.3-fix-gstsegment-test.patch | 46 +++++++++
14 media-libs/gstreamer/gstreamer-1.14.3.ebuild | 115 +++++++++++++++++++++
15 3 files changed, 162 insertions(+)
16
17 diff --git a/media-libs/gstreamer/Manifest b/media-libs/gstreamer/Manifest
18 index 6d32992eabb..61a56aace43 100644
19 --- a/media-libs/gstreamer/Manifest
20 +++ b/media-libs/gstreamer/Manifest
21 @@ -2,3 +2,4 @@ DIST gstreamer-0.10.36.tar.xz 3025876 BLAKE2B f0f70f483e8ccb2a294fb3bc8b51aac089
22 DIST gstreamer-1.12.4.tar.xz 3177208 BLAKE2B cb859503edbe09cebbbfa70cb4edc5d433bbaa5b299e05921d30e6096f8765e17d449c45bd7d5ea3e4603ae46d337d4e3291b1d0456c7b72a7ebb41faad9e73a SHA512 849aa4ddf8ef465f2915e05d36fc0c31c2e31ae28be2fa38f8069a64a91b7347020fac5b881b7f3ee54c2198c3596138d49f27b09f258303834164a5d68b38a2
23 DIST gstreamer-1.14.1.tar.xz 3252440 BLAKE2B c2142621b126926dd9ec886f0478154b3f0d9b7adebc6169200b8bc7e4cd089dfe77cab2b436bf3c74cbcae5f84c95afbd05ba282d0afe3e8e226e6bc0f33e33 SHA512 9cf16d79774293dd7fa10c08f6628b83f4e77f0386bebbfd47ded0498e4abd48eee1aee164af53d59fbea2d395e42eb5a12ef4b8f631bc4fd5d4f69545191f9b
24 DIST gstreamer-1.14.2.tar.xz 3255404 BLAKE2B 290e8fec3eb6629a0e6e8f01c7c027fcc085f632afeac1ffe7bd4f1d8a9a3d3b78145334a11c91fcabea40b9f202a3b451ca55db13fd23be66c7167c76614932 SHA512 270dba318d15b54fff6e09d09d77dea13be55bbf82a5bb510efb43f954e234230505366cc6f19f5431e2dd24f5a7734daf5a89d9bd94de8302ed722df0e1eb84
25 +DIST gstreamer-1.14.3.tar.xz 3263036 BLAKE2B 20170b831064ea49565d7a4529563e4e9273def28d33eda779c7e3f4a60989b64844c271da529bdbbaebf80a8a86c37b97af4a18c4d0aae6182be608f3dcf345 SHA512 bfbf76219b5275b00253797323c4fc7b4edb8513d5441c80a8f778b418837c68e9ff37a72a78ac2431a051e813397fb01464bebddd1522b9e4a225ed505342b7
26
27 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
28 new file mode 100644
29 index 00000000000..9b2fb2402e1
30 --- /dev/null
31 +++ b/media-libs/gstreamer/files/1.14.3-fix-gstsegment-test.patch
32 @@ -0,0 +1,46 @@
33 +From 0a479c3cdc5d5745b6cc5084d5faf3b0ab8e604a Mon Sep 17 00:00:00 2001
34 +From: Jan Schmidt <jan@×××××××××××.com>
35 +Date: Mon, 17 Sep 2018 22:13:22 +1000
36 +Subject: [PATCH] tests: Use a different rate in a segment test.
37 +
38 +Using a rate of 1.1 in the test is causing the test to
39 +fail on 32-bit because ceil(1.1 * 10) can round to 12.
40 +
41 +Instead use a rate 2.0 that can be expressed as floating
42 +point number and doesn't trigger the problem.
43 +
44 +https://bugzilla.gnome.org/show_bug.cgi?id=797154
45 +---
46 + tests/check/gst/gstsegment.c | 6 +++---
47 + 1 file changed, 3 insertions(+), 3 deletions(-)
48 +
49 +diff --git a/tests/check/gst/gstsegment.c b/tests/check/gst/gstsegment.c
50 +index 17ad18c2f..751469d76 100644
51 +--- a/tests/check/gst/gstsegment.c
52 ++++ b/tests/check/gst/gstsegment.c
53 +@@ -888,7 +888,7 @@ GST_START_TEST (segment_full)
54 + fail_unless_equals_int (pos, 190);
55 +
56 + /* Test a non-1.0 rate that lands right before the segment, but still +ve */
57 +- segment.rate = 1.1;
58 ++ segment.rate = 2.0;
59 + segment.start = 100;
60 + segment.offset = 0;
61 + segment.stop = 500;
62 +@@ -897,11 +897,11 @@ GST_START_TEST (segment_full)
63 + segment.time = 10000;
64 + fail_unless (gst_segment_position_from_running_time_full (&segment,
65 + GST_FORMAT_TIME, 140, &pos) == 1);
66 +- fail_unless (pos == 89);
67 ++ fail_unless (pos == 80);
68 + /* And now one that should give a position < 0 */
69 + fail_unless (gst_segment_position_from_running_time_full (&segment,
70 + GST_FORMAT_TIME, 0, &pos) == -1);
71 +- fail_unless (pos == 65);
72 ++ fail_unless (pos == 200);
73 +
74 + /* Test a non-1.0 negative rate that lands right after the (reversed) segment, but still +ve position */
75 + segment.rate = -2.0;
76 +--
77 +2.17.0
78 +
79
80 diff --git a/media-libs/gstreamer/gstreamer-1.14.3.ebuild b/media-libs/gstreamer/gstreamer-1.14.3.ebuild
81 new file mode 100644
82 index 00000000000..ff1a74c70a2
83 --- /dev/null
84 +++ b/media-libs/gstreamer/gstreamer-1.14.3.ebuild
85 @@ -0,0 +1,115 @@
86 +# Copyright 1999-2018 Gentoo Foundation
87 +# Distributed under the terms of the GNU General Public License v2
88 +
89 +EAPI=6
90 +
91 +inherit bash-completion-r1 multilib-minimal pax-utils
92 +
93 +DESCRIPTION="Open source multimedia framework"
94 +HOMEPAGE="https://gstreamer.freedesktop.org/"
95 +SRC_URI="https://${PN}.freedesktop.org/src/${PN}/${P}.tar.xz"
96 +
97 +LICENSE="LGPL-2+"
98 +SLOT="1.0"
99 +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"
100 +IUSE="+caps +introspection nls +orc test unwind"
101 +
102 +RDEPEND="
103 + >=dev-libs/glib-2.40.0:2[${MULTILIB_USEDEP}]
104 + caps? ( sys-libs/libcap[${MULTILIB_USEDEP}] )
105 + introspection? ( >=dev-libs/gobject-introspection-1.31.1:= )
106 + unwind? (
107 + >=sys-libs/libunwind-1.2_rc1[${MULTILIB_USEDEP}]
108 + dev-libs/elfutils[${MULTILIB_USEDEP}]
109 + )
110 + !<media-libs/gst-plugins-bad-1.13.1:1.0
111 +"
112 +DEPEND="${RDEPEND}
113 + dev-util/glib-utils
114 + >=dev-util/gtk-doc-am-1.12
115 + sys-devel/bison
116 + sys-devel/flex
117 + >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
118 + nls? ( sys-devel/gettext )
119 +"
120 +# gtk-doc-am to install API docs
121 +
122 +PATCHES=(
123 + "${FILESDIR}"/${PV}-fix-gstsegment-test.patch
124 +)
125 +
126 +src_configure() {
127 + if [[ ${CHOST} == *-interix* ]] ; then
128 + export ac_cv_lib_dl_dladdr=no
129 + export ac_cv_func_poll=no
130 + fi
131 + if [[ ${CHOST} == powerpc-apple-darwin* ]] ; then
132 + # GCC groks this, but then refers to an implementation (___multi3,
133 + # ___udivti3) that don't exist (at least I can't find it), so force
134 + # this one to be off, such that we use 2x64bit emulation code.
135 + export gst_cv_uint128_t=no
136 + fi
137 +
138 + multilib-minimal_src_configure
139 +}
140 +
141 +multilib_src_configure() {
142 + local completiondir=$(get_bashcompdir)
143 + # Set 'libexecdir' to ABI-specific location for the library spawns
144 + # helpers from there.
145 + # Disable static archives and examples to speed up build time
146 + # Disable debug, as it only affects -g passing (debugging symbols), this must done through make.conf in gentoo
147 + local myconf=(
148 + --libexecdir="${EPREFIX}"/usr/$(get_libdir)
149 + --disable-benchmarks
150 + --disable-debug
151 + --disable-examples
152 + --disable-static
153 + --disable-valgrind
154 + --enable-check
155 + $(use_with unwind)
156 + $(use_with unwind dw)
157 + $(multilib_native_use_enable introspection)
158 + $(use_enable nls)
159 + $(use_enable test tests)
160 + --with-bash-completion-dir="${completiondir%/*}"
161 + --with-package-name="GStreamer ebuild for Gentoo"
162 + --with-package-origin="https://packages.gentoo.org/package/media-libs/gstreamer"
163 + )
164 +
165 + if use caps ; then
166 + myconf+=( --with-ptp-helper-permissions=capabilities )
167 + else
168 + myconf+=(
169 + --with-ptp-helper-permissions=setuid-root
170 + --with-ptp-helper-setuid-user=nobody
171 + --with-ptp-helper-setuid-group=nobody
172 + )
173 + fi
174 +
175 + ECONF_SOURCE="${S}" econf "${myconf[@]}"
176 +
177 + if multilib_is_native_abi; then
178 + local x
179 + for x in gst libs plugins; do
180 + ln -s "${S}"/docs/${x}/html docs/${x}/html || die
181 + done
182 + fi
183 +}
184 +
185 +multilib_src_install() {
186 + # can't do "default", we want to install docs in multilib_src_install_all
187 + emake DESTDIR="${D}" install
188 +
189 + # Needed for orc-using gst plugins on hardened/PaX systems, bug #421579
190 + use orc && pax-mark -m "${ED}usr/$(get_libdir)/gstreamer-${SLOT}/gst-plugin-scanner"
191 +}
192 +
193 +multilib_src_install_all() {
194 + DOCS="AUTHORS ChangeLog NEWS MAINTAINERS README RELEASE"
195 + einstalldocs
196 + find "${ED}" -name '*.la' -delete || die
197 +
198 + # Needed for orc-using gst plugins on hardened/PaX systems, bug #421579
199 + use orc && pax-mark -m "${ED}usr/bin/gst-launch-${SLOT}"
200 +}