Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-video/vlc/
Date: Mon, 19 Feb 2018 19:26:19
Message-Id: 1519068365.49a803c9bab903a1ebbafe56996e14aaaa60eb18.asturm@gentoo
1 commit: 49a803c9bab903a1ebbafe56996e14aaaa60eb18
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Mon Feb 19 19:22:45 2018 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Mon Feb 19 19:26:05 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=49a803c9
7
8 media-video/vlc: Major USE flag consolidation, DEPEND fixes
9
10 Package-Manager: Portage-2.3.24, Repoman-2.3.6
11
12 media-video/vlc/vlc-3.0.0-r2.ebuild | 473 ++++++++++++++++++++++++++++++++++++
13 1 file changed, 473 insertions(+)
14
15 diff --git a/media-video/vlc/vlc-3.0.0-r2.ebuild b/media-video/vlc/vlc-3.0.0-r2.ebuild
16 new file mode 100644
17 index 00000000000..953df06005e
18 --- /dev/null
19 +++ b/media-video/vlc/vlc-3.0.0-r2.ebuild
20 @@ -0,0 +1,473 @@
21 +# Copyright 1999-2018 Gentoo Foundation
22 +# Distributed under the terms of the GNU General Public License v2
23 +
24 +EAPI=6
25 +
26 +MY_PV="${PV/_/-}"
27 +MY_PV="${MY_PV/-beta/-test}"
28 +MY_P="${PN}-${MY_PV}"
29 +if [[ ${PV} = *9999 ]] ; then
30 + if [[ ${PV%.9999} != ${PV} ]] ; then
31 + EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git"
32 + else
33 + EGIT_REPO_URI="https://git.videolan.org/git/vlc.git"
34 + fi
35 + SCM="git-r3"
36 +else
37 + if [[ ${MY_P} = ${P} ]] ; then
38 + SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz"
39 + else
40 + SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz"
41 + fi
42 + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 -sparc ~x86 ~x86-fbsd"
43 +fi
44 +inherit autotools flag-o-matic gnome2-utils toolchain-funcs versionator virtualx xdg-utils ${SCM}
45 +
46 +DESCRIPTION="Media player and framework with support for most multimedia files and streaming"
47 +HOMEPAGE="https://www.videolan.org/vlc/"
48 +
49 +LICENSE="LGPL-2.1 GPL-2"
50 +SLOT="0/5-9" # vlc - vlccore
51 +
52 +IUSE="a52 alsa altivec aom archive bidi bluray cddb chromaprint chromecast dbus dc1394
53 + debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac fluidsynth fontconfig
54 + +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate libass libav libcaca
55 + libnotify +libsamplerate libtar libtiger linsys lirc live lua macosx-notifications
56 + macosx-qtkit matroska modplug mp3 mpeg mtp musepack ncurses neon nfs ogg omxil opencv
57 + optimisememory opus png postproc projectm pulseaudio +qt5 rdp rtsp run-as-root
58 + samba schroedinger sdl-image sftp shout sid skins speex ssl svg taglib theora tremor
59 + truetype twolame udev upnp vaapi v4l vcd vdpau vnc vorbis vpx wayland wma-fixed +X
60 + x264 x265 xml zeroconf zvbi cpu_flags_x86_mmx cpu_flags_x86_sse
61 +"
62 +REQUIRED_USE="
63 + bidi? ( truetype )
64 + directx? ( ffmpeg )
65 + fontconfig? ( truetype )
66 + libcaca? ( X )
67 + libtar? ( skins )
68 + libtiger? ( kate )
69 + postproc? ( ffmpeg )
70 + skins? ( qt5 truetype X xml )
71 + ssl? ( gcrypt )
72 + vaapi? ( ffmpeg X )
73 + vdpau? ( ffmpeg X )
74 +"
75 +RDEPEND="
76 + net-dns/libidn:0
77 + sys-libs/zlib:0[minizip]
78 + virtual/libintl:0
79 + virtual/opengl
80 + a52? ( media-libs/a52dec:0 )
81 + alsa? ( media-libs/alsa-lib:0 )
82 + aom? ( media-libs/libaom:= )
83 + archive? ( app-arch/libarchive:= )
84 + bidi? ( dev-libs/fribidi:0 )
85 + bluray? ( media-libs/libbluray:0= )
86 + cddb? ( media-libs/libcddb:0 )
87 + chromaprint? ( media-libs/chromaprint:0= )
88 + chromecast? ( >=dev-libs/protobuf-2.5.0:= )
89 + dbus? ( sys-apps/dbus:0 )
90 + dc1394? (
91 + media-libs/libdc1394:2
92 + sys-libs/libraw1394:0
93 + )
94 + dts? ( media-libs/libdca:0 )
95 + dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:0= )
96 + dvd? (
97 + >=media-libs/libdvdnav-4.9:0
98 + >=media-libs/libdvdread-4.9:0
99 + )
100 + faad? ( media-libs/faad2:0 )
101 + fdk? ( media-libs/fdk-aac:0= )
102 + ffmpeg? (
103 + !libav? ( >=media-video/ffmpeg-3.1.3:0=[vaapi?,vdpau?] )
104 + libav? ( >=media-video/libav-11.8:0=[vaapi?,vdpau?] )
105 + )
106 + flac? (
107 + media-libs/flac:0
108 + media-libs/libogg:0
109 + )
110 + fluidsynth? ( media-sound/fluidsynth:0 )
111 + fontconfig? ( media-libs/fontconfig:1.0 )
112 + gcrypt? (
113 + dev-libs/libgcrypt:0=
114 + dev-libs/libgpg-error:0
115 + )
116 + gme? ( media-libs/game-music-emu:0 )
117 + gnome-keyring? ( app-crypt/libsecret )
118 + gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 )
119 + ieee1394? (
120 + sys-libs/libavc1394:0
121 + sys-libs/libraw1394:0
122 + )
123 + jack? ( virtual/jack )
124 + jpeg? ( virtual/jpeg:0 )
125 + kate? ( media-libs/libkate:0 )
126 + libass? (
127 + media-libs/fontconfig:1.0
128 + media-libs/libass:0=
129 + )
130 + libcaca? ( media-libs/libcaca:0 )
131 + libnotify? (
132 + dev-libs/glib:2
133 + x11-libs/gdk-pixbuf:2
134 + x11-libs/gtk+:3
135 + x11-libs/libnotify:0
136 + )
137 + libsamplerate? ( media-libs/libsamplerate:0 )
138 + libtar? ( dev-libs/libtar:0 )
139 + libtiger? ( media-libs/libtiger:0 )
140 + linsys? ( media-libs/zvbi )
141 + lirc? ( app-misc/lirc:0 )
142 + live? ( media-plugins/live:0 )
143 + lua? ( >=dev-lang/lua-5.1:0 )
144 + matroska? (
145 + dev-libs/libebml:0=
146 + media-libs/libmatroska:0=
147 + )
148 + modplug? ( media-libs/libmodplug:0 )
149 + mp3? ( media-libs/libmad:0 )
150 + mpeg? ( media-libs/libmpeg2:0 )
151 + mtp? ( media-libs/libmtp:0= )
152 + musepack? ( media-sound/musepack-tools:0 )
153 + ncurses? ( sys-libs/ncurses:0=[unicode] )
154 + nfs? ( >=net-fs/libnfs-0.10.0:= )
155 + ogg? ( media-libs/libogg:0 )
156 + opencv? ( media-libs/opencv:0= )
157 + opus? ( >=media-libs/opus-1.0.3:0 )
158 + png? ( media-libs/libpng:0= )
159 + postproc? ( libav? ( media-libs/libpostproc:0= ) )
160 + projectm? (
161 + media-fonts/dejavu:0
162 + media-libs/libprojectm:0
163 + )
164 + pulseaudio? ( media-sound/pulseaudio:0 )
165 + qt5? (
166 + dev-qt/qtcore:5
167 + dev-qt/qtgui:5
168 + dev-qt/qtsvg:5
169 + dev-qt/qtwidgets:5
170 + X? (
171 + dev-qt/qtx11extras:5
172 + x11-libs/libX11
173 + )
174 + )
175 + rdp? ( >=net-misc/freerdp-2.0.0_rc0:0=[client] )
176 + samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] )
177 + schroedinger? ( >=media-libs/schroedinger-1.0.10:0 )
178 + sdl-image? ( media-libs/sdl-image:0 )
179 + sftp? ( net-libs/libssh2:0 )
180 + shout? ( media-libs/libshout:0 )
181 + sid? ( media-libs/libsidplay:2 )
182 + skins? (
183 + x11-libs/libXext:0
184 + x11-libs/libXinerama:0
185 + x11-libs/libXpm:0
186 + )
187 + speex? (
188 + >=media-libs/speex-1.2.0:0
189 + media-libs/speexdsp:0
190 + )
191 + ssl? ( net-libs/gnutls:0 )
192 + svg? (
193 + gnome-base/librsvg:2
194 + x11-libs/cairo:0
195 + )
196 + taglib? ( >=media-libs/taglib-1.9:0 )
197 + theora? ( media-libs/libtheora:0 )
198 + tremor? ( media-libs/tremor:0 )
199 + truetype? (
200 + media-libs/freetype:2
201 + virtual/ttf-fonts:0
202 + !fontconfig? ( media-fonts/dejavu:0 )
203 + )
204 + twolame? ( media-sound/twolame:0 )
205 + udev? ( virtual/udev:0 )
206 + upnp? ( net-libs/libupnp:= )
207 + v4l? ( media-libs/libv4l:0 )
208 + vaapi? ( x11-libs/libva:0=[drm,wayland?,X?] )
209 + vcd? ( >=dev-libs/libcdio-0.78.2:0 )
210 + vdpau? ( x11-libs/libvdpau:0 )
211 + vnc? ( net-libs/libvncserver:0 )
212 + vorbis? ( media-libs/libvorbis:0 )
213 + vpx? ( media-libs/libvpx:0= )
214 + wayland? (
215 + dev-libs/wayland
216 + dev-libs/wayland-protocols
217 + )
218 + X? (
219 + x11-libs/libX11
220 + x11-libs/libxcb
221 + x11-libs/xcb-util
222 + x11-libs/xcb-util-keysyms
223 + )
224 + x264? ( media-libs/x264:0= )
225 + x265? ( media-libs/x265:0= )
226 + xml? ( dev-libs/libxml2:2 )
227 + zeroconf? ( net-dns/avahi:0[dbus] )
228 + zvbi? ( media-libs/zvbi )
229 +"
230 +DEPEND="${RDEPEND}
231 + >=sys-devel/gettext-0.19.8:*
232 + virtual/pkgconfig:*
233 + amd64? ( dev-lang/yasm:* )
234 + x86? ( dev-lang/yasm:* )
235 + X? ( x11-proto/xproto )
236 +"
237 +
238 +PATCHES=(
239 + "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system
240 + "${FILESDIR}"/${PN}-2.2.4-libav-11.7.patch # bug #593460
241 + "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164
242 +)
243 +
244 +DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt )
245 +
246 +S="${WORKDIR}/${MY_P}"
247 +
248 +src_prepare() {
249 + default
250 +
251 + has_version '>=net-libs/libupnp-1.8.0' && \
252 + eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch
253 +
254 + # Bootstrap when we are on a git checkout.
255 + if [[ ${PV} = *9999 ]] ; then
256 + ./bootstrap
257 + fi
258 +
259 + # Make it build with libtool 1.5
260 + rm m4/lt* m4/libtool.m4 || die
261 +
262 + # We are not in a real git checkout due to the absence of a .git directory.
263 + touch src/revision.txt || die
264 +
265 + # Don't use --started-from-file when not using dbus.
266 + if ! use dbus ; then
267 + sed -i 's/ --started-from-file//' share/vlc.desktop.in || die
268 + fi
269 +
270 + # Disable running of vlc-cache-gen, we do that in pkg_postinst
271 + sed -e "/test.*build.*host/s/\$(host)/nothanks/" \
272 + -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen"
273 +
274 + eautoreconf
275 +
276 + # Disable automatic running of tests.
277 + find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die
278 +}
279 +
280 +src_configure() {
281 + local myeconfargs=(
282 + --disable-aa
283 + --disable-dependency-tracking
284 + --disable-optimizations
285 + --disable-update-check
286 + --enable-fast-install
287 + --enable-screen
288 + --enable-vlc
289 + $(use_enable a52)
290 + $(use_enable alsa)
291 + $(use_enable altivec)
292 + $(use_enable aom)
293 + $(use_enable archive)
294 + $(use_enable bidi fribidi)
295 + $(use_enable bluray)
296 + $(use_enable cddb libcddb)
297 + $(use_enable chromaprint)
298 + $(use_enable chromecast)
299 + $(use_enable cpu_flags_x86_mmx mmx)
300 + $(use_enable cpu_flags_x86_sse sse)
301 + $(use_enable dbus)
302 + $(use_enable dbus kwallet)
303 + $(use_enable dc1394)
304 + $(use_enable debug)
305 + $(use_enable directx)
306 + $(use_enable directx d3d11va)
307 + $(use_enable directx dxva2)
308 + $(use_enable dts dca)
309 + $(use_enable dvbpsi)
310 + $(use_enable dvd dvdnav)
311 + $(use_enable dvd dvdread)
312 + $(use_enable encode sout)
313 + $(use_enable encode vlm)
314 + $(use_enable faad)
315 + $(use_enable fdk fdkaac)
316 + $(use_enable ffmpeg avcodec)
317 + $(use_enable ffmpeg avformat)
318 + $(use_enable ffmpeg swscale)
319 + $(use_enable flac)
320 + $(use_enable fluidsynth)
321 + $(use_enable fontconfig)
322 + $(use_enable gcrypt libgcrypt)
323 + $(use_enable gme)
324 + $(use_enable gnome-keyring secret)
325 + $(use_enable gstreamer gst-decode)
326 + $(use_enable ieee1394 dv1394)
327 + $(use_enable jack)
328 + $(use_enable jpeg)
329 + $(use_enable kate)
330 + $(use_enable libass)
331 + $(use_enable libcaca caca)
332 + $(use_enable libnotify notify)
333 + $(use_enable libsamplerate samplerate)
334 + $(use_enable libtar)
335 + $(use_enable libtiger tiger)
336 + $(use_enable linsys)
337 + $(use_enable lirc)
338 + $(use_enable live live555)
339 + $(use_enable lua)
340 + $(use_enable macosx-notifications osx-notifications)
341 + $(use_enable macosx-qtkit)
342 + $(use_enable modplug mod)
343 + $(use_enable mp3 mad)
344 + $(use_enable mpeg libmpeg2)
345 + $(use_enable mtp)
346 + $(use_enable musepack mpc)
347 + $(use_enable ncurses)
348 + $(use_enable neon)
349 + $(use_enable ogg)
350 + $(use_enable omxil)
351 + $(use_enable omxil omxil-vout)
352 + $(use_enable opencv)
353 + $(use_enable optimisememory optimize-memory)
354 + $(use_enable opus)
355 + $(use_enable png)
356 + $(use_enable postproc)
357 + $(use_enable projectm)
358 + $(use_enable pulseaudio pulse)
359 + $(use_enable qt5 qt)
360 + $(use_enable rdp freerdp)
361 + $(use_enable rtsp realrtsp)
362 + $(use_enable run-as-root)
363 + $(use_enable samba smbclient)
364 + $(use_enable schroedinger)
365 + $(use_enable sdl-image)
366 + $(use_enable sftp)
367 + $(use_enable shout)
368 + $(use_enable sid)
369 + $(use_enable skins skins2)
370 + $(use_enable speex)
371 + $(use_enable ssl gnutls)
372 + $(use_enable svg)
373 + $(use_enable svg svgdec)
374 + $(use_enable taglib)
375 + $(use_enable theora)
376 + $(use_enable tremor)
377 + $(use_enable truetype freetype)
378 + $(use_enable twolame)
379 + $(use_enable udev)
380 + $(use_enable upnp)
381 + $(use_enable v4l v4l2)
382 + $(use_enable vaapi libva)
383 + $(use_enable vcd)
384 + $(use_enable vdpau)
385 + $(use_enable vnc)
386 + $(use_enable vorbis)
387 + $(use_enable vpx)
388 + $(use_enable wayland)
389 + $(use_enable wma-fixed)
390 + $(use_with X x)
391 + $(use_enable X xcb)
392 + $(use_enable X xvideo)
393 + $(use_enable x264)
394 + $(use_enable x265)
395 + $(use_enable xml libxml2)
396 + $(use_enable zeroconf avahi)
397 + $(use_enable zvbi)
398 + $(use_enable !zvbi telx)
399 + --disable-asdcp
400 + --disable-coverage
401 + --disable-cprof
402 + --disable-crystalhd
403 + --disable-decklink
404 + --disable-gles2
405 + --disable-goom
406 + --disable-kai
407 + --disable-kva
408 + --disable-libplacebo
409 + --disable-maintainer-mode
410 + --disable-merge-ffmpeg
411 + --disable-mfx
412 + --disable-mmal
413 + --disable-opensles
414 + --disable-oss
415 + --disable-rpi-omxil
416 + --disable-shine
417 + --disable-sndio
418 + --disable-spatialaudio
419 + --disable-srt
420 + --disable-vsxu
421 + --disable-wasapi
422 + )
423 + # ^ We don't have these disabled libraries in the Portage tree yet.
424 +
425 + # Compatibility fix for Samba 4.
426 + use samba && append-cppflags "-I/usr/include/samba-4.0"
427 +
428 + if use x86; then
429 + # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996
430 + append-cflags $(test-flags-CC -fno-stack-check)
431 + # Bug 569774
432 + replace-flags -Os -O2
433 + fi
434 +
435 + # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8
436 + append-cxxflags -std=c++11
437 +
438 + # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory...
439 + append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/"
440 +
441 + xdg_environment_reset # bug 608256
442 +
443 + if use truetype || use projectm ; then
444 + local dejavu="/usr/share/fonts/dejavu/"
445 + myeconfargs+=(
446 + --with-default-font=${dejavu}/DejaVuSans.ttf
447 + --with-default-font-family=Sans
448 + --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf
449 + --with-default-monospace-font-family=Monospace
450 + )
451 + fi
452 +
453 + econf ${myeconfargs[@]}
454 +
455 + # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo.
456 + # Other values may break the build (bug 523144), so definition should not be removed.
457 + # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h
458 + sed -i '1i#undef _FORTIFY_SOURCE' config.h || die
459 +}
460 +
461 +src_test() {
462 + virtx emake check-TESTS
463 +}
464 +
465 +src_install() {
466 + default
467 + find "${D}" -name '*.la' -delete || die
468 +}
469 +
470 +pkg_postinst() {
471 + if [[ "$ROOT" = "/" ]] && [[ -x "/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then
472 + einfo "Running /usr/$(get_libdir)/vlc/vlc-cache-gen on /usr/$(get_libdir)/vlc/plugins/"
473 + "/usr/$(get_libdir)/vlc/vlc-cache-gen" "/usr/$(get_libdir)/vlc/plugins/"
474 + else
475 + ewarn "We cannot run vlc-cache-gen (most likely ROOT!=/)"
476 + ewarn "Please run /usr/$(get_libdir)/vlc/vlc-cache-gen manually"
477 + ewarn "If you do not do it, vlc will take a long time to load."
478 + fi
479 +
480 + gnome2_icon_cache_update
481 + xdg_mimeinfo_database_update
482 + xdg_desktop_database_update
483 +}
484 +
485 +pkg_postrm() {
486 + if [[ -e /usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then
487 + rm /usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat"
488 + fi
489 +
490 + gnome2_icon_cache_update
491 + xdg_mimeinfo_database_update
492 + xdg_desktop_database_update
493 +}