Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 254661 | Differences between
and this patch

Collapse All | Expand All

(-)mplayer-1.0_rc2_p28058-r1.ebuild (-89 / +141 lines)
Lines 1-6 Link Here
1
# Copyright 1999-2008 Gentoo Foundation
1
# Copyright 1999-2008 Gentoo Foundation
2
# Distributed under the terms of the GNU General Public License v2
2
# Distributed under the terms of the GNU General Public License v2
3
# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/mplayer-1.0_rc2_p28058-r1.ebuild,v 1.8 2008/12/22 20:01:33 armin76 Exp $
3
# $Header: $
4
4
5
EAPI="1"
5
EAPI="1"
6
6
Lines 9-22 Link Here
9
# Ugly hack, feel free to fix
9
# Ugly hack, feel free to fix
10
MPLAYER_REVISION=28058
10
MPLAYER_REVISION=28058
11
11
12
IUSE="3dnow 3dnowext +a52 +aac -aalib +alsa altivec amrnb amrwb -arts +ass bidi bl
12
IUSE="3dnow 3dnowext +a52 +aac -aalib +alsa altivec amrnb amrwb -arts +ass bidi
13
bindist cddb cdio cdparanoia -cpudetection -custom-cflags -custom-cpuopts debug
13
bl bindist cddb cdio cdparanoia -cpudetection -custom-cflags -custom-cpuopts
14
dga dirac doc dts dvb directfb +dvd dvdnav dv dxr3 enca +encode esd -fbcon ftp -gif ggi
14
debug dga dirac doc dts dvb directfb dvd dvdnav dv dxr3 enca +encode esd
15
-gtk iconv ipv6 jack joystick -jpeg kernel_linux ladspa -libcaca lirc live lzo
15
-fbcon ftp -gif ggi -gtk iconv ipv6 jack joystick -jpeg kernel_linux ladspa
16
+mad -md5sum +mmx mmxext mng mp2 +mp3 musepack nas nemesi opengl
16
-libcaca libfaac libfaad libvorbis lirc live lzo +mad
17
openal oss -png -pnm pulseaudio -pvr +quicktime radio -rar real rtc -samba schroedinger sdl
17
-md5sum +mmx mmxext mng mp2 +mp3 musepack nas nemesi +network opengl openal oss -png -pnm pulseaudio -pvr +quicktime radio -rar +real -realcodecs rtc -samba schroedinger sdl speex sse sse2 ssse3 svga teletext tga +theora +truetype unicode v4l v4l2 vidix +vorbis -win32codecs +X x264 xanim xinerama +xscreensaver +xv xvid xvmc zoran"
18
speex sse sse2 ssse3 svga teletext tga +theora +truetype unicode v4l v4l2
19
vidix +vorbis win32codecs +X x264 xanim xinerama +xscreensaver +xv xvid xvmc zoran"
20
18
21
VIDEO_CARDS="s3virge mga tdfx vesa"
19
VIDEO_CARDS="s3virge mga tdfx vesa"
22
20
Lines 44-53 Link Here
44
	!bindist? (
42
	!bindist? (
45
		x86? (
43
		x86? (
46
			win32codecs? ( media-libs/win32codecs )
44
			win32codecs? ( media-libs/win32codecs )
47
			real? ( media-libs/win32codecs
45
			realcodecs? ( media-libs/win32codecs
48
				media-libs/realcodecs )
46
				media-libs/realcodecs )
49
			)
47
			)
50
		amd64? ( real? ( media-libs/amd64codecs ) )
48
		amd64? ( realcodecs? ( media-libs/amd64codecs ) )
51
	)
49
	)
52
	aalib? ( media-libs/aalib )
50
	aalib? ( media-libs/aalib )
53
	alsa? ( media-libs/alsa-lib )
51
	alsa? ( media-libs/alsa-lib )
Lines 64-78 Link Here
64
	directfb? ( dev-libs/DirectFB )
62
	directfb? ( dev-libs/DirectFB )
65
	dga? ( x11-libs/libXxf86dga  )
63
	dga? ( x11-libs/libXxf86dga  )
66
	dts? ( media-libs/libdca )
64
	dts? ( media-libs/libdca )
67
	dvdnav? ( >=media-libs/libdvdnav-4.1.3
68
		>=media-libs/libdvdread-4.1.3 )
69
	dv? ( media-libs/libdv )
65
	dv? ( media-libs/libdv )
70
	dvb? ( media-tv/linuxtv-dvb-headers )
66
	dvb? ( media-tv/linuxtv-dvb-headers )
71
	encode? (
67
	encode? (
72
		aac? ( media-libs/faac )
73
		mp2? ( media-sound/twolame )
68
		mp2? ( media-sound/twolame )
74
		mp3? ( media-sound/lame )
69
		mp3? ( media-sound/lame )
70
		libfaac? ( media-libs/faac )
75
		x264? ( >=media-libs/x264-0.0.20080406 )
71
		x264? ( >=media-libs/x264-0.0.20080406 )
72
		xvid? ( media-libs/xvid )
76
		)
73
		)
77
	esd? ( media-sound/esound )
74
	esd? ( media-sound/esound )
78
	enca? ( app-i18n/enca )
75
	enca? ( app-i18n/enca )
Lines 87-92 Link Here
87
	jpeg? ( media-libs/jpeg )
84
	jpeg? ( media-libs/jpeg )
88
	ladspa? ( media-libs/ladspa-sdk )
85
	ladspa? ( media-libs/ladspa-sdk )
89
	libcaca? ( media-libs/libcaca )
86
	libcaca? ( media-libs/libcaca )
87
	libfaad? ( media-libs/faad2 )
88
	libvorbis? ( media-libs/libvorbis )
90
	lirc? ( app-misc/lirc )
89
	lirc? ( app-misc/lirc )
91
	lzo? ( >=dev-libs/lzo-2 )
90
	lzo? ( >=dev-libs/lzo-2 )
92
	mad? ( media-libs/libmad )
91
	mad? ( media-libs/libmad )
Lines 117-123 Link Here
117
		x11-libs/libXxf86vm
116
		x11-libs/libXxf86vm
118
		x11-libs/libXext
117
		x11-libs/libXext
119
		xvmc? ( x11-libs/libXvMC ) )
118
		xvmc? ( x11-libs/libXvMC ) )
120
	xvid? ( media-libs/xvid )
121
	X? ( x11-libs/libXxf86vm
119
	X? ( x11-libs/libXxf86vm
122
		x11-libs/libXext
120
		x11-libs/libXext
123
	)"
121
	)"
Lines 238-265 Link Here
238
236
239
src_compile() {
237
src_compile() {
240
238
241
	local myconf=" --disable-tv-bsdbt848 \
239
	local myconf=""
242
		--disable-faad"
243
244
	# broken upstream, won't work with recent kernels
245
	myconf="${myconf} --disable-ivtv"
246
240
247
	# MPlayer reads in the LINGUAS variable from make.conf, and sets
241
	# MPlayer reads in the LINGUAS variable from make.conf, and sets
248
	# the languages accordingly.  Some will have to be altered to match
242
	# the languages accordingly.  Some will have to be altered to match
249
	# upstream's naming scheme.
243
	# upstream's naming scheme.
250
	[[ -n $LINGUAS ]] && LINGUAS=${LINGUAS/da/dk}
244
	[[ -n $LINGUAS ]] && LINGUAS="${LINGUAS/da/dk}"
245
246
	# mplayer ebuild uses "use foo || --disable-foo" to forcibly disable
247
	# compilation in almost every situation.  The reason for this is
248
	# because if --enable is used, it will force the build of that option,
249
	# regardless of whether the dependency is available or not.
251
250
252
	################
251
	################
253
	#Optional features#
252
	#Optional features#
254
	###############
253
	###############
254
	myconf="${myconf} --enable-menu"
255
	myconf="${myconf} $(use_enable network)"
255
	use ass || myconf="${myconf} --disable-ass"
256
	use ass || myconf="${myconf} --disable-ass"
256
	use bidi || myconf="${myconf} --disable-fribidi"
257
	use bidi || myconf="${myconf} --disable-fribidi"
257
	use bl && myconf="${myconf} --enable-bl"
258
	use bl && myconf="${myconf} --enable-bl"
258
	use enca || myconf="${myconf} --disable-enca"
259
	use enca || myconf="${myconf} --disable-enca"
259
	use encode || myconf="${myconf} --disable-mencoder"
260
	use encode || myconf="${myconf} --disable-mencoder"
260
	use ftp || myconf="${myconf} --disable-ftp"
261
	use ftp || myconf="${myconf} --disable-ftp"
262
	use ipv6 || myconf="${myconf} --disable-inet6"
263
	use lirc || myconf="${myconf} --disable-lirc --disable-lircc"
261
	use nemesi || myconf="${myconf} --disable-nemesi"
264
	use nemesi || myconf="${myconf} --disable-nemesi"
265
	use rar || myconf="${myconf} --disable-unrarexec"
266
	use rtc || myconf="${myconf} --disable-rtc"
267
	use samba || myconf="${myconf} --disable-smb"
262
	use xscreensaver || myconf="${myconf} --disable-xss"
268
	use xscreensaver || myconf="${myconf} --disable-xss"
269
	myconf="${myconf} $(use_enable joystick)"
263
270
264
	# libcdio support: prefer libcdio over cdparanoia
271
	# libcdio support: prefer libcdio over cdparanoia
265
	# don't check for cddb w/cdio
272
	# don't check for cddb w/cdio
Lines 271-291 Link Here
271
		use cddb || myconf="${myconf} --disable-cddb"
278
		use cddb || myconf="${myconf} --disable-cddb"
272
	fi
279
	fi
273
280
274
	# DVD support
281
	###############
275
	# dvdread and libdvdcss are internal libs
282
	# DVD read, navigation support
276
	# http://www.mplayerhq.hu/DOCS/HTML/en/dvd.html
283
	###############
277
	# You can optionally use external dvdread/dvdnav support.
284
	#
278
	if use dvdnav; then
285
	# dvdread - accessing a DVD
279
		myconf="${myconf} --with-dvdread-config=/usr/bin/dvdread-config \
286
	# dvdnav - navigation of menus
280
			--with-dvdnav-config=/usr/bin/dvdnav-config \
287
	#
281
			--disable-dvdread-internal"
288
	# internal dvdread and dvdnav use flags enable internal
282
	elif ! use dvd && ! use dvdread; then
289
	# versions of the libraries, which are snapshots of the fork.
283
		myconf="${myconf} --disable-dvdnav --disable-dvdread"
290
	#
284
		use a52 || myconf="${myconf} --disable-liba52 \
291
	# Only check for disabled a52 use flag inside the DVD check,
285
			--disable-liba52-internal"
292
	# since many users were getting confused why there was no
293
	# audio stream.
294
	#
295
	if use dvd; then
296
		use dvdnav || myconf="${myconf} --disable-dvdnav"
297
	else
298
		myconf="${myconf} --disable-dvdnav --disable-dvdread \
299
			--disable-dvdread-internal --disable-libdvdcss-internal"
300
		use a52 || myconf="${myconf} --disable-liba52-internal"
286
	fi
301
	fi
287
302
288
	# SRT (subtitles) requires freetype support
303
	###############
304
	# Subtitles
305
	###############
306
	#
307
	# SRT/ASS/SSA (subtitles) requires freetype support
289
	# freetype support requires iconv
308
	# freetype support requires iconv
290
	# iconv optionally can use unicode
309
	# iconv optionally can use unicode
291
	if ! use ass; then
310
	if ! use ass; then
Lines 298-311 Link Here
298
	fi
317
	fi
299
	use iconv && use unicode && myconf="${myconf} --charset=UTF-8"
318
	use iconv && use unicode && myconf="${myconf} --charset=UTF-8"
300
319
301
	use lirc || myconf="${myconf} --disable-lirc --disable-lircc"
320
	###############
302
	myconf="${myconf} $(use_enable joystick)"
303
	use ipv6 || myconf="${myconf} --disable-inet6"
304
	use rar || myconf="${myconf} --disable-unrarexec"
305
	use rtc || myconf="${myconf} --disable-rtc"
306
	use samba || myconf="${myconf} --disable-smb"
307
308
	# DVB / Video4Linux / Radio support
321
	# DVB / Video4Linux / Radio support
322
	###############
323
	myconf="${myconf} --disable-tv-bsdbt848"
324
	# broken upstream, won't work with recent kernels
325
	myconf="${myconf} --disable-ivtv"
309
	if { use dvb || use v4l || use v4l2 || use pvr || use radio; }; then
326
	if { use dvb || use v4l || use v4l2 || use pvr || use radio; }; then
310
		use dvb || myconf="${myconf} --disable-dvb --disable-dvbhead"
327
		use dvb || myconf="${myconf} --disable-dvb --disable-dvbhead"
311
		use pvr || myconf="${myconf} --disable-pvr"
328
		use pvr || myconf="${myconf} --disable-pvr"
Lines 327-369 Link Here
327
	#########
344
	#########
328
	# Codecs #
345
	# Codecs #
329
	########
346
	########
330
	for x in gif jpeg live mad musepack pnm speex tga theora xanim; do
347
	# Won't work with external liba52
331
		use ${x} || myconf="${myconf} --disable-${x}"
348
	myconf="${myconf} --disable-liba52"
332
	done
349
333
	for x in dirac schroedinger ; do
350
	use aac || myconf="${myconf} --disable-faad-internal"
334
		use ${x} || myconf="${myconf} --disable-lib${x}-lavc"
335
	done
336
	use aac || myconf="${myconf} --disable-faac --disable-faac-lavc"
337
	use amrnb || myconf="${myconf} --disable-libamr_nb"
351
	use amrnb || myconf="${myconf} --disable-libamr_nb"
338
	use amrwb || myconf="${myconf} --disable-libamr_wb"
352
	use amrwb || myconf="${myconf} --disable-libamr_wb"
353
	use dirac || myconf="${myconf} --disable-libdirac-lavc"
339
	use dts || myconf="${myconf} --disable-libdca"
354
	use dts || myconf="${myconf} --disable-libdca"
340
	use dv || myconf="${myconf} --disable-libdv"
355
	use dv || myconf="${myconf} --disable-libdv"
341
	! use png && ! use gtk && myconf="${myconf} --disable-png"
356
	use libfaad || myconf="${myconf} --disable-faad"
342
	use lzo || myconf="${myconf} --disable-liblzo"
357
	use lzo || myconf="${myconf} --disable-liblzo"
343
	use encode && use mp2 || myconf="${myconf} --disable-twolame \
358
	use mp3 || myconf="${myconf} --disable-mp3lame --disable-mp3lame-lavc \
344
		--disable-toolame"
359
		--disable-mp3lib"
345
	use mp3 || myconf="${myconf} --disable-mp3lame --disable-mp3lame-lavc"
360
	use schroedinger || myconf="${myconf} --disable-libschroedinger-lavc"
346
	use vorbis || myconf="${myconf} --disable-libvorbis"
347
	use x264 || myconf="${myconf} --disable-x264 --disable-x264-lavc"
348
	use xanim && myconf="${myconf} --xanimcodecsdir=/usr/lib/xanim/mods"
361
	use xanim && myconf="${myconf} --xanimcodecsdir=/usr/lib/xanim/mods"
349
	use xvid || myconf="${myconf} --disable-xvid --disable-xvid-lavc"
362
	! use png && ! use gtk && myconf="${myconf} --disable-png"
350
363
	for x in gif jpeg live mad musepack pnm speex tga theora xanim; do
351
	# Real codec support, only available on x86, amd64
364
		use ${x} || myconf="${myconf} --disable-${x}"
352
	if use real && use x86; then
365
	done
353
		myconf="${myconf} --realcodecsdir=/opt/RealPlayer/codecs"
366
	if use vorbis || use libvorbis; then
354
	elif use real && use amd64; then
367
		use vorbis || myconf="${myconf} --disable-tremor-internal"
355
		myconf="${myconf} --realcodecsdir=/usr/$(get_libdir)/codecs"
368
		use libvorbis || myconf="${myconf} --disable-libvorbis"
356
	else
369
	else
357
		myconf="${myconf} --disable-real"
370
		myconf="${myconf} --disable-tremor-internal --disable-tremor \
371
			--disable-libvorbis"
358
	fi
372
	fi
359
	if ! use bindist && ! use real; then
373
	# Encoding
360
		myconf="${myconf} $(use_enable win32codecs win32dll)"
374
	if use encode; then
375
		use aac || myconf="${myconf} --disable-faac-lavc"
376
		use libfaac || myconf="${myconf} --disable-faac"
377
		use x264 || myconf="${myconf} --disable-x264"
378
		use xvid || myconf="${myconf} --disable-xvid"
379
		use mp2 || myconf="${myconf} --disable-twolame --disable-toolame"
380
	else
381
		myconf="${myconf} --disable-faac-lavc --disable-faac --disable-x264 \
382
			--disable-xvid --disable-x264-lavc --disable-xvid-lavc \
383
			--disable-twolame --disable-toolame"
361
	fi
384
	fi
385
386
387
	###############
388
	# Binary codecs
389
	###############
362
	# bug 213836
390
	# bug 213836
363
	if ! use x86 || ! use win32codecs; then
391
	if ! use x86 || ! use win32codecs; then
364
		use quicktime || myconf="${myconf} --disable-qtx"
392
		use quicktime || myconf="${myconf} --disable-qtx"
365
	fi
393
	fi
366
394
395
	###############
396
	# RealPlayer support
397
	###############
398
	#
399
	# Realplayer support shows up in four places:
400
	# - libavcodec (internal)
401
	# - win32codecs
402
	# - realcodecs (win32codecs libs)
403
	# - realcodecs (realplayer libs)
404
	# 
405
406
	# internal
407
	use real || myconf="${myconf} --disable-real"
408
409
	# Real binary codec support only available on x86, amd64
410
	if use realcodecs; then
411
		use x86 && myconf="${myconf} \
412
			--realcodecsdir=/opt/RealPlayer/codecs"
413
		use amd64 && myconf="${myconf} \
414
			 --realcodecsdir=/usr/$(get_libdir)/codecs"
415
	elif ! use bindist; then
416
			myconf="${myconf} $(use_enable win32codecs win32dll)"
417
	fi
418
419
367
	#############
420
	#############
368
	# Video Output #
421
	# Video Output #
369
	#############
422
	#############
Lines 377-384 Link Here
377
	use libcaca || myconf="${myconf} --disable-caca"
430
	use libcaca || myconf="${myconf} --disable-caca"
378
	use opengl || myconf="${myconf} --disable-gl"
431
	use opengl || myconf="${myconf} --disable-gl"
379
	use video_cards_vesa || myconf="${myconf} --disable-vesa"
432
	use video_cards_vesa || myconf="${myconf} --disable-vesa"
380
	use vidix || myconf="${myconf} --disable-vidix \
433
	use vidix || myconf="${myconf} --disable-vidix --disable-vidix-pcidb"
381
		--disable-vidix-pcidb"
382
	use zoran || myconf="${myconf} --disable-zr"
434
	use zoran || myconf="${myconf} --disable-zr"
383
435
384
	# MPlayer incorrectly looks for DXR3 support, so forcibly enable
436
	# MPlayer incorrectly looks for DXR3 support, so forcibly enable
Lines 386-391 Link Here
386
	myconf="${myconf} $(use_enable dxr3)"
438
	myconf="${myconf} $(use_enable dxr3)"
387
439
388
	# GTK gmplayer gui
440
	# GTK gmplayer gui
441
	# Unsupported by Gentoo, upstream has dropped development
389
	myconf="${myconf} $(use_enable gtk gui)"
442
	myconf="${myconf} $(use_enable gtk gui)"
390
443
391
	if use xv; then
444
	if use xv; then
Lines 419-424 Link Here
419
	if ! use radio; then
472
	if ! use radio; then
420
		use oss || myconf="${myconf} --disable-ossaudio"
473
		use oss || myconf="${myconf} --disable-ossaudio"
421
	fi
474
	fi
475
422
	#################
476
	#################
423
	# Advanced Options #
477
	# Advanced Options #
424
	#################
478
	#################
Lines 462-469 Link Here
462
		--confdir=/etc/mplayer \
516
		--confdir=/etc/mplayer \
463
		--datadir=/usr/share/mplayer \
517
		--datadir=/usr/share/mplayer \
464
		--libdir=/usr/$(get_libdir) \
518
		--libdir=/usr/$(get_libdir) \
465
		--enable-menu \
466
		--enable-network \
467
		${myconf}"
519
		${myconf}"
468
520
469
	#echo "CFLAGS=\"${CFLAGS}\" ./configure ${myconf}"
521
	#echo "CFLAGS=\"${CFLAGS}\" ./configure ${myconf}"
Lines 476-502 Link Here
476
src_install() {
528
src_install() {
477
529
478
	make prefix="${D}/usr" \
530
	make prefix="${D}/usr" \
479
		 BINDIR="${D}/usr/bin" \
531
		BINDIR="${D}/usr/bin" \
480
		 LIBDIR="${D}/usr/$(get_libdir)" \
532
		LIBDIR="${D}/usr/$(get_libdir)" \
481
		 CONFDIR="${D}/etc/mplayer" \
533
		CONFDIR="${D}/etc/mplayer" \
482
		 DATADIR="${D}/usr/share/mplayer" \
534
		DATADIR="${D}/usr/share/mplayer" \
483
		 MANDIR="${D}/usr/share/man" \
535
		MANDIR="${D}/usr/share/man" \
484
		 INSTALLSTRIP="" \
536
		INSTALLSTRIP="" \
485
		 install || die "Failed to install MPlayer!"
537
		install || die "Failed to install MPlayer!"
486
538
487
	dodoc AUTHORS Changelog README etc/codecs.conf
539
	dodoc AUTHORS Changelog Copyright README etc/codecs.conf
488
	# Install the documentation; DOCS is all mixed up not just html
540
489
	if use doc ; then
541
	docinto tech/
490
		find "${S}/DOCS" -type d | xargs -- chmod 0755
542
	dodoc DOCS/tech/{*.txt,MAINTAINERS,mpsub.sub,playtree,TODO,wishlist}
491
		find "${S}/DOCS" -type f | xargs -- chmod 0644
543
	docinto tech/realcodecs/
492
		cp -r "${S}/DOCS" "${D}/usr/share/doc/${PF}/" || die "cp docs died"
544
	dodoc DOCS/tech/realcodecs/*
493
	fi
545
	docinto tech/mirrors/
494
546
	dodoc DOCS/tech/mirrors/*
495
	# Copy misc tools to documentation path, as they're not installed directly
547
496
	# and yes, we are nuking the +x bit.
548
	docinto TOOLS/
497
	find "${S}/TOOLS" -type d | xargs -- chmod 0755
549
	dodoc TOOLS/*
498
	find "${S}/TOOLS" -type f | xargs -- chmod 0644
550
	docinto TOOLS/realcodecs/
499
	cp -r "${S}/TOOLS" "${D}/usr/share/doc/${PF}/" || die "cp docs died"
551
	dodoc TOOLS/realcodecs/*
500
552
501
	# Install the default Skin and Gnome menu entry
553
	# Install the default Skin and Gnome menu entry
502
	if use gtk; then
554
	if use gtk; then

Return to bug 254661