mplayer-1.0_rc2_p24929-r2.ebuildでCompizのVideo PlaybackプラグインとXvMCNVIDIAを使用するための修正
「CompizのVideo PlaybackプラグインとMPlayer」で、MPlayerをVideo Playbackプラグインに対応させるためのebuildの修正を書いたが、mplayer-1.0_rc2_p24929のebuildが「r2」になり、中身も変わっているため、それに合わせて変更部分を修正した。
修正箇所は
- 変数IUSE(USEフラグの一覧)に「compiz」を追加
- lists.freedesktop.org/archives/compiz/attachments/20070711/37e301ac/attachment-0001.bin を「USE="xv compiz"」のときにSRC_URIへ追加
- 「USE="xv compiz"」のときのRDEPEND指定(x11-wm/compiz)を追加
- attachment-0001.binを元に、必要に応じて一部分を修正して新しくパッチファイルを作成し、適用する
「USE="xv xvmc"」のときの処理の修正(XvMC関係の部分)
なので、今後のバージョン変更後も同様の要領で修正することになりそう。
(2008/5/14)mplayer-1.0_rc2_p26753向けのebuildを
onedrive.live.com/?cid=3f9be5b1cd4a806c&id=3F9BE5B1CD4A806C!408
にアップロードした。
(2008/9/10)その後に関しては「MPlayerのebuild(XvMCライブラリとCompizのVideo Playback対応)についてのその後(2008/9/10現在)」を参照。XvMcライブラリに関する処理は不要になっていることも分かった。
--- /usr/portage/media-video/mplayer/mplayer-1.0_rc2_p24929-r2.ebuild.orig +++ /usr/portage/media-video/mplayer/mplayer-1.0_rc2_p24929-r2.ebuild @@ -9,9 +9,9 @@ cddb cdio cdparanoia cpudetection custom-cflags debug dga doc dts dvb directfb dvd dv enca encode esd fbcon ftp gif ggi gtk iconv ipv6 jack joystick jpeg kernel_linux ladspa libcaca lirc live livecd lzo mad md5sum mmx mmxext mp2 mp3 -musepack nas nemesi unicode vorbis opengl openal oss png pnm pulseaudio quicktime radio rar real rtc samba sdl speex srt sse sse2 ssse3 svga teletext tga theora tivo truetype v4l v4l2 vidix win32codecs X x264 xanim xinerama xv xvid xvmc zoran" +musepack nas nemesi unicode vorbis opengl openal oss png pnm pulseaudio quicktime radio rar real rtc samba sdl speex srt sse sse2 ssse3 svga teletext tga theora tivo truetype v4l v4l2 vidix win32codecs X x264 xanim xinerama xv xvid xvmc zoran compiz" -VIDEO_CARDS="s3virge mga tdfx vesa" +VIDEO_CARDS="i810 nvidia s3virge mga tdfx vesa" for x in ${VIDEO_CARDS}; do IUSE="${IUSE} video_cards_${x}" @@ -28,6 +28,7 @@ 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 ) + xv? ( compiz? ( http://lists.freedesktop.org/archives/compiz/attachments/20070711/37e301ac/attachment-0001.bin ) ) svga? ( http://mplayerhq.hu/~alex/svgalib_helper-${SVGV}-mplayer.tar.bz2 )" DESCRIPTION="Media Player for Linux" @@ -103,6 +104,7 @@ xv? ( x11-libs/libXv x11-libs/libXxf86vm x11-libs/libXext + compiz? ( >=x11-wm/compiz-0.6.0 ) xvmc? ( x11-libs/libXvMC ) ) xvid? ( media-libs/xvid ) X? ( x11-libs/libXxf86vm @@ -180,6 +182,26 @@ # Pulseaudio patch, bug 203430 epatch "${FILESDIR}/${P}-pulse.patch" + + # Patch for Compiz/xv (Video Playback) + if use xv && use compiz; then + head -n 612 ${DISTDIR}/attachment-0001.bin > mplayer-xv-compiz.patch + cat <<EOF >> mplayer-xv-compiz.patch +@@ -836,6 +1377,9 @@ + fo = XvListImageFormats(mDisplay, xv_port, (int *) &formats); + + mp_input_add_event_fd(ConnectionNumber(mDisplay), check_events); ++ ++ vo_compiz_init (); ++ + return 0; + } + +EOF + tail -n 14 ${DISTDIR}/attachment-0001.bin >> mplayer-xv-compiz.patch + epatch mplayer-xv-compiz.patch + fi + } src_compile() { @@ -326,7 +348,14 @@ if use xv; then if use xvmc; then - myconf="${myconf} --enable-xvmc --with-xvmclib=XvMCW" + myconf="${myconf} --enable-xvmc" + if use video_cards_nvidia; then + myconf="${myconf} --with-xvmclib=XvMCNVIDIA" + elif use video_cards_i810; then + myconf="${myconf} --with-xvmclib=I810XvMC" + else + myconf="${myconf} --with-xvmclib=XvMCW" + fi else myconf="${myconf} --disable-xvmc" fi
(2008/1/26)r3が出ているが、修正としては
--- /usr/portage/media-video/mplayer/mplayer-1.0_rc2_p24929-r2.ebuild 2008-01-05 14:47:28.000000000 +0900 +++ /usr/portage/media-video/mplayer/mplayer-1.0_rc2_p24929-r3.ebuild 2008-01-24 19:41:20.000000000 +0900 @@ -1,6 +1,6 @@ # 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_p24929-r2.ebuild,v 1.1 2008/01/05 05:47:28 beandog Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/mplayer-1.0_rc2_p24929-r3.ebuild,v 1.1 2008/01/24 10:41:20 drac Exp $ inherit eutils flag-o-matic multilib @@ -66,7 +66,8 @@ esd? ( media-sound/esound ) enca? ( app-i18n/enca ) gif? ( media-libs/giflib ) - ggi? ( media-libs/libggi ) + ggi? ( media-libs/libggi + media-libs/libggiwmh ) gtk? ( media-libs/libpng x11-libs/libXxf86vm x11-libs/libXext @@ -131,7 +132,7 @@ SLOT="0" LICENSE="GPL-2" -KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc64 ~sparc ~x86 ~x86-fbsd" pkg_setup() {
という部分のみで、「USE=ggi」指定しなければ変化はない。