/[gentoo-x86]/media-video/vlc/vlc-9999.ebuild
Gentoo

Contents of /media-video/vlc/vlc-9999.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.228 - (show annotations) (download)
Mon Dec 15 05:50:48 2014 UTC (11 days, 16 hours ago) by dlan
Branch: MAIN
CVS Tags: HEAD
Changes since 1.227: +9 -1 lines
1) drop keywords=amd64-fbsd from live ebuild 2) vlc-2.1.*: Restricted <net-misc/freerdp-1.2, bug 529640 3) Fixed qt* use flags when qtchooser and both qt4 and qt5 are installed

(Portage version: 2.2.14/cvs/Linux x86_64, signed Manifest commit with key 0xAABEFD55)

1 # Copyright 1999-2014 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: $
4
5 EAPI="5"
6
7 SCM=""
8 if [ "${PV%9999}" != "${PV}" ] ; then
9 SCM="git-r3"
10
11 if [ "${PV%.9999}" != "${PV}" ] ; then
12 EGIT_REPO_URI="git://git.videolan.org/vlc/vlc-${PV%.9999}.git"
13 else
14 EGIT_REPO_URI="git://git.videolan.org/vlc.git"
15 fi
16 fi
17
18 inherit eutils multilib autotools toolchain-funcs flag-o-matic virtualx ${SCM}
19
20 MY_PV="${PV/_/-}"
21 MY_PV="${MY_PV/-beta/-test}"
22 MY_P="${PN}-${MY_PV}"
23
24 DESCRIPTION="VLC media player - Video player and streamer"
25 HOMEPAGE="http://www.videolan.org/vlc/"
26 if [ "${PV%9999}" != "${PV}" ] ; then # Live ebuild
27 SRC_URI=""
28 elif [[ "${MY_P}" == "${P}" ]]; then
29 SRC_URI="http://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz"
30 else
31 SRC_URI="http://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz"
32 fi
33
34 LICENSE="LGPL-2.1 GPL-2"
35 SLOT="0/5-7" # vlc - vlccore
36
37 if [ "${PV%9999}" = "${PV}" ] ; then
38 KEYWORDS="~amd64 ~arm ~ppc -sparc ~x86 ~x86-fbsd"
39 else
40 KEYWORDS=""
41 fi
42
43 IUSE="a52 aalib alsa altivec atmo +audioqueue avahi +avcodec
44 +avformat bidi bluray cdda cddb chromaprint dbus dc1394 debug
45 directfb directx dts dvb +dvbpsi dvd dxva2 elibc_glibc +encode faad fdk
46 fluidsynth +ffmpeg flac fontconfig +gcrypt gme gnome gnutls
47 growl httpd ieee1394 jack jpeg kate kde libass libcaca libnotify
48 libsamplerate libtiger linsys libtar lirc live lua
49 macosx-dialog-provider macosx-eyetv macosx-quartztext macosx-qtkit
50 matroska media-library mmx modplug mp3 mpeg
51 mtp musepack ncurses neon ogg omxil opencv opengl optimisememory opus
52 png +postproc projectm pulseaudio +qt4 qt5 rdp rtsp run-as-root samba
53 schroedinger sdl sdl-image sftp shout sid skins speex sse svg +swscale
54 taglib theora tremor truetype twolame udev upnp vaapi v4l vcdx vdpau
55 vlm vnc vorbis vpx wma-fixed +X x264 x265 +xcb xml xv zvbi"
56
57 RDEPEND="
58 !<media-video/ffmpeg-1.2:0
59 dev-libs/libgpg-error:0
60 net-dns/libidn:0
61 >=sys-libs/zlib-1.2.5.1-r2:0[minizip]
62 virtual/libintl:0
63 a52? ( >=media-libs/a52dec-0.7.4-r3:0 )
64 aalib? ( media-libs/aalib:0 )
65 alsa? ( >=media-libs/alsa-lib-1.0.24:0 )
66 avahi? ( >=net-dns/avahi-0.6:0[dbus] )
67 avcodec? ( virtual/ffmpeg:0 )
68 avformat? ( virtual/ffmpeg:0 )
69 bidi? ( >=dev-libs/fribidi-0.10.4:0 )
70 bluray? ( >=media-libs/libbluray-0.3:0 )
71 cddb? ( >=media-libs/libcddb-1.2:0 )
72 chromaprint? ( >=media-libs/chromaprint-0.6:0 )
73 dbus? ( >=sys-apps/dbus-1.6:0 )
74 dc1394? ( >=sys-libs/libraw1394-2.0.1:0 >=media-libs/libdc1394-2.1:2 )
75 directfb? ( dev-libs/DirectFB:0 sys-libs/zlib:0 )
76 dts? ( >=media-libs/libdca-0.0.5:0 )
77 dvbpsi? ( >=media-libs/libdvbpsi-0.2.1:0 )
78 dvd? ( >=media-libs/libdvdread-4.9:0 >=media-libs/libdvdnav-4.9.0:0 )
79 elibc_glibc? ( >=sys-libs/glibc-2.8:2.2 )
80 faad? ( >=media-libs/faad2-2.6.1:0 )
81 fdk? ( media-libs/fdk-aac:0 )
82 flac? ( >=media-libs/libogg-1:0 >=media-libs/flac-1.1.2:0 )
83 fluidsynth? ( >=media-sound/fluidsynth-1.1.2:0 )
84 fontconfig? ( media-libs/fontconfig:1.0 )
85 gcrypt? ( >=dev-libs/libgcrypt-1.2.0:0= )
86 gme? ( media-libs/game-music-emu:0 )
87 gnome? ( gnome-base/gnome-vfs:2 dev-libs/glib:2 )
88 gnutls? ( >=net-libs/gnutls-3.0.20:0 )
89 ieee1394? ( >=sys-libs/libraw1394-2.0.1:0 >=sys-libs/libavc1394-0.5.3:0 )
90 jack? ( >=media-sound/jack-audio-connection-kit-0.99.0-r1:0 )
91 jpeg? ( virtual/jpeg:0 )
92 kate? ( >=media-libs/libkate-0.3:0 )
93 libass? ( >=media-libs/libass-0.9.8:0 media-libs/fontconfig:1.0 )
94 libcaca? ( >=media-libs/libcaca-0.99_beta14:0 )
95 libnotify? ( x11-libs/libnotify:0 x11-libs/gtk+:2 x11-libs/gdk-pixbuf:2 dev-libs/glib:2 )
96 libsamplerate? ( media-libs/libsamplerate:0 )
97 libtar? ( >=dev-libs/libtar-1.2.11-r3:0 )
98 libtiger? ( >=media-libs/libtiger-0.3.1:0 )
99 linsys? ( >=media-libs/zvbi-0.2.28:0 )
100 lirc? ( app-misc/lirc:0 )
101 live? ( >=media-plugins/live-2011.12.23:0 )
102 lua? ( >=dev-lang/lua-5.1:0 )
103 matroska? ( >=dev-libs/libebml-1:0= >=media-libs/libmatroska-1:0= )
104 modplug? ( >=media-libs/libmodplug-0.8.4:0 !~media-libs/libmodplug-0.8.8 )
105 mp3? ( media-libs/libmad:0 )
106 mpeg? ( >=media-libs/libmpeg2-0.3.2:0 )
107 mtp? ( >=media-libs/libmtp-1:0 )
108 musepack? ( >=media-sound/musepack-tools-444:0 )
109 ncurses? ( sys-libs/ncurses:5[unicode] )
110 ogg? ( >=media-libs/libogg-1:0 )
111 opencv? ( >media-libs/opencv-2:0 )
112 opengl? ( virtual/opengl:0 >=x11-libs/libX11-1.3.99.901:0 )
113 opus? ( >=media-libs/opus-1.0.3:0 )
114 png? ( media-libs/libpng:0= sys-libs/zlib:0 )
115 postproc? ( || ( >=media-video/ffmpeg-1.2:0 media-libs/libpostproc:0 ) )
116 projectm? ( media-libs/libprojectm:0 media-fonts/dejavu:0 )
117 pulseaudio? ( >=media-sound/pulseaudio-1:0 )
118 qt4? ( >=dev-qt/qtgui-4.6:4 >=dev-qt/qtcore-4.6:4 )
119 qt5? ( >=dev-qt/qtgui-5.1:5 >=dev-qt/qtcore-5.1:5 >=dev-qt/qtwidgets-5.1:5 >=dev-qt/qtx11extras-5.1:5 )
120 rdp? ( >=net-misc/freerdp-1.0.1:0= )
121 samba? ( || ( >=net-fs/samba-3.4.6:0[smbclient] >=net-fs/samba-4:0[client] ) )
122 schroedinger? ( >=media-libs/schroedinger-1.0.10:0 )
123 sdl? ( >=media-libs/libsdl-1.2.10:0
124 sdl-image? ( >=media-libs/sdl-image-1.2.10:0 sys-libs/zlib:0 ) )
125 sftp? ( net-libs/libssh2:0 )
126 shout? ( >=media-libs/libshout-2.1:0 )
127 sid? ( media-libs/libsidplay:2 )
128 skins? ( x11-libs/libXext:0 x11-libs/libXpm:0 x11-libs/libXinerama:0 )
129 speex? ( media-libs/speex:0 )
130 svg? ( >=gnome-base/librsvg-2.9:2 >=x11-libs/cairo-1.13.1:0 )
131 swscale? ( virtual/ffmpeg:0 )
132 taglib? ( >=media-libs/taglib-1.9:0 sys-libs/zlib:0 )
133 theora? ( >=media-libs/libtheora-1.0_beta3:0 )
134 tremor? ( media-libs/tremor:0 )
135 truetype? ( media-libs/freetype:2 virtual/ttf-fonts:0
136 !fontconfig? ( media-fonts/dejavu:0 ) )
137 twolame? ( media-sound/twolame:0 )
138 udev? ( >=virtual/udev-142:0 )
139 upnp? ( net-libs/libupnp:0 )
140 v4l? ( media-libs/libv4l:0 )
141 vaapi? ( x11-libs/libva:0[X,drm] virtual/ffmpeg[vaapi] )
142 vcdx? ( >=dev-libs/libcdio-0.78.2:0 >=media-video/vcdimager-0.7.22:0 )"
143
144 # Temporarily block non-live FFMPEG versions as they break vdpau, 9999 works;
145 # thus we'll have to wait for a new release there.
146 RDEPEND="${RDEPEND}
147 vdpau? (
148 >=x11-libs/libvdpau-0.6:0
149 || (
150 >=media-video/ffmpeg-1.2:0=
151 >=media-video/libav-10:0=
152 )
153 )
154 vnc? ( >=net-libs/libvncserver-0.9.9:0 )
155 vorbis? ( >=media-libs/libvorbis-1.1:0 )
156 vpx? ( media-libs/libvpx:0 )
157 X? ( x11-libs/libX11:0 )
158 x264? ( >=media-libs/x264-0.0.20090923:0= )
159 x265? ( media-libs/x265:0= )
160 xcb? ( >=x11-libs/libxcb-1.6:0 >=x11-libs/xcb-util-0.3.4:0 >=x11-libs/xcb-util-keysyms-0.3.4:0 )
161 xml? ( >=dev-libs/libxml2-2.5:2 )
162 zvbi? ( >=media-libs/zvbi-0.2.25:0 )
163 "
164
165 DEPEND="${RDEPEND}
166 kde? ( >=kde-base/kdelibs-4:4 )
167 xcb? ( x11-proto/xproto:0 )
168 app-arch/xz-utils:0
169 dev-lang/yasm:*
170 >=sys-devel/gettext-0.19.2:*
171 virtual/pkgconfig:*
172 "
173
174 REQUIRED_USE="
175 aalib? ( X )
176 bidi? ( truetype )
177 cddb? ( cdda )
178 dvb? ( dvbpsi )
179 dxva2? ( avcodec )
180 ffmpeg? ( avcodec avformat swscale postproc )
181 fontconfig? ( truetype )
182 gnutls? ( gcrypt )
183 httpd? ( lua )
184 libcaca? ( X )
185 libtar? ( skins )
186 libtiger? ( kate )
187 qt4? ( X !qt5 )
188 qt5? ( X !qt4 )
189 sdl? ( X )
190 skins? ( truetype X ^^ ( qt4 qt5 ) )
191 vaapi? ( avcodec X )
192 vlm? ( encode )
193 xv? ( xcb )
194 "
195
196 S="${WORKDIR}/${MY_P}"
197
198 pkg_setup() {
199 if [[ "${MERGE_TYPE}" != "binary" && "$(tc-getCC)" == *"gcc"* ]] ; then
200 if [[ $(gcc-major-version) < 4 || ( $(gcc-major-version) == 4 && $(gcc-minor-version) < 5 ) ]] ; then
201 die "You need to have at least >=sys-devel/gcc-4.5 to build and/or have a working vlc, see bug #426754."
202 fi
203 fi
204 }
205
206 src_unpack() {
207 if [ "${PV%9999}" != "${PV}" ] ; then
208 git-r3_src_unpack
209 else
210 unpack ${A}
211 fi
212 }
213
214 src_prepare() {
215 # Remove unnecessary warnings about unimplemented pragmas on gcc for now.
216 # Need to recheck this with gcc 4.9 and every subsequent minor bump of gcc.
217 #
218 # config.h:792: warning: ignoring #pragma STDC FENV_ACCESS [-Wunknown-pragmas]
219 # config.h:793: warning: ignoring #pragma STDC FP_CONTRACT [-Wunknown-pragmas]
220 #
221 # http://gcc.gnu.org/c99status.html
222 if [[ "$(tc-getCC)" == *"gcc"* ]] ; then
223 sed -i 's/ifndef __FAST_MATH__/if 0/g' configure.ac || die
224 fi
225
226 # _FORTIFY_SOURCE is set to 2 by default on Gentoo, remove redefine warnings.
227 sed -i '/_FORTIFY_SOURCE.*, 2,/d' configure.ac || die
228
229 # Bootstrap when we are on a git checkout.
230 if [[ "${PV%9999}" != "${PV}" ]] ; then
231 ./bootstrap
232 fi
233
234 # Make it build with libtool 1.5
235 rm -f m4/lt* m4/libtool.m4 || die
236
237 # We are not in a real git checkout due to the absence of a .git directory.
238 touch src/revision.txt || die
239
240 # Fix build system mistake.
241 epatch "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch
242
243 # Patch up incompatibilities and reconfigure autotools.
244 epatch "${FILESDIR}"/${P}-libva-1.2.1-compat.patch
245
246 # Fix up broken audio when skipping using a fixed reversed bisected commit.
247 epatch "${FILESDIR}"/${PN}-2.1.0-TomWij-bisected-PA-broken-underflow.patch
248
249 # Don't use --started-from-file when not using dbus.
250 if ! use dbus ; then
251 sed -i 's/ --started-from-file//' share/vlc.desktop.in || die
252 fi
253
254 eautoreconf
255
256 # Disable automatic running of tests.
257 find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die
258
259 # If qtchooser is installed, it may break the build, because moc,rcc and uic binaries for wrong qt version may be used.
260 # Setting QT_SELECT environment variable will enforce correct binaries.
261 if use qt4; then
262 export QT_SELECT=qt4
263 elif use qt5; then
264 export QT_SELECT=qt5
265 fi
266 }
267
268 src_configure() {
269 # Compatibility fix for Samba 4.
270 use samba && append-cppflags "-I/usr/include/samba-4.0"
271
272 # We need to disable -fstack-check if use >=gcc 4.8.0.
273 # See bug #499996
274 use x86 && append-cflags $(test-flags-CC -fno-stack-check)
275
276 # Needs libresid-builder from libsidplay:2 which is in another directory...
277 # FIXME!
278 append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/"
279
280 if use truetype || use projectm ; then
281 local dejavu="/usr/share/fonts/dejavu/"
282 myconf="--with-default-font=${dejavu}/DejaVuSans.ttf \
283 --with-default-font-family=Sans \
284 --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf
285 --with-default-monospace-font-family=Monospace"
286 fi
287
288 local qt_flag=""
289 if use qt4 || use qt5 ; then
290 qt_flag="--enable-qt"
291 fi
292
293 econf \
294 ${myconf} \
295 --enable-vlc \
296 --docdir=/usr/share/doc/${PF} \
297 --disable-dependency-tracking \
298 --disable-optimizations \
299 --disable-update-check \
300 --enable-fast-install \
301 --enable-screen \
302 $(use_enable a52) \
303 $(use_enable aalib aa) \
304 $(use_enable alsa) \
305 $(use_enable altivec) \
306 $(use_enable atmo) \
307 $(use_enable audioqueue) \
308 $(use_enable avahi bonjour) \
309 $(use_enable avcodec) \
310 $(use_enable avformat) \
311 $(use_enable bidi fribidi) \
312 $(use_enable bluray) \
313 $(use_enable cdda vcd) \
314 $(use_enable cddb libcddb) \
315 $(use_enable chromaprint) \
316 $(use_enable dbus) \
317 $(use_enable directfb) \
318 $(use_enable directx) \
319 $(use_enable dc1394) \
320 $(use_enable debug) \
321 $(use_enable dts dca) \
322 $(use_enable dvbpsi) \
323 $(use_enable dvd dvdread) $(use_enable dvd dvdnav) \
324 $(use_enable dxva2) \
325 $(use_enable encode sout) \
326 $(use_enable faad) \
327 $(use_enable fdk fdkaac) \
328 $(use_enable flac) \
329 $(use_enable fluidsynth) \
330 $(use_enable fontconfig) \
331 $(use_enable gcrypt libgcrypt) \
332 $(use_enable gme) \
333 $(use_enable gnome gnomevfs) \
334 $(use_enable gnutls) \
335 $(use_enable growl) \
336 $(use_enable httpd) \
337 $(use_enable ieee1394 dv1394) \
338 $(use_enable jack) \
339 $(use_enable jpeg) \
340 $(use_enable kate) \
341 $(use_with kde kde-solid) \
342 $(use_enable libass) \
343 $(use_enable libcaca caca) \
344 $(use_enable libnotify notify) \
345 $(use_enable libsamplerate samplerate) \
346 $(use_enable libtar) \
347 $(use_enable libtiger tiger) \
348 $(use_enable linsys) \
349 $(use_enable lirc) \
350 $(use_enable live live555) \
351 $(use_enable lua) \
352 $(use_enable macosx-dialog-provider) \
353 $(use_enable macosx-eyetv) \
354 $(use_enable macosx-qtkit) \
355 $(use_enable macosx-quartztext) \
356 $(use_enable matroska mkv) \
357 $(use_enable mmx) \
358 $(use_enable modplug mod) \
359 $(use_enable mp3 mad) \
360 $(use_enable mpeg libmpeg2) \
361 $(use_enable mtp) \
362 $(use_enable musepack mpc) \
363 $(use_enable ncurses) \
364 $(use_enable neon) \
365 $(use_enable ogg) $(use_enable ogg mux_ogg) \
366 $(use_enable omxil) \
367 $(use_enable omxil omxil-vout) \
368 $(use_enable opencv) \
369 $(use_enable opengl glx) $(use_enable opengl glspectrum) \
370 $(use_enable opus) \
371 $(use_enable optimisememory optimize-memory) \
372 $(use_enable png) \
373 $(use_enable postproc) \
374 $(use_enable projectm) \
375 $(use_enable pulseaudio pulse) \
376 ${qt_flag} \
377 $(use_enable rdp freerdp) \
378 $(use_enable rtsp realrtsp) \
379 $(use_enable run-as-root) \
380 $(use_enable samba smbclient) \
381 $(use_enable schroedinger) \
382 $(use_enable sdl) \
383 $(use_enable sdl-image) \
384 $(use_enable sid) \
385 $(use_enable sftp) \
386 $(use_enable shout) \
387 $(use_enable skins skins2) \
388 $(use_enable speex) \
389 $(use_enable sse) \
390 $(use_enable svg) \
391 $(use_enable svg svgdec) \
392 $(use_enable swscale) \
393 $(use_enable taglib) \
394 $(use_enable theora) \
395 $(use_enable tremor) \
396 $(use_enable truetype freetype) \
397 $(use_enable twolame) \
398 $(use_enable udev) \
399 $(use_enable upnp) \
400 $(use_enable v4l v4l2) \
401 $(use_enable vaapi libva) \
402 $(use_enable vcdx) \
403 $(use_enable vdpau) \
404 $(use_enable vlm) \
405 $(use_enable vnc) \
406 $(use_enable vorbis) \
407 $(use_enable vpx) \
408 $(use_enable wma-fixed) \
409 $(use_with X x) \
410 $(use_enable x264) \
411 $(use_enable xcb) \
412 $(use_enable xml libxml2) \
413 $(use_enable xv xvideo) \
414 $(use_enable x265) \
415 $(use_enable zvbi) $(use_enable !zvbi telx) \
416 --disable-asdcp \
417 --disable-coverage \
418 --disable-cprof \
419 --disable-crystalhd \
420 --disable-decklink \
421 --disable-gles1 \
422 --disable-gles2 \
423 --disable-goom \
424 --disable-kai \
425 --disable-kva \
426 --disable-maintainer-mode \
427 --disable-merge-ffmpeg \
428 --disable-mfx \
429 --disable-mmal-codec \
430 --disable-mmal-vout \
431 --disable-opensles \
432 --disable-oss \
433 --disable-quicktime \
434 --disable-rpi-omxil \
435 --disable-shine \
436 --disable-sndio \
437 --disable-vda \
438 --disable-vsxu \
439 --disable-wasapi
440
441 # ^ We don't have these disabled libraries in the Portage tree yet.
442 }
443
444 src_test() {
445 Xemake check-TESTS
446 }
447
448 DOCS="AUTHORS THANKS NEWS README doc/fortunes.txt doc/intf-vcd.txt"
449
450 src_install() {
451 default
452
453 # Punt useless libtool's .la files
454 find "${D}" -name '*.la' -delete
455 }
456
457 pkg_postinst() {
458 if [ "$ROOT" = "/" ] && [ -x "/usr/$(get_libdir)/vlc/vlc-cache-gen" ] ; then
459 einfo "Running /usr/$(get_libdir)/vlc/vlc-cache-gen on /usr/$(get_libdir)/vlc/plugins/"
460 "/usr/$(get_libdir)/vlc/vlc-cache-gen" -f "/usr/$(get_libdir)/vlc/plugins/"
461 else
462 ewarn "We cannot run vlc-cache-gen (most likely ROOT!=/)"
463 ewarn "Please run /usr/$(get_libdir)/vlc/vlc-cache-gen manually"
464 ewarn "If you do not do it, vlc will take a long time to load."
465 fi
466 }

  ViewVC Help
Powered by ViewVC 1.1.20