diff options
author | Steve Dibb <beandog@gentoo.org> | 2008-10-07 01:56:59 +0000 |
---|---|---|
committer | Steve Dibb <beandog@gentoo.org> | 2008-10-07 01:56:59 +0000 |
commit | 6feef8823abeaf14774402f15aa072efa379f8c9 (patch) | |
tree | ed4ebf2f1124e4c764be02962a0bf27ea616539a /media-video/mplayer | |
parent | Unmask dxr3 use flag for media-video/mplayer (diff) | |
download | historical-6feef8823abeaf14774402f15aa072efa379f8c9.tar.gz historical-6feef8823abeaf14774402f15aa072efa379f8c9.tar.bz2 historical-6feef8823abeaf14774402f15aa072efa379f8c9.zip |
Version bump, security bugs 239130 and 231836
Package-Manager: portage-2.2_rc11/cvs/Linux 2.6.26-tuxonice x86_64
Diffstat (limited to 'media-video/mplayer')
-rw-r--r-- | media-video/mplayer/ChangeLog | 8 | ||||
-rw-r--r-- | media-video/mplayer/Manifest | 4 | ||||
-rw-r--r-- | media-video/mplayer/mplayer-1.0_rc2_p27725.ebuild | 555 |
3 files changed, 565 insertions, 2 deletions
diff --git a/media-video/mplayer/ChangeLog b/media-video/mplayer/ChangeLog index 23184c1f4e22..726fc79d815e 100644 --- a/media-video/mplayer/ChangeLog +++ b/media-video/mplayer/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for media-video/mplayer # Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/ChangeLog,v 1.589 2008/09/16 14:06:36 jer Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/ChangeLog,v 1.590 2008/10/07 01:56:59 beandog Exp $ + +*mplayer-1.0_rc2_p27725 (07 Oct 2008) + + 07 Oct 2008; Steve Dibb <beandog@gentoo.org> + +mplayer-1.0_rc2_p27725.ebuild: + Version bump, security bugs 239130 and 231836 16 Sep 2008; Jeroen Roovers <jer@gentoo.org> mplayer-1.0_rc2_p27458.ebuild: diff --git a/media-video/mplayer/Manifest b/media-video/mplayer/Manifest index f623da0d2332..f66b7aa3955c 100644 --- a/media-video/mplayer/Manifest +++ b/media-video/mplayer/Manifest @@ -13,6 +13,7 @@ DIST mplayer-1.0_rc2_p26258.tar.bz2 7961981 RMD160 6e9f0a865c4638aa490beeaf51ff2 DIST mplayer-1.0_rc2_p26753.tar.bz2 8023449 RMD160 80ba2f6f8ceb31a18c7358f64076ea64c2c04837 SHA1 9c20283303130c4f4eeb185fdb3aaa6afcca04d8 SHA256 3145bd9f5ddd9f75a7d665b95c07c8602303e426803fe76bb27a1aa210d14ae8 DIST mplayer-1.0_rc2_p27120.tar.bz2 8031529 RMD160 c6f7f4a2908939259274e631fbf2631b36cc4dc6 SHA1 0fda217d2192a2472b35473212d1bc5df8db7446 SHA256 506e073930f12fbb3eec9e2ac3508b1239840e9149e2378f0c65aead873aeb1d DIST mplayer-1.0_rc2_p27458.tar.bz2 8099358 RMD160 bcde4707aadba4d52bce1aa0d2ec8fe9131713fa SHA1 29517da605039e3d8f3b9946e4f129914171937a SHA256 ca8cfe92b3cd9864c32be82756d14581cae5b85d27ed47cbf8d5a114efbc28f6 +DIST mplayer-1.0_rc2_p27725.tar.bz2 8143019 RMD160 342b07bd3918e2d6022d6cbc989bc8c4b872deae SHA1 44644b11a8a44114ce172ddcea5de6c0b3c319c4 SHA256 05700e19d5b9191e99dc2bf7ee4bb99acb310381a60057c17790543003ddb5ba DIST svgalib_helper-1.9.17-mplayer.tar.bz2 7234 RMD160 e0c4ae039478732404dd743e250e1061cc9cf0a4 SHA1 d2d596f1ddd283188b2990417d22903c0b466d25 SHA256 016edd27d74b5c66481ddb4563c961fbb579e3a95dd846cc857a639df09999e5 EBUILD mplayer-1.0_rc2_p24929-r4.ebuild 15563 RMD160 85c5113cd108679a4fd7d73fc2653157e3d33589 SHA1 dc40bdff8e67931fe3532ea4b4b72b3b102665ea SHA256 70192df4aa5fef254f02f3ff4ba1aebde29cabc8851b1863a276b955870f13b6 EBUILD mplayer-1.0_rc2_p25993.ebuild 16066 RMD160 ef486cfb37d373bebc8ba93e134597ba41f9ea08 SHA1 0d3cc45f1cd0f27c78feb0a8bf15dbff3bf65c9e SHA256 34a9d7e65b4297d6e2c4b9e3feca3fd59cf04185ae167e9f14ce2afe79b0a71c @@ -21,5 +22,6 @@ EBUILD mplayer-1.0_rc2_p26753-r1.ebuild 16887 RMD160 7e1b1669fab161e90c0314173b0 EBUILD mplayer-1.0_rc2_p26753.ebuild 16497 RMD160 9e0221b1530d680b4cc7f984157b31662de02e38 SHA1 f08b82a5a87b73cd7c42237366fbff22caf7601f SHA256 65273012feb3b2d7450db196f97bdaabaeb846a67a0079dd73a0b16720316db5 EBUILD mplayer-1.0_rc2_p27120-r1.ebuild 17539 RMD160 6e5a6b47014f42cbe76b5c2fd8b0c16d6d3d49b7 SHA1 b6867284b32092a12ba7a66585f4d686a48d3d3f SHA256 638e7302b212306297ebcd3e8fd0526dd46029be4c41d534b73c074a6a2a37ea EBUILD mplayer-1.0_rc2_p27458.ebuild 17665 RMD160 4b7506f676dca0a7d1b8d04f39162a7b23c67408 SHA1 e1b4bc58d4ff4cd34f010be3966e170846129d7c SHA256 c9d2db8872771cce2b5563f254adbfb0bc5c3293322f12dfb4f49b08b30b5dea -MISC ChangeLog 103731 RMD160 018d0a41a449bf4c048810a6c815a24e52ecad6d SHA1 ab7e7703b42cdd8d61bbfc2603eb9f73541c7c07 SHA256 9ce5c3e08ef5b6a746419b572f8e2d7a1b953f3b48726506f806ae9d0b603f4a +EBUILD mplayer-1.0_rc2_p27725.ebuild 17544 RMD160 3fb022bd5c71d32a7b409b624ae34a811b79caf0 SHA1 d7eb3b14a983dd0fc20971cae17676758ecd3b25 SHA256 3771cc44150cf741f2cd40c6805821f9708971b024ce73e447e7b1e80b358cf3 +MISC ChangeLog 103904 RMD160 a17794aa1e67734bc99059f317b632108f21cdf0 SHA1 cf475d475495557ec257695632deed0651a89d10 SHA256 38fe7ab843098384413f72c5c3a43e86dc5ccb287baf1a4b1769befb9d5507f3 MISC metadata.xml 2961 RMD160 86aff446ebfaea9a09d3ffd4dabf76a9409f175a SHA1 9ba6e42c4b4d235998bd2ae12fea189baef24ee3 SHA256 b81013120531993db55edf278d5a257c2c50a4f6994b2069710355790e90de14 diff --git a/media-video/mplayer/mplayer-1.0_rc2_p27725.ebuild b/media-video/mplayer/mplayer-1.0_rc2_p27725.ebuild new file mode 100644 index 000000000000..c6f4d3f3d15d --- /dev/null +++ b/media-video/mplayer/mplayer-1.0_rc2_p27725.ebuild @@ -0,0 +1,555 @@ +# 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.ebuild,v 1.1 2008/10/07 01:56:59 beandog 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 -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 ) + 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 ~ppc64 ~x86" + +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}" + + # 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 +} |