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/gst-plugins-base/
Date: Sun, 25 Aug 2019 19:56:01
Message-Id: 1566762902.d664d4fbb5f02fcffd48974807dbb26b9ab9de79.leio@gentoo
1 commit: d664d4fbb5f02fcffd48974807dbb26b9ab9de79
2 Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
3 AuthorDate: Sun Aug 25 19:48:09 2019 +0000
4 Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
5 CommitDate: Sun Aug 25 19:55:02 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d664d4fb
7
8 media-libs/gst-plugins-base: bump to 1.14.5 for upstream bug fixes
9
10 Package-Manager: Portage-2.3.62, Repoman-2.3.12
11 Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>
12
13 media-libs/gst-plugins-base/Manifest | 1 +
14 .../gst-plugins-base-1.14.5-r1.ebuild | 181 +++++++++++++++++++++
15 .../gst-plugins-base-1.14.5.ebuild | 181 +++++++++++++++++++++
16 3 files changed, 363 insertions(+)
17
18 diff --git a/media-libs/gst-plugins-base/Manifest b/media-libs/gst-plugins-base/Manifest
19 index 585a7b59f93..f1ce0a4065f 100644
20 --- a/media-libs/gst-plugins-base/Manifest
21 +++ b/media-libs/gst-plugins-base/Manifest
22 @@ -1 +1,2 @@
23 DIST gst-plugins-base-1.14.4.tar.xz 3703232 BLAKE2B b22c44b857bc4f1972f03752cc1afb35c8d76e2d0c4a06c574af0ac4f3a91080c584ae4e4fc2a263ee879a53d58505c24a756ebc051d81ec62661c4f9e532f0e SHA512 42c59df9f2d848108f12afa0466acbcfa5ccda64e4d0d44608d4268abed20f2e036713de04e7d71feaed1868ad742c5bcb55ae0eef5dec8e19e053dc8541b8af
24 +DIST gst-plugins-base-1.14.5.tar.xz 3717076 BLAKE2B 461e90df614c60d7efce6fabcf8ad7a5cb68b5fc01b05761fa441d838d3155b5a2e7f9b9420b7e48b2eec49e4bcfbd39009a662db03a923f42c6f45c782795cd SHA512 4e81c44a5ea3b910f96d3e9251ba38a79feacead4f96adb92eab5a650695ca8d5313e3ec1df78fec04376cf3152d2eefd4d39f6c11dadc98a11e55bbf8c8ccdc
25
26 diff --git a/media-libs/gst-plugins-base/gst-plugins-base-1.14.5-r1.ebuild b/media-libs/gst-plugins-base/gst-plugins-base-1.14.5-r1.ebuild
27 new file mode 100644
28 index 00000000000..9f40a803260
29 --- /dev/null
30 +++ b/media-libs/gst-plugins-base/gst-plugins-base-1.14.5-r1.ebuild
31 @@ -0,0 +1,181 @@
32 +# Copyright 1999-2019 Gentoo Authors
33 +# Distributed under the terms of the GNU General Public License v2
34 +
35 +EAPI=6
36 +GST_ORG_MODULE="gst-plugins-base"
37 +
38 +inherit flag-o-matic gstreamer
39 +
40 +DESCRIPTION="Basepack of plugins for gstreamer"
41 +HOMEPAGE="https://gstreamer.freedesktop.org/"
42 +
43 +LICENSE="GPL-2+ LGPL-2+"
44 +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
45 +
46 +# For OpenGL we have three separate concepts, with a list of possibilities in each:
47 +# * opengl APIs - opengl and/or gles2; USE=opengl and USE=gles2 enable these accordingly; if neither is enabled, OpenGL helper library and elements are not built at all and all the other options aren't relevant
48 +# * opengl platforms - glx and/or egl; also cgl, wgl, eagl for non-linux; USE="X opengl" enables glx platform; USE="egl" enables egl platform. Rest is up for relevant prefix teams.
49 +# * opengl windowing system - x11, wayland, win32, cocoa, android, viv_fb, gbm and/or dispmanx; USE=X enables x11 (but for WSI it's automagic - FIXME), USE=wayland enables wayland, USE=gbm enables gbm (automagic upstream - FIXME); rest is up for relevant prefix/arch teams/contributors to test and provide patches
50 +# With the following limitations:
51 +# * If opengl and/or gles2 is enabled, a platform has to be enabled - x11 or egl in our case, but x11 (glx) is acceptable only with opengl
52 +# * If opengl and/or gles2 is enabled, a windowing system has to be enabled - x11, wayland or gbm in our case
53 +# * glx platform requires opengl API
54 +# * wayland, gbm and most other non-glx WSIs require egl platform
55 +# Additionally there is optional dmabuf support with egl for additional dmabuf based upload/download/eglimage options;
56 +# and optional graphene usage for gltransformation and glvideoflip elements and more GLSL Uniforms support in glshader;
57 +# and libpng/jpeg are required for gloverlay element;
58 +
59 +# Keep default IUSE options for relevant ones mirrored with gst-plugins-gtk and gst-plugins-bad
60 +IUSE="alsa +egl gbm gles2 +introspection ivorbis +ogg +opengl +orc +pango theora +vorbis wayland +X"
61 +GL_REQUIRED_USE="
62 + || ( gbm wayland X )
63 + wayland? ( egl )
64 + gbm? ( egl )
65 +"
66 +REQUIRED_USE="
67 + ivorbis? ( ogg )
68 + theora? ( ogg )
69 + vorbis? ( ogg )
70 + opengl? ( || ( egl X ) ${GL_REQUIRED_USE} )
71 + gles2? ( egl ${GL_REQUIRED_USE} )
72 +"
73 +
74 +# Dependencies needed by opengl library and plugin (enabled via USE gles2 and/or opengl)
75 +# dmabuf automagic from libdrm headers (drm_fourcc.h) and EGL, so ensure it with USE=egl (platform independent header used only, thus no MULTILIB_USEDEP); provides dmabuf based upload/download/eglimage options
76 +GL_DEPS="
77 + >=media-libs/mesa-9.0[egl?,gbm?,gles2?,wayland?,${MULTILIB_USEDEP}]
78 + egl? (
79 + x11-libs/libdrm
80 + )
81 + gbm? (
82 + >=dev-libs/libgudev-147[${MULTILIB_USEDEP}]
83 + >=x11-libs/libdrm-2.4.55[${MULTILIB_USEDEP}]
84 + )
85 + wayland? (
86 + dev-libs/wayland[${MULTILIB_USEDEP}]
87 + )
88 +
89 + >=media-libs/graphene-1.4.0[${MULTILIB_USEDEP}]
90 + media-libs/libpng:0[${MULTILIB_USEDEP}]
91 + virtual/jpeg:0[${MULTILIB_USEDEP}]
92 +" # graphene for optional gltransformation and glvideoflip elements and more GLSL Uniforms support in glshader; libpng/jpeg for gloverlay element
93 +
94 +RDEPEND="
95 + app-text/iso-codes
96 + >=dev-libs/glib-2.40.0:2[${MULTILIB_USEDEP}]
97 + >=media-libs/gstreamer-${PV}:1.0[introspection?,${MULTILIB_USEDEP}]
98 + >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
99 + alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] )
100 + introspection? ( >=dev-libs/gobject-introspection-1.31.1:= )
101 + ivorbis? ( >=media-libs/tremor-0_pre20130223[${MULTILIB_USEDEP}] )
102 + ogg? ( >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}] )
103 + orc? ( >=dev-lang/orc-0.4.24[${MULTILIB_USEDEP}] )
104 + pango? ( >=x11-libs/pango-1.36.3[${MULTILIB_USEDEP}] )
105 + theora? ( >=media-libs/libtheora-1.1.1[encode,${MULTILIB_USEDEP}] )
106 + vorbis? ( >=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}] )
107 + X? (
108 + >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
109 + >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
110 + >=x11-libs/libXv-1.0.10[${MULTILIB_USEDEP}]
111 + )
112 +
113 + gles2? ( ${GL_DEPS} )
114 + opengl? ( ${GL_DEPS} )
115 +
116 + !<media-libs/gst-plugins-bad-1.13.1:1.0
117 +"
118 +DEPEND="${RDEPEND}
119 + dev-util/glib-utils
120 + >=dev-util/gtk-doc-am-1.12
121 + X? ( x11-base/xorg-proto )
122 +"
123 +
124 +src_prepare() {
125 + # Disable GL tests for now; prone to fail with EGL_NOT_INITIALIZED, etc
126 + sed -i -e '/^@USE_GL_TRUE@/d' tests/check/Makefile.in
127 + default
128 +}
129 +
130 +multilib_src_configure() {
131 + filter-flags -mno-sse -mno-sse2 -mno-sse4.1 #610340
132 +
133 + local myconf=()
134 + # FIXME: Automagic gbm and x11 wsi
135 + if use opengl || use gles2; then
136 + myconf+=(
137 + --enable-gl
138 + $(use_enable egl)
139 + $(use_enable gles2)
140 + $(use_enable opengl)
141 + $(use_enable wayland)
142 + $(use_enable X x11)
143 + )
144 + else
145 + myconf+=(
146 + --disable-gl
147 + --disable-egl
148 + --disable-gles2
149 + --disable-opengl
150 + --disable-wayland
151 + --disable-x11
152 + )
153 + fi
154 +
155 + if use opengl && use X; then
156 + # GLX requires desktop OpenGL and X
157 + myconf+=( --enable-glx )
158 + else
159 + myconf+=( --disable-glx )
160 + fi
161 +
162 + myconf+=(
163 + --disable-cocoa
164 + --disable-dispmanx
165 + --disable-wgl
166 + )
167 +
168 + gstreamer_multilib_src_configure \
169 + $(use_enable alsa) \
170 + $(multilib_native_use_enable introspection) \
171 + $(use_enable ivorbis) \
172 + $(use_enable ogg) \
173 + $(use_enable orc) \
174 + $(use_enable pango) \
175 + $(use_enable theora) \
176 + $(use_enable vorbis) \
177 + $(use_enable X x) \
178 + $(use_enable X xshm) \
179 + $(use_enable X xvideo) \
180 + --enable-iso-codes \
181 + --enable-zlib \
182 + --disable-debug \
183 + --disable-examples \
184 + --disable-static \
185 + "${myconf[@]}"
186 +
187 + # bug #366931, flag-o-matic for the whole thing is overkill
188 + if [[ ${CHOST} == *86-*-darwin* ]] ; then
189 + sed -i \
190 + -e '/FLAGS = /s|-O[23]|-O1|g' \
191 + gst/audioconvert/Makefile \
192 + gst/volume/Makefile || die
193 + fi
194 +
195 + if multilib_is_native_abi; then
196 + local x
197 + for x in libs plugins; do
198 + ln -s "${S}"/docs/${x}/html docs/${x}/html || die
199 + done
200 + fi
201 +}
202 +
203 +multilib_src_install_all() {
204 + DOCS="AUTHORS NEWS README RELEASE"
205 + einstalldocs
206 + find "${ED}" -name '*.la' -delete || die
207 +}
208 +
209 +multilib_src_test() {
210 + unset GSETTINGS_BACKEND
211 + emake check
212 +}
213
214 diff --git a/media-libs/gst-plugins-base/gst-plugins-base-1.14.5.ebuild b/media-libs/gst-plugins-base/gst-plugins-base-1.14.5.ebuild
215 new file mode 100644
216 index 00000000000..b0288166ffc
217 --- /dev/null
218 +++ b/media-libs/gst-plugins-base/gst-plugins-base-1.14.5.ebuild
219 @@ -0,0 +1,181 @@
220 +# Copyright 1999-2019 Gentoo Authors
221 +# Distributed under the terms of the GNU General Public License v2
222 +
223 +EAPI=6
224 +GST_ORG_MODULE="gst-plugins-base"
225 +
226 +inherit flag-o-matic gstreamer
227 +
228 +DESCRIPTION="Basepack of plugins for gstreamer"
229 +HOMEPAGE="https://gstreamer.freedesktop.org/"
230 +
231 +LICENSE="GPL-2+ LGPL-2+"
232 +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"
233 +
234 +# For OpenGL we have three separate concepts, with a list of possibilities in each:
235 +# * opengl APIs - opengl and/or gles2; USE=opengl and USE=gles2 enable these accordingly; if neither is enabled, OpenGL helper library and elements are not built at all and all the other options aren't relevant
236 +# * opengl platforms - glx and/or egl; also cgl, wgl, eagl for non-linux; USE="X opengl" enables glx platform; USE="egl" enables egl platform. Rest is up for relevant prefix teams.
237 +# * opengl windowing system - x11, wayland, win32, cocoa, android, viv_fb, gbm and/or dispmanx; USE=X enables x11 (but for WSI it's automagic - FIXME), USE=wayland enables wayland, USE=gbm enables gbm (automagic upstream - FIXME); rest is up for relevant prefix/arch teams/contributors to test and provide patches
238 +# With the following limitations:
239 +# * If opengl and/or gles2 is enabled, a platform has to be enabled - x11 or egl in our case, but x11 (glx) is acceptable only with opengl
240 +# * If opengl and/or gles2 is enabled, a windowing system has to be enabled - x11, wayland or gbm in our case
241 +# * glx platform requires opengl API
242 +# * wayland, gbm and most other non-glx WSIs require egl platform
243 +# Additionally there is optional dmabuf support with egl for additional dmabuf based upload/download/eglimage options;
244 +# and optional graphene usage for gltransformation and glvideoflip elements and more GLSL Uniforms support in glshader;
245 +# and libpng/jpeg are required for gloverlay element;
246 +
247 +# Keep default IUSE options for relevant ones mirrored with gst-plugins-gtk and gst-plugins-bad
248 +IUSE="alsa +egl gbm gles2 +introspection ivorbis +ogg +opengl +orc +pango theora +vorbis wayland +X"
249 +GL_REQUIRED_USE="
250 + || ( gbm wayland X )
251 + wayland? ( egl )
252 + gbm? ( egl )
253 +"
254 +REQUIRED_USE="
255 + ivorbis? ( ogg )
256 + theora? ( ogg )
257 + vorbis? ( ogg )
258 + opengl? ( || ( egl X ) ${GL_REQUIRED_USE} )
259 + gles2? ( egl ${GL_REQUIRED_USE} )
260 +"
261 +
262 +# Dependencies needed by opengl library and plugin (enabled via USE gles2 and/or opengl)
263 +# dmabuf automagic from libdrm headers (drm_fourcc.h) and EGL, so ensure it with USE=egl (platform independent header used only, thus no MULTILIB_USEDEP); provides dmabuf based upload/download/eglimage options
264 +GL_DEPS="
265 + >=media-libs/mesa-9.0[egl?,gbm?,gles2?,wayland?,${MULTILIB_USEDEP}]
266 + egl? (
267 + x11-libs/libdrm
268 + )
269 + gbm? (
270 + >=dev-libs/libgudev-147[${MULTILIB_USEDEP}]
271 + >=x11-libs/libdrm-2.4.55[${MULTILIB_USEDEP}]
272 + )
273 + wayland? (
274 + dev-libs/wayland[${MULTILIB_USEDEP}]
275 + )
276 +
277 + media-libs/libpng:0[${MULTILIB_USEDEP}]
278 + virtual/jpeg:0[${MULTILIB_USEDEP}]
279 +" # graphene for optional gltransformation and glvideoflip elements and more GLSL Uniforms support in glshader; libpng/jpeg for gloverlay element
280 +# >=media-libs/graphene-1.4.0[${MULTILIB_USEDEP}]
281 +
282 +RDEPEND="
283 + app-text/iso-codes
284 + >=dev-libs/glib-2.40.0:2[${MULTILIB_USEDEP}]
285 + >=media-libs/gstreamer-${PV}:1.0[introspection?,${MULTILIB_USEDEP}]
286 + >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
287 + alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] )
288 + introspection? ( >=dev-libs/gobject-introspection-1.31.1:= )
289 + ivorbis? ( >=media-libs/tremor-0_pre20130223[${MULTILIB_USEDEP}] )
290 + ogg? ( >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}] )
291 + orc? ( >=dev-lang/orc-0.4.24[${MULTILIB_USEDEP}] )
292 + pango? ( >=x11-libs/pango-1.36.3[${MULTILIB_USEDEP}] )
293 + theora? ( >=media-libs/libtheora-1.1.1[encode,${MULTILIB_USEDEP}] )
294 + vorbis? ( >=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}] )
295 + X? (
296 + >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
297 + >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
298 + >=x11-libs/libXv-1.0.10[${MULTILIB_USEDEP}]
299 + )
300 +
301 + gles2? ( ${GL_DEPS} )
302 + opengl? ( ${GL_DEPS} )
303 +
304 + !<media-libs/gst-plugins-bad-1.13.1:1.0
305 +"
306 +DEPEND="${RDEPEND}
307 + dev-util/glib-utils
308 + >=dev-util/gtk-doc-am-1.12
309 + X? ( x11-base/xorg-proto )
310 +"
311 +
312 +src_prepare() {
313 + # Disable GL tests for now; prone to fail with EGL_NOT_INITIALIZED, etc
314 + sed -i -e '/^@USE_GL_TRUE@/d' tests/check/Makefile.in
315 + default
316 +}
317 +
318 +multilib_src_configure() {
319 + filter-flags -mno-sse -mno-sse2 -mno-sse4.1 #610340
320 +
321 + local myconf=()
322 + # FIXME: Automagic gbm and x11 wsi
323 + if use opengl || use gles2; then
324 + myconf+=(
325 + --enable-gl
326 + $(use_enable egl)
327 + $(use_enable gles2)
328 + $(use_enable opengl)
329 + $(use_enable wayland)
330 + $(use_enable X x11)
331 + )
332 + else
333 + myconf+=(
334 + --disable-gl
335 + --disable-egl
336 + --disable-gles2
337 + --disable-opengl
338 + --disable-wayland
339 + --disable-x11
340 + )
341 + fi
342 +
343 + if use opengl && use X; then
344 + # GLX requires desktop OpenGL and X
345 + myconf+=( --enable-glx )
346 + else
347 + myconf+=( --disable-glx )
348 + fi
349 +
350 + myconf+=(
351 + --disable-cocoa
352 + --disable-dispmanx
353 + --disable-wgl
354 + )
355 +
356 + gstreamer_multilib_src_configure \
357 + $(use_enable alsa) \
358 + $(multilib_native_use_enable introspection) \
359 + $(use_enable ivorbis) \
360 + $(use_enable ogg) \
361 + $(use_enable orc) \
362 + $(use_enable pango) \
363 + $(use_enable theora) \
364 + $(use_enable vorbis) \
365 + $(use_enable X x) \
366 + $(use_enable X xshm) \
367 + $(use_enable X xvideo) \
368 + --enable-iso-codes \
369 + --enable-zlib \
370 + --disable-debug \
371 + --disable-examples \
372 + --disable-static \
373 + "${myconf[@]}"
374 +
375 + # bug #366931, flag-o-matic for the whole thing is overkill
376 + if [[ ${CHOST} == *86-*-darwin* ]] ; then
377 + sed -i \
378 + -e '/FLAGS = /s|-O[23]|-O1|g' \
379 + gst/audioconvert/Makefile \
380 + gst/volume/Makefile || die
381 + fi
382 +
383 + if multilib_is_native_abi; then
384 + local x
385 + for x in libs plugins; do
386 + ln -s "${S}"/docs/${x}/html docs/${x}/html || die
387 + done
388 + fi
389 +}
390 +
391 +multilib_src_install_all() {
392 + DOCS="AUTHORS NEWS README RELEASE"
393 + einstalldocs
394 + find "${ED}" -name '*.la' -delete || die
395 +}
396 +
397 +multilib_src_test() {
398 + unset GSETTINGS_BACKEND
399 + emake check
400 +}