1 |
# Copyright 1999-2011 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.103 2011/02/16 13:21:28 aballier Exp $ |
4 |
|
5 |
EAPI="4" |
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 flag-o-matic ${SCM} |
21 |
|
22 |
MY_PV="${PV/_/-}" |
23 |
MY_PV="${MY_PV/-beta/-test}" |
24 |
MY_P="${PN}-${MY_PV}" |
25 |
|
26 |
PATCHLEVEL="89" |
27 |
DESCRIPTION="VLC media player - Video player and streamer" |
28 |
HOMEPAGE="http://www.videolan.org/vlc/" |
29 |
if [ "${PV%9999}" != "${PV}" ] ; then # Live ebuild |
30 |
SRC_URI="" |
31 |
elif [[ "${MY_P}" == "${P}" ]]; then |
32 |
SRC_URI="http://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.bz2" |
33 |
else |
34 |
SRC_URI="http://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.bz2" |
35 |
fi |
36 |
|
37 |
SRC_URI="${SRC_URI} |
38 |
mirror://gentoo/${PN}-patches-${PATCHLEVEL}.tar.bz2" |
39 |
|
40 |
LICENSE="GPL-2" |
41 |
SLOT="0" |
42 |
|
43 |
if [ "${PV%9999}" = "${PV}" ] ; then |
44 |
KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" |
45 |
else |
46 |
KEYWORDS="" |
47 |
fi |
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 gme gnome gnutls httpd ieee1394 jack kate kde libass libcaca |
51 |
libnotify libproxy libtiger libv4l2 lirc live lua matroska mmx |
52 |
modplug mp3 mpeg mtp musepack ncurses ogg opengl optimisememory oss |
53 |
png projectm pulseaudio pvr +qt4 rtsp run-as-root samba |
54 |
schroedinger sdl sdl-image shine shout sid skins speex sqlite sse stream |
55 |
svg taglib theora truetype twolame udev upnp v4l2 vaapi vcdx vlm |
56 |
vorbis win32codecs wma-fixed +X x264 +xcb xml xosd xv zvbi" |
57 |
|
58 |
RDEPEND=" |
59 |
sys-libs/zlib |
60 |
>=media-libs/libdvbpsi-0.1.6 |
61 |
a52? ( >=media-libs/a52dec-0.7.4-r3 ) |
62 |
aalib? ( media-libs/aalib ) |
63 |
aac? ( >=media-libs/faad2-2.6.1 ) |
64 |
alsa? ( >=media-libs/alsa-lib-1.0.23 ) |
65 |
avahi? ( >=net-dns/avahi-0.6[dbus] ) |
66 |
bidi? ( >=dev-libs/fribidi-0.10.4 ) |
67 |
cddb? ( >=media-libs/libcddb-1.2.0 ) |
68 |
dbus? ( >=sys-apps/dbus-1.0.2 ) |
69 |
dc1394? ( >=sys-libs/libraw1394-2.0.1 >=media-libs/libdc1394-2.0.2 ) |
70 |
dirac? ( >=media-video/dirac-0.10.0 ) |
71 |
directfb? ( dev-libs/DirectFB sys-libs/zlib ) |
72 |
dts? ( media-libs/libdca ) |
73 |
dvd? ( media-libs/libdvdread >=media-libs/libdvdnav-0.1.9 ) |
74 |
elibc_glibc? ( >=sys-libs/glibc-2.8 ) |
75 |
ffmpeg? ( >=media-video/ffmpeg-0.6 ) |
76 |
flac? ( media-libs/libogg >=media-libs/flac-1.1.2 ) |
77 |
fluidsynth? ( media-sound/fluidsynth ) |
78 |
fontconfig? ( media-libs/fontconfig ) |
79 |
gcrypt? ( >=dev-libs/libgcrypt-1.2.0 ) |
80 |
gme? ( media-libs/game-music-emu ) |
81 |
gnome? ( gnome-base/gnome-vfs ) |
82 |
gnutls? ( >=net-libs/gnutls-1.7.4 ) |
83 |
ieee1394? ( >=sys-libs/libraw1394-2.0.1 >=sys-libs/libavc1394-0.5.3 ) |
84 |
jack? ( >=media-sound/jack-audio-connection-kit-0.99.0-r1 ) |
85 |
kate? ( >=media-libs/libkate-0.1.1 ) |
86 |
libass? ( >=media-libs/libass-0.9.6 media-libs/fontconfig ) |
87 |
libcaca? ( >=media-libs/libcaca-0.99_beta14 ) |
88 |
libnotify? ( x11-libs/libnotify ) |
89 |
libproxy? ( net-libs/libproxy ) |
90 |
libtiger? ( media-libs/libtiger ) |
91 |
lirc? ( app-misc/lirc ) |
92 |
live? ( >=media-plugins/live-2010.10.15 ) |
93 |
lua? ( >=dev-lang/lua-5.1 ) |
94 |
matroska? ( >=dev-libs/libebml-1.0.0 >=media-libs/libmatroska-1.0.0 ) |
95 |
modplug? ( >=media-libs/libmodplug-0.8.8.1 ) |
96 |
mp3? ( media-libs/libmad ) |
97 |
mpeg? ( >=media-libs/libmpeg2-0.3.2 ) |
98 |
mtp? ( >=media-libs/libmtp-1.0.0 ) |
99 |
musepack? ( >=media-sound/musepack-tools-444 ) |
100 |
ncurses? ( sys-libs/ncurses ) |
101 |
ogg? ( media-libs/libogg ) |
102 |
opengl? ( virtual/opengl || ( >=x11-libs/libX11-1.3.99.901 <x11-libs/libX11-1.3.99.901[xcb] ) ) |
103 |
png? ( media-libs/libpng sys-libs/zlib ) |
104 |
projectm? ( media-libs/libprojectm ) |
105 |
pulseaudio? ( >=media-sound/pulseaudio-0.9.22 ) |
106 |
qt4? ( x11-libs/qt-gui:4 x11-libs/qt-core:4 ) |
107 |
samba? ( || ( >=net-fs/samba-3.4.6[smbclient] <net-fs/samba-3.4 ) ) |
108 |
schroedinger? ( >=media-libs/schroedinger-1.0.6 ) |
109 |
sdl? ( >=media-libs/libsdl-1.2.8 |
110 |
sdl-image? ( media-libs/sdl-image sys-libs/zlib ) ) |
111 |
shout? ( media-libs/libshout ) |
112 |
sid? ( media-libs/libsidplay:2 ) |
113 |
speex? ( media-libs/speex ) |
114 |
sqlite? ( >=dev-db/sqlite-3.6.0:3 ) |
115 |
svg? ( >=gnome-base/librsvg-2.9.0 ) |
116 |
taglib? ( >=media-libs/taglib-1.5 sys-libs/zlib ) |
117 |
theora? ( >=media-libs/libtheora-1.0_beta3 ) |
118 |
truetype? ( media-libs/freetype media-fonts/dejavu ) |
119 |
twolame? ( media-sound/twolame ) |
120 |
udev? ( >=sys-fs/udev-142 ) |
121 |
upnp? ( net-libs/libupnp ) |
122 |
libv4l2? ( media-libs/libv4l ) |
123 |
vaapi? ( x11-libs/libva ) |
124 |
vcdx? ( >=dev-libs/libcdio-0.78.2 >=media-video/vcdimager-0.7.22 ) |
125 |
vorbis? ( media-libs/libvorbis ) |
126 |
win32codecs? ( media-libs/win32codecs ) |
127 |
X? ( x11-libs/libX11 ) |
128 |
x264? ( >=media-libs/x264-0.0.20090923 ) |
129 |
xcb? ( x11-libs/libxcb x11-libs/xcb-util ) |
130 |
xml? ( dev-libs/libxml2 ) |
131 |
xosd? ( x11-libs/xosd ) |
132 |
zvbi? ( >=media-libs/zvbi-0.2.25 ) |
133 |
" |
134 |
|
135 |
DEPEND="${RDEPEND} |
136 |
!!<=media-video/vlc-1.1.99999 |
137 |
alsa? ( >=media-sound/alsa-headers-1.0.23 ) |
138 |
dvb? ( sys-kernel/linux-headers ) |
139 |
kde? ( >=kde-base/kdelibs-4 ) |
140 |
v4l2? ( >=sys-kernel/linux-headers-2.6.25 ) |
141 |
xcb? ( x11-proto/xproto ) |
142 |
dev-util/pkgconfig" |
143 |
|
144 |
REQUIRED_USE=" |
145 |
bidi? ( truetype ) |
146 |
cddb? ( cdda ) |
147 |
fontconfig? ( truetype ) |
148 |
gnutls? ( gcrypt ) |
149 |
libtiger? ( kate ) |
150 |
libv4l2? ( v4l2 ) |
151 |
qt4? ( X ) |
152 |
skins? ( truetype qt4 ) |
153 |
vaapi? ( ffmpeg ) |
154 |
vlm? ( stream ) |
155 |
xv? ( xcb ) |
156 |
" |
157 |
|
158 |
S="${WORKDIR}/${MY_P}" |
159 |
|
160 |
pkg_setup() { |
161 |
if use !qt4; then |
162 |
ewarn "You have disabled the qt4 useflag, ${PN} will not have any" |
163 |
ewarn "graphical interface. Maybe that is not what you want..." |
164 |
fi |
165 |
} |
166 |
|
167 |
src_unpack() { |
168 |
unpack ${A} |
169 |
if [ "${PV%9999}" != "${PV}" ] ; then |
170 |
git_src_unpack |
171 |
fi |
172 |
} |
173 |
|
174 |
src_prepare() { |
175 |
if [ "${PV%9999}" != "${PV}" ] ; then |
176 |
git_src_prepare |
177 |
fi |
178 |
# Make it build with libtool 1.5 |
179 |
rm -f m4/lt* m4/libtool.m4 |
180 |
|
181 |
EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches" |
182 |
eautoreconf |
183 |
} |
184 |
|
185 |
src_configure() { |
186 |
|
187 |
# It would fail if -fforce-addr is used due to too few registers... |
188 |
use x86 && filter-flags -fforce-addr |
189 |
|
190 |
# needs libresid-builder from libsidplay:2 which is in another directory... |
191 |
# FIXME! |
192 |
use sid && append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" |
193 |
|
194 |
econf \ |
195 |
--docdir=/usr/share/doc/${PF} \ |
196 |
$(use_enable a52) \ |
197 |
$(use_enable aalib aa) \ |
198 |
$(use_enable aac faad) \ |
199 |
$(use_enable alsa) \ |
200 |
$(use_enable altivec) \ |
201 |
$(use_enable atmo) \ |
202 |
$(use_enable avahi bonjour) \ |
203 |
$(use_enable bidi fribidi) \ |
204 |
$(use_enable cdda vcd) \ |
205 |
$(use_enable cddb libcddb) \ |
206 |
$(use_enable dbus) $(use_enable dbus dbus-control) \ |
207 |
$(use_enable dirac) \ |
208 |
$(use_enable directfb) \ |
209 |
$(use_enable dc1394) \ |
210 |
$(use_enable debug) \ |
211 |
$(use_enable dts dca) \ |
212 |
$(use_enable dvb) \ |
213 |
$(use_enable dvd dvdread) $(use_enable dvd dvdnav) \ |
214 |
$(use_enable fbcon fb) \ |
215 |
$(use_enable ffmpeg avcodec) $(use_enable ffmpeg avformat) $(use_enable ffmpeg swscale) $(use_enable ffmpeg postproc) \ |
216 |
$(use_enable flac) \ |
217 |
$(use_enable fluidsynth) \ |
218 |
$(use_enable fontconfig) \ |
219 |
$(use_enable gme) \ |
220 |
$(use_enable gnome gnomevfs) \ |
221 |
$(use_enable gnutls) \ |
222 |
$(use_enable httpd) \ |
223 |
$(use_enable ieee1394 dv) \ |
224 |
$(use_enable jack) \ |
225 |
$(use_enable kate) \ |
226 |
$(use_with kde kde-solid) \ |
227 |
$(use_enable libass) \ |
228 |
$(use_enable libcaca caca) \ |
229 |
$(use_enable gcrypt libgcrypt) \ |
230 |
$(use_enable libnotify notify) \ |
231 |
$(use_enable libproxy) \ |
232 |
--disable-libtar \ |
233 |
$(use_enable libtiger tiger) \ |
234 |
$(use_enable libv4l2) \ |
235 |
$(use_enable lirc) \ |
236 |
$(use_enable live live555) \ |
237 |
$(use_enable lua) \ |
238 |
$(use_enable matroska mkv) \ |
239 |
$(use_enable mmx) \ |
240 |
$(use_enable modplug mod) \ |
241 |
$(use_enable mp3 mad) \ |
242 |
$(use_enable mpeg libmpeg2) \ |
243 |
$(use_enable mtp) \ |
244 |
$(use_enable musepack mpc) \ |
245 |
$(use_enable ncurses) \ |
246 |
$(use_enable ogg) \ |
247 |
$(use_enable opengl glx) \ |
248 |
$(use_enable optimisememory optimize-memory) \ |
249 |
$(use_enable oss) \ |
250 |
$(use_enable png) \ |
251 |
--disable-portaudio \ |
252 |
$(use_enable projectm) \ |
253 |
$(use_enable pulseaudio pulse) \ |
254 |
$(use_enable pvr) \ |
255 |
$(use_enable qt4) \ |
256 |
$(use_enable rtsp realrtsp) \ |
257 |
$(use_enable run-as-root) \ |
258 |
$(use_enable samba smb) \ |
259 |
$(use_enable schroedinger) \ |
260 |
$(use_enable sdl) \ |
261 |
$(use_enable sdl-image) \ |
262 |
$(use_enable shine) \ |
263 |
$(use_enable sid) \ |
264 |
$(use_enable shout) \ |
265 |
$(use_enable skins skins2) \ |
266 |
$(use_enable speex) \ |
267 |
$(use_enable sqlite) \ |
268 |
$(use_enable sse) \ |
269 |
$(use_enable stream sout) \ |
270 |
$(use_enable svg) \ |
271 |
$(use_enable taglib) \ |
272 |
$(use_enable theora) \ |
273 |
$(use_enable truetype freetype) \ |
274 |
$(use_enable twolame) \ |
275 |
$(use_enable udev) \ |
276 |
$(use_enable upnp) \ |
277 |
$(use_enable v4l2) \ |
278 |
$(use_enable vcdx) \ |
279 |
$(use_enable vaapi libva) \ |
280 |
$(use_enable vlm) \ |
281 |
$(use_enable vorbis) \ |
282 |
$(use_enable win32codecs loader) \ |
283 |
$(use_enable wma-fixed) \ |
284 |
$(use_with X x) \ |
285 |
$(use_enable x264) \ |
286 |
$(use_enable xcb) \ |
287 |
$(use_enable xml libxml2) \ |
288 |
$(use_enable xosd) \ |
289 |
$(use_enable xv xvideo) \ |
290 |
$(use_enable zvbi) $(use_enable !zvbi telx) \ |
291 |
--disable-snapshot \ |
292 |
--disable-growl \ |
293 |
--disable-optimizations \ |
294 |
--enable-fast-install |
295 |
} |
296 |
|
297 |
src_install() { |
298 |
emake DESTDIR="${D}" install || die "make install failed" |
299 |
|
300 |
dodoc AUTHORS HACKING THANKS NEWS README \ |
301 |
doc/fortunes.txt doc/intf-vcd.txt |
302 |
|
303 |
# Punt useless libtool's .la files |
304 |
find "${D}" -name '*.la' -delete |
305 |
} |
306 |
|
307 |
pkg_postinst() { |
308 |
if [ "$ROOT" = "/" ] && [ -x "/usr/$(get_libdir)/vlc/vlc-cache-gen" ] ; then |
309 |
einfo "Running /usr/$(get_libdir)/vlc/vlc-cache-gen on /usr/$(get_libdir)/vlc/plugins/" |
310 |
"/usr/$(get_libdir)/vlc/vlc-cache-gen" -f "/usr/$(get_libdir)/vlc/plugins/" |
311 |
else |
312 |
ewarn "We cannot run vlc-cache-gen (most likely ROOT!=/)" |
313 |
ewarn "Please run /usr/$(get_libdir)/vlc/vlc-cache-gen manually" |
314 |
ewarn "If you do not do it, vlc will take a long time to load." |
315 |
fi |
316 |
} |