/[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.23 - (show annotations) (download)
Tue Jul 21 09:29:01 2009 UTC (8 years, 4 months ago) by aballier
Branch: MAIN
Changes since 1.22: +4 -4 lines
Prevent upgrading from 1.0.x to master (1.1) too
(Portage version: 2.2_rc33/cvs/Linux x86_64)

1 # Copyright 1999-2009 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.22 2009/07/21 09:24:59 aballier Exp $
4
5 EAPI="2"
6
7 SCM=""
8 if [ "${PV%9999}" != "${PV}" ] ; then
9 SCM=git
10 EGIT_REPO_URI="git://git.videolan.org/vlc.git"
11 EGIT_BOOTSTRAP="bootstrap"
12 if [ "${PV%.9999}" != "${PV}" ] ; then
13 EGIT_BRANCH=${PV%.9999}-bugfix
14 else
15 EGIT_BRANCH=master
16 fi
17 fi
18
19 inherit eutils multilib autotools toolchain-funcs gnome2 nsplugins qt4 flag-o-matic ${SCM}
20
21 MY_PV="${PV/_/-}"
22 MY_PV="${MY_PV/-beta/-test}"
23 MY_P="${PN}-${MY_PV}"
24 VLC_SNAPSHOT_TIME="0013"
25
26 PATCHLEVEL="63"
27 M4_TARBALL_VERSION="1"
28 DESCRIPTION="VLC media player - Video player and streamer"
29 HOMEPAGE="http://www.videolan.org/vlc/"
30 if [ "${PV%9999}" != "${PV}" ] ; then # Live ebuild
31 SRC_URI=""
32 elif [[ "${P}" == *_alpha* ]]; then # Snapshots taken from nightlies.videolan.org
33 SRC_URI="http://nightlies.videolan.org/build/source/trunk-${PV/*_alpha/}-${VLC_SNAPSHOT_TIME}/${PN}-snapshot-${PV/*_alpha/}.tar.bz2"
34 MY_P="${P/_alpha*/}-git"
35 elif [[ "${MY_P}" == "${P}" ]]; then
36 SRC_URI="http://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.bz2"
37 else
38 SRC_URI="http://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.bz2"
39 fi
40
41 SRC_URI="${SRC_URI}
42 mirror://gentoo/${PN}-patches-${PATCHLEVEL}.tar.bz2
43 mirror://gentoo/${PN}-m4-${M4_TARBALL_VERSION}.tar.bz2"
44
45 LICENSE="GPL-2"
46 SLOT="0"
47
48 KEYWORDS=""
49 IUSE="a52 aac aalib alsa altivec atmo avahi bidi cdda cddax cddb cdio dbus dc1394
50 debug dirac directfb dts dvb dvd fbcon fluidsynth +ffmpeg flac fontconfig
51 +gcrypt ggi gnome gnutls hal httpd id3tag ieee1394 jack kate libass libcaca
52 libnotify libproxy libsysfs libtiger libv4l2 lirc live lua matroska mmx
53 modplug mp3 mpeg mtp musepack ncurses nsplugin ogg opengl optimisememory oss
54 pda png projectm pulseaudio pvr +qt4 remoteosd rtsp run-as-root samba
55 schroedinger sdl sdl-image seamonkey shine shout skins speex sse stream
56 svg svga taglib theora truetype twolame upnp v4l v4l2 vcdinfo vcdx vlm
57 vorbis win32codecs wma-fixed X x264 xcb xinerama xml xosd xv zvbi"
58
59 RDEPEND="
60 sys-libs/zlib
61 >=media-libs/libdvbpsi-0.1.6
62 a52? ( >=media-libs/a52dec-0.7.4-r3 )
63 aalib? ( media-libs/aalib )
64 aac? ( >=media-libs/faad2-2.6.1 )
65 alsa? ( media-libs/alsa-lib )
66 avahi? ( >=net-dns/avahi-0.6 )
67 bidi? ( >=dev-libs/fribidi-0.10.4 )
68 cdda? ( cddb? ( >=media-libs/libcddb-1.2.0 ) )
69 cddax? ( cddb? ( >=media-libs/libcddb-1.2.0 ) )
70 cdio? ( >=dev-libs/libcdio-0.78.2 )
71 dbus? ( >=sys-apps/dbus-1.0.2 )
72 dc1394? ( >=sys-libs/libraw1394-2.0.1
73 >=media-libs/libdc1394-2.0.2 )
74 dirac? ( >=media-video/dirac-0.10.0 )
75 directfb? ( dev-libs/DirectFB )
76 dts? ( media-libs/libdca )
77 dvd? ( media-libs/libdvdread
78 media-libs/libdvdcss
79 >=media-libs/libdvdnav-0.1.9
80 media-libs/libdvdplay )
81 ffmpeg? ( >=media-video/ffmpeg-0.4.9_p20090201 )
82 flac? ( media-libs/libogg
83 >=media-libs/flac-1.1.2 )
84 fluidsynth? ( media-sound/fluidsynth )
85 fontconfig? ( media-libs/fontconfig )
86 gcrypt? ( >=dev-libs/libgcrypt-1.2.0 )
87 ggi? ( media-libs/libggi )
88 gnome? ( gnome-base/gnome-vfs )
89 gnutls? ( >=net-libs/gnutls-1.7.4 )
90 hal? ( sys-apps/hal )
91 id3tag? ( media-libs/libid3tag
92 sys-libs/zlib )
93 ieee1394? ( >=sys-libs/libraw1394-2.0.1 >=sys-libs/libavc1394-0.5.3 )
94 jack? ( >=media-sound/jack-audio-connection-kit-0.99.0-r1 )
95 kate? ( >=media-libs/libkate-0.1.1 )
96 libass? ( >=media-libs/libass-0.9.5 media-libs/fontconfig )
97 libcaca? ( media-libs/libcaca )
98 libnotify? ( x11-libs/libnotify )
99 libproxy? ( net-libs/libproxy )
100 libsysfs? ( sys-fs/sysfsutils )
101 libtiger? ( media-libs/libtiger )
102 lirc? ( app-misc/lirc )
103 live? ( >=media-plugins/live-2008.07.06 )
104 lua? ( >=dev-lang/lua-5.1 )
105 matroska? (
106 >=dev-libs/libebml-0.7.6
107 >=media-libs/libmatroska-0.8.0 )
108 modplug? ( media-libs/libmodplug )
109 mp3? ( media-libs/libmad )
110 mpeg? ( >=media-libs/libmpeg2-0.3.2 )
111 mtp? ( >=media-libs/libmtp-0.3.0 )
112 musepack? ( media-libs/libmpcdec )
113 ncurses? ( sys-libs/ncurses )
114 nsplugin? (
115 seamonkey? ( =www-client/seamonkey-1* )
116 !seamonkey? ( >=net-libs/xulrunner-1.8 )
117 )
118 ogg? ( media-libs/libogg )
119 pda? ( x11-libs/gtk+:2 )
120 png? ( media-libs/libpng )
121 projectm? ( media-libs/libprojectm )
122 pulseaudio? ( >=media-sound/pulseaudio-0.9.11 )
123 qt4? ( x11-libs/qt-gui:4 x11-libs/qt-core:4 )
124 remoteosd? ( >=dev-libs/libgcrypt-1.2.0 )
125 samba? ( net-fs/samba )
126 schroedinger? ( >=media-libs/schroedinger-1.0.6 )
127 sdl? ( >=media-libs/libsdl-1.2.8
128 sdl-image? ( media-libs/sdl-image ) )
129 shout? ( media-libs/libshout )
130 skins? ( x11-libs/qt-gui:4 x11-libs/qt-core:4 )
131 speex? ( media-libs/speex )
132 svg? ( >=gnome-base/librsvg-2.9.0 )
133 svga? ( media-libs/svgalib )
134 taglib? ( >=media-libs/taglib-1.5 )
135 theora? ( >=media-libs/libtheora-1.0_beta3 )
136 truetype? ( media-libs/freetype
137 media-fonts/ttf-bitstream-vera )
138 twolame? ( media-sound/twolame )
139 upnp? ( net-libs/libupnp )
140 v4l2? ( libv4l2? ( media-libs/libv4l ) )
141 vcdinfo? ( >=media-video/vcdimager-0.7.22 )
142 vorbis? ( media-libs/libvorbis )
143 win32codecs? ( media-libs/win32codecs )
144 X? (
145 x11-libs/libX11
146 x11-libs/libXext
147 xv? ( x11-libs/libXv )
148 xinerama? ( x11-libs/libXinerama )
149 opengl? ( virtual/opengl )
150 )
151 x264? ( media-libs/x264 )
152 xcb? ( x11-libs/libxcb x11-libs/xcb-util )
153 xml? ( dev-libs/libxml2 )
154 xosd? ( x11-libs/xosd )
155 zvbi? ( >=media-libs/zvbi-0.2.25 )
156 "
157
158 # Disabled features and reasons:
159 # xvmc? ( x11-libs/libXvMC )
160 # Will probably compile only on x86
161
162 DEPEND="${RDEPEND}
163 dvb? ( sys-kernel/linux-headers )
164 v4l? ( sys-kernel/linux-headers )
165 v4l2? ( sys-kernel/linux-headers )
166 X? ( xinerama? ( x11-proto/xineramaproto ) )
167 xcb? ( x11-proto/xproto )
168 dev-util/pkgconfig"
169
170 S="${WORKDIR}/${MY_P}"
171
172 # Displays a warning if the first use flag is set but the second is not
173 vlc_use_needs() {
174 use $1 && use !$2 && ewarn "USE=$1 requires $2, $1 will be disabled."
175 }
176
177 # Notify the user that some useflag have been forced on
178 vlc_use_force() {
179 use $1 && use !$2 && ewarn "USE=$1 requires $2, $2 will be enabled."
180 }
181
182 # Use when $2 depends strictly on $3
183 # if use $1 then enable $2 and $3, otherwise disable $2
184 vlc_use_enable_force() {
185 if use $1 ; then
186 echo "--enable-$2 --enable-$3"
187 else
188 echo "--disable-$2"
189 fi
190 }
191
192 pkg_setup() {
193 if has_version '<=media-video/vlc-1.0.99999'; then
194 eerror "Please unmerge vlc-1.0.x first before installing ${P}"
195 eerror "If you don't do that, some plugins will get linked against"
196 eerror "the old ${PN} version and will not work."
197 die "Unmerge vlc 1.0.x first"
198 fi
199 vlc_use_needs skins truetype
200 vlc_use_force skins qt4
201 vlc_use_needs cddax cdio
202 vlc_use_needs vcdx cdio
203 vlc_use_needs vcdx vcdinfo
204 vlc_use_needs vcdinfo cdio
205 vlc_use_needs bidi truetype
206 vlc_use_force remoteosd gcrypt
207 vlc_use_needs fontconfig truetype
208 vlc_use_needs libv4l2 v4l2
209 vlc_use_needs libtiger kate
210 use cddb && use !cdda && use !cddax && ewarn "USE=cddb requires either cdda or cddax, cddb will be disabled."
211 if use qt4 || use skins ; then
212 qt4_pkg_setup
213 else
214 ewarn "You have disabled the qt4 useflag, ${PN} will not have any"
215 ewarn "graphical interface. Maybe that is not what you want..."
216 fi
217 }
218
219 src_unpack() {
220 unpack ${A}
221 if [ "${PV%9999}" != "${PV}" ] ; then
222 git_src_unpack
223 fi
224 }
225
226 src_prepare() {
227 if [ "${PV%9999}" != "${PV}" ] ; then
228 git_src_prepare
229 fi
230 # Make it build with libtool 1.5
231 rm -f m4/lt* m4/libtool.m4
232
233 EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
234 AT_M4DIR="m4 ${WORKDIR}/${PN}-m4" eautoreconf
235 }
236
237 src_configure() {
238
239 # It would fail if -fforce-addr is used due to too few registers...
240 use x86 && filter-flags -fforce-addr
241
242 local MOZILLA_PC
243
244 if use nsplugin; then
245 if use seamonkey; then
246 MOZILLA_PC=seamonkey-plugin
247 else
248 if has_version 'net-libs/xulrunner:1.9' ; then
249 MOZILLA_PC=libxul
250 else
251 MOZILLA_PC=xulrunner-plugin
252 fi
253 fi
254 fi
255
256 econf \
257 $(use_enable a52) \
258 $(use_enable aalib aa) \
259 $(use_enable aac faad) \
260 $(use_enable alsa) \
261 $(use_enable altivec) \
262 --disable-asademux \
263 $(use_enable atmo) \
264 $(use_enable avahi bonjour) \
265 $(use_enable bidi fribidi) \
266 $(use_enable cdda vcd) \
267 $(use_enable cddax)\
268 $(use_enable cddb libcddb) \
269 $(use_enable cdio libcdio) \
270 --disable-csri \
271 $(use_enable dbus) $(use_enable dbus dbus-control) \
272 $(use_enable dirac) \
273 $(use_enable directfb) \
274 $(use_enable dc1394) \
275 $(use_enable debug) \
276 $(use_enable dts dca) \
277 $(use_enable dvb) \
278 $(use_enable dvd dvdread) $(use_enable dvd dvdnav) \
279 $(use_enable fbcon fb) \
280 $(use_enable ffmpeg avcodec) $(use_enable ffmpeg avformat) $(use_enable ffmpeg swscale) $(use_enable ffmpeg postproc) \
281 $(use_enable flac) \
282 $(use_enable fluidsynth) \
283 $(use_enable fontconfig) \
284 $(use_enable ggi) \
285 $(use_enable gnome gnomevfs) \
286 $(use_enable gnutls) \
287 $(use_enable hal) \
288 $(use_enable httpd) \
289 $(use_enable id3tag) \
290 $(use_enable ieee1394 dv) \
291 $(use_enable jack) \
292 $(use_enable kate) \
293 $(use_enable libass) \
294 $(use_enable libcaca caca) \
295 $(use_enable gcrypt libgcrypt) \
296 $(use_enable libnotify notify) \
297 $(use_enable libproxy) \
298 --disable-libtar \
299 $(use_enable libtiger tiger) \
300 $(use_enable libsysfs) \
301 $(use_enable libv4l2) \
302 $(use_enable lirc) \
303 $(use_enable live live555) \
304 $(use_enable lua) \
305 $(use_enable matroska mkv) \
306 $(use_enable mmx) \
307 $(use_enable modplug mod) \
308 $(use_enable mp3 mad) \
309 $(use_enable mpeg libmpeg2) \
310 $(use_enable mtp) \
311 $(use_enable musepack mpc) \
312 $(use_enable ncurses) \
313 $(use_enable nsplugin mozilla) --with-mozilla-pkg="${MOZILLA_PC}" \
314 $(use_enable ogg) \
315 $(use_enable opengl glx) $(use_enable opengl) $(use_enable opengl galaktos) \
316 $(use_enable optimisememory optimize-memory) \
317 $(use_enable oss) \
318 $(use_enable pda) \
319 $(use_enable png) \
320 --disable-portaudio \
321 $(use_enable projectm) \
322 $(use_enable pulseaudio pulse) \
323 $(use_enable pvr) \
324 $(use_enable qt4) \
325 $(use_enable rtsp realrtsp) \
326 $(use_enable run-as-root) \
327 $(use_enable samba smb) \
328 $(use_enable schroedinger) \
329 $(use_enable sdl) \
330 $(use_enable sdl-image) \
331 $(use_enable shine) \
332 $(use_enable shout) \
333 $(use_enable skins skins2) \
334 $(use_enable speex) \
335 $(use_enable sse) \
336 $(use_enable stream sout) \
337 $(use_enable svg) \
338 $(use_enable svga svgalib) \
339 $(use_enable taglib) \
340 $(use_enable theora) \
341 $(use_enable truetype freetype) \
342 $(use_enable twolame) \
343 $(use_enable upnp) \
344 $(use_enable v4l) \
345 $(use_enable v4l2) \
346 $(use_enable vcdinfo) \
347 $(use_enable vcdx) \
348 $(use_enable vorbis) \
349 $(use_enable win32codecs loader) \
350 $(use_enable wma-fixed) \
351 $(use_enable X x11) $(use_enable X screen) \
352 $(use_enable x264) \
353 $(use_enable xcb) \
354 $(use_enable xinerama) \
355 $(use_enable xml libxml2) \
356 $(use_enable xosd) \
357 $(use_enable xv xvideo) \
358 --disable-xvmc \
359 $(use_enable zvbi) \
360 --disable-snapshot \
361 --disable-growl \
362 --disable-optimizations \
363 --enable-fast-install \
364 $(vlc_use_enable_force vlm vlm sout) \
365 $(vlc_use_enable_force skins skins2 qt4) \
366 $(vlc_use_enable_force remoteosd remoteosd libgcrypt)
367 }
368
369 src_install() {
370 emake DESTDIR="${D}" install || die "make install failed"
371
372 dodoc AUTHORS MAINTAINERS HACKING THANKS NEWS README \
373 doc/fortunes.txt doc/intf-cdda.txt doc/intf-vcd.txt
374
375 rm -rf "${D}/usr/share/doc/vlc" \
376 "${D}"/usr/share/vlc/vlc{16x16,32x32,48x48,128x128}.{png,xpm,ico}
377
378 if use nsplugin; then
379 dodir "/usr/$(get_libdir)/${PLUGINS_DIR}"
380 mv "${D}"/usr/$(get_libdir)/mozilla/plugins/* \
381 "${D}/usr/$(get_libdir)/${PLUGINS_DIR}/"
382 fi
383
384 use skins || rm -rf "${D}/usr/share/vlc/skins2"
385
386 for res in 16 32 48; do
387 insinto /usr/share/icons/hicolor/${res}x${res}/apps/
388 newins "${S}"/share/vlc${res}x${res}.png vlc.png
389 done
390 }

  ViewVC Help
Powered by ViewVC 1.1.20