summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormaciag.artur <maciag.artur@0805d722-a2c2-11dd-9b86-41075523de00>2009-08-21 21:21:47 +0000
committermaciag.artur <maciag.artur@0805d722-a2c2-11dd-9b86-41075523de00>2009-08-21 21:21:47 +0000
commitefadb86bd417c1513027c1805209a6b9b07486e5 (patch)
treeb8f00a28c28dcd794114dddb5ae8a168106d1f8f
parentnewest mplayer version with coreavc support (diff)
downloadpiczu-efadb86bd417c1513027c1805209a6b9b07486e5.tar.gz
piczu-efadb86bd417c1513027c1805209a6b9b07486e5.tar.bz2
piczu-efadb86bd417c1513027c1805209a6b9b07486e5.zip
newest mplayer version with coreavc support (2)
git-svn-id: http://piczu-overlay.googlecode.com/svn/trunk@62 0805d722-a2c2-11dd-9b86-41075523de00
-rw-r--r--media-video/mplayer/files/mplayer-1.0_rc2_p20090530-fix-mp3lib-use-local-labels-2.patch40
-rw-r--r--media-video/mplayer/files/mplayer-1.0_rc2_p20090731-linguas.patch14
-rw-r--r--media-video/mplayer/mplayer-1.0_rc2_p20090731-r1.ebuild (renamed from media-video/mplayer/mplayer-1.0_rc2_p28058-r1.ebuild)398
-rw-r--r--media-video/mplayer/mplayer-1.0_rc2_p27725-r1.ebuild560
4 files changed, 280 insertions, 732 deletions
diff --git a/media-video/mplayer/files/mplayer-1.0_rc2_p20090530-fix-mp3lib-use-local-labels-2.patch b/media-video/mplayer/files/mplayer-1.0_rc2_p20090530-fix-mp3lib-use-local-labels-2.patch
new file mode 100644
index 0000000..be56a44
--- /dev/null
+++ b/media-video/mplayer/files/mplayer-1.0_rc2_p20090530-fix-mp3lib-use-local-labels-2.patch
@@ -0,0 +1,40 @@
+Index: mp3lib/decode_mmx.c
+===================================================================
+--- mp3lib/decode_mmx.c (revision 29321)
++++ mp3lib/decode_mmx.c (working copy)
+@@ -219,7 +219,7 @@
+ //printf("DEBUG: channel %d, bo %d, off %d\n", channel, bo, 16 - bo1);
+ __asm__ volatile(
+ ASMALIGN(4)
+-".L03:\n\t"
++"0:\n\t"
+ "movq (%1),%%mm0\n\t"
+ "movq 64(%1),%%mm4\n\t"
+ "pmaddwd (%2),%%mm0\n\t"
+@@ -265,7 +265,7 @@
+ "add $8,%3\n\t"
+
+ "decl %0\n\t"
+- "jnz .L03\n\t"
++ "jnz 0b\n\t"
+
+ "movq (%1),%%mm0\n\t"
+ "pmaddwd (%2),%%mm0\n\t"
+@@ -291,7 +291,7 @@
+
+ "movl $7,%0\n\t"
+ ASMALIGN(4)
+-".L04:\n\t"
++"1:\n\t"
+ "movq (%1),%%mm0\n\t"
+ "movq 64(%1),%%mm4\n\t"
+ "pmaddwd (%2),%%mm0\n\t"
+@@ -340,7 +340,7 @@
+ "add $128,%1\n\t"
+ "add $8,%3\n\t"
+ "decl %0\n\t"
+- "jnz .L04\n\t"
++ "jnz 1b\n\t"
+
+ "movq (%1),%%mm0\n\t"
+ "pmaddwd (%2),%%mm0\n\t"
diff --git a/media-video/mplayer/files/mplayer-1.0_rc2_p20090731-linguas.patch b/media-video/mplayer/files/mplayer-1.0_rc2_p20090731-linguas.patch
new file mode 100644
index 0000000..6c0dcbe
--- /dev/null
+++ b/media-video/mplayer/files/mplayer-1.0_rc2_p20090731-linguas.patch
@@ -0,0 +1,14 @@
+diff -ur mplayer-1.0_rc2_p20090731.orig/configure mplayer-1.0_rc2_p20090731/configure
+--- mplayer-1.0_rc2_p20090731.orig/configure 2009-07-31 23:22:31.000000000 +0300
++++ mplayer-1.0_rc2_p20090731/configure 2009-08-03 10:02:18.000000000 +0300
+@@ -2838,8 +2838,9 @@
+ test -z "$language_man" && language_man=en
+
+ for lang in $language_msg ; do
+- test -f "help/help_mp-${lang}.h" && language_msg=$lang && break
++ test -f "help/help_mp-${lang}.h" && language_msg_tmp=$lang && break
+ done
++language_msg=$language_msg_tmp
+ test -z "$language_msg" && language_msg=en
+ _mp_help="help/help_mp-${language_msg}.h"
+ echores "messages: $language_msg - man pages: $language_man - documentation: $language_doc"
diff --git a/media-video/mplayer/mplayer-1.0_rc2_p28058-r1.ebuild b/media-video/mplayer/mplayer-1.0_rc2_p20090731-r1.ebuild
index 1ab7909..0381a33 100644
--- a/media-video/mplayer/mplayer-1.0_rc2_p28058-r1.ebuild
+++ b/media-video/mplayer/mplayer-1.0_rc2_p20090731-r1.ebuild
@@ -1,24 +1,24 @@
-# Copyright 1999-2008 Gentoo Foundation
+# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/mplayer-1.0_rc2_p28058.ebuild,v 1.1 2008/12/02 03:41:26 beandog Exp $
-
-EAPI="1"
+# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/mplayer-1.0_rc2_p20090731-r1.ebuild,v 1.2 2009/08/04 18:14:13 jer Exp $
+EAPI=2
inherit eutils flag-o-matic multilib
-# Ugly hack, feel free to fix
-MPLAYER_REVISION=28058
+MPLAYER_REVISION=SVN-r29463
-IUSE="3dnow 3dnowext +a52 +aac -aalib +alsa altivec amrnb amrwb -arts +ass bidi bl
-bindist cddb cdio cdparanoia +coreavc -cpudetection -custom-cflags -custom-cpuopts debug
-dga dirac doc dts dvb directfb +dvd dvdnav dv dxr3 enca +encode esd -fbcon ftp -gif ggi
--gtk iconv ipv6 jack joystick -jpeg kernel_linux ladspa -libcaca lirc live lzo
-+mad -md5sum +mmx mmxext mng mp2 +mp3 musepack nas nemesi opengl
-openal oss -png -pnm pulseaudio -pvr +quicktime radio -rar real 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"
+IUSE="3dnow 3dnowext +a52 +aac aalib +alsa altivec +ass
+bidi bindist bl +cddb +cdio cdparanoia +coreavc cpudetection custom-cflags
+custom-cpuopts debug dga +dirac directfb doc +dts +dv dvb +dvd +dvdnav dxr3
++enca +encode esd +faac +faad fbcon ftp gif ggi -gmplayer +iconv ipv6 jack
+joystick jpeg kernel_linux ladspa libcaca lirc +live lzo mad md5sum +mmx
+mmxext mng +mp2 +mp3 nas +network nut openal +opengl opencore-amr +osdmenu
+oss png pnm pulseaudio pvr +quicktime radio +rar +real +rtc samba +shm
++schroedinger sdl +speex sse sse2 ssse3 svga teletext tga +theora +tremor
++truetype +unicode v4l v4l2 vdpau vidix +vorbis win32codecs +X +x264 xanim
+xinerama +xscreensaver +xv +xvid xvmc zoran"
-VIDEO_CARDS="s3virge mga tdfx vesa"
+VIDEO_CARDS="s3virge mga tdfx nvidia vesa"
for x in ${VIDEO_CARDS}; do
IUSE="${IUSE} video_cards_${x}"
@@ -34,8 +34,9 @@ SRC_URI="mirror://gentoo/${P}.tar.bz2
!iconv? ( mirror://mplayer/releases/fonts/font-arial-iso-8859-1.tar.bz2
mirror://mplayer/releases/fonts/font-arial-iso-8859-2.tar.bz2
mirror://mplayer/releases/fonts/font-arial-cp1250.tar.bz2 )
- gtk? ( mirror://mplayer/Skin/Blue-${BLUV}.tar.bz2 )
- svga? ( http://mplayerhq.hu/~alex/svgalib_helper-${SVGV}-mplayer.tar.bz2 )"
+ gmplayer? ( mirror://mplayer/skins/Blue-${BLUV}.tar.bz2 )
+ svga? ( http://dev.gentoo.org/~ssuominen/svgalib_helper-${SVGV}-mplayer.tar.gz )"
+# svga? ( http://mplayerhq.hu/~alex/svgalib_helper-${SVGV}-mplayer.tar.bz2 )
DESCRIPTION="Media Player for Linux"
HOMEPAGE="http://www.mplayerhq.hu/"
@@ -44,47 +45,43 @@ RDEPEND="sys-libs/ncurses
!bindist? (
x86? (
win32codecs? ( media-libs/win32codecs )
- real? ( media-libs/win32codecs
- media-video/realplayer )
)
- amd64? ( real? ( media-libs/amd64codecs ) )
)
aalib? ( media-libs/aalib )
alsa? ( media-libs/alsa-lib )
- amrnb? ( media-libs/amrnb )
- amrwb? ( media-libs/amrwb )
- arts? ( kde-base/arts )
- ass? ( >=media-libs/freetype-2.1
- media-libs/fontconfig )
+ opencore-amr? ( media-libs/opencore-amr )
+ ass? ( || ( media-fonts/ttf-bitstream-vera media-fonts/dejavu )
+ media-libs/freetype:2 media-libs/fontconfig )
openal? ( media-libs/openal )
bidi? ( dev-libs/fribidi )
cdio? ( dev-libs/libcdio )
cdparanoia? ( media-sound/cdparanoia )
coreavc? ( media-libs/dshowserver )
- dirac? ( >=media-video/dirac-0.10.0 )
+ dirac? ( media-video/dirac )
directfb? ( dev-libs/DirectFB )
dga? ( x11-libs/libXxf86dga )
dts? ( media-libs/libdca )
- dvdnav? ( >=media-libs/libdvdnav-4.1.3
- >=media-libs/libdvdread-4.1.3 )
dv? ( media-libs/libdv )
dvb? ( media-tv/linuxtv-dvb-headers )
encode? (
- aac? ( media-libs/faac )
mp2? ( media-sound/twolame )
mp3? ( media-sound/lame )
- x264? ( >=media-libs/x264-0.0.20080406 )
+ faac? ( media-libs/faac )
+ x264? ( >=media-libs/x264-0.0.20090629 )
+ xvid? ( media-libs/xvid )
)
esd? ( media-sound/esound )
enca? ( app-i18n/enca )
+ faad? ( !aac? ( media-libs/faad2 ) )
gif? ( media-libs/giflib )
ggi? ( media-libs/libggi
media-libs/libggiwmh )
- gtk? ( media-libs/libpng
+ gmplayer? ( media-libs/libpng
x11-libs/libXxf86vm
x11-libs/libXext
x11-libs/libXi
- =x11-libs/gtk+-2* )
+ x11-libs/gtk+:2 )
+ jack? ( media-sound/jack-audio-connection-kit )
jpeg? ( media-libs/jpeg )
ladspa? ( media-libs/ladspa-sdk )
libcaca? ( media-libs/libcaca )
@@ -92,23 +89,30 @@ RDEPEND="sys-libs/ncurses
lzo? ( >=dev-libs/lzo-2 )
mad? ( media-libs/libmad )
mng? ( media-libs/libmng )
- musepack? ( >=media-libs/libmpcdec-1.2.2 )
nas? ( media-libs/nas )
+ nut? ( >=media-libs/libnut-661 )
opengl? ( virtual/opengl )
png? ( media-libs/libpng )
pnm? ( media-libs/netpbm )
pulseaudio? ( media-sound/pulseaudio )
+ rar? ( || ( app-arch/unrar-gpl
+ app-arch/unrar
+ app-arch/rar ) )
samba? ( net-fs/samba )
schroedinger? ( media-libs/schroedinger )
sdl? ( media-libs/libsdl )
- speex? ( >=media-libs/speex-1.1.7 )
+ speex? ( media-libs/speex )
svga? ( media-libs/svgalib )
theora? ( media-libs/libtheora )
- live? ( >=media-plugins/live-2007.02.20 )
- truetype? ( >=media-libs/freetype-2.1
+ live? ( media-plugins/live )
+ truetype? ( media-libs/freetype:2
media-libs/fontconfig )
+ video_cards_nvidia? (
+ vdpau? ( >=x11-drivers/nvidia-drivers-180.60 )
+ )
vidix? ( x11-libs/libXxf86vm
x11-libs/libXext )
+ vorbis? ( media-libs/libvorbis )
xanim? ( media-video/xanim )
xinerama? ( x11-libs/libXinerama
x11-libs/libXxf86vm
@@ -118,47 +122,35 @@ RDEPEND="sys-libs/ncurses
x11-libs/libXxf86vm
x11-libs/libXext
xvmc? ( x11-libs/libXvMC ) )
- xvid? ( media-libs/xvid )
X? ( x11-libs/libXxf86vm
x11-libs/libXext
)"
DEPEND="${RDEPEND}
+ amd64? ( dev-lang/yasm )
doc? ( dev-libs/libxslt )
dga? ( x11-proto/xf86dgaproto )
dxr3? ( media-video/em8300-libraries )
xinerama? ( x11-proto/xineramaproto )
xv? ( x11-proto/videoproto
x11-proto/xf86vidmodeproto )
- gtk? ( x11-proto/xextproto
+ gmplayer? ( x11-proto/xextproto
x11-proto/xf86vidmodeproto )
X? ( x11-proto/xextproto
x11-proto/xf86vidmodeproto )
+ x86? ( dev-lang/yasm )
+ x86-fbsd? ( dev-lang/yasm )
xscreensaver? ( x11-proto/scrnsaverproto )
iconv? ( virtual/libiconv )"
-# Make sure the assembler USE flags are unmasked on amd64
-# Remove this once default-linux/amd64/2006.1 is deprecated
-DEPEND="${DEPEND} amd64? ( >=sys-apps/portage-2.1.2 )
- mp2? ( >=sys-apps/portage-2.1.2 )"
SLOT="0"
LICENSE="GPL-2"
-KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+KEYWORDS="~amd64 ~hppa ~x86-fbsd"
pkg_setup() {
-
- if [[ -n ${LINGUAS} ]]; then
- elog ""
- elog "MPlayer's build system uses the LINGUAS variable for both"
- elog "output messages and which man pages to build. The first"
- elog "language in the LINGUAS variable will be used to display"
- elog "output messages. See bug #228799."
- fi
-
- if use gtk; then
+ if use gmplayer; then
ewarn ""
- ewarn "You've enabled the 'gtk' use flag which will build"
- ewarn "GMPlayer, which is no longer actively developed upstream"
+ ewarn "GMPlayer is no longer actively developed upstream"
ewarn "and is not supported by Gentoo. There are alternatives"
ewarn "for a GUI frontend: smplayer, gnome-mplayer and kmplayer."
fi
@@ -175,6 +167,14 @@ pkg_setup() {
ewarn "disabling this use flag."
fi
+ if use custom-cflags; then
+ ewarn ""
+ ewarn "You've enabled the custom-cflags USE flag, which overrides"
+ ewarn "mplayer's recommended behavior, making this build unsupported."
+ ewarn ""
+ ewarn "Re-emerge mplayer without this flag before filing bugs."
+ fi
+
if use custom-cpuopts; then
ewarn ""
ewarn "You are using the custom-cpuopts flag which will"
@@ -202,24 +202,20 @@ src_unpack() {
font-arial-cp1250.tar.bz2
fi
- use gtk && unpack "Blue-${BLUV}.tar.bz2"
+ cd "${WORKDIR}"
- use svga && unpack "svgalib_helper-${SVGV}-mplayer.tar.bz2"
+ use gmplayer && unpack "Blue-${BLUV}.tar.bz2"
- cd "${S}"
-
- # Fix x264 compilation, bug 240347
- epatch "${FILESDIR}/mplayer-1.0_rc2_p27725-libx264.patch"
+ use svga && unpack "svgalib_helper-${SVGV}-mplayer.tar.gz"
+}
+src_prepare() {
# CoreAVC support
use coreavc && epatch "${FILESDIR}/dshowserver.patch"
# Set version #
sed -i s/UNKNOWN/${MPLAYER_REVISION}/ "${S}/version.sh"
- # Fix hppa compilation
- use hppa && sed -i -e "s/-O4/-O1/" "${S}/configure"
-
if use svga; then
echo
einfo "Enabling vidix non-root mode."
@@ -230,34 +226,40 @@ src_unpack() {
mv "${WORKDIR}/svgalib_helper" "${S}/libdha"
fi
- # Fix polish spelling errors
- [[ -n ${LINGUAS} ]] && sed -e 's:Zarządano:Zażądano:' -i help/help_mp-pl.h
+ epatch "${FILESDIR}"/${PN}-1.0_rc2_p20090530-fix-mp3lib-use-local-labels-2.patch
+ epatch "${FILESDIR}"/${P}-linguas.patch
}
-src_compile() {
+src_configure() {
+ local myconf=""
- local myconf=" --disable-tv-bsdbt848 \
- --disable-faad"
+ [[ -n $LINGUAS ]] && LINGUAS="${LINGUAS/da/dk}"
- # broken upstream, won't work with recent kernels
- myconf="${myconf} --disable-ivtv"
-
- # MPlayer reads in the LINGUAS variable from make.conf, and sets
- # the languages accordingly. Some will have to be altered to match
- # upstream's naming scheme.
- [[ -n $LINGUAS ]] && LINGUAS=${LINGUAS/da/dk}
+ # mplayer ebuild uses "use foo || --disable-foo" to forcibly disable
+ # compilation in almost every situation. The reason for this is
+ # because if --enable is used, it will force the build of that option,
+ # regardless of whether the dependency is available or not.
################
#Optional features#
###############
+ myconf="${myconf} $(use_enable network) --disable-arts --disable-nemesi"
use ass || myconf="${myconf} --disable-ass"
use bidi || myconf="${myconf} --disable-fribidi"
use bl && myconf="${myconf} --enable-bl"
use enca || myconf="${myconf} --disable-enca"
use encode || myconf="${myconf} --disable-mencoder"
use ftp || myconf="${myconf} --disable-ftp"
- use nemesi || myconf="${myconf} --disable-nemesi"
+ use ipv6 || myconf="${myconf} --disable-inet6"
+ use lirc || myconf="${myconf} --disable-lirc --disable-lircc \
+ --disable-apple-ir"
+ use nut || myconf="${myconf} --disable-libnut"
+ use osdmenu && myconf="${myconf} --enable-menu"
+ use rar || myconf="${myconf} --disable-unrarexec"
+ use rtc || myconf="${myconf} --disable-rtc"
+ use samba || myconf="${myconf} --disable-smb"
use xscreensaver || myconf="${myconf} --disable-xss"
+ myconf="${myconf} $(use_enable joystick)"
# libcdio support: prefer libcdio over cdparanoia
# don't check for cddb w/cdio
@@ -269,21 +271,33 @@ src_compile() {
use cddb || myconf="${myconf} --disable-cddb"
fi
- # DVD support
- # dvdread and libdvdcss are internal libs
- # http://www.mplayerhq.hu/DOCS/HTML/en/dvd.html
- # You can optionally use external dvdread/dvdnav support.
- if use dvdnav; then
- myconf="${myconf} --with-dvdread-config=/usr/bin/dvdread-config \
- --with-dvdnav-config=/usr/bin/dvdnav-config \
- --disable-dvdread-internal"
- elif ! use dvd && ! use dvdread; then
- myconf="${myconf} --disable-dvdnav --disable-dvdread"
- use a52 || myconf="${myconf} --disable-liba52 \
- --disable-liba52-internal"
+ ###############
+ # DVD read, navigation support
+ ###############
+ #
+ # dvdread - accessing a DVD
+ # dvdnav - navigation of menus
+ #
+ # internal dvdread and dvdnav use flags enable internal
+ # versions of the libraries, which are snapshots of the fork.
+ #
+ # Only check for disabled a52 use flag inside the DVD check,
+ # since many users were getting confused why there was no
+ # audio stream.
+ #
+ if use dvd; then
+ use dvdnav || myconf="${myconf} --disable-dvdnav"
+ else
+ myconf="${myconf} --disable-dvdnav --disable-dvdread
+ --disable-dvdread-internal --disable-libdvdcss-internal"
+ use a52 || myconf="${myconf} --disable-liba52-internal"
fi
- # SRT (subtitles) requires freetype support
+ ###############
+ # Subtitles
+ ###############
+ #
+ # SRT/ASS/SSA (subtitles) requires freetype support
# freetype support requires iconv
# iconv optionally can use unicode
if ! use ass; then
@@ -296,14 +310,12 @@ src_compile() {
fi
use iconv && use unicode && myconf="${myconf} --charset=UTF-8"
- use lirc || myconf="${myconf} --disable-lirc --disable-lircc"
- myconf="${myconf} $(use_enable joystick)"
- use ipv6 || myconf="${myconf} --disable-inet6"
- use rar || myconf="${myconf} --disable-unrarexec"
- use rtc || myconf="${myconf} --disable-rtc"
- use samba || myconf="${myconf} --disable-smb"
-
+ ###############
# DVB / Video4Linux / Radio support
+ ###############
+ myconf="${myconf} --disable-tv-bsdbt848"
+ # broken upstream, won't work with recent kernels
+ myconf="${myconf} --disable-ivtv"
if { use dvb || use v4l || use v4l2 || use pvr || use radio; }; then
use dvb || myconf="${myconf} --disable-dvb --disable-dvbhead"
use pvr || myconf="${myconf} --disable-pvr"
@@ -316,52 +328,88 @@ src_compile() {
myconf="${myconf} --disable-radio-v4l2 --disable-radio-bsdbt848"
fi
else
- myconf="${myconf} --disable-tv --disable-tv-v4l1 --disable-tv-v4l2 \
- --disable-radio --disable-radio-v4l2 --disable-radio-bsdbt848 \
- --disable-dvb --disable-dvbhead --disable-tv-teletext \
+ myconf="${myconf} --disable-tv --disable-tv-v4l1 --disable-tv-v4l2
+ --disable-radio --disable-radio-v4l2 --disable-radio-bsdbt848
+ --disable-dvb --disable-dvbhead --disable-tv-teletext
--disable-v4l2 --disable-pvr"
fi
#########
# Codecs #
########
- for x in gif jpeg live mad musepack pnm speex tga theora xanim; do
- use ${x} || myconf="${myconf} --disable-${x}"
- done
- for x in dirac schroedinger ; do
- use ${x} || myconf="${myconf} --disable-lib${x}-lavc"
- done
- use aac || myconf="${myconf} --disable-faac --disable-faac-lavc"
- use amrnb || myconf="${myconf} --disable-libamr_nb"
- use amrwb || myconf="${myconf} --disable-libamr_wb"
+ # Won't work with external liba52
+ myconf="${myconf} --disable-liba52"
+ # Use internal musepack codecs for SV7 and SV8 support
+ myconf="${myconf} --disable-musepack"
+
+ use opencore-amr || myconf="${myconf} --disable-libopencore_amrnb
+ --disable-libopencore_amrwb"
+ use aac || myconf="${myconf} --disable-faad-internal"
+ use dirac || myconf="${myconf} --disable-libdirac-lavc"
use dts || myconf="${myconf} --disable-libdca"
use dv || myconf="${myconf} --disable-libdv"
- ! use png && ! use gtk && myconf="${myconf} --disable-png"
+ use faad || myconf="${myconf} --disable-faad"
use lzo || myconf="${myconf} --disable-liblzo"
- use encode && use mp2 || myconf="${myconf} --disable-twolame \
- --disable-toolame"
- use mp3 || myconf="${myconf} --disable-mp3lame --disable-mp3lame-lavc"
- use vorbis || myconf="${myconf} --disable-libvorbis"
- use x264 || myconf="${myconf} --disable-x264 --disable-x264-lavc"
+ use mp3 || myconf="${myconf} --disable-mp3lame --disable-mp3lame-lavc
+ --disable-mp3lib"
+ use schroedinger || myconf="${myconf} --disable-libschroedinger-lavc"
use xanim && myconf="${myconf} --xanimcodecsdir=/usr/lib/xanim/mods"
- use xvid || myconf="${myconf} --disable-xvid --disable-xvid-lavc"
-
- # Real codec support, only available on x86, amd64
- if use real && use x86; then
- myconf="${myconf} --realcodecsdir=/opt/RealPlayer/codecs"
- elif use real && use amd64; then
- myconf="${myconf} --realcodecsdir=/usr/$(get_libdir)/codecs"
+ ! use png && ! use gmplayer && myconf="${myconf} --disable-png"
+ for x in gif jpeg live mad mng pnm speex tga theora xanim; do
+ use ${x} || myconf="${myconf} --disable-${x}"
+ done
+ if use vorbis || use tremor; then
+ use tremor || myconf="${myconf} --disable-tremor-internal"
+ use vorbis || myconf="${myconf} --disable-libvorbis"
else
- myconf="${myconf} --disable-real"
+ myconf="${myconf} --disable-tremor-internal --disable-tremor
+ --disable-libvorbis"
fi
- if ! use bindist && ! use real; then
- myconf="${myconf} $(use_enable win32codecs win32dll)"
+ # Encoding
+ if use encode; then
+ use aac || myconf="${myconf} --disable-faac-lavc"
+ use faac || myconf="${myconf} --disable-faac"
+ use x264 || myconf="${myconf} --disable-x264"
+ use xvid || myconf="${myconf} --disable-xvid"
+ use mp2 || myconf="${myconf} --disable-twolame --disable-toolame"
+ else
+ myconf="${myconf} --disable-faac-lavc --disable-faac --disable-x264 \
+ --disable-xvid --disable-x264-lavc --disable-xvid-lavc \
+ --disable-twolame --disable-toolame"
fi
+
+ ###############
+ # Binary codecs
+ ###############
# bug 213836
if ! use x86 || ! use win32codecs; then
use quicktime || myconf="${myconf} --disable-qtx"
fi
+ ###############
+ # RealPlayer support
+ ###############
+ #
+ # Realplayer support shows up in four places:
+ # - libavcodec (internal)
+ # - win32codecs
+ # - realcodecs (win32codecs libs)
+ # - realcodecs (realplayer libs)
+ #
+
+ # internal
+ use real || myconf="${myconf} --disable-real"
+
+ # Real binary codec support only available on x86, amd64
+ if use real; then
+ use x86 && myconf="${myconf}
+ --realcodecsdir=/opt/RealPlayer/codecs"
+ use amd64 && myconf="${myconf}
+ --realcodecsdir=/usr/$(get_libdir)/codecs"
+ elif ! use bindist; then
+ myconf="${myconf} $(use_enable win32codecs win32dll)"
+ fi
+
#############
# Video Output #
#############
@@ -370,21 +418,19 @@ src_compile() {
done
use aalib || myconf="${myconf} --disable-aa"
use dga || myconf="${myconf} --disable-dga1 --disable-dga2"
+ use dxr3 || myconf="${myconf} --disable-dxr3"
use fbcon || myconf="${myconf} --disable-fbdev"
use fbcon && use video_cards_s3virge && myconf="${myconf} --enable-s3fb"
use libcaca || myconf="${myconf} --disable-caca"
use opengl || myconf="${myconf} --disable-gl"
use video_cards_vesa || myconf="${myconf} --disable-vesa"
- use vidix || myconf="${myconf} --disable-vidix \
- --disable-vidix-pcidb"
+ use video_cards_nvidia && use vdpau || myconf="${myconf} --disable-vdpau"
+ use vidix || myconf="${myconf} --disable-vidix --disable-vidix-pcidb"
use zoran || myconf="${myconf} --disable-zr"
- # MPlayer incorrectly looks for DXR3 support, so forcibly enable
- # if requested. See bug 223587
- myconf="${myconf} $(use_enable dxr3)"
-
# GTK gmplayer gui
- myconf="${myconf} $(use_enable gtk gui)"
+ # Unsupported by Gentoo, upstream has dropped development
+ myconf="${myconf} $(use_enable gmplayer gui)"
if use xv; then
if use xvmc; then
@@ -401,7 +447,7 @@ src_compile() {
fi
if use video_cards_tdfx; then
- myconf="${myconf} $(use_enable video_cards_tdfx tdfxvid) \
+ myconf="${myconf} $(use_enable video_cards_tdfx tdfxvid)
$(use_enable fbcon tdfxfb)"
else
myconf="${myconf} --disable-3dfx --disable-tdfxvid --disable-tdfxfb"
@@ -410,18 +456,19 @@ src_compile() {
#############
# Audio Output #
#############
- for x in alsa arts esd jack ladspa nas openal; do
+ for x in alsa esd jack ladspa nas openal; do
use ${x} || myconf="${myconf} --disable-${x}"
done
use pulseaudio || myconf="${myconf} --disable-pulse"
if ! use radio; then
use oss || myconf="${myconf} --disable-ossaudio"
fi
+
#################
# Advanced Options #
#################
# Platform specific flags, hardcoded on amd64 (see below)
- if use cpudetection || use bindist; then
+ if use cpudetection; then
myconf="${myconf} --enable-runtime-cpudetection"
fi
@@ -430,18 +477,15 @@ src_compile() {
# specify which ones to use. If disabled, mplayer will automatically
# enable all CPU optimizations that the host build supports.
if use custom-cpuopts; then
- for x in 3dnow 3dnowext mmx mmxext sse sse2 ssse3; do
+ for x in 3dnow 3dnowext altivec mmx mmxext shm sse sse2 ssse3; do
myconf="${myconf} $(use_enable $x)"
done
fi
use debug && myconf="${myconf} --enable-debug=3"
- myconf="${myconf} $(use_enable altivec)"
-
if use custom-cflags; then
- # let's play the filtration game! MPlayer hates on all!
- strip-flags
+
# ugly optimizations cause MPlayer to cry on x86 systems!
if use x86 || use x86-fbsd ; then
replace-flags -O* -O2
@@ -451,22 +495,23 @@ src_compile() {
fi
append-flags -D__STDC_LIMIT_MACROS
else
- unset CFLAGS CXXFLAGS
+ unset CFLAGS CXXFLAGS CPPFLAGS LDFLAGS YASMFLAGS
fi
- myconf="--cc=$(tc-getCC) \
- --host-cc=$(tc-getBUILD_CC) \
- --prefix=/usr \
- --confdir=/etc/mplayer \
- --datadir=/usr/share/mplayer \
- --libdir=/usr/$(get_libdir) \
- --enable-menu \
- --enable-network \
+ myconf="--cc=$(tc-getCC)
+ --host-cc=$(tc-getBUILD_CC)
+ --prefix=/usr
+ --confdir=/etc/mplayer
+ --datadir=/usr/share/mplayer
+ --libdir=/usr/$(get_libdir)
${myconf}"
#echo "CFLAGS=\"${CFLAGS}\" ./configure ${myconf}"
CFLAGS="${CFLAGS}" ./configure ${myconf} || die "configure died"
+}
+
+src_compile() {
emake || die "Failed to build MPlayer!"
use doc && make -C DOCS/xml html-chunked
}
@@ -474,30 +519,33 @@ src_compile() {
src_install() {
make prefix="${D}/usr" \
- BINDIR="${D}/usr/bin" \
- LIBDIR="${D}/usr/$(get_libdir)" \
- CONFDIR="${D}/etc/mplayer" \
- DATADIR="${D}/usr/share/mplayer" \
- MANDIR="${D}/usr/share/man" \
- INSTALLSTRIP="" \
- install || die "Failed to install MPlayer!"
-
- dodoc AUTHORS Changelog README etc/codecs.conf
- # Install the documentation; DOCS is all mixed up not just html
- if use doc ; then
- find "${S}/DOCS" -type d | xargs -- chmod 0755
- find "${S}/DOCS" -type f | xargs -- chmod 0644
- cp -r "${S}/DOCS" "${D}/usr/share/doc/${PF}/" || die "cp docs died"
+ BINDIR="${D}/usr/bin" \
+ LIBDIR="${D}/usr/$(get_libdir)" \
+ CONFDIR="${D}/etc/mplayer" \
+ DATADIR="${D}/usr/share/mplayer" \
+ MANDIR="${D}/usr/share/man" \
+ INSTALLSTRIP="" \
+ install || die "Failed to install MPlayer!"
+
+ dodoc AUTHORS Changelog Copyright README etc/codecs.conf
+
+ docinto tech/
+ dodoc DOCS/tech/{*.txt,MAINTAINERS,mpsub.sub,playtree,TODO,wishlist}
+ docinto TOOLS/
+ dodoc TOOLS/*
+ if use real; then
+ docinto tech/realcodecs/
+ dodoc DOCS/tech/realcodecs/*
+ docinto TOOLS/realcodecs/
+ dodoc TOOLS/realcodecs/*
fi
+ docinto tech/mirrors/
+ dodoc DOCS/tech/mirrors/*
- # Copy misc tools to documentation path, as they're not installed directly
- # and yes, we are nuking the +x bit.
- find "${S}/TOOLS" -type d | xargs -- chmod 0755
- find "${S}/TOOLS" -type f | xargs -- chmod 0644
- cp -r "${S}/TOOLS" "${D}/usr/share/doc/${PF}/" || die "cp docs died"
+ use doc && dohtml -r "${S}"/DOCS/HTML/*
# Install the default Skin and Gnome menu entry
- if use gtk; then
+ if use gmplayer; then
dodir /usr/share/mplayer/skins
cp -r "${WORKDIR}/Blue" \
"${D}/usr/share/mplayer/skins/default" || die "cp skins died"
@@ -523,6 +571,8 @@ src_install() {
insinto /etc/mplayer
newins "${S}/etc/example.conf" mplayer.conf
+ doins "${S}/etc/input.conf"
+ use osdmenu && doins "${S}/etc/menu.conf"
if use ass || use truetype; then
cat >> "${D}/etc/mplayer/mplayer.conf" << EOT
@@ -532,13 +582,17 @@ subfont-text-scale=3
EOT
fi
+ # bug 256203
+ if use rar; then
+ cat >> "${D}/etc/mplayer/mplayer.conf" << EOT
+unrarexec=/usr/bin/unrar
+EOT
+ fi
+
dosym ../../../etc/mplayer/mplayer.conf /usr/share/mplayer/mplayer.conf
newbin "${S}/TOOLS/midentify.sh" midentify
- insinto /usr/share/mplayer
- doins "${S}/etc/input.conf"
- doins "${S}/etc/menu.conf"
}
pkg_preinst() {
diff --git a/media-video/mplayer/mplayer-1.0_rc2_p27725-r1.ebuild b/media-video/mplayer/mplayer-1.0_rc2_p27725-r1.ebuild
deleted file mode 100644
index 352463f..0000000
--- a/media-video/mplayer/mplayer-1.0_rc2_p27725-r1.ebuild
+++ /dev/null
@@ -1,560 +0,0 @@
-# Copyright 1999-2008 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/mplayer-1.0_rc2_p27725-r1.ebuild,v 1.7 2008/10/30 20:14:44 dertobi123 Exp $
-
-EAPI="1"
-
-inherit eutils flag-o-matic multilib
-
-# Ugly hack, feel free to fix
-MPLAYER_REVISION=27725
-
-IUSE="3dnow 3dnowext +a52 aac -aalib +alsa altivec amrnb amrwb -arts bidi bl
-bindist cddb cdio cdparanoia +coreavc -cpudetection -custom-cflags -custom-cpuopts debug
-dga dirac doc dts dvb directfb +dvd dv dxr3 enca encode esd -fbcon ftp -gif ggi
--gtk iconv ipv6 jack joystick -jpeg kernel_linux ladspa -libcaca lirc live lzo
-+mad -md5sum +mmx mmxext mp2 +mp3 musepack nas nemesi +vorbis opengl
-openal oss -png -pnm pulseaudio -pvr quicktime radio -rar real rtc -samba schroedinger sdl
-speex srt sse sse2 ssse3 svga teletext tga +theora +truetype unicode v4l v4l2 vidix win32codecs +X x264 xanim xinerama +xscreensaver +xv xvid xvmc zoran"
-
-VIDEO_CARDS="s3virge mga tdfx vesa"
-
-for x in ${VIDEO_CARDS}; do
- IUSE="${IUSE} video_cards_${x}"
-done
-
-BLUV="1.7"
-SVGV="1.9.17"
-AMR_URI="http://www.3gpp.org/ftp/Specs/archive"
-SRC_URI="mirror://gentoo/${P}.tar.bz2
- !truetype? ( mirror://mplayer/releases/fonts/font-arial-iso-8859-1.tar.bz2
- mirror://mplayer/releases/fonts/font-arial-iso-8859-2.tar.bz2
- mirror://mplayer/releases/fonts/font-arial-cp1250.tar.bz2 )
- !iconv? ( mirror://mplayer/releases/fonts/font-arial-iso-8859-1.tar.bz2
- mirror://mplayer/releases/fonts/font-arial-iso-8859-2.tar.bz2
- mirror://mplayer/releases/fonts/font-arial-cp1250.tar.bz2 )
- gtk? ( mirror://mplayer/Skin/Blue-${BLUV}.tar.bz2 )
- svga? ( http://mplayerhq.hu/~alex/svgalib_helper-${SVGV}-mplayer.tar.bz2 )"
-
-DESCRIPTION="Media Player for Linux"
-HOMEPAGE="http://www.mplayerhq.hu/"
-
-RDEPEND="sys-libs/ncurses
- !bindist? (
- x86? (
- win32codecs? ( media-libs/win32codecs )
- real? ( media-libs/win32codecs
- media-video/realplayer )
- )
- amd64? ( real? ( media-libs/amd64codecs ) )
- )
- aalib? ( media-libs/aalib )
- alsa? ( media-libs/alsa-lib )
- amrnb? ( media-libs/amrnb )
- amrwb? ( media-libs/amrwb )
- arts? ( kde-base/arts )
- openal? ( media-libs/openal )
- bidi? ( dev-libs/fribidi )
- cdio? ( dev-libs/libcdio )
- cdparanoia? ( media-sound/cdparanoia )
- coreavc? ( media-libs/dshowserver )
- dirac? ( >=media-video/dirac-0.10.0 )
- directfb? ( dev-libs/DirectFB )
- dga? ( x11-libs/libXxf86dga )
- dts? ( media-libs/libdca )
- dv? ( media-libs/libdv )
- dvb? ( media-tv/linuxtv-dvb-headers )
- encode? (
- aac? ( media-libs/faac )
- mp2? ( media-sound/twolame )
- mp3? ( media-sound/lame )
- x264? ( >=media-libs/x264-0.0.20080406 )
- )
- esd? ( media-sound/esound )
- enca? ( app-i18n/enca )
- gif? ( media-libs/giflib )
- ggi? ( media-libs/libggi
- media-libs/libggiwmh )
- gtk? ( media-libs/libpng
- x11-libs/libXxf86vm
- x11-libs/libXext
- x11-libs/libXi
- =x11-libs/gtk+-2* )
- jpeg? ( media-libs/jpeg )
- ladspa? ( media-libs/ladspa-sdk )
- libcaca? ( media-libs/libcaca )
- lirc? ( app-misc/lirc )
- lzo? ( >=dev-libs/lzo-2 )
- mad? ( media-libs/libmad )
- musepack? ( >=media-libs/libmpcdec-1.2.2 )
- nas? ( media-libs/nas )
- opengl? ( virtual/opengl )
- png? ( media-libs/libpng )
- pnm? ( media-libs/netpbm )
- pulseaudio? ( media-sound/pulseaudio )
- samba? ( net-fs/samba )
- schroedinger? ( media-libs/schroedinger )
- sdl? ( media-libs/libsdl )
- speex? ( >=media-libs/speex-1.1.7 )
- srt? ( >=media-libs/freetype-2.1
- media-libs/fontconfig )
- svga? ( media-libs/svgalib )
- theora? ( media-libs/libtheora )
- live? ( >=media-plugins/live-2007.02.20 )
- truetype? ( >=media-libs/freetype-2.1
- media-libs/fontconfig )
- vidix? ( x11-libs/libXxf86vm
- x11-libs/libXext )
- xanim? ( media-video/xanim )
- xinerama? ( x11-libs/libXinerama
- x11-libs/libXxf86vm
- x11-libs/libXext )
- xscreensaver? ( x11-libs/libXScrnSaver )
- xv? ( x11-libs/libXv
- x11-libs/libXxf86vm
- x11-libs/libXext
- xvmc? ( x11-libs/libXvMC ) )
- xvid? ( media-libs/xvid )
- X? ( x11-libs/libXxf86vm
- x11-libs/libXext
- )"
-
-DEPEND="${RDEPEND}
- doc? ( >=app-text/docbook-sgml-dtd-4.1.2
- app-text/docbook-xml-dtd
- >=app-text/docbook-xml-simple-dtd-1.50.0
- dev-libs/libxslt )
- dga? ( x11-proto/xf86dgaproto )
- dxr3? ( media-video/em8300-libraries )
- xinerama? ( x11-proto/xineramaproto )
- xv? ( x11-proto/videoproto
- x11-proto/xf86vidmodeproto )
- gtk? ( x11-proto/xextproto
- x11-proto/xf86vidmodeproto )
- X? ( x11-proto/xextproto
- x11-proto/xf86vidmodeproto )
- xscreensaver? ( x11-proto/scrnsaverproto )
- iconv? ( virtual/libiconv )"
-# Make sure the assembler USE flags are unmasked on amd64
-# Remove this once default-linux/amd64/2006.1 is deprecated
-DEPEND="${DEPEND} amd64? ( >=sys-apps/portage-2.1.2 )
- mp2? ( >=sys-apps/portage-2.1.2 )"
-
-SLOT="0"
-LICENSE="GPL-2"
-KEYWORDS="amd64 hppa ppc ppc64 x86 ~x86-fbsd"
-
-pkg_setup() {
-
- if [[ -n ${LINGUAS} ]]; then
- elog ""
- elog "MPlayer's build system uses the LINGUAS variable for both"
- elog "output messages and which man pages to build. The first"
- elog "language in the LINGUAS variable will be used to display"
- elog "output messages. See bug #228799."
- fi
-
- if use gtk; then
- ewarn ""
- ewarn "You've enabled the 'gtk' use flag which will build"
- ewarn "GMPlayer, which is no longer actively developed upstream"
- ewarn "and is not supported by Gentoo. There are alternatives"
- ewarn "for a GUI frontend: smplayer, gnome-mplayer and kmplayer."
- fi
-
- if use cpudetection; then
- ewarn ""
- ewarn "You've enabled the cpudetection flag. This feature is"
- ewarn "included mainly for people who want to use the same"
- ewarn "binary on another system with a different CPU architecture."
- ewarn "MPlayer will already detect your CPU settings by default at"
- ewarn "buildtime; this flag is used for runtime detection."
- ewarn "You won't need this turned on if you are only building"
- ewarn "mplayer for this system. Also, if your compile fails, try"
- ewarn "disabling this use flag."
- fi
-
- if use custom-cpuopts; then
- ewarn ""
- ewarn "You are using the custom-cpuopts flag which will"
- ewarn "specifically allow you to enable / disable certain"
- ewarn "CPU optimizations."
- ewarn ""
- ewarn "Most desktop users won't need this functionality, but it"
- ewarn "is included for corner cases like cross-compiling and"
- ewarn "certain profiles. If unsure, disable this flag and MPlayer"
- ewarn "will automatically detect and use your available CPU"
- ewarn "optimizations."
- ewarn ""
- ewarn "Using this flag means your build is unsupported, so"
- ewarn "please make sure your CPU optimization use flags (3dnow"
- ewarn "3dnowext mmx mmxext sse sse2 ssse3) are properly set."
- fi
-}
-
-src_unpack() {
- unpack ${A}
-
- if ! use truetype ; then
- unpack font-arial-iso-8859-1.tar.bz2 \
- font-arial-iso-8859-2.tar.bz2 \
- font-arial-cp1250.tar.bz2
- fi
-
- use gtk && unpack "Blue-${BLUV}.tar.bz2"
-
- use svga && unpack "svgalib_helper-${SVGV}-mplayer.tar.bz2"
-
- cd "${S}"
-
- # Fix x264 compilation, bug 240347
- epatch "${FILESDIR}/mplayer-1.0_rc2_p27725-libx264.patch"
-
- use coreavc && epatch "${FILESDIR}/dshowserver.patch"
-
- # Set version #
- sed -i s/UNKNOWN/${MPLAYER_REVISION}/ "${S}/version.sh"
-
- # Fix hppa compilation
- use hppa && sed -i -e "s/-O4/-O1/" "${S}/configure"
-
- if use svga; then
- echo
- einfo "Enabling vidix non-root mode."
- einfo "(You need a proper svgalib_helper.o module for your kernel"
- einfo "to actually use this)"
- echo
-
- mv "${WORKDIR}/svgalib_helper" "${S}/libdha"
- fi
-
- # Fix polish spelling errors
- [[ -n ${LINGUAS} ]] && sed -e 's:Zarządano:Zażądano:' -i help/help_mp-pl.h
-}
-
-src_compile() {
-
- local myconf=" --disable-tv-bsdbt848 \
- --disable-faad"
-
- # broken upstream, won't work with recent kernels
- myconf="${myconf} --disable-ivtv"
-
- # MPlayer reads in the LINGUAS variable from make.conf, and sets
- # the languages accordingly. Some will have to be altered to match
- # upstream's naming scheme.
- [[ -n $LINGUAS ]] && LINGUAS=${LINGUAS/da/dk}
-
- ################
- #Optional features#
- ###############
- use bidi || myconf="${myconf} --disable-fribidi"
- use bl && myconf="${myconf} --enable-bl"
- use enca || myconf="${myconf} --disable-enca"
- use encode || myconf="${myconf} --disable-mencoder"
- use ftp || myconf="${myconf} --disable-ftp"
- use nemesi || myconf="${myconf} --disable-nemesi"
- use xscreensaver || myconf="${myconf} --disable-xss"
-
- # libcdio support: prefer libcdio over cdparanoia
- # don't check for cddb w/cdio
- if use cdio; then
- myconf="${myconf} --disable-cdparanoia"
- else
- myconf="${myconf} --disable-libcdio"
- use cdparanoia || myconf="${myconf} --disable-cdparanoia"
- use cddb || myconf="${myconf} --disable-cddb"
- fi
-
- # DVD support
- # dvdread and libdvdcss are internal libs
- # http://www.mplayerhq.hu/DOCS/HTML/en/dvd.html
- # You can optionally use external dvdread support, but against
- # upstream's suggestion. We don't.
- if ! use dvd; then
- myconf="${myconf} --disable-dvdnav --disable-dvdread"
- use a52 || myconf="${myconf} --disable-liba52 \
- --disable-liba52-internal"
- fi
-
- # SRT (subtitles) requires freetype support
- # freetype support requires iconv
- # iconv optionally can use unicode
- if ! use srt; then
- myconf="${myconf} --disable-ass"
- if ! use truetype; then
- myconf="${myconf} --disable-freetype"
- if ! use iconv; then
- myconf="${myconf} --disable-iconv --charset=noconv"
- fi
- fi
- fi
- use iconv && use unicode && myconf="${myconf} --charset=UTF-8"
-
- use lirc || myconf="${myconf} --disable-lirc --disable-lircc"
- myconf="${myconf} $(use_enable joystick)"
- use ipv6 || myconf="${myconf} --disable-inet6"
- use rar || myconf="${myconf} --disable-unrarexec"
- use rtc || myconf="${myconf} --disable-rtc"
- use samba || myconf="${myconf} --disable-smb"
-
- # DVB / Video4Linux / Radio support
- if { use dvb || use v4l || use v4l2 || use pvr || use radio; }; then
- use dvb || myconf="${myconf} --disable-dvb --disable-dvbhead"
- use pvr || myconf="${myconf} --disable-pvr"
- use v4l || myconf="${myconf} --disable-tv-v4l1"
- use v4l2 || myconf="${myconf} --disable-tv-v4l2"
- use teletext || myconf="${myconf} --disable-tv-teletext"
- if use radio && { use dvb || use v4l || use v4l2; }; then
- myconf="${myconf} --enable-radio $(use_enable encode radio-capture)"
- else
- myconf="${myconf} --disable-radio-v4l2 --disable-radio-bsdbt848"
- fi
- else
- myconf="${myconf} --disable-tv --disable-tv-v4l1 --disable-tv-v4l2 \
- --disable-radio --disable-radio-v4l2 --disable-radio-bsdbt848 \
- --disable-dvb --disable-dvbhead --disable-tv-teletext \
- --disable-v4l2 --disable-pvr"
- fi
-
- #########
- # Codecs #
- ########
- for x in gif jpeg live mad musepack pnm speex tga theora xanim; do
- use ${x} || myconf="${myconf} --disable-${x}"
- done
- for x in dirac schroedinger ; do
- use ${x} || myconf="${myconf} --disable-lib${x}-lavc"
- done
- use aac || myconf="${myconf} --disable-faac --disable-faac-lavc"
- use amrnb || myconf="${myconf} --disable-libamr_nb"
- use amrwb || myconf="${myconf} --disable-libamr_wb"
- use dts || myconf="${myconf} --disable-libdca"
- use dv || myconf="${myconf} --disable-libdv"
- ! use png && ! use gtk && myconf="${myconf} --disable-png"
- use lzo || myconf="${myconf} --disable-liblzo"
- use encode && use mp2 || myconf="${myconf} --disable-twolame \
- --disable-toolame"
- use mp3 || myconf="${myconf} --disable-mp3lame --disable-mp3lame-lavc"
- use vorbis || myconf="${myconf} --disable-libvorbis"
- use x264 || myconf="${myconf} --disable-x264 --disable-x264-lavc"
- use xanim && myconf="${myconf} --xanimcodecsdir=/usr/lib/xanim/mods"
- use xvid || myconf="${myconf} --disable-xvid --disable-xvid-lavc"
-
- # Real codec support, only available on x86, amd64
- if use real && use x86; then
- myconf="${myconf} --realcodecsdir=/opt/RealPlayer/codecs"
- elif use real && use amd64; then
- myconf="${myconf} --realcodecsdir=/usr/$(get_libdir)/codecs"
- else
- myconf="${myconf} --disable-real"
- fi
- if ! use bindist && ! use real; then
- myconf="${myconf} $(use_enable win32codecs win32dll)"
- fi
- # bug 213836
- if ! use x86 || ! use win32codecs; then
- use quicktime || myconf="${myconf} --disable-qtx"
- fi
-
- #############
- # Video Output #
- #############
- for x in directfb ggi md5sum sdl xinerama; do
- use ${x} || myconf="${myconf} --disable-${x}"
- done
- use aalib || myconf="${myconf} --disable-aa"
- use dga || myconf="${myconf} --disable-dga1 --disable-dga2"
- use fbcon || myconf="${myconf} --disable-fbdev"
- use fbcon && use video_cards_s3virge && myconf="${myconf} --enable-s3fb"
- use libcaca || myconf="${myconf} --disable-caca"
- use opengl || myconf="${myconf} --disable-gl"
- use video_cards_vesa || myconf="${myconf} --disable-vesa"
- use vidix || myconf="${myconf} --disable-vidix \
- --disable-vidix-pcidb"
- use zoran || myconf="${myconf} --disable-zr"
-
- # MPlayer incorrectly looks for DXR3 support, so forcibly enable
- # if requested. See bug 223587
- myconf="${myconf} $(use_enable dxr3)"
-
- # GTK gmplayer gui
- myconf="${myconf} $(use_enable gtk gui)"
-
- if use xv; then
- if use xvmc; then
- myconf="${myconf} --enable-xvmc --with-xvmclib=XvMCW"
- else
- myconf="${myconf} --disable-xvmc"
- fi
- else
- myconf="${myconf} --disable-xv --disable-xvmc"
- fi
-
- if ! use kernel_linux && ! use video_cards_mga; then
- myconf="${myconf} --disable-mga --disable-xmga"
- fi
-
- if use video_cards_tdfx; then
- myconf="${myconf} $(use_enable video_cards_tdfx tdfxvid) \
- $(use_enable fbcon tdfxfb)"
- else
- myconf="${myconf} --disable-3dfx --disable-tdfxvid --disable-tdfxfb"
- fi
-
- #############
- # Audio Output #
- #############
- for x in alsa arts esd jack ladspa nas openal; do
- use ${x} || myconf="${myconf} --disable-${x}"
- done
- use pulseaudio || myconf="${myconf} --disable-pulse"
- if ! use radio; then
- use oss || myconf="${myconf} --disable-ossaudio"
- fi
- #################
- # Advanced Options #
- #################
- # Platform specific flags, hardcoded on amd64 (see below)
- if use cpudetection || use bindist; then
- myconf="${myconf} --enable-runtime-cpudetection"
- fi
-
- # Turning off CPU optimizations usually will break the build.
- # However, this use flag, if enabled, will allow users to completely
- # specify which ones to use. If disabled, mplayer will automatically
- # enable all CPU optimizations that the host build supports.
- if use custom-cpuopts; then
- for x in 3dnow 3dnowext mmx mmxext sse sse2 ssse3; do
- myconf="${myconf} $(use_enable $x)"
- done
- fi
-
- use debug && myconf="${myconf} --enable-debug=3"
-
- myconf="${myconf} $(use_enable altivec)"
-
- if use custom-cflags; then
- # let's play the filtration game! MPlayer hates on all!
- strip-flags
- # ugly optimizations cause MPlayer to cry on x86 systems!
- if use x86 || use x86-fbsd ; then
- replace-flags -O* -O2
- filter-flags -fPIC -fPIE
-
- use debug || append-flags -fomit-frame-pointer
- fi
- append-flags -D__STDC_LIMIT_MACROS
- else
- unset CFLAGS CXXFLAGS
- fi
-
- myconf="--cc=$(tc-getCC) \
- --host-cc=$(tc-getBUILD_CC) \
- --prefix=/usr \
- --confdir=/etc/mplayer \
- --datadir=/usr/share/mplayer \
- --libdir=/usr/$(get_libdir) \
- --enable-menu \
- --enable-network \
- ${myconf}"
- #echo "CFLAGS=\"${CFLAGS}\" ./configure ${myconf}"
- CFLAGS="${CFLAGS}" ./configure ${myconf} || die "configure died"
-
- emake || die "Failed to build MPlayer!"
- use doc && make -C DOCS/xml html-chunked
-}
-
-src_install() {
-
- make prefix="${D}/usr" \
- BINDIR="${D}/usr/bin" \
- LIBDIR="${D}/usr/$(get_libdir)" \
- CONFDIR="${D}/etc/mplayer" \
- DATADIR="${D}/usr/share/mplayer" \
- MANDIR="${D}/usr/share/man" \
- INSTALLSTRIP="" \
- install || die "Failed to install MPlayer!"
-
- dodoc AUTHORS Changelog README etc/codecs.conf
- # Install the documentation; DOCS is all mixed up not just html
- if use doc ; then
- find "${S}/DOCS" -type d | xargs -- chmod 0755
- find "${S}/DOCS" -type f | xargs -- chmod 0644
- cp -r "${S}/DOCS" "${D}/usr/share/doc/${PF}/" || die "cp docs died"
- fi
-
- # Copy misc tools to documentation path, as they're not installed directly
- # and yes, we are nuking the +x bit.
- find "${S}/TOOLS" -type d | xargs -- chmod 0755
- find "${S}/TOOLS" -type f | xargs -- chmod 0644
- cp -r "${S}/TOOLS" "${D}/usr/share/doc/${PF}/" || die "cp docs died"
-
- # Install the default Skin and Gnome menu entry
- if use gtk; then
- dodir /usr/share/mplayer/skins
- cp -r "${WORKDIR}/Blue" \
- "${D}/usr/share/mplayer/skins/default" || die "cp skins died"
-
- # Fix the symlink
- rm -rf "${D}/usr/bin/gmplayer"
- dosym mplayer /usr/bin/gmplayer
- fi
-
- if ! use srt && ! use truetype; then
- dodir /usr/share/mplayer/fonts
- local x=
- # Do this generic, as the mplayer people like to change the structure
- # of their zips ...
- for x in $(find "${WORKDIR}/" -type d -name 'font-arial-*')
- do
- cp -pPR "${x}" "${D}/usr/share/mplayer/fonts"
- done
- # Fix the font symlink ...
- rm -rf "${D}/usr/share/mplayer/font"
- dosym fonts/font-arial-14-iso-8859-1 /usr/share/mplayer/font
- fi
-
- insinto /etc/mplayer
- newins "${S}/etc/example.conf" mplayer.conf
-
- if use srt || use truetype; then
- cat >> "${D}/etc/mplayer/mplayer.conf" << EOT
-fontconfig=1
-subfont-osd-scale=4
-subfont-text-scale=3
-EOT
- fi
-
- dosym ../../../etc/mplayer/mplayer.conf /usr/share/mplayer/mplayer.conf
-
- newbin "${S}/TOOLS/midentify.sh" midentify
-
- insinto /usr/share/mplayer
- doins "${S}/etc/input.conf"
- doins "${S}/etc/menu.conf"
-}
-
-pkg_preinst() {
-
- if [[ -d ${ROOT}/usr/share/mplayer/Skin/default ]]
- then
- rm -rf "${ROOT}/usr/share/mplayer/Skin/default"
- fi
-}
-
-pkg_postrm() {
-
- # Cleanup stale symlinks
- if [ -L "${ROOT}/usr/share/mplayer/font" -a \
- ! -e "${ROOT}/usr/share/mplayer/font" ]
- then
- rm -f "${ROOT}/usr/share/mplayer/font"
- fi
-
- if [ -L "${ROOT}/usr/share/mplayer/subfont.ttf" -a \
- ! -e "${ROOT}/usr/share/mplayer/subfont.ttf" ]
- then
- rm -f "${ROOT}/usr/share/mplayer/subfont.ttf"
- fi
-}