diff options
author | Alexis Ballier <aballier@gentoo.org> | 2013-07-29 21:38:13 +0000 |
---|---|---|
committer | Alexis Ballier <aballier@gentoo.org> | 2013-07-29 21:38:13 +0000 |
commit | e0d5515c967a86fc6f39a1e00849d5a3d2fd1afd (patch) | |
tree | 303aa39a6cd2df99edbe1405eee028ced7185ae8 /media-video/mplayer | |
parent | fix broken png images wrt #475764 (diff) | |
download | historical-e0d5515c967a86fc6f39a1e00849d5a3d2fd1afd.tar.gz historical-e0d5515c967a86fc6f39a1e00849d5a3d2fd1afd.tar.bz2 historical-e0d5515c967a86fc6f39a1e00849d5a3d2fd1afd.zip |
Bump a snapshot. Should fix bug #478154 and bug #476502.
Package-Manager: portage-2.2.0_alpha190/cvs/Linux x86_64
Manifest-Sign-Key: 0x160F534A
Diffstat (limited to 'media-video/mplayer')
-rw-r--r-- | media-video/mplayer/ChangeLog | 8 | ||||
-rw-r--r-- | media-video/mplayer/Manifest | 11 | ||||
-rw-r--r-- | media-video/mplayer/files/mplayer-1.2_pre20130729-compat.patch | 62 | ||||
-rw-r--r-- | media-video/mplayer/mplayer-1.2_pre20130729.ebuild | 627 |
4 files changed, 703 insertions, 5 deletions
diff --git a/media-video/mplayer/ChangeLog b/media-video/mplayer/ChangeLog index de62f6ce2010..3b6968b8c71f 100644 --- a/media-video/mplayer/ChangeLog +++ b/media-video/mplayer/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for media-video/mplayer # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/ChangeLog,v 1.908 2013/07/29 20:55:00 aballier Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/ChangeLog,v 1.909 2013/07/29 21:38:05 aballier Exp $ + +*mplayer-1.2_pre20130729 (29 Jul 2013) + + 29 Jul 2013; Alexis Ballier <aballier@gentoo.org> + +mplayer-1.2_pre20130729.ebuild, +files/mplayer-1.2_pre20130729-compat.patch: + Bump a snapshot. Should fix bug #478154 and bug #476502. 29 Jul 2013; Alexis Ballier <aballier@gentoo.org> mplayer-9999.ebuild: allow snapshots named _pre diff --git a/media-video/mplayer/Manifest b/media-video/mplayer/Manifest index ed259cf419e6..b3927ac23139 100644 --- a/media-video/mplayer/Manifest +++ b/media-video/mplayer/Manifest @@ -11,20 +11,23 @@ AUX mplayer-1.1-missingbreak.patch 767 SHA256 4c530ebf979827020d483cb765a4c78a5f AUX mplayer-1.1-planaraudio.patch 4832 SHA256 dea33823a30ca6bd8fc197254ceeb9902dae83a17b7d772986bd672fabe75662 SHA512 95311d7cf56162cb7414b72e081d0ae36d77045d233c43dccbbd1de1bf4a6943cb6a2de3663d374decc73366e5402b98ad7bff399e1a8c5f2ba104eaa766d40a WHIRLPOOL 2b3ed41e994301a7a75aa7c46cc93f102f7457af292b3418264d63098942bcd3fd027a22fd34cbf669a2e167ad5485ecdb000e9b415d67b5058bb9ec68782f73 AUX mplayer-1.1.1-avcodecidsubrip.patch 678 SHA256 d19e3a37ebdeb34af160ef5e1f5fc67c36f79b373fb2dbacbd36c803da4bc5bd SHA512 881cda24e9d67cf56aefd570b79ef30293f7a85b025f290d622e8c1515f8066e440a61a9b49b34a92f0ae2bebbb7e7361a788c358d6e5575e09525dba88e5239 WHIRLPOOL 84239a770ce67dd339b4c46f4c354e1b1df392307da68509ba1abecdf1b754941bf5cc100e273945d9298dacaaae923b4154bd77d64d84009576741515778d81 AUX mplayer-1.1.1-codecidsubrip.patch 686 SHA256 8246822d9570e70e3e50bb640636764b666215770d6a15b01ce7362765f042d9 SHA512 1fa0d0d376b23d350f8d693c0f9fd5ad2ad7876621c2c0d713eba56f742cbc72209458d879fcd73466ccce45b5cf53f8ba9ef7f536b8998fa90e141dae0ed9fd WHIRLPOOL a59606991b6f9adb84a654fd9ee5e98255aa1f3b203ce77d8b142805880585f76cc62636cc9fb4dec755cb2850aadddac1f14a8f1f4aa9e28fde1489bfa2bffe +AUX mplayer-1.2_pre20130729-compat.patch 3005 SHA256 a66d27d0ae2b4222d2379179e8168e7cc6d16a62cfbdaf1281e138a9e021a2c7 SHA512 e78a51d6027d5657f5a878de54d853a8d50e45e47df3effc15948cbd6b1c0903076127aaaf851cb5d9e1e6a0c4a868819dbd4da2f0898d69bdc1cfb7a72245ad WHIRLPOOL 0ca442f532e8a99a4eef5631a022bd4b06a03cc73b89a81e2391778f22447e544f5389e7a6c3f0ac490c690ca4b92f576cad3f57fd05c02735e4ad757d09f471 AUX prepare_mplayer.sh 757 SHA256 ee4c0765b2cbab5bcc99408c4864669647fb0ad42517e0a51a6524c12b55804f SHA512 0add0707e15d58cee331fc82f884a44b29908c503f9ddcbb63dc01e237e2f457f599bae8644ce49f1af2cc7b3183529364ce30e6748889355c17cb96cecee71a WHIRLPOOL a4de2ff8e6ecfe66e41881664a84bc8ad91147e7b559e2ec334f9ad6671d9892de01bddfdba514b9c2b0589956b38d22fc8d2ce6ff00c267bded4bfb6c3ef6f0 DIST MPlayer-1.1.1.tar.xz 11202492 SHA256 ce8fc7c3179e6a57eb3a58cb7d1604388756b8a61764cc93e095e7aff3798c76 SHA512 06371d47b02caec83c7662f6bb4a827eafb7f3309f6cda959a0f49b647df031166a6e7c5d530b57b580104289ee260aa96f3f43cbfffcef816cea776b0d5aed0 WHIRLPOOL 3cd0f3845cd45961b778c384a322bc628cc9cd6fef3801b62389bd616a443ba5270c378a889412a7dc72d37ff26704d5d989d2c995a2a4a6540f6313ccacbb63 DIST font-arial-cp1250.tar.bz2 249705 SHA256 423a07e780bb130cd8e4730715545c5d919c248dda595aab7a0a01de3c83fd12 SHA512 4f77ff5ceb8ec6e5d9f8f34d8950a6a6276d1fd5a947772fcbdb6554988b1ea665c12b82f45164f91fb7bd08000cb4afc26fa35beb4c760464160e22b9b8c340 WHIRLPOOL d635f54be65b0ca1047d943b6f6da433cda9fce6ed74fcab993501cf7f6b443eb711e182cd7fff09e553d251b5fd1c60196aa22e8370cba99fa175ed5ecdb47f DIST font-arial-iso-8859-1.tar.bz2 234242 SHA256 9730f481764f367c9089d0166fb6ccf9148808ffbbfeca635cf0e6db75765d29 SHA512 a1d03b6f09c48f48b7733f3bc0402ceab239a9abf88b860d852ea9fe69b4da690208a79d6f29d30204f5b37becf10672e8e8c0bfef201846d80ec54df617d029 WHIRLPOOL 8050362b125d3ca98214526cee2fa685e31487d13a6483c765bfc844bdc5e07beeba2c1ba313458096d43a63edd6c5e80b8b388c2792fc0ec7421e4072d8ca25 DIST font-arial-iso-8859-2.tar.bz2 222208 SHA256 71debfc960007c2f6242dfc91e8b1c005b30a99e129aeb00ab8c03f4371b41c1 SHA512 5671e628303fd816f64a51ad10e2f4dd9c3dc1b34c379a2ecf489b83931db7af668aaa4e00e96a00cacd63ed98daeae6b6a4d5925edfb06fc98d3a923f70257d WHIRLPOOL 08178087b4ea1dfb2250f4673785e31dd876b06af51c51b2bddc172b23e6e33cbc1b2c6b710a317e42dc05486974b26ed0ad3ca50a185567aa77d49bd1e72aee +DIST mplayer-1.2_pre20130729.tar.xz 5358436 SHA256 9928cd6d0d765eb38f2824c501b94e5b6e0a2ec6e39a0c788654c5508c9eb9ab SHA512 e76ae7a1aeca9e853edf5403f3e3ae60dace980076a12160c501e18d019184af08256829f8e657b9fdbf549126bf518cf5dbe2860eda906e6fcd3ccc44a5f5a5 WHIRLPOOL b4007e4a00fd8b0b2d75a6d375f3b334b3251ea8dd677a5c1d562e4997fbbee81981bbbde9a88a61dc83bfc2d3e5dac6f93e7ff882088ba8b0c3df7c2cd9a6bd EBUILD mplayer-1.1.1-r1.ebuild 18290 SHA256 e76605c8447bef64bed2c66325aee788af5c2efbbc10324afc0a1fb3157f8b9c SHA512 658f2b065887f21f27f4e82e8c4d949447f891e46e0a3ef65a3a5387ff47c87f02b6b0a7c21257096c9921a7fa461d70ed84eb312b9bd516f0595ef7c3c21a95 WHIRLPOOL 845d349af756a5bdedffd909f563d40370cc381ca3bb1fa7490640740b88e05962ca782da5c95ba24a77c51f7c719c85ceccd1016a966927068d41b283ffb8c6 +EBUILD mplayer-1.2_pre20130729.ebuild 17310 SHA256 8f00ee65b053e0c905f60105d9274c5c838cf1cff0b9291bc9cc23388b997192 SHA512 95df29c2a9deb70bc0461fceb33ccd3659235bcd0e074715d4dec185042bb8740cbdf1fc48aaaf91d8ab179288b80a519d6c04c0deca66509e679e2ed3814176 WHIRLPOOL 6c11d77f13e4aa475501ee1855654690abded437bacf4ddc844d986dc87853f0f9c55194922aa85a43ac211e809ebb49dea5462e72a06c7c252de2bc4fde570c EBUILD mplayer-9999.ebuild 17233 SHA256 c0ee5aa8dcc22b6e8f6fc2d9c666df54153bdd162218aa8fd4f0e2ba3146eb9d SHA512 22f3dd5f927dbc178304dced369376246b254f3692ad24445d40e7214baef0f5401a4ec02060f8d5ea6bbaa4995cb7bdc9c20b7d36c0396f22d7a66d04672311 WHIRLPOOL e9d6de63c674e687ca0274711ab7034e2ec4ae0de224d51f55ed66cc3b6b48b50df26ed7f56af0c28c253a88790fa1771d49413a9011959ae59b8f22dd267add -MISC ChangeLog 50474 SHA256 9848333fe6674fe9c6a459f17ba1900cf3a4594979c79684e9dc6848cfa565de SHA512 6a8ba909e69b9d25f36cfd6cb08dd06dffc689f4f8c832b3f28d5ea5b2409fe641fb499e37bf5783ecd4baf7ed6632e0ae2b8dba6c86db03ba9a9a1df5f4a292 WHIRLPOOL e54e9b571084a8df534a84f40086bd4f59bbb07ced6e74adfd46f1c6cc85e5ea7717e2c89d3c6b21e6dc6ca9d5d00ab6c2a5fc3a762211056b9f89deaef5b871 +MISC ChangeLog 50706 SHA256 1c8e051e530c7a4a7c36d32588c680270d8830f856cd76725263935c7fd9c789 SHA512 ddc58f72931cff2e144ec78b4393c481185a826ba4686dbca05053627e04b81b9d2c688179a517a521ddc7d2b72c94cc98e85191a12726eb74d51f58cb716e2e WHIRLPOOL 5c577f3e34c350ea2947d880e625ecf664373ddd5d46d381ce33bdca0e104b2be0cd92169c6a2c3c5e8139f82ef62cef96d012003031c3e1336014061dc891ed MISC ChangeLog-2008 107064 SHA256 d9949e0e21fd6fd00f1417201455ee399240ef1010dcf56611ac0fc1f6f9505b SHA512 622543b379b4c44f5845566b4e697bd92dd3e864e2f01a1b0f303c8ae5c7fb5de24839f6503765d51b4a3bfa777d175a7e410383e62ef2bbacf3e87cdc28c705 WHIRLPOOL e731af47505ffa646c92386dfb14acaffc2bb14ab4da74520c0b4dbc15ca5c20aacadbb53c4b91ba8d126a75bf7d2fb61877eeda354064e20c48cf4137bf6a74 MISC metadata.xml 2761 SHA256 0fe785443da73a55b99d98fe12c82e1f7507042aeb27d3eb70023dff1165d05c SHA512 fce5bb2777a78d6972b46db7f3d840b023b050c21ce76d77b276f4bf0cf7a48a9918e9bb8b9e9dab84ea2e5b4aa87913df7e0929daec08cda96c72400fef09a6 WHIRLPOOL bc277ac3a4996f5c73479bd08bbee9654b7cdadb8bc369d2ec545dab06414fa74724a08d1db8f3a7bcdd4bcc384034b8e9146da1344b240e1df3cea68efbd04f -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (GNU/Linux) -iEYEAREIAAYFAlH21qYACgkQvFcC4BYPU0pQ5wCcDIU0ySlziqCDam/24eXTQDXS -QzsAn3RP68UnV8l6xR8FArvLEHQoX+GV -=MOB1 +iEYEAREIAAYFAlH24L8ACgkQvFcC4BYPU0rQZQCgtJQP018OImqWPKlRu32xhN8p +pnQAnR+uv4rgp6M4APXTutXT0DT2BDJq +=1OqK -----END PGP SIGNATURE----- diff --git a/media-video/mplayer/files/mplayer-1.2_pre20130729-compat.patch b/media-video/mplayer/files/mplayer-1.2_pre20130729-compat.patch new file mode 100644 index 000000000000..c26b6d20b51c --- /dev/null +++ b/media-video/mplayer/files/mplayer-1.2_pre20130729-compat.patch @@ -0,0 +1,62 @@ +Allow it to build against FFmpeg 1.2.1 and libav 9.8 + +Index: mplayer-1.2_pre20130729/fmt-conversion.c +=================================================================== +--- mplayer-1.2_pre20130729.orig/fmt-conversion.c ++++ mplayer-1.2_pre20130729/fmt-conversion.c +@@ -64,8 +64,10 @@ static const struct { + { IMGFMT_RGB64LE, AV_PIX_FMT_RGBA64LE }, + { IMGFMT_RGB64BE, AV_PIX_FMT_RGBA64BE }, + #endif /* LIBAVUTIL_VERSION_MICRO >= 100 */ ++#if ( LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(52,10,0) ) && ( LIBAVUTIL_VERSION_MICRO < 100 || LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(52,25,100) ) + { IMGFMT_XYZ12LE, AV_PIX_FMT_XYZ12LE }, + { IMGFMT_XYZ12BE, AV_PIX_FMT_XYZ12BE }, ++#endif + { IMGFMT_422A, AV_PIX_FMT_YUVA422P }, + { IMGFMT_444A, AV_PIX_FMT_YUVA444P }, + { IMGFMT_GBR24P, AV_PIX_FMT_GBRP }, +Index: mplayer-1.2_pre20130729/libmpdemux/demux_lavf.c +=================================================================== +--- mplayer-1.2_pre20130729.orig/libmpdemux/demux_lavf.c ++++ mplayer-1.2_pre20130729/libmpdemux/demux_lavf.c +@@ -443,7 +443,9 @@ static void handle_stream(demuxer_t *dem + type = 'm'; + else if (codec->codec_id == AV_CODEC_ID_SSA + #if LIBAVUTIL_VERSION_MICRO >= 100 ++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55,3,100) + || codec->codec_id == AV_CODEC_ID_ASS ++#endif + #endif /* LIBAVUTIL_VERSION_MICRO >= 100 */ + ) + type = 'a'; +Index: mplayer-1.2_pre20130729/libmpdemux/mp_taglists.c +=================================================================== +--- mplayer-1.2_pre20130729.orig/libmpdemux/mp_taglists.c ++++ mplayer-1.2_pre20130729/libmpdemux/mp_taglists.c +@@ -31,8 +31,10 @@ static const struct AVCodecTag mp_wav_ta + { AV_CODEC_ID_ADPCM_ADX, MKTAG('S', 'a', 'd', 'x') }, + #if LIBAVUTIL_VERSION_MICRO >= 100 + { AV_CODEC_ID_ADPCM_AFC, MKTAG('A', 'F', 'C', ' ') }, ++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55,8,100) + { AV_CODEC_ID_ADPCM_DTK, MKTAG('D', 'T', 'K', ' ') }, + #endif ++#endif + { AV_CODEC_ID_ADPCM_IMA_APC, MKTAG('A', 'P', 'C', 'A') }, + { AV_CODEC_ID_ADPCM_EA, MKTAG('A', 'D', 'E', 'A') }, + { AV_CODEC_ID_ADPCM_EA_R1, MKTAG('E', 'A', 'R', '1') }, +Index: mplayer-1.2_pre20130729/libmpcodecs/ve_lavc.c +=================================================================== +--- mplayer-1.2_pre20130729.orig/libmpcodecs/ve_lavc.c ++++ mplayer-1.2_pre20130729/libmpcodecs/ve_lavc.c +@@ -579,7 +579,11 @@ static int config(struct vf_instance *vf + lavc_venc_context->level = lavc_param_level; + + if(lavc_param_avopt){ ++#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(52,7,0) + if(av_dict_parse_string(&opts, lavc_param_avopt, "=", ",", 0) < 0){ ++#else ++ if(parse_avopts(lavc_venc_context, lavc_param_avopt) < 0){ ++#endif + mp_msg(MSGT_MENCODER,MSGL_ERR, "Your options /%s/ look like gibberish to me pal\n", lavc_param_avopt); + return 0; + } diff --git a/media-video/mplayer/mplayer-1.2_pre20130729.ebuild b/media-video/mplayer/mplayer-1.2_pre20130729.ebuild new file mode 100644 index 000000000000..17ec68999bc5 --- /dev/null +++ b/media-video/mplayer/mplayer-1.2_pre20130729.ebuild @@ -0,0 +1,627 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/mplayer-1.2_pre20130729.ebuild,v 1.1 2013/07/29 21:38:05 aballier Exp $ + +EAPI=5 + +EGIT_REPO_URI="git://git.videolan.org/ffmpeg.git" +ESVN_REPO_URI="svn://svn.mplayerhq.hu/mplayer/trunk" +[[ ${PV} = *9999* ]] && SVN_ECLASS="subversion git-2" || SVN_ECLASS="" + +inherit toolchain-funcs eutils flag-o-matic multilib base ${SVN_ECLASS} + +IUSE="3dnow 3dnowext a52 aalib +alsa altivec aqua bidi bindist bl bluray +bs2b cddb +cdio cdparanoia cpudetection debug dga +directfb doc dts dv dvb +dvd +dvdnav dxr3 +enca +encode faac faad fbcon +ftp gif ggi gsm +iconv ipv6 jack joystick jpeg jpeg2k kernel_linux ladspa ++libass libcaca libmpeg2 lirc live lzo mad md5sum +mmx mmxext mng mp3 nas ++network nut openal opengl +osdmenu oss png pnm pulseaudio pvr +radio rar rtc rtmp samba +shm sdl speex sse sse2 ssse3 +tga theora tremor +truetype toolame twolame +unicode v4l vdpau vidix +vorbis +X x264 xanim xinerama +xscreensaver +xv xvid xvmc zoran" + +VIDEO_CARDS="s3virge mga tdfx" +for x in ${VIDEO_CARDS}; do + IUSE+=" video_cards_${x}" +done + +FONT_URI=" + 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 +" +if [[ ${PV} == *9999* ]]; then + RELEASE_URI="" +elif [ "${PV%_rc*}" = "${PV}" -a "${PV%_pre*}" = "${PV}" ]; then + MY_P="MPlayer-${PV}" + S="${WORKDIR}/${MY_P}" + RELEASE_URI="mirror://mplayer/releases/${MY_P}.tar.xz" +else + RELEASE_URI="mirror://gentoo/${P}.tar.xz" +fi +SRC_URI="${RELEASE_URI} + !truetype? ( ${FONT_URI} )" + +DESCRIPTION="Media Player for Linux" +HOMEPAGE="http://www.mplayerhq.hu/" + +FONT_RDEPS=" + virtual/ttf-fonts + media-libs/fontconfig + >=media-libs/freetype-2.2.1:2 +" +X_RDEPS=" + x11-libs/libXext + x11-libs/libXxf86vm +" +# Rar: althrought -gpl version is nice, it cant do most functions normal rars can +# nemesi? ( net-libs/libnemesi ) +RDEPEND+=" + sys-libs/ncurses + app-arch/bzip2 + sys-libs/zlib + || ( >=media-video/ffmpeg-1.2.1:= >=media-video/libav-9.8:= ) + a52? ( media-libs/a52dec ) + aalib? ( media-libs/aalib ) + alsa? ( media-libs/alsa-lib ) + bidi? ( dev-libs/fribidi ) + bluray? ( >=media-libs/libbluray-0.2.1 ) + bs2b? ( media-libs/libbs2b ) + cdio? ( dev-libs/libcdio ) + cdparanoia? ( !cdio? ( media-sound/cdparanoia ) ) + dga? ( x11-libs/libXxf86dga ) + directfb? ( dev-libs/DirectFB ) + dts? ( media-libs/libdca ) + dv? ( media-libs/libdv ) + dvb? ( virtual/linuxtv-dvb-headers ) + dvd? ( >=media-libs/libdvdread-4.1.3 ) + dvdnav? ( >=media-libs/libdvdnav-4.1.3 ) + encode? ( + !twolame? ( toolame? ( media-sound/toolame ) ) + twolame? ( media-sound/twolame ) + faac? ( media-libs/faac ) + mp3? ( media-sound/lame ) + x264? ( >=media-libs/x264-0.0.20100423:= ) + xvid? ( media-libs/xvid ) + ) + enca? ( app-i18n/enca ) + faad? ( media-libs/faad2 ) + ggi? ( media-libs/libggi media-libs/libggiwmh ) + gif? ( media-libs/giflib ) + gsm? ( media-sound/gsm ) + iconv? ( virtual/libiconv ) + jack? ( media-sound/jack-audio-connection-kit ) + jpeg? ( virtual/jpeg ) + jpeg2k? ( media-libs/openjpeg:0 ) + ladspa? ( media-libs/ladspa-sdk ) + libass? ( >=media-libs/libass-0.9.10[enca?] ) + libcaca? ( media-libs/libcaca ) + libmpeg2? ( media-libs/libmpeg2 ) + lirc? ( app-misc/lirc ) + live? ( media-plugins/live ) + lzo? ( >=dev-libs/lzo-2 ) + mad? ( media-libs/libmad ) + mng? ( media-libs/libmng ) + mp3? ( media-sound/mpg123 ) + nas? ( media-libs/nas ) + nut? ( >=media-libs/libnut-661 ) + openal? ( media-libs/openal ) + opengl? ( virtual/opengl ) + png? ( media-libs/libpng ) + pnm? ( media-libs/netpbm ) + pulseaudio? ( media-sound/pulseaudio ) + rar? ( + || ( + app-arch/unrar + app-arch/rar + ) + ) + rtmp? ( media-video/rtmpdump ) + samba? ( net-fs/samba ) + sdl? ( media-libs/libsdl ) + speex? ( media-libs/speex ) + theora? ( media-libs/libtheora[encode?] ) + tremor? ( media-libs/tremor ) + truetype? ( ${FONT_RDEPS} ) + vdpau? ( x11-libs/libvdpau ) + vorbis? ( !tremor? ( media-libs/libvorbis ) ) + X? ( ${X_RDEPS} ) + xanim? ( media-video/xanim ) + xinerama? ( x11-libs/libXinerama ) + xscreensaver? ( x11-libs/libXScrnSaver ) + xv? ( x11-libs/libXv ) + xvmc? ( x11-libs/libXvMC ) +" + +X_DEPS=" + x11-proto/videoproto + x11-proto/xf86vidmodeproto +" +ASM_DEP="dev-lang/yasm" +DEPEND="${RDEPEND} + virtual/pkgconfig + dga? ( x11-proto/xf86dgaproto ) + dxr3? ( media-video/em8300-libraries ) + X? ( ${X_DEPS} ) + xinerama? ( x11-proto/xineramaproto ) + xscreensaver? ( x11-proto/scrnsaverproto ) + amd64? ( ${ASM_DEP} ) + doc? ( + dev-libs/libxslt app-text/docbook-xml-dtd + app-text/docbook-xsl-stylesheets + ) + x86? ( ${ASM_DEP} ) + x86-fbsd? ( ${ASM_DEP} ) +" + +SLOT="0" +LICENSE="GPL-2" +if [[ ${PV} != *9999* ]]; then + KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris" +else + KEYWORDS="" +fi + +# faac codecs are nonfree +# libcdio support: prefer libcdio over cdparanoia and don't check for cddb w/cdio +# dvd navigation requires dvd read support +# ass and freetype font require iconv and ass requires freetype fonts +# unicode transformations are usefull only with iconv +# radio requires oss or alsa backend +# xvmc requires xvideo support +REQUIRED_USE=" + bindist? ( !faac ) + dga? ( X ) + dvdnav? ( dvd ) + dxr3? ( X ) + enca? ( iconv ) + ggi? ( X ) + libass? ( truetype ) + opengl? ( X ) + osdmenu? ( X ) + truetype? ( iconv ) + vdpau? ( X ) + vidix? ( X ) + xinerama? ( X ) + xscreensaver? ( X ) + xv? ( X ) + xvmc? ( xv )" + +PATCHES=( "${FILESDIR}/${P}-compat.patch" ) + +pkg_setup() { + if [[ ${PV} == *9999* ]]; then + elog + elog "This is a live ebuild which installs the latest from upstream's" + elog "subversion repository, and is unsupported by Gentoo." + elog "Everything but bugs in the ebuild itself will be ignored." + elog + 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 has_version 'media-video/libav' ; then + ewarn "Please note that upstream uses media-video/ffmpeg." + ewarn "media-video/libav should be fine in theroy but if you" + ewarn "experience any problem, try to move to media-video/ffmpeg." + fi +} + +src_unpack() { + if [[ ${PV} = *9999* ]]; then + subversion_src_unpack + cd "${WORKDIR}" + rm -rf "${WORKDIR}/${P}/ffmpeg/" + ( S="${WORKDIR}/${P}/ffmpeg/" git-2_src_unpack ) + else + unpack ${A} + fi + + if [[ ${PV} = *9999* ]] || [ "${PV%_rc*}" = "${PV}" -a "${PV%_pre*}" = "${PV}" ]; then + cd "${S}" + cp "${FILESDIR}/dump_ffmpeg.sh" . || die + chmod +x dump_ffmpeg.sh + ./dump_ffmpeg.sh || die + fi + + 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 +} + +src_prepare() { + local svf=snapshot_version + if [[ ${PV} = *9999* ]]; then + # Set SVN version manually + subversion_wc_info + printf "${ESVN_WC_REVISION}" > $svf + fi + if [ ! -f VERSION ] ; then + [ -f "$svf" ] || die "Missing ${svf}. Did you generate your snapshot with prepare_mplayer.sh?" + local sv=$(<$svf) + printf "SVN-r${sv} (Gentoo)" > VERSION + fi + + # fix path to bash executable in configure scripts + sed -i -e "1c\#!${EPREFIX}/bin/bash" configure version.sh || die + + base_src_prepare + + # Use sane default for >=virtual/udev-197 + sed -i -e '/default_dvd_device/s:/dev/dvd:/dev/cdrom:' configure || die +} + +src_configure() { + local myconf="" + local uses i + + # set LINGUAS + [[ -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# + ################### + # disable svga since we don't want it + # disable arts since we don't have kde3 + # always disable internal ass + # disable opus and ilbc since it only controls support in internal + # ffmpeg which we do not use + myconf+=" + --disable-svga --disable-svgalib_helper + --disable-ass-internal + --disable-arts + --disable-kai + --disable-libopus + --disable-libilbc + $(use_enable network networking) + $(use_enable joystick) + " + uses="bl bluray enca ftp rtc" # nemesi <- not working with in-tree ebuild + myconf+=" --disable-nemesi" # nemesi automagic disable + for i in ${uses}; do + use ${i} || myconf+=" --disable-${i}" + done + use bidi || myconf+=" --disable-fribidi" + use ipv6 || myconf+=" --disable-inet6" + use libass || myconf+=" --disable-ass" + use nut || myconf+=" --disable-libnut" + use rar || myconf+=" --disable-unrarexec" + use samba || myconf+=" --disable-smb" + use lirc || myconf+=" --disable-lirc --disable-lircc --disable-apple-ir" + + # libcdio support: prefer libcdio over cdparanoia + # don't check for cddb w/cdio + if use cdio; then + myconf+=" --disable-cdparanoia" + else + myconf+=" --disable-libcdio" + use cdparanoia || myconf+=" --disable-cdparanoia" + use cddb || myconf+=" --disable-cddb" + fi + + ################################ + # DVD read, navigation support # + ################################ + # + # dvdread - accessing a DVD + # dvdnav - navigation of menus + # + # use external libdvdcss, dvdread and dvdnav + myconf+=" --disable-dvdread-internal --disable-libdvdcss-internal" + use dvd || myconf+=" --disable-dvdread" + use dvdnav || myconf+=" --disable-dvdnav" + + ############# + # Subtitles # + ############# + # + # SRT/ASS/SSA (subtitles) requires freetype support + # freetype support requires iconv + # iconv optionally can use unicode + use truetype || myconf+=" --disable-freetype" + use iconv || myconf+=" --disable-iconv --charset=noconv" + use iconv && use unicode && myconf+=" --charset=UTF-8" + + ##################################### + # DVB / Video4Linux / Radio support # + ##################################### + myconf+=" --disable-tv-bsdbt848" + # broken upstream, won't work with recent kernels + myconf+=" --disable-ivtv" + # gone since linux-headers-2.6.38 + myconf+=" --disable-tv-v4l1" + if { use dvb || use v4l || use pvr || use radio; }; then + use dvb || myconf+=" --disable-dvb" + use pvr || myconf+=" --disable-pvr" + use v4l || myconf+=" --disable-tv-v4l2" + if use radio && { use dvb || use v4l; }; then + myconf+=" + --enable-radio + $(use_enable encode radio-capture) + " + else + myconf+=" + --disable-radio-v4l2 + --disable-radio-bsdbt848 + " + fi + else + myconf+=" + --disable-tv + --disable-tv-v4l2 + --disable-radio + --disable-radio-v4l2 + --disable-radio-bsdbt848 + --disable-dvb + --disable-v4l2 + --disable-pvr" + fi + + ########## + # Codecs # + ########## + myconf+=" --disable-musepack" # Use internal musepack codecs for SV7 and SV8 support + myconf+=" --disable-libmpeg2-internal" # always use system media-libs/libmpeg2 + use dts || myconf+=" --disable-libdca" + if ! use mp3; then + myconf+=" + --disable-mp3lame + --disable-mpg123 + " + fi + uses="a52 bs2b dv gsm lzo rtmp vorbis" + for i in ${uses}; do + use ${i} || myconf+=" --disable-lib${i}" + done + + uses="faad gif jpeg libmpeg2 live mad mng png pnm speex tga theora tremor xanim" + for i in ${uses}; do + use ${i} || myconf+=" --disable-${i}" + done + use jpeg2k || myconf+=" --disable-libopenjpeg" + + # Encoding + uses="faac x264 xvid toolame twolame" + if use encode; then + for i in ${uses}; do + use ${i} || myconf+=" --disable-${i}" + done + else + myconf+=" --disable-mencoder" + for i in ${uses}; do + myconf+=" --disable-${i}" + use ${i} && elog "Useflag \"${i}\" will only be useful for encoding, i.e., with \"encode\" useflag enabled." + done + fi + + ################# + # Binary codecs # + ################# + myconf+=" --disable-qtx --disable-real --disable-win32dll" + + ################ + # Video Output # + ################ + uses="directfb md5sum sdl" + for i in ${uses}; do + use ${i} || myconf+=" --disable-${i}" + done + use aalib || myconf+=" --disable-aa" + use fbcon || myconf+=" --disable-fbdev" + use fbcon && use video_cards_s3virge && myconf+=" --enable-s3fb" + use libcaca || myconf+=" --disable-caca" + use zoran || myconf+=" --disable-zr" + + if ! use kernel_linux || ! use video_cards_mga; then + myconf+=" --disable-mga --disable-xmga" + fi + + if use video_cards_tdfx; then + myconf+=" + $(use_enable video_cards_tdfx tdfxvid) + $(use_enable fbcon tdfxfb) + " + else + myconf+=" + --disable-3dfx + --disable-tdfxvid + --disable-tdfxfb + " + fi + + # sun card, disable by default, see bug #258729 + myconf+=" --disable-xvr100" + + ################ + # Audio Output # + ################ + myconf+=" --disable-esd" + uses="alsa jack ladspa nas openal" + for i in ${uses}; do + use ${i} || myconf+=" --disable-${i}" + done + use pulseaudio || myconf+=" --disable-pulse" + if ! use radio; then + use oss || myconf+=" --disable-ossaudio" + fi + + #################### + # Advanced Options # + #################### + # Platform specific flags, hardcoded on amd64 (see below) + use cpudetection && myconf+=" --enable-runtime-cpudetection" + + uses="3dnow 3dnowext altivec mmx mmxext shm sse sse2 ssse3" + for i in ${uses}; do + myconf+=" $(use_enable ${i})" + done + + use debug && myconf+=" --enable-debug=3" + + if use x86 && gcc-specs-pie; then + filter-flags -fPIC -fPIE + append-ldflags -nopie + fi + + ########################### + # X enabled configuration # + ########################### + myconf+=" --disable-gui" + myconf+=" --disable-vesa" + uses="dxr3 ggi vdpau xinerama xv" + for i in ${uses}; do + use ${i} || myconf+=" --disable-${i}" + done + use dga || myconf+=" --disable-dga1 --disable-dga2" + use opengl || myconf+=" --disable-gl" + use osdmenu && myconf+=" --enable-menu" + use vidix || myconf+=" --disable-vidix --disable-vidix-pcidb" + use xscreensaver || myconf+=" --disable-xss" + use X || myconf+=" --disable-x11" + if use xvmc; then + myconf+=" --enable-xvmc --with-xvmclib=XvMCW" + else + myconf+=" --disable-xvmc" + fi + + ############################ + # OSX (aqua) configuration # + ############################ + if use aqua; then + myconf+=" + --enable-macosx-finder + --enable-macosx-bundle + " + fi + + ./configure \ + --cc="$(tc-getCC)" \ + --host-cc="$(tc-getBUILD_CC)" \ + --prefix="${EPREFIX}/usr" \ + --bindir="${EPREFIX}/usr/bin" \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + --confdir="${EPREFIX}/etc/mplayer" \ + --datadir="${EPREFIX}/usr/share/mplayer${namesuf}" \ + --mandir="${EPREFIX}/usr/share/man" \ + --disable-ffmpeg_a \ + ${myconf} || die +} + +src_compile() { + base_src_compile + # Build only user-requested docs if they're available. + if use doc ; then + # select available languages from $LINGUAS + LINGUAS=${LINGUAS/zh/zh_CN} + local ALLOWED_LINGUAS="cs de en es fr hu it pl ru zh_CN" + local BUILT_DOCS="" + for i in ${LINGUAS} ; do + has ${i} ${ALLOWED_LINGUAS} && BUILT_DOCS+=" ${i}" + done + if [[ -z $BUILT_DOCS ]]; then + emake -j1 html-chunked + else + for i in ${BUILT_DOCS}; do + emake -j1 html-chunked-${i} + done + fi + fi +} + +src_install() { + local i + + emake \ + DESTDIR="${D}" \ + INSTALLSTRIP="" \ + install + + dodoc AUTHORS Changelog Copyright README etc/codecs.conf + + docinto tech/ + dodoc DOCS/tech/{*.txt,MAINTAINERS,mpsub.sub,playtree,TODO,wishlist} + docinto TOOLS/ + dodoc -r TOOLS + docinto tech/mirrors/ + dodoc DOCS/tech/mirrors/* + + if use doc; then + docinto html/ + dohtml -r "${S}"/DOCS/HTML/* + fi + + if ! use truetype; then + dodir /usr/share/mplayer/fonts + # Do this generic, as the mplayer people like to change the structure + # of their zips ... + for i in $(find "${WORKDIR}/" -type d -name 'font-arial-*'); do + cp -pPR "${i}" "${ED}/usr/share/mplayer/fonts" + done + # Fix the font symlink ... + rm -rf "${ED}/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 + cat >> "${ED}/etc/mplayer/mplayer.conf" << _EOF_ +# Config options can be section specific, global +# options should go in the default section +[default] +_EOF_ + doins "${S}/etc/input.conf" + if use osdmenu; then + doins "${S}/etc/menu.conf" + fi + + if use truetype; then + cat >> "${ED}/etc/mplayer/mplayer.conf" << _EOF_ +fontconfig=1 +subfont-osd-scale=4 +subfont-text-scale=3 +_EOF_ + fi + + # bug 256203 + if use rar; then + cat >> "${ED}/etc/mplayer/mplayer.conf" << _EOF_ +unrarexec=${EPREFIX}/usr/bin/unrar +_EOF_ + fi + + dosym ../../../etc/mplayer/mplayer.conf /usr/share/mplayer/mplayer.conf + newbin "${S}/TOOLS/midentify.sh" midentify +} + +pkg_preinst() { + [[ -d ${EROOT}/usr/share/mplayer/Skin/default ]] && \ + rm -rf "${EROOT}/usr/share/mplayer/Skin/default" +} + +pkg_postrm() { + # Cleanup stale symlinks + [ -L "${EROOT}/usr/share/mplayer/font" -a \ + ! -e "${EROOT}/usr/share/mplayer/font" ] && \ + rm -f "${EROOT}/usr/share/mplayer/font" + + [ -L "${EROOT}/usr/share/mplayer/subfont.ttf" -a \ + ! -e "${EROOT}/usr/share/mplayer/subfont.ttf" ] && \ + rm -f "${EROOT}/usr/share/mplayer/subfont.ttf" +} |