diff options
author | 2009-08-21 21:21:47 +0000 | |
---|---|---|
committer | 2009-08-21 21:21:47 +0000 | |
commit | efadb86bd417c1513027c1805209a6b9b07486e5 (patch) | |
tree | b8f00a28c28dcd794114dddb5ae8a168106d1f8f | |
parent | newest mplayer version with coreavc support (diff) | |
download | piczu-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.patch | 40 | ||||
-rw-r--r-- | media-video/mplayer/files/mplayer-1.0_rc2_p20090731-linguas.patch | 14 | ||||
-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.ebuild | 560 |
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 -} |