/[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.193 - (show annotations) (download)
Mon Oct 21 19:15:29 2013 UTC (4 years, 1 month ago) by tomwij
Branch: MAIN
Changes since 1.192: +156 -118 lines
Worked further on the 2.1.0 version bump: Added USE flags and dependencies to support fdk(aac), opus, tremor, vdpau and vpx. Added support for the upcming Qt 5 release. Added missing dependencies (libgpg-error used in HTML communication, libidn which is used by most objects, gdb-pixbuf, glib and xcb-util-keysyms) SLOTted all dependencies, used the slot operator where dependencies have sub slots; to avoid incorrect dependencies, new SLOTs and overlays versions from breaking the vlc package. Moved gettext to RDEPEND as it was duplicated. Remove _FORTIFY_SOURCE definition as it is set to Gentoo's default to shorten the build log by removing unnecessary warnings. Removed the freetype patch as the configure parameters work. Ensured that there are less to none automagic dependencies. Enumerated almost all configure parameters as there were some missing. Removed oss due to compile error due to missing package. Run tests using virtualx to avoid a window from popping up. Simplified src_install. Documented fdk, tremor and vpx USE flags in metadata.xml. More changes and testing will follow; there still appear warnings and errors to look into (also resid_builder), which probably requires configure.ac patching. Progress is being tracked mainly in bug #479566.

(Portage version: HEAD/cvs/Linux x86_64, signed Manifest commit with key 6D34E57D)

1 # Copyright 1999-2013 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: /var/cvsroot/gentoo-x86/media-video/vlc/vlc-9999.ebuild,v 1.192 2013/10/21 01:15:02 tomwij Exp $
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"
36
37 if [ "${PV%9999}" = "${PV}" ] ; then
38 KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 -sparc ~x86 ~amd64-fbsd ~x86-fbsd"
39 else
40 KEYWORDS=""
41 fi
42
43 IUSE="a52 aac aalib alsa altivec atmo +audioqueue avahi +avcodec
44 +avformat bidi bluray cdda cddb chromaprint dbus dc1394 debug dirac
45 directfb directx dts dvb +dvbpsi dvd dxva2 elibc_glibc egl +encode fdk
46 fluidsynth +ffmpeg flac fontconfig +gcrypt gme gnome gnutls
47 growl httpd ieee1394 ios-vout jack kate kde libass libcaca libnotify
48 libsamplerate libtiger linsys libtar lirc live lua +macosx
49 +macosx-audio +macosx-dialog-provider +macosx-eyetv +macosx-quartztext
50 +macosx-qtkit +macosx-vout 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 waveout vpx wma-fixed +X x264 +xcb xml xv zvbi"
56
57 RDEPEND="
58 dev-libs/libgpg-error:0
59 net-dns/libidn:0
60 >=sys-devel/gettext-0.18.3:0
61 >=sys-libs/zlib-1.2.5.1-r2:0[minizip]
62 a52? ( >=media-libs/a52dec-0.7.4-r3:0 )
63 aalib? ( media-libs/aalib:0 )
64 aac? ( >=media-libs/faad2-2.6.1:0 )
65 alsa? ( >=media-libs/alsa-lib-1.0.23: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.2.1:0 )
71 cddb? ( >=media-libs/libcddb-1.2.0:0 )
72 chromaprint? ( >=media-libs/chromaprint-0.6:0 )
73 dbus? ( >=sys-apps/dbus-1.0.2:0 )
74 dc1394? ( >=sys-libs/libraw1394-2.0.1:0 >=media-libs/libdc1394-2.0.2:2 )
75 dirac? ( >=media-video/dirac-0.10.0:0 )
76 directfb? ( dev-libs/DirectFB:0 sys-libs/zlib:0 )
77 dts? ( media-libs/libdca:0 )
78 dvbpsi? ( >=media-libs/libdvbpsi-0.2.1:0 )
79 dvd? ( media-libs/libdvdread:0 >=media-libs/libdvdnav-0.1.9:0 )
80 egl? ( virtual/opengl:0 )
81 elibc_glibc? ( >=sys-libs/glibc-2.8:2.2 )
82 fdk? ( media-libs/fdk-aac:0 )
83 flac? ( media-libs/libogg:0 >=media-libs/flac-1.1.2:0 )
84 fluidsynth? ( >=media-sound/fluidsynth-1.1.0:0 )
85 fontconfig? ( media-libs/fontconfig:1.0 )
86 gcrypt? ( >=dev-libs/libgcrypt-1.2.0:0 )
87 gme? ( media-libs/game-music-emu:0 )
88 gnome? ( gnome-base/gnome-vfs:2 dev-libs/glib:2 )
89 gnutls? ( >=net-libs/gnutls-2.0.0:0 )
90 ieee1394? ( >=sys-libs/libraw1394-2.0.1:0 >=sys-libs/libavc1394-0.5.3:0 )
91 ios-vout? ( virtual/opengl:0 )
92 jack? ( >=media-sound/jack-audio-connection-kit-0.99.0-r1:0 )
93 kate? ( >=media-libs/libkate-0.1.1:0 )
94 libass? ( >=media-libs/libass-0.9.8:0 media-libs/fontconfig:1.0 )
95 libcaca? ( >=media-libs/libcaca-0.99_beta14:0 )
96 libnotify? ( x11-libs/libnotify:0 x11-libs/gtk+:2 x11-libs/gdk-pixbuf:2 dev-libs/glib:2 )
97 libsamplerate? ( media-libs/libsamplerate:0 )
98 libtar? ( >=dev-libs/libtar-1.2.11-r3:0 )
99 libtiger? ( media-libs/libtiger:0 )
100 linsys? ( >=media-libs/zvbi-0.2.28:0 )
101 lirc? ( app-misc/lirc:0 )
102 live? ( >=media-plugins/live-2011.12.23:0 )
103 lua? ( >=dev-lang/lua-5.1:0 )
104 macosx-vout? ( virtual/opengl:0 )
105 matroska? ( >=dev-libs/libebml-1.0.0:0= >=media-libs/libmatroska-1.0.0:0= )
106 modplug? ( >=media-libs/libmodplug-0.8.8.1:0 )
107 mp3? ( media-libs/libmad:0 )
108 mpeg? ( >=media-libs/libmpeg2-0.3.2:0 )
109 mtp? ( >=media-libs/libmtp-1.0.0:0 )
110 musepack? ( >=media-sound/musepack-tools-444:0 )
111 ncurses? ( sys-libs/ncurses:5[unicode] )
112 ogg? ( media-libs/libogg:0 )
113 opencv? ( >=media-libs/opencv-2.0:0 )
114 opengl? ( virtual/opengl:0 >=x11-libs/libX11-1.3.99.901:0 )
115 opus? ( >=media-libs/opus-1.0.3:0 )
116 png? ( media-libs/libpng:0= sys-libs/zlib:0 )
117 postproc? ( || ( media-video/ffmpeg:0= media-libs/libpostproc:0 ) )
118 projectm? ( media-libs/libprojectm:0 media-fonts/dejavu:0 )
119 pulseaudio? ( >=media-sound/pulseaudio-0.9.22:0 )
120 qt4? ( dev-qt/qtgui:4 dev-qt/qtcore:4 )
121 qt5? ( dev-qt/qtgui:5 dev-qt/qtcore:5 )
122 rdp? ( net-misc/freerdp:0 )
123 samba? ( >=net-fs/samba-3.4.6:0[smbclient] )
124 schroedinger? ( >=media-libs/schroedinger-1.0.10:0 )
125 sdl? ( >=media-libs/libsdl-1.2.8:0
126 sdl-image? ( media-libs/sdl-image:0 sys-libs/zlib:0 ) )
127 sftp? ( net-libs/libssh2:0 )
128 shout? ( media-libs/libshout:0 )
129 sid? ( media-libs/libsidplay:2 )
130 skins? ( x11-libs/libXext:0 x11-libs/libXpm:0 x11-libs/libXinerama:0 )
131 speex? ( media-libs/speex:0 )
132 svg? ( >=gnome-base/librsvg-2.9.0:2 )
133 swscale? ( virtual/ffmpeg:0 )
134 taglib? ( >=media-libs/taglib-1.5:0 sys-libs/zlib:0 )
135 theora? ( >=media-libs/libtheora-1.0_beta3:0 )
136 tremor? ( media-libs/tremor:0 )
137 truetype? ( media-libs/freetype:2 virtual/ttf-fonts:0
138 !fontconfig? ( media-fonts/dejavu:0 ) )
139 twolame? ( media-sound/twolame:0 )
140 udev? ( virtual/udev:0 )
141 upnp? ( net-libs/libupnp:0 )
142 v4l? ( media-libs/libv4l:0 )
143 vaapi? ( x11-libs/libva:0 )
144 vcdx? ( >=dev-libs/libcdio-0.78.2:0 >=media-video/vcdimager-0.7.22:0 )
145 vdpau? ( >=x11-libs/libvdpau-0.6:0 )
146 vnc? ( >=net-libs/libvncserver-0.9.9:0 )
147 vorbis? ( media-libs/libvorbis:0 )
148 vpx? ( media-libs/libvpx:0 )
149 X? ( x11-libs/libX11:0 )
150 x264? ( >=media-libs/x264-0.0.20090923:0= )
151 xcb? ( >=x11-libs/libxcb-1.6:0 >=x11-libs/xcb-util-0.3.4:0 x11-libs/xcb-util-keysyms:0 )
152 xml? ( dev-libs/libxml2:2 )
153 zvbi? ( >=media-libs/zvbi-0.2.25:0 )
154 "
155
156 DEPEND="${RDEPEND}
157 kde? ( >=kde-base/kdelibs-4:4 )
158 xcb? ( x11-proto/xproto:0 )
159 app-arch/xz-utils:0
160 virtual/pkgconfig:0
161 "
162
163 REQUIRED_USE="
164 aalib? ( X )
165 bidi? ( truetype )
166 cddb? ( cdda )
167 dvb? ( dvbpsi )
168 dxva2? ( avcodec )
169 egl? ( X )
170 ffmpeg? ( avcodec avformat swscale postproc )
171 fontconfig? ( truetype )
172 gnutls? ( gcrypt )
173 httpd? ( lua )
174 libcaca? ( X )
175 libtar? ( skins )
176 libtiger? ( kate )
177 qt4? ( X !qt5 )
178 qt5? ( X !qt4 )
179 sdl? ( X )
180 skins? ( truetype X ^^ ( qt4 qt5 ) )
181 vaapi? ( avcodec X )
182 vlm? ( encode )
183 xv? ( xcb )
184 "
185
186 S="${WORKDIR}/${MY_P}"
187
188 src_unpack() {
189 if [ "${PV%9999}" != "${PV}" ] ; then
190 git-r3_src_unpack
191 else
192 unpack ${A}
193 fi
194 }
195
196 src_prepare() {
197 # Support for Qt5.
198 if use qt5 ; then
199 export UIC="/usr/lib64/qt5/bin/uic"
200 export MOC="/usr/lib64/qt5/bin/moc"
201 fi
202
203 # Remove unnecessary warnings about unimplemented pragmas on gcc for now.
204 # Need to recheck this with gcc 4.9 and every subsequent minor bump of gcc.
205 #
206 # config.h:792: warning: ignoring #pragma STDC FENV_ACCESS [-Wunknown-pragmas]
207 # config.h:793: warning: ignoring #pragma STDC FP_CONTRACT [-Wunknown-pragmas]
208 #
209 # http://gcc.gnu.org/c99status.html
210 if [[ "$(tc-getCC)" == *"gcc"* ]] ; then
211 sed -i 's/ifndef __FAST_MATH__/if 0/g' configure.ac || die
212 fi
213
214 # _FORTIFY_SOURCE is set to 2 by default on Gentoo, remove redefine warnings.
215 sed -i '/_FORTIFY_SOURCE.*, 2,/d' configure.ac || die
216
217 # Bootstrap when we are on a git checkout.
218 if [[ "${PV%9999}" != "${PV}" ]] ; then
219 ./bootstrap
220 fi
221
222 # Make it build with libtool 1.5
223 rm -f m4/lt* m4/libtool.m4 || die
224
225 # We are not in a real git checkout due to the absence of a .git directory.
226 touch src/revision.txt || die
227
228 # Patch up incompatibilities and reconfigure autotools.
229 epatch "${FILESDIR}"/${PN}-2.1.0-newer-rdp.patch
230 epatch "${FILESDIR}"/${PN}-2.1.0-libva-1.2.1-compat.patch
231
232 eautoreconf
233
234 # Disable automatic running of tests.
235 find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die
236 }
237
238 src_configure() {
239 # Needs libresid-builder from libsidplay:2 which is in another directory...
240 # FIXME!
241 append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/"
242
243 if use truetype || use projectm ; then
244 local dejavu="/usr/share/fonts/dejavu/"
245 myconf="--with-default-font=${dejavu}/DejaVuSans.ttf \
246 --with-default-font-family=Sans \
247 --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf
248 --with-default-monospace-font-family=Monospace"
249 fi
250
251 econf \
252 ${myconf} \
253 --enable-vlc
254 --docdir=/usr/share/doc/${PF} \
255 --disable-dependency-tracking \
256 --disable-optimizations \
257 --disable-update-check \
258 --enable-fast-install \
259 --enable-screen \
260 $(use_enable a52) \
261 $(use_enable aalib aa) \
262 $(use_enable aac faad) \
263 $(use_enable alsa) \
264 $(use_enable altivec) \
265 $(use_enable atmo) \
266 $(use_enable audioqueue) \
267 $(use_enable avahi bonjour) \
268 $(use_enable avcodec) \
269 $(use_enable avformat) \
270 $(use_enable bidi fribidi) \
271 $(use_enable bluray) \
272 $(use_enable cdda vcd) \
273 $(use_enable cddb libcddb) \
274 $(use_enable chromaprint) \
275 $(use_enable dbus) \
276 $(use_enable dirac) \
277 $(use_enable directfb) \
278 $(use_enable directx) \
279 $(use_enable dc1394) \
280 $(use_enable debug) \
281 $(use_enable dts dca) \
282 $(use_enable dvbpsi) \
283 $(use_enable dvd dvdread) $(use_enable dvd dvdnav) \
284 $(use_enable dxva2) \
285 $(use_enable egl) \
286 $(use_enable encode sout) \
287 $(use_enable fdk fdkaac)
288 $(use_enable flac) \
289 $(use_enable fluidsynth) \
290 $(use_enable fontconfig) \
291 $(use_enable gcrypt libgcrypt) \
292 $(use_enable gme) \
293 $(use_enable gnome gnomevfs) \
294 $(use_enable gnutls) \
295 $(use_enable growl) \
296 $(use_enable httpd) \
297 $(use_enable ieee1394 dv1394) \
298 $(use_enable ios-vout) \
299 $(use_enable jack) \
300 $(use_enable kate) \
301 $(use_with kde kde-solid) \
302 $(use_enable libass) \
303 $(use_enable libcaca caca) \
304 $(use_enable libnotify notify) \
305 $(use_enable libsamplerate samplerate) \
306 $(use_enable libtar) \
307 $(use_enable libtiger tiger) \
308 $(use_enable linsys) \
309 $(use_enable lirc) \
310 $(use_enable live live555) \
311 $(use_enable lua) \
312 $(use_enable macosx-audio) \
313 $(use_enable macosx-dialog-provider) \
314 $(use_enable macosx-eyetv) \
315 $(use_enable macosx-qtkit) \
316 $(use_enable macosx-quartztext) \
317 $(use_enable macosx-vout) \
318 $(use_enable matroska mkv) \
319 $(use_enable mmx) \
320 $(use_enable modplug mod) \
321 $(use_enable mp3 mad) \
322 $(use_enable mpeg libmpeg2) \
323 $(use_enable mtp) \
324 $(use_enable musepack mpc) \
325 $(use_enable ncurses) \
326 $(use_enable neon) \
327 $(use_enable ogg) $(use_enable ogg mux_ogg) \
328 $(use_enable omxil) \
329 $(use_enable opencv) \
330 $(use_enable opengl glx) $(use_enable opengl glspectrum) \
331 $(use_enable opus)
332 $(use_enable optimisememory optimize-memory) \
333 $(use_enable png) \
334 $(use_enable postproc) \
335 $(use_enable projectm) \
336 $(use_enable pulseaudio pulse) \
337 $(use_enable qt4 qt) \
338 $(use_enable qt5 qt) \
339 $(use_enable rdp freerdp) \
340 $(use_enable rtsp realrtsp) \
341 $(use_enable run-as-root) \
342 $(use_enable samba smbclient) \
343 $(use_enable schroedinger) \
344 $(use_enable sdl) \
345 $(use_enable sdl-image) \
346 $(use_enable sid) \
347 $(use_enable sftp) \
348 $(use_enable shout) \
349 $(use_enable skins skins2) \
350 $(use_enable speex) \
351 $(use_enable sse) \
352 $(use_enable svg) \
353 $(use_enable swscale) \
354 $(use_enable taglib) \
355 $(use_enable theora) \
356 $(use_enable tremor) \
357 $(use_enable truetype freetype) \
358 $(use_enable twolame) \
359 $(use_enable udev) \
360 $(use_enable upnp) \
361 $(use_enable v4l v4l2) \
362 $(use_enable vaapi libva) \
363 $(use_enable vcdx) \
364 $(use_enable vdpau) \
365 $(use_enable vlm) \
366 $(use_enable vnc) \
367 $(use_enable vorbis) \
368 $(use_enable vpx) \
369 $(use_enable waveout) \
370 $(use_enable wma-fixed) \
371 $(use_with X x) \
372 $(use_enable x264) \
373 $(use_enable xcb) \
374 $(use_enable xml libxml2) \
375 $(use_enable xv xvideo) \
376 $(use_enable zvbi) $(use_enable !zvbi telx) \
377 --disable-crystalhd \
378 --disable-decklink \
379 --disable-goom \
380 --disable-kai \
381 --disable-kva \
382 --disable-mfx \
383 --disable-oss \
384 --disable-shine \
385 --disable-sndio \
386 --disable-x265 \
387 --disable-vda \
388 --disable-vsxu
389
390 # ^ We don't have these disables libraries in the Portage tree yet.
391 }
392
393 src_test() {
394 Xemake check-TESTS
395 }
396
397 DOCS="AUTHORS THANKS NEWS README doc/fortunes.txt doc/intf-vcd.txt"
398
399 src_install() {
400 default
401
402 # Punt useless libtool's .la files
403 find "${D}" -name '*.la' -delete
404 }
405
406 pkg_postinst() {
407 if [ "$ROOT" = "/" ] && [ -x "/usr/$(get_libdir)/vlc/vlc-cache-gen" ] ; then
408 einfo "Running /usr/$(get_libdir)/vlc/vlc-cache-gen on /usr/$(get_libdir)/vlc/plugins/"
409 "/usr/$(get_libdir)/vlc/vlc-cache-gen" -f "/usr/$(get_libdir)/vlc/plugins/"
410 else
411 ewarn "We cannot run vlc-cache-gen (most likely ROOT!=/)"
412 ewarn "Please run /usr/$(get_libdir)/vlc/vlc-cache-gen manually"
413 ewarn "If you do not do it, vlc will take a long time to load."
414 fi
415 }

  ViewVC Help
Powered by ViewVC 1.1.20