/[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.61 - (show annotations) (download)
Wed Feb 24 12:30:21 2010 UTC (7 years, 8 months ago) by aballier
Branch: MAIN
Changes since 1.60: +15 -2 lines
Do not generate the plugin cache at buildtime and do it in postinst
(Portage version: 2.2_rc63/cvs/Linux x86_64)

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

  ViewVC Help
Powered by ViewVC 1.1.20