# ChangeLog for media-video/mplayer
# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/ChangeLog,v 1.329 2005/10/31 09:47:21 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/ChangeLog,v 1.330 2005/11/01 16:41:12 lu_zero Exp $
+
+ 01 Nov 2005; Luca Barbato <lu_zero@gentoo.org>
+ -files/mplayer-1.0_pre6-codecs.patch,
+ -files/mplayer-1.0_pre6-configure.patch,
+ -files/mplayer-1.0_pre6-pic.patch, -files/mplayer-1.0_pre6-ppc64.patch,
+ +files/mplayer-1.0_pre7-ppc64.patch, -files/mplayer-avi_crash.patch,
+ -files/mplayer-gcc_detection.patch, -files/mplayer-jack.patch,
+ -files/mplayer-nl.patch, -mplayer-1.0_pre6-r4.ebuild,
+ -mplayer-1.0_pre6-r5.ebuild, -mplayer-1.0_pre6-r6.ebuild,
+ -mplayer-1.0_pre7.ebuild, mplayer-1.0_pre7-r1.ebuild:
+ Complete cleanup
+
+ 01 Nov 2005; Luca Barbato <lu_zero@gentoo.org>
+ -mplayer-1.0_pre6-r4.ebuild, -mplayer-1.0_pre6-r5.ebuild,
+ -mplayer-1.0_pre6-r6.ebuild:
+ Pruning mplayer-1.0_pre6 ebuilds
31 Oct 2005; Diego Pettenò <flameeyes@gentoo.org>
mplayer-1.0_pre6-r4.ebuild, mplayer-1.0_pre6-r5.ebuild,
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
-MD5 5f3a97201b2d310dd8f87b12a0ca4644 ChangeLog 60709
-MD5 13bcf07a21789edf9b2f7b7935828b5b files/digest-mplayer-1.0_pre6-r4 429
-MD5 13bcf07a21789edf9b2f7b7935828b5b files/digest-mplayer-1.0_pre6-r5 429
-MD5 13bcf07a21789edf9b2f7b7935828b5b files/digest-mplayer-1.0_pre6-r6 429
-MD5 62d91cee9c8499fb0186fd7597c725f7 files/digest-mplayer-1.0_pre7 428
+MD5 4adfa27c8b965e63820dea1c57c83d3d ChangeLog 61417
MD5 bdc2a05b83ca16773f288d75afe99b33 files/digest-mplayer-1.0_pre7-r1 432
MD5 2328e907ec169e2fa3f930e2bb38dc21 files/mmst_fix_20050415.diff 630
-MD5 6748b8218fbe9ff36efcec61c749a346 files/mplayer-1.0_pre6-codecs.patch 1264
-MD5 9ca8563e7f6df3496b972f87feabd6c0 files/mplayer-1.0_pre6-configure.patch 534
-MD5 c2e82dbe0e7b780adcbe9bfb902b8654 files/mplayer-1.0_pre6-pic.patch 18233
-MD5 0ea2e07703fc2105a7f3d265106e9b1f files/mplayer-1.0_pre6-ppc64.patch 353
MD5 9c52b8b6d2256cc936201aad760823c6 files/mplayer-1.0_pre7-gcc4-amd64.patch 2521
MD5 3d94fd5886df3b60fe2606c4dee9d1dd files/mplayer-1.0_pre7-gcc4.patch 6412
MD5 c08980a7e7ffcb5793e929cf25cf349e files/mplayer-1.0_pre7-gcc_detection.patch 788
-MD5 475b283b41206562f0ee5ad28ff141e7 files/mplayer-avi_crash.patch 1388
-MD5 e1fd1f0b9ee787f83ff0969f512d40d5 files/mplayer-gcc_detection.patch 611
-MD5 68f89231bdbc972ac6abf45a135c8282 files/mplayer-jack.patch 272
+MD5 0ea2e07703fc2105a7f3d265106e9b1f files/mplayer-1.0_pre7-ppc64.patch 353
MD5 38c7908ce49f7f6a272993ba5bc9dd09 files/mplayer-mythtv.patch 13755
-MD5 59120b22317a30fb88a5e4946eaed3f0 files/mplayer-nl.patch 673
MD5 995f560631c6874f08bf6cc9ae01fb08 files/mplayer.desktop 794
MD5 1dc7b4b16903461c2ea8663d5dfc5795 files/rtsp_fix_20050415.diff 634
MD5 7300a7b361fa9f48e37722c6952bd432 metadata.xml 158
-MD5 ccbdd321ba9b7a55d8639595d8eba9cb mplayer-1.0_pre6-r4.ebuild 18306
-MD5 208d770ca540bb94744fe9d853c19bf2 mplayer-1.0_pre6-r5.ebuild 18392
-MD5 05078a9dddec9d095ecfcc94dbb7113f mplayer-1.0_pre6-r6.ebuild 18303
-MD5 9db4da1d181f02f73446918de28d3955 mplayer-1.0_pre7-r1.ebuild 15976
-MD5 2a78fe5aac657d3fd54db3bcba903f55 mplayer-1.0_pre7.ebuild 17803
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.2 (GNU/Linux)
-
-iD8DBQFDZehKj5H05b2HAEkRAnsaAKCby/TZMBTsEZkMIIZBpKc8m6DD0wCfaX1s
-e2R/wzwvBthn0qRKYbV6sD4=
-=/tBB
------END PGP SIGNATURE-----
+MD5 52d472d3d7b2cd28b410933de58c22bb mplayer-1.0_pre7-r1.ebuild 15966
+++ /dev/null
-MD5 a812d945b884c2e2fa7f90c57cd76bff MPlayer-1.0pre6a.tar.bz2 6380482
-MD5 1ecd31d17b51f16332b1fcc7da36b312 font-arial-iso-8859-1.tar.bz2 234242
-MD5 7b47904a925cf58ea546ca15f3df160c font-arial-iso-8859-2.tar.bz2 222208
-MD5 d0afd83cd04c29a714a62b427aace5c5 font-arial-cp1250.tar.bz2 249705
-MD5 3f1b9eb2ba639bf42c61f7b9189f6524 svgalib_helper-1.9.17-mplayer.tar.bz2 7234
-MD5 5fdc36704c4ec3a6dc6b57a536608180 Blue-1.4.tar.bz2 221734
+++ /dev/null
-MD5 a812d945b884c2e2fa7f90c57cd76bff MPlayer-1.0pre6a.tar.bz2 6380482
-MD5 1ecd31d17b51f16332b1fcc7da36b312 font-arial-iso-8859-1.tar.bz2 234242
-MD5 7b47904a925cf58ea546ca15f3df160c font-arial-iso-8859-2.tar.bz2 222208
-MD5 d0afd83cd04c29a714a62b427aace5c5 font-arial-cp1250.tar.bz2 249705
-MD5 3f1b9eb2ba639bf42c61f7b9189f6524 svgalib_helper-1.9.17-mplayer.tar.bz2 7234
-MD5 5fdc36704c4ec3a6dc6b57a536608180 Blue-1.4.tar.bz2 221734
+++ /dev/null
-MD5 a812d945b884c2e2fa7f90c57cd76bff MPlayer-1.0pre6a.tar.bz2 6380482
-MD5 1ecd31d17b51f16332b1fcc7da36b312 font-arial-iso-8859-1.tar.bz2 234242
-MD5 7b47904a925cf58ea546ca15f3df160c font-arial-iso-8859-2.tar.bz2 222208
-MD5 d0afd83cd04c29a714a62b427aace5c5 font-arial-cp1250.tar.bz2 249705
-MD5 3f1b9eb2ba639bf42c61f7b9189f6524 svgalib_helper-1.9.17-mplayer.tar.bz2 7234
-MD5 5fdc36704c4ec3a6dc6b57a536608180 Blue-1.4.tar.bz2 221734
+++ /dev/null
-MD5 5fadd6957d3aab989cd760ff38fb8fdf MPlayer-1.0pre7.tar.bz2 6868877
-MD5 1ecd31d17b51f16332b1fcc7da36b312 font-arial-iso-8859-1.tar.bz2 234242
-MD5 7b47904a925cf58ea546ca15f3df160c font-arial-iso-8859-2.tar.bz2 222208
-MD5 d0afd83cd04c29a714a62b427aace5c5 font-arial-cp1250.tar.bz2 249705
-MD5 3f1b9eb2ba639bf42c61f7b9189f6524 svgalib_helper-1.9.17-mplayer.tar.bz2 7234
-MD5 5fdc36704c4ec3a6dc6b57a536608180 Blue-1.4.tar.bz2 221734
+++ /dev/null
---- etc/codecs.conf.old 2004-12-17 22:30:29.000000000 +0900
-+++ etc/codecs.conf 2005-03-19 04:43:19.000000000 +0900
-@@ -893,6 +893,7 @@
- status working
- fourcc H263,U263,h263,X263
- fourcc viv1 h263
-+ fourcc s263
- driver ffmpeg
- dll h263
- out YV12,I420,IYUV
-@@ -1104,6 +1105,15 @@
- dll "drv43260.dll"
- out I420
-
-+videocodec rv40real
-+ info "Real RV40 decoder"
-+ status working
-+ fourcc RV40,rv40
-+ fourcc RV30,rv30
-+ driver realvid
-+ dll "drvc.so"
-+ out I420
-+
- videocodec rv40mac
- info "Mac OS X RealPlayer 9 RV40 decoder"
- status working
-@@ -1141,7 +1151,7 @@
- status working
- fourcc RV20,rv20
- driver realvid
-- dll "drv2.so.6.0"
-+ dll "drv2.so"
- out I420
-
- videocodec rv20win
-@@ -1997,7 +2007,7 @@
- status working
- format 0x6B6F6F63 ; "cook"
- driver realaud
-- dll "cook.so.6.0"
-+ dll "cook.so"
-
- audiocodec racookwin
- info "Win32 RealAudio COOK"
-@@ -2018,7 +2028,7 @@
- status working
- format 0x72706973 ; "sipr"
- driver realaud
-- dll "sipr.so.6.0"
-+ dll "sipr.so"
-
- audiocodec rasiprwin
- info "Win32 RealAudio Sipro"
-@@ -2039,7 +2049,7 @@
- status working
- format 0x63727461 ; "atrc"
- driver realaud
-- dll "atrc.so.6.0"
-+ dll "atrc.so"
-
- audiocodec raatrcwin
- info "Win32 RealAudio ATRAC3"
+++ /dev/null
---- configure.old 2004-12-24 15:24:15.055125952 +0900
-+++ configure 2004-12-24 15:25:14.480091984 +0900
-@@ -6308,10 +6308,6 @@
- # Checking for CFLAGS
- _stripbinaries=yes
- if test "$_profile" != "" || test "$_debug" != "" ; then
-- CFLAGS="-W -Wall -O2 $_march $_mcpu $_debug $_profile"
-- if test "$_cc_major" -ge "3" ; then
-- CFLAGS=`echo "$CFLAGS" | sed -e 's/\(-Wall\)/\1 -Wno-unused-parameter/'`
-- fi
- _stripbinaries=no
- elif test -z "$CFLAGS" ; then
- CFLAGS="-O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer"
+++ /dev/null
-diff -ur MPlayer-1.0pre6a_old/liba52/imdct.c MPlayer-1.0pre6a/liba52/imdct.c
---- MPlayer-1.0pre6a_old/liba52/imdct.c 2004-04-27 04:47:50.000000000 +0900
-+++ MPlayer-1.0pre6a/liba52/imdct.c 2005-03-21 15:55:39.036875280 +0900
-@@ -744,19 +744,18 @@
- // Stuff below this line is borrowed from libac3
- #include "srfftp.h"
- #ifdef ARCH_X86
--#ifndef HAVE_3DNOW
--#define HAVE_3DNOW 1
--#endif
--#include "srfftp_3dnow.h"
-
-+#ifdef HAVE_3DNOW
-+
-+#include "srfftp_3dnow.h"
- const i_cmplx_t x_plus_minus_3dnow __attribute__ ((aligned (8))) = {{ 0x00000000UL, 0x80000000UL }};
- const i_cmplx_t x_minus_plus_3dnow __attribute__ ((aligned (8))) = {{ 0x80000000UL, 0x00000000UL }};
- const complex_t HSQRT2_3DNOW __attribute__ ((aligned (8))) = { 0.707106781188, 0.707106781188 };
-+#endif
-
--#undef HAVE_3DNOWEX
--#include "imdct_3dnow.h"
--#define HAVE_3DNOWEX
-+#ifdef HAVE_3DNOW
- #include "imdct_3dnow.h"
-+#endif
-
- void
- imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
-@@ -807,8 +806,8 @@
- "subl $16, %%edi \n\t"
- " jnc 1b \n\t"
- "popl %%ebp \n\t"//no we didnt touch ebp *g*
-- :: "b" (data), "c" (buf)
-- : "%esi", "%edi", "%eax", "%edx"
-+ :: "a" (data), "c" (buf)
-+ : "%esi", "%edi", "%edx"
- );
-
-
-@@ -1303,24 +1302,26 @@
-
- imdct_512 = imdct_do_512;
- #ifdef ARCH_X86
-+#if defined(HAVE_SSE)
- if(mm_accel & MM_ACCEL_X86_SSE)
- {
- fprintf (stderr, "Using SSE optimized IMDCT transform\n");
- imdct_512 = imdct_do_512_sse;
- }
-- else
-+#elif defined(HAVE_3DNOWEXT)
- if(mm_accel & MM_ACCEL_X86_3DNOWEXT)
- {
- fprintf (stderr, "Using 3DNowEx optimized IMDCT transform\n");
- imdct_512 = imdct_do_512_3dnowex;
- }
-- else
-+#elif defined(HAVE_3DNOW)
- if(mm_accel & MM_ACCEL_X86_3DNOW)
- {
- fprintf (stderr, "Using 3DNow optimized IMDCT transform\n");
- imdct_512 = imdct_do_512_3dnow;
- }
- else
-+#endif
- #endif // arch_x86
- #ifdef HAVE_ALTIVEC
- if (mm_accel & MM_ACCEL_PPC_ALTIVEC)
-diff -ur MPlayer-1.0pre6a_old/libavcodec/common.h MPlayer-1.0pre6a/libavcodec/common.h
---- MPlayer-1.0pre6a_old/libavcodec/common.h 2005-03-21 13:52:59.535689520 +0900
-+++ MPlayer-1.0pre6a/libavcodec/common.h 2005-03-21 14:26:10.600001736 +0900
-@@ -1256,13 +1256,14 @@
-
-
- #if __CPU__ >= 686 && !defined(RUNTIME_CPUDETECT)
-+
- #define COPY3_IF_LT(x,y,a,b,c,d)\
- asm volatile (\
- "cmpl %0, %3 \n\t"\
- "cmovl %3, %0 \n\t"\
- "cmovl %4, %1 \n\t"\
- "cmovl %5, %2 \n\t"\
-- : "+r" (x), "+r" (a), "+r" (c)\
-+ : "=r" (x), "=r" (a), "=r" (c)\
- : "r" (y), "r" (b), "r" (d)\
- );
- #else
-diff -ur MPlayer-1.0pre6a_old/libvo/osd_template.c MPlayer-1.0pre6a/libvo/osd_template.c
---- MPlayer-1.0pre6a_old/libvo/osd_template.c 2004-10-21 20:55:20.000000000 +0900
-+++ MPlayer-1.0pre6a/libvo/osd_template.c 2005-03-21 15:35:07.984023760 +0900
-@@ -411,10 +411,9 @@
- "movb %%dh, 2(%0)\n\t"
-
- :
-- :"r" (&dstbase[4*x]),
-- "r" ((unsigned)srca[x]),
-- "r" (((unsigned)src[x])<<8)
-- :"%eax", "%ecx", "%edx"
-+ :"a" (&dstbase[4*x]),
-+ "c" ((unsigned)srca[x]),
-+ "d" (((unsigned)src[x])<<8)
- );
- }
- }
-diff -ur MPlayer-1.0pre6a_old/postproc/rgb2rgb.c MPlayer-1.0pre6a/postproc/rgb2rgb.c
---- MPlayer-1.0pre6a_old/postproc/rgb2rgb.c 2004-10-21 20:55:20.000000000 +0900
-+++ MPlayer-1.0pre6a/postproc/rgb2rgb.c 2005-03-21 15:39:23.779136992 +0900
-@@ -146,43 +146,43 @@
-
- //Note: we have C, MMX, MMX2, 3DNOW version therse no 3DNOW+MMX2 one
- //Plain C versions
--#undef HAVE_MMX
--#undef HAVE_MMX2
--#undef HAVE_3DNOW
--#undef HAVE_SSE2
--#define RENAME(a) a ## _C
--#include "rgb2rgb_template.c"
--
--#if defined(ARCH_X86) || defined(ARCH_X86_64)
--
--//MMX versions
--#undef RENAME
--#define HAVE_MMX
--#undef HAVE_MMX2
--#undef HAVE_3DNOW
--#undef HAVE_SSE2
--#define RENAME(a) a ## _MMX
--#include "rgb2rgb_template.c"
--
--//MMX2 versions
--#undef RENAME
--#define HAVE_MMX
--#define HAVE_MMX2
--#undef HAVE_3DNOW
--#undef HAVE_SSE2
--#define RENAME(a) a ## _MMX2
--#include "rgb2rgb_template.c"
-
- //3DNOW versions
--#undef RENAME
--#define HAVE_MMX
--#undef HAVE_MMX2
--#define HAVE_3DNOW
--#undef HAVE_SSE2
--#define RENAME(a) a ## _3DNOW
--#include "rgb2rgb_template.c"
--
--#endif //ARCH_X86 || ARCH_X86_64
-+// MMX2 versions
-+#if defined(HAVE_MMX2)
-+ #undef RENAME
-+ #define HAVE_MMX
-+ #define HAVE_MMX2
-+ #undef HAVE_3DNOW
-+ #undef HAVE_SSE2
-+ #define RENAME(a) a ## _MMX2
-+ #include "rgb2rgb_template.c"
-+#elif HAVE_3DNOW
-+ #undef RENAME
-+ #define HAVE_MMX
-+ #undef HAVE_MMX2
-+ #define HAVE_3DNOW
-+ #undef HAVE_SSE2
-+ #define RENAME(a) a ## _3DNOW
-+ #include "rgb2rgb_template.c"
-+//MMX versions
-+#elif defined(HAVE_MMX)
-+ #undef RENAME
-+ #define HAVE_MMX
-+ #undef HAVE_MMX2
-+ #undef HAVE_3DNOW
-+ #undef HAVE_SSE2
-+ #define RENAME(a) a ## _MMX
-+ #include "rgb2rgb_template.c"
-+#else
-+ #undef RENAME
-+ #undef HAVE_MMX
-+ #undef HAVE_MMX2
-+ #undef HAVE_3DNOW
-+ #undef HAVE_SSE2
-+ #define RENAME(a) a ## _C
-+ #include "rgb2rgb_template.c"
-+#endif
-
- /*
- rgb15->rgb16 Original by Strepto/Astral
-@@ -192,8 +192,7 @@
- */
-
- void sws_rgb2rgb_init(int flags){
--#if defined(ARCH_X86) || defined(ARCH_X86_64)
-- if(flags & SWS_CPU_CAPS_MMX2){
-+#if defined(HAVE_MMX2)
- rgb15to16= rgb15to16_MMX2;
- rgb15to24= rgb15to24_MMX2;
- rgb15to32= rgb15to32_MMX2;
-@@ -223,7 +222,7 @@
- interleaveBytes= interleaveBytes_MMX2;
- vu9_to_vu12= vu9_to_vu12_MMX2;
- yvu9_to_yuy2= yvu9_to_yuy2_MMX2;
-- }else if(flags & SWS_CPU_CAPS_3DNOW){
-+#elif defined(HAVE_3DNOW)
- rgb15to16= rgb15to16_3DNOW;
- rgb15to24= rgb15to24_3DNOW;
- rgb15to32= rgb15to32_3DNOW;
-@@ -253,7 +252,7 @@
- interleaveBytes= interleaveBytes_3DNOW;
- vu9_to_vu12= vu9_to_vu12_3DNOW;
- yvu9_to_yuy2= yvu9_to_yuy2_3DNOW;
-- }else if(flags & SWS_CPU_CAPS_MMX){
-+#elif defined(HAVE_MMX)
- rgb15to16= rgb15to16_MMX;
- rgb15to24= rgb15to24_MMX;
- rgb15to32= rgb15to32_MMX;
-@@ -283,9 +282,7 @@
- interleaveBytes= interleaveBytes_MMX;
- vu9_to_vu12= vu9_to_vu12_MMX;
- yvu9_to_yuy2= yvu9_to_yuy2_MMX;
-- }else
--#endif
-- {
-+#else
- rgb15to16= rgb15to16_C;
- rgb15to24= rgb15to24_C;
- rgb15to32= rgb15to32_C;
-@@ -315,7 +312,7 @@
- interleaveBytes= interleaveBytes_C;
- vu9_to_vu12= vu9_to_vu12_C;
- yvu9_to_yuy2= yvu9_to_yuy2_C;
-- }
-+#endif
- }
-
- /**
-diff -ur MPlayer-1.0pre6a_old/postproc/swscale_template.c MPlayer-1.0pre6a/postproc/swscale_template.c
---- MPlayer-1.0pre6a_old/postproc/swscale_template.c 2004-10-22 09:21:57.000000000 +0900
-+++ MPlayer-1.0pre6a/postproc/swscale_template.c 2005-03-21 16:06:21.531201296 +0900
-@@ -2334,7 +2334,11 @@
-
-
- :: "r" (src), "m" (dst), "m" (dstWidth), "m" (xInc>>16), "m" (xInc&0xFFFF)
-+#ifdef __PIC__
-+ : "%"REG_a, "%ecx", "%"REG_D, "%esi"
-+#else
- : "%"REG_a, "%"REG_b, "%ecx", "%"REG_D, "%esi"
-+#endif
- );
- #ifdef HAVE_MMX2
- } //if MMX2 can't be used
-@@ -2513,7 +2517,11 @@
-
- :: "m" (src1), "m" (dst), "m" ((long)dstWidth), "m" ((long)(xInc>>16)), "m" ((xInc&0xFFFF)),
- "r" (src2)
-+#ifdef __PIC__
-+ : "%"REG_a, "%ecx", "%"REG_D, "%esi"
-+#else
- : "%"REG_a, "%"REG_b, "%ecx", "%"REG_D, "%esi"
-+#endif
- );
- #ifdef HAVE_MMX2
- } //if MMX2 can't be used
-diff -ur MPlayer-1.0pre6a_old/postproc/yuv2rgb.c MPlayer-1.0pre6a/postproc/yuv2rgb.c
---- MPlayer-1.0pre6a_old/postproc/yuv2rgb.c 2004-10-21 20:55:20.000000000 +0900
-+++ MPlayer-1.0pre6a/postproc/yuv2rgb.c 2005-03-21 15:37:23.791377904 +0900
-@@ -182,23 +182,25 @@
- 0x0602060206020602LL,
- 0x0004000400040004LL,};
-
--#undef HAVE_MMX
-+#ifdef HAVE_MMX
-+ //MMX versions
-+ #undef RENAME
-+ #define HAVE_MMX
-+ #undef HAVE_MMX2
-+ #undef HAVE_3DNOW
-+ #define RENAME(a) a ## _MMX
-+ #include "yuv2rgb_template.c"
-+#endif
-
--//MMX versions
--#undef RENAME
--#define HAVE_MMX
--#undef HAVE_MMX2
--#undef HAVE_3DNOW
--#define RENAME(a) a ## _MMX
--#include "yuv2rgb_template.c"
--
--//MMX2 versions
--#undef RENAME
--#define HAVE_MMX
--#define HAVE_MMX2
--#undef HAVE_3DNOW
--#define RENAME(a) a ## _MMX2
--#include "yuv2rgb_template.c"
-+#ifdef HAVE_MMX2
-+ //MMX2 versions
-+ #undef RENAME
-+ #define HAVE_MMX
-+ #define HAVE_MMX2
-+ #undef HAVE_3DNOW
-+ #define RENAME(a) a ## _MMX2
-+ #include "yuv2rgb_template.c"
-+#endif
-
- #endif // CAN_COMPILE_X86_ASM
-
-@@ -581,6 +583,7 @@
- SwsFunc yuv2rgb_get_func_ptr (SwsContext *c)
- {
- #if defined(ARCH_X86) || defined(ARCH_X86_64)
-+#ifdef HAVE_MMX2
- if(c->flags & SWS_CPU_CAPS_MMX2){
- switch(c->dstFormat){
- case IMGFMT_BGR32: return yuv420_rgb32_MMX2;
-@@ -589,6 +592,8 @@
- case IMGFMT_BGR15: return yuv420_rgb15_MMX2;
- }
- }
-+#endif
-+#ifdef HAVE_MMX
- if(c->flags & SWS_CPU_CAPS_MMX){
- switch(c->dstFormat){
- case IMGFMT_BGR32: return yuv420_rgb32_MMX;
-@@ -598,6 +603,7 @@
- }
- }
- #endif
-+#endif
- #ifdef HAVE_MLIB
- {
- SwsFunc t= yuv2rgb_init_mlib(c);
---- MPlayer-1.0pre6a/configure~ 2005-03-21 17:04:53.223342944 +0900
-+++ MPlayer-1.0pre6a/configure 2005-03-21 17:09:53.285726528 +0900
-@@ -6370,21 +6370,6 @@
- fi
- fi
-
--echocheck "compiler support for -fno-PIC"
--if x86; then
--cat > $TMPC <<EOF
--int main(void) { return 0; }
--EOF
--if cc_check -fno-PIC ; then
-- CFLAGS="-fno-PIC $CFLAGS"
-- echores "yes"
--else
-- echores "no"
--fi
--else
-- echores "only used for x86"
--fi
--
- echocheck "ftello()"
- # if we don't have ftello use the osdep/ compatibility module
- cat > $TMPC << EOF
---- MPlayer-1.0pre6a/libvo/osd.c.old 2005-03-21 20:41:30.580451920 +0000
-+++ MPlayer-1.0pre6a/libvo/osd.c 2005-03-21 20:41:15.274778736 +0000
-@@ -45,10 +45,6 @@
- #endif
- #endif //CAN_COMPILE_X86_ASM
-
--#undef HAVE_MMX
--#undef HAVE_MMX2
--#undef HAVE_3DNOW
--
- #ifndef CAN_COMPILE_X86_ASM
-
- #ifdef COMPILE_C
-@@ -61,44 +57,46 @@
-
- #else
-
--//X86 noMMX versions
--#ifdef COMPILE_C
--#undef RENAME
--#undef HAVE_MMX
--#undef HAVE_MMX2
--#undef HAVE_3DNOW
--#define RENAME(a) a ## _X86
--#include "osd_template.c"
--#endif
--
--//MMX versions
--#ifdef COMPILE_MMX
--#undef RENAME
--#define HAVE_MMX
--#undef HAVE_MMX2
--#undef HAVE_3DNOW
--#define RENAME(a) a ## _MMX
--#include "osd_template.c"
--#endif
--
--//MMX2 versions
--#ifdef COMPILE_MMX2
--#undef RENAME
--#define HAVE_MMX
--#define HAVE_MMX2
--#undef HAVE_3DNOW
--#define RENAME(a) a ## _MMX2
--#include "osd_template.c"
--#endif
--
--//3DNOW versions
--#ifdef COMPILE_3DNOW
--#undef RENAME
--#define HAVE_MMX
--#undef HAVE_MMX2
--#define HAVE_3DNOW
--#define RENAME(a) a ## _3DNow
--#include "osd_template.c"
-+#if defined(HAVE_MMX2)
-+ //MMX2 versions
-+ #ifdef COMPILE_MMX2
-+ #undef RENAME
-+ #define HAVE_MMX
-+ #define HAVE_MMX2
-+ #undef HAVE_3DNOW
-+ #define RENAME(a) a ## _MMX2
-+ #include "osd_template.c"
-+ #endif
-+#elif defined(HAVE_3DNOW)
-+ //3DNOW versions
-+ #ifdef COMPILE_3DNOW
-+ #undef RENAME
-+ #define HAVE_MMX
-+ #undef HAVE_MMX2
-+ #define HAVE_3DNOW
-+ #define RENAME(a) a ## _3DNow
-+ #include "osd_template.c"
-+ #endif
-+#elif defined(HAVE_MMX)
-+ //MMX versions
-+ #ifdef COMPILE_MMX
-+ #undef RENAME
-+ #define HAVE_MMX
-+ #undef HAVE_MMX2
-+ #undef HAVE_3DNOW
-+ #define RENAME(a) a ## _MMX
-+ #include "osd_template.c"
-+ #endif
-+#else
-+ //X86 noMMX versions
-+ #ifdef COMPILE_C
-+ #undef RENAME
-+ #undef HAVE_MMX
-+ #undef HAVE_MMX2
-+ #undef HAVE_3DNOW
-+ #define RENAME(a) a ## _X86
-+ #include "osd_template.c"
-+ #endif
- #endif
-
- #endif //CAN_COMPILE_X86_ASM
-@@ -106,24 +104,25 @@
- void vo_draw_alpha_yv12(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride){
- #ifdef RUNTIME_CPUDETECT
- #ifdef CAN_COMPILE_X86_ASM
-+#if defined(HAVE_MMX2)
- // ordered by speed / fastest first
-- if(gCpuCaps.hasMMX2)
- vo_draw_alpha_yv12_MMX2(w, h, src, srca, srcstride, dstbase, dststride);
-- else if(gCpuCaps.has3DNow)
-+#elif defined(HAVE_3DNOW)
- vo_draw_alpha_yv12_3DNow(w, h, src, srca, srcstride, dstbase, dststride);
-- else if(gCpuCaps.hasMMX)
-+#elif defined(HAVE_MMX)
- vo_draw_alpha_yv12_MMX(w, h, src, srca, srcstride, dstbase, dststride);
-- else
-+#else
- vo_draw_alpha_yv12_X86(w, h, src, srca, srcstride, dstbase, dststride);
-+#endif
- #else
- vo_draw_alpha_yv12_C(w, h, src, srca, srcstride, dstbase, dststride);
- #endif
- #else //RUNTIME_CPUDETECT
--#ifdef HAVE_MMX2
-+#if defined(HAVE_MMX2)
- vo_draw_alpha_yv12_MMX2(w, h, src, srca, srcstride, dstbase, dststride);
--#elif defined (HAVE_3DNOW)
-+#elif defined(HAVE_3DNOW)
- vo_draw_alpha_yv12_3DNow(w, h, src, srca, srcstride, dstbase, dststride);
--#elif defined (HAVE_MMX)
-+#elif defined(HAVE_MMX)
- vo_draw_alpha_yv12_MMX(w, h, src, srca, srcstride, dstbase, dststride);
- #elif defined(ARCH_X86) || defined(ARCH_X86_64)
- vo_draw_alpha_yv12_X86(w, h, src, srca, srcstride, dstbase, dststride);
-@@ -137,23 +135,24 @@
- #ifdef RUNTIME_CPUDETECT
- #ifdef CAN_COMPILE_X86_ASM
- // ordered by speed / fastest first
-- if(gCpuCaps.hasMMX2)
-+#if defined(HAVE_MMX2)
- vo_draw_alpha_yuy2_MMX2(w, h, src, srca, srcstride, dstbase, dststride);
-- else if(gCpuCaps.has3DNow)
-+#elif defined(HAVE_3DNOW)
- vo_draw_alpha_yuy2_3DNow(w, h, src, srca, srcstride, dstbase, dststride);
-- else if(gCpuCaps.hasMMX)
-+#elif defined(HAVE_MMX)
- vo_draw_alpha_yuy2_MMX(w, h, src, srca, srcstride, dstbase, dststride);
-- else
-+#else
- vo_draw_alpha_yuy2_X86(w, h, src, srca, srcstride, dstbase, dststride);
-+#endif
- #else
- vo_draw_alpha_yuy2_C(w, h, src, srca, srcstride, dstbase, dststride);
- #endif
- #else //RUNTIME_CPUDETECT
--#ifdef HAVE_MMX2
-+#if defined(HAVE_MMX2)
- vo_draw_alpha_yuy2_MMX2(w, h, src, srca, srcstride, dstbase, dststride);
--#elif defined (HAVE_3DNOW)
-+#elif defined(HAVE_3DNOW)
- vo_draw_alpha_yuy2_3DNow(w, h, src, srca, srcstride, dstbase, dststride);
--#elif defined (HAVE_MMX)
-+#elif defined(HAVE_MMX)
- vo_draw_alpha_yuy2_MMX(w, h, src, srca, srcstride, dstbase, dststride);
- #elif defined(ARCH_X86) || defined(ARCH_X86_64)
- vo_draw_alpha_yuy2_X86(w, h, src, srca, srcstride, dstbase, dststride);
-@@ -167,23 +166,24 @@
- #ifdef RUNTIME_CPUDETECT
- #ifdef CAN_COMPILE_X86_ASM
- // ordered by speed / fastest first
-- if(gCpuCaps.hasMMX2)
-+#if defined(HAVE_MMX2)
- vo_draw_alpha_uyvy_MMX2(w, h, src, srca, srcstride, dstbase, dststride);
-- else if(gCpuCaps.has3DNow)
-+#elif defined(HAVE_3DNOW)
- vo_draw_alpha_uyvy_3DNow(w, h, src, srca, srcstride, dstbase, dststride);
-- else if(gCpuCaps.hasMMX)
-+#elif defined(HAVE_MMX)
- vo_draw_alpha_uyvy_MMX(w, h, src, srca, srcstride, dstbase, dststride);
-- else
-+#else
- vo_draw_alpha_uyvy_X86(w, h, src, srca, srcstride, dstbase, dststride);
-+#endif
- #else
- vo_draw_alpha_uyvy_C(w, h, src, srca, srcstride, dstbase, dststride);
- #endif
- #else //RUNTIME_CPUDETECT
--#ifdef HAVE_MMX2
-+#if defined(HAVE_MMX2)
- vo_draw_alpha_uyvy_MMX2(w, h, src, srca, srcstride, dstbase, dststride);
--#elif defined (HAVE_3DNOW)
-+#elif defined(HAVE_3DNOW)
- vo_draw_alpha_uyvy_3DNow(w, h, src, srca, srcstride, dstbase, dststride);
--#elif defined (HAVE_MMX)
-+#elif defined(HAVE_MMX)
- vo_draw_alpha_uyvy_MMX(w, h, src, srca, srcstride, dstbase, dststride);
- #elif defined(ARCH_X86) || defined(ARCH_X86_64)
- vo_draw_alpha_uyvy_X86(w, h, src, srca, srcstride, dstbase, dststride);
-@@ -197,23 +197,24 @@
- #ifdef RUNTIME_CPUDETECT
- #ifdef CAN_COMPILE_X86_ASM
- // ordered by speed / fastest first
-- if(gCpuCaps.hasMMX2)
-+#if defined(HAVE_MMX2)
- vo_draw_alpha_rgb24_MMX2(w, h, src, srca, srcstride, dstbase, dststride);
-- else if(gCpuCaps.has3DNow)
-+#elif defined(HAVE_3DNOW)
- vo_draw_alpha_rgb24_3DNow(w, h, src, srca, srcstride, dstbase, dststride);
-- else if(gCpuCaps.hasMMX)
-+#elif defined(HAVE_MMX)
- vo_draw_alpha_rgb24_MMX(w, h, src, srca, srcstride, dstbase, dststride);
-- else
-+#else
- vo_draw_alpha_rgb24_X86(w, h, src, srca, srcstride, dstbase, dststride);
-+#endif
- #else
- vo_draw_alpha_rgb24_C(w, h, src, srca, srcstride, dstbase, dststride);
- #endif
- #else //RUNTIME_CPUDETECT
--#ifdef HAVE_MMX2
-+#if defined(HAVE_MMX2)
- vo_draw_alpha_rgb24_MMX2(w, h, src, srca, srcstride, dstbase, dststride);
--#elif defined (HAVE_3DNOW)
-+#elif defined(HAVE_3DNOW)
- vo_draw_alpha_rgb24_3DNow(w, h, src, srca, srcstride, dstbase, dststride);
--#elif defined (HAVE_MMX)
-+#elif defined(HAVE_MMX)
- vo_draw_alpha_rgb24_MMX(w, h, src, srca, srcstride, dstbase, dststride);
- #elif defined(ARCH_X86) || defined(ARCH_X86_64)
- vo_draw_alpha_rgb24_X86(w, h, src, srca, srcstride, dstbase, dststride);
-@@ -227,19 +228,20 @@
- #ifdef RUNTIME_CPUDETECT
- #ifdef CAN_COMPILE_X86_ASM
- // ordered by speed / fastest first
-- if(gCpuCaps.hasMMX2)
-+#if defined(HAVE_MMX2)
- vo_draw_alpha_rgb32_MMX2(w, h, src, srca, srcstride, dstbase, dststride);
-- else if(gCpuCaps.has3DNow)
-+#elif defined(HAVE_3DNOW)
- vo_draw_alpha_rgb32_3DNow(w, h, src, srca, srcstride, dstbase, dststride);
-- else if(gCpuCaps.hasMMX)
-+#elif defined(HAVE_MMX)
- vo_draw_alpha_rgb32_MMX(w, h, src, srca, srcstride, dstbase, dststride);
-- else
-+#else
- vo_draw_alpha_rgb32_X86(w, h, src, srca, srcstride, dstbase, dststride);
-+#endif
- #else
- vo_draw_alpha_rgb32_C(w, h, src, srca, srcstride, dstbase, dststride);
- #endif
- #else //RUNTIME_CPUDETECT
--#ifdef HAVE_MMX2
-+#if defined(HAVE_MMX2)
- vo_draw_alpha_rgb32_MMX2(w, h, src, srca, srcstride, dstbase, dststride);
- #elif defined (HAVE_3DNOW)
- vo_draw_alpha_rgb32_3DNow(w, h, src, srca, srcstride, dstbase, dststride);
-@@ -272,23 +274,24 @@
- #ifdef RUNTIME_CPUDETECT
- #ifdef CAN_COMPILE_X86_ASM
- // ordered per speed fasterst first
-- if(gCpuCaps.hasMMX2)
-+#if defined(HAVE_MMX2)
- mp_msg(MSGT_OSD,MSGL_INFO,"Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay\n");
-- else if(gCpuCaps.has3DNow)
-+#elif defined(HAVE_3DNOW)
- mp_msg(MSGT_OSD,MSGL_INFO,"Using MMX (with tiny bit 3DNow) Optimized OnScreenDisplay\n");
-- else if(gCpuCaps.hasMMX)
-+#elif defined(HAVE_MMX)
- mp_msg(MSGT_OSD,MSGL_INFO,"Using MMX Optimized OnScreenDisplay\n");
-- else
-+#else
- mp_msg(MSGT_OSD,MSGL_INFO,"Using X86 Optimized OnScreenDisplay\n");
-+#endif
- #else
- mp_msg(MSGT_OSD,MSGL_INFO,"Using Unoptimized OnScreenDisplay\n");
- #endif
- #else //RUNTIME_CPUDETECT
--#ifdef HAVE_MMX2
-+#if defined(HAVE_MMX2)
- mp_msg(MSGT_OSD,MSGL_INFO,"Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay\n");
--#elif defined (HAVE_3DNOW)
-+#elif defined(HAVE_3DNOW)
- mp_msg(MSGT_OSD,MSGL_INFO,"Using MMX (with tiny bit 3DNow) Optimized OnScreenDisplay\n");
--#elif defined (HAVE_MMX)
-+#elif defined(HAVE_MMX)
- mp_msg(MSGT_OSD,MSGL_INFO,"Using MMX Optimized OnScreenDisplay\n");
- #elif defined(ARCH_X86) || defined(ARCH_X86_64)
- mp_msg(MSGT_OSD,MSGL_INFO,"Using X86 Optimized OnScreenDisplay\n");
+++ /dev/null
-diff -u -r1.63 aviheader.c
---- libmpdemux/aviheader.c 20 Oct 2004 02:13:33 -0000 1.63
-+++ libmpdemux/aviheader.c 29 Dec 2004 13:43:19 -0000
-@@ -44,15 +44,25 @@
- return 0;
- }
-
--/*
-+/**
- * Simple quicksort for AVIINDEXENTRYs
-+ * To avoid too deep recursion, the bigger part is handled iteratively,
-+ * thus limiting recursion to log2(n) levels.
-+ * The pivot element is randomized to "even out" otherwise extreme cases.
- */
- static void avi_idx_quicksort(AVIINDEXENTRY *idx, int from, int to)
- {
- AVIINDEXENTRY temp;
-- int lo = to;
-- int hi = from;
-- off_t pivot_ofs = AVI_IDX_OFFSET(&idx[(from + to) / 2]);
-+ int lo;
-+ int hi;
-+ off_t pivot_ofs;
-+ int pivot_idx;
-+ while (from < to) {
-+ pivot_idx = from;
-+ pivot_idx += rand() % (to - from + 1);
-+ pivot_ofs = AVI_IDX_OFFSET(&idx[pivot_idx]);
-+ lo = to;
-+ hi = from;
- do {
- while(pivot_ofs < AVI_IDX_OFFSET(&idx[lo])) lo--;
- while(pivot_ofs > AVI_IDX_OFFSET(&idx[hi])) hi++;
-@@ -65,8 +75,14 @@
- lo--; hi++;
- }
- } while (lo >= hi);
-- if (from < lo) avi_idx_quicksort(idx, from, lo);
-- if (to > hi) avi_idx_quicksort(idx, hi, to);
-+ if ((lo - from) < (to - hi)) {
-+ avi_idx_quicksort(idx, from, lo);
-+ from = hi;
-+ } else {
-+ avi_idx_quicksort(idx, hi, to);
-+ to = lo;
-+ }
-+ }
- }
-
- void read_avi_header(demuxer_t *demuxer,int index_mode){
-
+++ /dev/null
-Index: configure
-===================================================================
-RCS file: /cvsroot/mplayer/main/configure,v
-retrieving revision 1.991
-diff -u -r1.991 configure
---- configure 4 May 2005 17:02:14 -0000 1.991
-+++ configure 9 May 2005 11:22:59 -0000
-@@ -608,7 +608,7 @@
- cc_version="v. ?.??, bad"
- cc_verc_fail=yes
- ;;
-- 2.95.[2-9]|2.95.[2-9][-.]*|3.[0-9]|3.[0-9].[0-9])
-+ 2.95.[2-9]|2.95.[2-9][-.]*|[3-4].*)
- _cc_major=`echo $cc_version | cut -d '.' -f 1`
- _cc_minor=`echo $cc_version | cut -d '.' -f 2`
- _cc_mini=`echo $cc_version | cut -d '.' -f 3`
+++ /dev/null
---- libao2/ao_jack.c_old 2005-02-13 20:59:19.789628272 +0000
-+++ libao2/ao_jack.c 2005-02-13 20:59:32.437705472 +0000
-@@ -103,7 +103,7 @@
- m = 1;
- break;
- default:
-- format = AFMT_S16_LE;
-+ format = AFMT_S16_NE;
- bits_per_sample = 16;
- m = 2;
- break;
+++ /dev/null
---- help/help_mp-nl.h_old 2005-01-23 05:30:49.467930992 +0900
-+++ help/help_mp-nl.h 2005-01-23 05:31:01.400117024 +0900
-@@ -303,7 +303,7 @@
- " nadeel hiervan is dat voor een gegeven bitrate het uiteindelijke\n"\
- " bestand groter zal zijn dan in de normale mode, de kwaliteit\n"\
- " kan ook lager zijn.\n"\
--" Waarschuwing: Met de huidige versie kunnen de "snelle" presets hogere bitrates geven\n"\
-+" Waarschuwing: Met de huidige versie kunnen de \"snelle\" presets hogere bitrates geven\n"\
- " dan de normale, tragere presets.\n"\
- "\n"\
- " \"cbr\" - Wanneer je de ABR mode (zie hoger) gebruikt en 1 van de volgende\n"\
+++ /dev/null
-# Copyright 1999-2005 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/mplayer-1.0_pre6-r4.ebuild,v 1.9 2005/10/31 09:47:21 flameeyes Exp $
-
-inherit eutils flag-o-matic kernel-mod
-
-RESTRICT="nostrip"
-IUSE="3dfx 3dnow 3dnowext aalib alsa altivec arts avi bidi debug dga doc dts dvb cdparanoia directfb dvd dv dvdread edl encode esd fbcon gif ggi gtk i8x0 ipv6 jack joystick jpeg libcaca lirc live lzo mad matroska matrox mpeg mmx mmxext mythtv nas nls nvidia oggvorbis opengl oss png real rtc samba sdl sse sse2 svga tga theora truetype v4l v4l2 X xanim xinerama xmms xv xvid xvmc"
-
-BLUV=1.4
-SVGV=1.9.17
-
-# Handle PREversions as well
-MY_PV="${PV/_/}"
-MY_P="MPlayer-${MY_PV}a"
-S="${WORKDIR}/${MY_P}"
-SRC_URI="mirror://mplayer/releases/${MY_P}.tar.bz2
- 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
- svga? ( http://mplayerhq.hu/~alex/svgalib_helper-${SVGV}-mplayer.tar.bz2 )
- gtk? ( mirror://mplayer/Skin/Blue-${BLUV}.tar.bz2 )"
-
-# Only install Skin if GUI should be build (gtk as USE flag)
-DESCRIPTION="Media Player for Linux"
-HOMEPAGE="http://www.mplayerhq.hu/"
-
-# 'encode' in USE for MEncoder.
-RDEPEND="xvid? ( >=media-libs/xvid-0.9.0 )
- x86? (
- avi? ( >=media-libs/win32codecs-20040916 )
- real? ( >=media-video/realplayer-10.0.3 )
- )
- aalib? ( media-libs/aalib )
- alsa? ( media-libs/alsa-lib )
- arts? ( kde-base/arts )
- bidi? ( dev-libs/fribidi )
- cdparanoia? ( media-sound/cdparanoia )
- dga? ( virtual/x11 )
- directfb? ( dev-libs/DirectFB )
- dts? ( media-libs/libdts )
- dvd? ( dvdread? ( media-libs/libdvdread ) )
- encode? (
- media-sound/lame
- dv? ( >=media-libs/libdv-0.9.5 )
- )
- esd? ( media-sound/esound )
- gif? ( || ( media-libs/giflib media-libs/libungif ) )
- ggi? ( media-libs/libggi )
- gtk? (
- media-libs/libpng
- virtual/x11
- =x11-libs/gtk+-1.2*
- =dev-libs/glib-1.2*
- )
- jpeg? ( media-libs/jpeg )
- libcaca? ( media-libs/libcaca )
- lirc? ( app-misc/lirc )
- lzo? ( dev-libs/lzo )
- mad? ( media-libs/libmad )
- matroska? ( >=media-libs/libmatroska-0.7.0 )
- mpeg? ( media-libs/faad2 )
- nas? ( media-libs/nas )
- nls? ( sys-devel/gettext )
- oggvorbis? ( media-libs/libvorbis )
- opengl? ( virtual/opengl )
- png? ( media-libs/libpng )
- samba? ( >=net-fs/samba-2.2.8a )
- sdl? ( media-libs/libsdl )
- svga? ( media-libs/svgalib )
- !ia64? (
- theora? ( media-libs/libtheora )
- live? ( >=media-plugins/live-2004.07.20 )
- )
- truetype? ( >=media-libs/freetype-2.1 )
- xinerama? ( virtual/x11 )
- jack? ( >=media-libs/bio2jack-0.4 )
- xmms? ( media-sound/xmms )
- xanim? ( >=media-video/xanim-2.80.1-r4 )
- sys-libs/ncurses"
-
-DEPEND="${RDEPEND}
- app-arch/unzip"
-
-SLOT="0"
-LICENSE="GPL-2"
-#KEYWORDS="~x86 ~ppc ~alpha ~amd64 ~ia64 ~hppa ~sparc"
-#agriffis - uncomment this when ia64 is ready - Chris
-KEYWORDS="x86 ppc alpha amd64 hppa sparc ppc64"
-
-# ecpu_check
-# Usage:
-#
-# ecpu_check array_of_cpu_flags
-#
-# array_of_cpu_flags - An array of cpu flags to check against USE flags
-#
-# Checks user USE related cpu flags against /proc/cpuinfo. If user enables a
-# cpu flag that is not supported in their processor flags, it will warn the
-# user if CROSSCOMPILE is not set to 1 ( because cross compile users are
-# obviously using different cpu flags than their own cpu ). Examples:
-#
-# CPU_FLAGS=(mmx mmx2 sse sse2)
-# ecpu_check CPU_FLAGS
-# Chris White <chriswhite@gentoo.org> (03 Feb 2005)
-
-ecpu_check() {
- # Think about changing below to: if [ "${CROSSCOMPILE}" -ne 1 -a -e "/proc/cpuinfo" ]
- # and dropping the else if you do not plan on adding anything to that
- # empty block ....
- # PS: also try to add some quoting, and consider rather using ${foo} than $foo ...
- if [ "${CROSSCOMPILE}" != "1" -a -e "/proc/cpuinfo" ]
- then
- CPU_FLAGS=${1}
- USER_CPU=`grep "flags" /proc/cpuinfo`
-
- for flags in `seq 1 ${#CPU_FLAGS[@]}`
- do
- if has ${CPU_FLAGS[${flags} - 1]} ${USER_CPU} && ! has ${CPU_FLAGS[${flags} - 1]} ${USE}
- then
- ewarn "Your system is ${CPU_FLAGS[${flags} - 1]} capable but you don't have it enabled!"
- ewarn "You might be cross compiling (in this case set CROSSCOMPILE to 1 to disable this warning."
- fi
-
- if ! has ${CPU_FLAGS[${flags} - 1]} ${USER_CPU} && has ${CPU_FLAGS[${flags} -1]} ${USE}
- then
- ewarn "You have ${CPU_FLAGS[${flags} - 1]} support enabled but your processor doesn't"
- ewarn "Seem to support it! You might be cross compiling or do not have /proc filesystem"
- ewarn "enabled. If either is the case, set CROSSCOMPILE to 1 to disable this warning."
- fi
- done
- fi
-}
-
-pkg_setup() {
- if use real && use x86; then
- REALLIBDIR="/opt/RealPlayer/codecs"
- fi
-}
-
-src_unpack() {
-
- unpack ${MY_P}.tar.bz2 \
- font-arial-iso-8859-1.tar.bz2 font-arial-iso-8859-2.tar.bz2 \
- font-arial-cp1250.tar.bz2
-
- use svga && unpack svgalib_helper-${SVGV}-mplayer.tar.bz2
-
- use gtk && unpack Blue-${BLUV}.tar.bz2
-
- cd ${S}
-
- # Custom CFLAGS
- epatch ${FILESDIR}/${P}-configure.patch
- sed -e 's:CFLAGS="custom":CFLAGS=${CFLAGS}:' -i configure
-
- #adds mythtv support to mplayer
- use mythtv && epatch ${FILESDIR}/mplayer-mythtv.patch
-
- # Fix hppa compilation
- [ "${ARCH}" = "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
-
- # Remove kernel-2.6 workaround as the problem it works around is
- # fixed, and the workaround breaks sparc
- use sparc && sed -i 's:#define __KERNEL__::' osdep/kerneltwosix.h
- epatch ${FILESDIR}/${PN}-1.0_pre6-ppc64.patch
-
- # Fix bug #76429
- epatch ${FILESDIR}/${PN}-nl.patch
-
- # fixes bug #78337
- epatch ${FILESDIR}/${PN}-avi_crash.patch
-
- # fixes mplayer not seeing gcc 3.4-blahetc type
- # gcc versions. Half stolen from toolchain-funcs
- epatch ${FILESDIR}/${PN}-gcc_detection.patch
-
- #fixes endian issues with jack output
- epatch ${FILESDIR}/${PN}-jack.patch
-
- # fixes the real codecs names (there's no .so.6.0's at
- # the end anymore ) and add 3gp (nokia) video codec support
- # per bug #85642
- epatch ${FILESDIR}/${P}-codecs.patch
-
- # two security fixes, see #89277
- epatch ${FILESDIR}/rtsp_fix_20050415.diff
- epatch ${FILESDIR}/mmst_fix_20050415.diff
-
-}
-
-linguas_warn() {
- ewarn "Language ${LANG[0]} or ${LANG_CC} not avaliable"
- ewarn "Language set to English"
- ewarn "If this is a mistake, please set the"
- ewarn "First LINGUAS language to one of the following"
- ewarn
- ewarn "bg - Bulgarian"
- ewarn "cz - Czech"
- ewarn "de - German"
- ewarn "dk - Danish"
- ewarn "el - Greek"
- ewarn "en - English"
- ewarn "es - Spanish"
- ewarn "fr - French"
- ewarn "hu - Hungarian"
- ewarn "ja - Japanese"
- ewarn "ko - Korean"
- ewarn "mk - FYRO Macedonian"
- ewarn "nl - Dutch"
- ewarn "no - Norwegian"
- ewarn "pl - Polish"
- ewarn "pt_BR - Portuguese - Brazil"
- ewarn "ro - Romanian"
- ewarn "ru - Russian"
- ewarn "sk - Slovak"
- ewarn "tr - Turkish"
- ewarn "uk - Ukranian"
- ewarn "zh_CN - Chinese - China"
- ewarn "zh_TW - Chinese - Taiwan"
- export LINGUAS="en ${LINGUAS}"
-}
-
-src_compile() {
-
- # have fun with LINGUAS variable
- if [[ -n $LINGUAS ]]
- then
- # LINGUAS has stuff in it, start the logic
- LANG=( $LINGUAS )
- if [ -e ${S}/help/help_mp-${LANG[0]}.h ]
- then
- einfo "Setting MPlayer messages to language: ${LANG[0]}"
- else
- LANG_CC=${LANG[0]}
- if [ ${#LANG_CC} -ge 2 ]
- then
- LANG_CC=${LANG_CC:0:2}
- if [ -e ${S}/help/help_mp-${LANG_CC}.h ]
- then
- einfo "Setting MPlayer messages to language ${LANG_CC}"
- export LINGUAS="${LANG_CC} ${LINGUAS}"
- else
- linguas_warn
- fi
- else
- linguas_warn
- fi
- fi
- else
- # sending blank LINGUAS, make it default to en
- einfo "No LINGUAS given, defaulting to English"
- export LINGUAS="en ${LINGUAS}"
- fi
-
- # check cpu flags
- if use x86
- then
- CPU_FLAGS=(3dnow 3dnowext mmx sse sse2 mmxext)
- ecpu_check CPU_FLAGS
- fi
-
- # let's play the filtration game! MPlayer hates on all!
- strip-flags
-
- #add -frename-registers per bug #75960
- append-flags -frename-registers
-
- # ugly optimizations cause MPlayer to cry on x86 systems!
- if use x86 ; then
- replace-flags -O0 -O2
- replace-flags -O3 -O2
- filter-flags -fPIC -fPIE
- fi
-
- local myconf=
- ################
- #Optional features#
- ###############
- myconf="${myconf} $(use_enable bidi fribidi)"
- myconf="${myconf} $(use_enable cdparanoia)"
- if use dvd; then
- myconf="${myconf} $(use_enable dvdread) $(use_enable !dvdread mpdvdkit)"
- else
- myconf="${myconf} --disable-dvdread --disable-mpdvdkit"
- fi
- myconf="${myconf} $(use_enable edl)"
-
- if use encode ; then
- myconf="${myconf} --enable-mencoder $(use_enable dv libdv)"
- else
- myconf="${myconf} --disable-mencoder --disable-libdv"
- fi
-
- myconf="${myconf} $(use_enable gtk gui)"
-
- if use !gtk && use !X && use !xv && use !xinerama; then
- myconf="${myconf} --disable-gui --disable-x11 --disable-xv --disable-xmga --disable-xinerama --disable-vm --disable-xvmc"
- else
- #note we ain't touching --enable-vm. That should be locked down in the future.
- myconf="${myconf} --enable-x11 $(use_enable xinerama) $(use_enable xv) $(use_enable gtk gui)"
- fi
-
- # this looks like a hack, but the
- # --enable-dga needs a paramter, but there's no surefire
- # way to tell what it is.. so I'm letting MPlayer decide
- # the enable part
- use !dga && myconf="${myconf} --disable-dga"
-
- # disable png *only* if gtk && png aren't on
- if use png || use gtk; then
- myconf="${myconf} --enable-png"
- else
- myconf="${myconf} --disable-png"
- fi
- myconf="${myconf} $(use_enable ipv6 inet6)"
- myconf="${myconf} $(use_enable joystick)"
- myconf="${myconf} $(use_enable lirc)"
- if use ia64
- then
- myconf="${myconf} --disable-live"
- else
- myconf="${myconf} $(use_enable live)"
- fi
- myconf="${myconf} $(use_enable rtc)"
- myconf="${myconf} $(use_enable samba smb)"
- myconf="${myconf} $(use_enable truetype freetype)"
- myconf="${myconf} $(use_enable v4l tv-v4l)"
- myconf="${myconf} $(use_enable v4l2 tv-v4l2)"
- myconf="${myconf} $(use_enable jack)"
-
- #########
- # Codecs #
- ########
- myconf="${myconf} --disable-divx4linux"
- myconf="${myconf} $(use_enable gif)"
- myconf="${myconf} $(use_enable jpeg)"
- #myconf="${myconf} $(use_enable ladspa)"
- myconf="${myconf} $(use_enable dts libdts)"
- myconf="${myconf} $(use_enable lzo liblzo)"
- myconf="${myconf} $(use_enable matroska internal-matroska)"
- myconf="${myconf} $(use_enable mpeg external-faad) $(use_enable !mpeg internal-faad)"
- myconf="${myconf} $(use_enable oggvorbis vorbis)"
- if use ia64; then
- myconf="${myconf} --disable-theora"
- else
- myconf="${myconf} $(use_enable theora)"
- fi
- myconf="${myconf} $(use_enable xmms)"
- myconf="${myconf} $(use_enable xvid)"
- use x86 && myconf="${myconf} $(use_enable real)"
- use x86 && myconf="${myconf} $(use_enable avi win32)"
-
- #############
- # Video Output #
- #############
- myconf="${myconf} $(use_enable 3dfx)"
- if use 3dfx; then
- myconf="${myconf} --enable-tdfxvid"
- else
- myconf="${myconf} --disable-tdfxvid"
- fi
- if use fbcon && use 3dfx; then
- myconf="${myconf} --enable-tdfxfb"
- else
- myconf="${myconf} --disable-tdfxfb"
- fi
-
- if use dvb ; then
- myconf="${myconf} --enable-dvbhead --with-dvbincdir=/usr/src/linux/include"
- else
- myconf="${myconf} --disable-dvbhead"
- fi
-
- myconf="${myconf} $(use_enable aalib aa)"
- myconf="${myconf} $(use_enable directfb)"
- myconf="${myconf} $(use_enable fbcon fbdev)"
- myconf="${myconf} $(use_enable ggi)"
- myconf="${myconf} $(use_enable libcaca caca)"
- if use matrox && use X; then
- myconf="${myconf} $(use_enable matrox xmga)"
- fi
- myconf="${myconf} $(use_enable matrox mga)"
- myconf="${myconf} $(use_enable opengl gl)"
- myconf="${myconf} $(use_enable sdl)"
-
- if use svga
- then
- myconf="${myconf} --enable-svga"
- else
- myconf="${myconf} --disable-svga --disable-vidix"
- fi
-
- myconf="${myconf} $(use_enable tga)"
-
- ( use xvmc && use nvidia ) \
- && myconf="${myconf} --enable-xvmc --with-xvmclib=XvMCNVIDIA"
-
- ( use xvmc && use i8x0 ) \
- && myconf="${myconf} --enable-xvmc --with-xvmclib=I810XvMC"
-
- ( use xvmc && use nvidia && use i8x0 ) \
- && {
- eerror "Invalid combination of USE flags"
- eerror "When building support for xvmc, you may only"
- eerror "include support for one video card:"
- eerror " nvidia, i8x0"
- eerror
- eerror "Emerge again with different USE flags"
-
- exit 1
- }
-
- ( use xvmc && ! use nvidia && ! use i8x0 ) && {
- ewarn "You tried to build with xvmc support."
- ewarn "No supported graphics hardware was specified."
- ewarn
- ewarn "No xvmc support will be included."
- ewarn "Please one appropriate USE flag and re-emerge:"
- ewarn " nvidia or i8x0"
-
- myconf="${myconf} --disable-xvmc"
- }
-
- #############
- # Audio Output #
- #############
- myconf="${myconf} $(use_enable alsa)"
- myconf="${myconf} $(use_enable arts)"
- myconf="${myconf} $(use_enable esd)"
- myconf="${myconf} $(use_enable mad)"
- myconf="${myconf} $(use_enable nas)"
- myconf="${myconf} $(use_enable oss ossaudio)"
-
- #################
- # Advanced Options #
- #################
- myconf="${myconf} $(use_enable 3dnow)"
- myconf="${myconf} $(use_enable 3dnowext 3dnowex)";
- myconf="${myconf} $(use_enable sse)"
- myconf="${myconf} $(use_enable sse2)"
- myconf="${myconf} $(use_enable mmx)"
- myconf="${myconf} $(use_enable mmxext mmx2)"
- myconf="${myconf} $(use_enable debug)"
- myconf="${myconf} $(use_enable nls i18n)"
-
- # mplayer now contains SIMD assembler code for amd64
- # AMD64 Team decided to hardenable SIMD assembler for all users
- # Danny van Dyk <kugelfang@gentoo.org> 2005/01/11
- if use amd64; then
- myconf="${myconf} --enable-3dnow --enable-3dnowex --enable-sse --enable-mmx --enable-mmx2"
- fi
-
- if use ppc64
- then
- myconf="${myconf} --disable-altivec"
- else
- myconf="${myconf} $(use_enable altivec)"
- use altivec && append-flags -maltivec -mabi=altivec
- fi
-
-
- if use xanim
- then
- myconf="${myconf} --with-xanimlibdir=/usr/lib/xanim/mods"
- fi
-
- if [ -e /dev/.devfsd ]
- then
- myconf="${myconf} --enable-linux-devfs"
- fi
-
- use live && myconf="${myconf} --with-livelibdir=/usr/$(get_libdir)/live"
-
- #leave this in place till the configure/compilation borkage is completely corrected back to pre4-r4 levels.
- # it's intended for debugging so we can get the options we configure mplayer w/, rather then hunt about.
- # it *will* be removed asap; in the meantime, doesn't hurt anything.
- echo "${myconf}" > ${T}/configure-options
-
- ./configure \
- --prefix=/usr \
- --confdir=/usr/share/mplayer \
- --datadir=/usr/share/mplayer \
- --disable-runtime-cpudetection \
- --enable-largefiles \
- --enable-menu \
- --enable-network --enable-ftp \
- --with-reallibdir=${REALLIBDIR} \
- --with-x11incdir=/usr/X11R6/include \
- ${myconf} || die
-
- # we run into problems if -jN > -j1
- # see #86245
- MAKEOPTS="${MAKEOPTS} -j1"
-
- einfo "Make"
- make depend && emake || die "Failed to build MPlayer!"
- einfo "Make completed"
-
- # We build the shared libpostproc.so here so that our
- # mplayer binary is not linked to it, ensuring that we
- # do not run into issues ... (bug #14479)
- cd ${S}/libavcodec/libpostproc
- make SHARED_PP="yes" || die "Failed to build libpostproc.so!"
-}
-
-src_install() {
-
- einfo "Make install"
- make prefix=${D}/usr \
- BINDIR=${D}/usr/bin \
- LIBDIR=${D}/usr/$(get_libdir) \
- CONFDIR=${D}/usr/share/mplayer \
- DATADIR=${D}/usr/share/mplayer \
- MANDIR=${D}/usr/share/man \
- install || die "Failed to install MPlayer!"
- einfo "Make install completed"
-
- dodoc AUTHORS ChangeLog README
- # 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
- 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
-
- # Install the default Skin and Gnome menu entry
- if use gtk; then
- dodir /usr/share/mplayer/Skin
- cp -r ${WORKDIR}/Blue ${D}/usr/share/mplayer/Skin/default || die
-
- # Fix the symlink
- rm -rf ${D}/usr/bin/gmplayer
- dosym mplayer /usr/bin/gmplayer
-
- insinto /usr/share/pixmaps
- newins ${S}/Gui/mplayer/pixmaps/logo.xpm mplayer.xpm
- insinto /usr/share/applications
- doins ${FILESDIR}/mplayer.desktop
- fi
-
- 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 -Rd ${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
-
- insinto /etc
- newins ${S}/etc/example.conf mplayer.conf
- dosed -e 's/include =/#include =/' /etc/mplayer.conf
- dosed -e 's/fs=yes/fs=no/' /etc/mplayer.conf
- dosym ../../../etc/mplayer.conf /usr/share/mplayer/mplayer.conf
-
- #mv the midentify script to /usr/bin for emovix.
- cp ${D}/usr/share/doc/${PF}/TOOLS/midentify ${D}/usr/bin
- chmod a+x ${D}/usr/bin/midentify
-
- insinto /usr/share/mplayer
- doins ${S}/etc/codecs.conf
- 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_postinst() {
-
- if use matrox; then
- depmod -a &>/dev/null || :
- fi
-
- if use alsa ; then
- einfo "For those using alsa, please note the ao driver name is no longer"
- einfo "alsa9x or alsa1x. It is now just 'alsa' (omit quotes)."
- einfo "The syntax for optional drivers has also changed. For example"
- einfo "if you use a dmix driver called 'dmixer,' use"
- einfo "ao=alsa:device=dmixer instead of ao=alsa:dmixer"
- einfo "Some users may not need to specify the extra driver with the ao="
- einfo "command."
- 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
-}
-
+++ /dev/null
-# Copyright 1999-2005 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/mplayer-1.0_pre6-r5.ebuild,v 1.5 2005/10/31 09:47:21 flameeyes Exp $
-
-inherit eutils flag-o-matic kernel-mod
-
-RESTRICT="nostrip"
-IUSE="3dfx 3dnow 3dnowext aalib alsa altivec arts avi bidi bl debug dga doc dts dvb cdparanoia directfb dvd dv dvdread edl encode esd fbcon gif ggi gtk i8x0 ipv6 jack joystick jpeg libcaca lirc live lzo mad matroska matrox mpeg mmx mmxext mythtv nas nls nvidia oggvorbis opengl oss png real rtc samba sdl sse sse2 svga tga theora truetype v4l v4l2 X xanim xinerama xmms xv xvid xvmc"
-
-BLUV=1.4
-SVGV=1.9.17
-
-# Handle PREversions as well
-MY_PV="${PV/_/}"
-MY_P="MPlayer-${MY_PV}a"
-S="${WORKDIR}/${MY_P}"
-SRC_URI="mirror://mplayer/releases/${MY_P}.tar.bz2
- 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
- svga? ( http://mplayerhq.hu/~alex/svgalib_helper-${SVGV}-mplayer.tar.bz2 )
- gtk? ( mirror://mplayer/Skin/Blue-${BLUV}.tar.bz2 )"
-
-# Only install Skin if GUI should be build (gtk as USE flag)
-DESCRIPTION="Media Player for Linux"
-HOMEPAGE="http://www.mplayerhq.hu/"
-
-# 'encode' in USE for MEncoder.
-RDEPEND="xvid? ( >=media-libs/xvid-0.9.0 )
- x86? (
- avi? ( >=media-libs/win32codecs-20040916 )
- real? ( >=media-video/realplayer-10.0.3 )
- )
- aalib? ( media-libs/aalib )
- alsa? ( media-libs/alsa-lib )
- arts? ( kde-base/arts )
- bidi? ( dev-libs/fribidi )
- cdparanoia? ( media-sound/cdparanoia )
- dga? ( virtual/x11 )
- directfb? ( dev-libs/DirectFB )
- dts? ( media-libs/libdts )
- dvd? ( dvdread? ( media-libs/libdvdread ) )
- encode? (
- media-sound/lame
- dv? ( >=media-libs/libdv-0.9.5 )
- )
- esd? ( media-sound/esound )
- gif? ( || ( media-libs/giflib media-libs/libungif ) )
- ggi? ( media-libs/libggi )
- gtk? (
- media-libs/libpng
- virtual/x11
- =x11-libs/gtk+-1.2*
- =dev-libs/glib-1.2*
- )
- jpeg? ( media-libs/jpeg )
- libcaca? ( media-libs/libcaca )
- lirc? ( app-misc/lirc )
- lzo? ( dev-libs/lzo )
- mad? ( media-libs/libmad )
- matroska? ( >=media-libs/libmatroska-0.7.0 )
- mpeg? ( media-libs/faad2 )
- nas? ( media-libs/nas )
- nls? ( sys-devel/gettext )
- oggvorbis? ( media-libs/libvorbis )
- opengl? ( virtual/opengl )
- png? ( media-libs/libpng )
- samba? ( >=net-fs/samba-2.2.8a )
- sdl? ( media-libs/libsdl )
- svga? ( media-libs/svgalib )
- !ia64? (
- theora? ( media-libs/libtheora )
- live? ( >=media-plugins/live-2004.07.20 )
- )
- truetype? ( >=media-libs/freetype-2.1 )
- xinerama? ( virtual/x11 )
- jack? ( >=media-libs/bio2jack-0.4 )
- xmms? ( media-sound/xmms )
- xanim? ( >=media-video/xanim-2.80.1-r4 )
- sys-libs/ncurses"
-
-DEPEND="${RDEPEND}
- app-arch/unzip"
-
-SLOT="0"
-LICENSE="GPL-2"
-#KEYWORDS="~x86 ~ppc ~alpha ~amd64 ~ia64 ~hppa ~sparc"
-#agriffis - uncomment this when ia64 is ready - Chris
-KEYWORDS="~x86 ~ppc ~alpha ~amd64 hppa ~sparc ~ppc64 ~ia64"
-
-# ecpu_check
-# Usage:
-#
-# ecpu_check array_of_cpu_flags
-#
-# array_of_cpu_flags - An array of cpu flags to check against USE flags
-#
-# Checks user USE related cpu flags against /proc/cpuinfo. If user enables a
-# cpu flag that is not supported in their processor flags, it will warn the
-# user if CROSSCOMPILE is not set to 1 ( because cross compile users are
-# obviously using different cpu flags than their own cpu ). Examples:
-#
-# CPU_FLAGS=(mmx mmx2 sse sse2)
-# ecpu_check CPU_FLAGS
-# Chris White <chriswhite@gentoo.org> (03 Feb 2005)
-
-ecpu_check() {
- # Think about changing below to: if [ "${CROSSCOMPILE}" -ne 1 -a -e "/proc/cpuinfo" ]
- # and dropping the else if you do not plan on adding anything to that
- # empty block ....
- # PS: also try to add some quoting, and consider rather using ${foo} than $foo ...
- if [ "${CROSSCOMPILE}" != "1" -a -e "/proc/cpuinfo" ]
- then
- CPU_FLAGS=${1}
- USER_CPU=`grep "flags" /proc/cpuinfo`
-
- for flags in `seq 1 ${#CPU_FLAGS[@]}`
- do
- if has ${CPU_FLAGS[${flags} - 1]} ${USER_CPU} && ! has ${CPU_FLAGS[${flags} - 1]} ${USE}
- then
- ewarn "Your system is ${CPU_FLAGS[${flags} - 1]} capable but you don't have it enabled!"
- ewarn "You might be cross compiling (in this case set CROSSCOMPILE to 1 to disable this warning."
- fi
-
- if ! has ${CPU_FLAGS[${flags} - 1]} ${USER_CPU} && has ${CPU_FLAGS[${flags} -1]} ${USE}
- then
- ewarn "You have ${CPU_FLAGS[${flags} - 1]} support enabled but your processor doesn't"
- ewarn "Seem to support it! You might be cross compiling or do not have /proc filesystem"
- ewarn "enabled. If either is the case, set CROSSCOMPILE to 1 to disable this warning."
- fi
- done
- fi
-}
-
-pkg_setup() {
- if use real && use x86; then
- REALLIBDIR="/opt/RealPlayer/codecs"
- fi
-}
-
-src_unpack() {
-
- unpack ${MY_P}.tar.bz2 \
- font-arial-iso-8859-1.tar.bz2 font-arial-iso-8859-2.tar.bz2 \
- font-arial-cp1250.tar.bz2
-
- use svga && unpack svgalib_helper-${SVGV}-mplayer.tar.bz2
-
- use gtk && unpack Blue-${BLUV}.tar.bz2
-
- cd ${S}
-
- # Custom CFLAGS
- epatch ${FILESDIR}/${P}-configure.patch
- sed -e 's:CFLAGS="custom":CFLAGS=${CFLAGS}:' -i configure
-
- #adds mythtv support to mplayer
- use mythtv && epatch ${FILESDIR}/mplayer-mythtv.patch
-
- # Fix hppa compilation
- [ "${ARCH}" = "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
-
- # Remove kernel-2.6 workaround as the problem it works around is
- # fixed, and the workaround breaks sparc
- use sparc && sed -i 's:#define __KERNEL__::' osdep/kerneltwosix.h
- epatch ${FILESDIR}/${PN}-1.0_pre6-ppc64.patch
-
- # Fix bug #76429
- epatch ${FILESDIR}/${PN}-nl.patch
-
- # fixes bug #78337
- epatch ${FILESDIR}/${PN}-avi_crash.patch
-
- # fixes mplayer not seeing gcc 3.4-blahetc type
- # gcc versions. Half stolen from toolchain-funcs
- epatch ${FILESDIR}/${PN}-gcc_detection.patch
-
- #fixes endian issues with jack output
- epatch ${FILESDIR}/${PN}-jack.patch
-
- # fixes the real codecs names (there's no .so.6.0's at
- # the end anymore ) and add 3gp (nokia) video codec support
- # per bug #85642
- epatch ${FILESDIR}/${P}-codecs.patch
-
- # two security fixes, see #89277
- epatch ${FILESDIR}/rtsp_fix_20050415.diff
- epatch ${FILESDIR}/mmst_fix_20050415.diff
-}
-
-linguas_warn() {
- ewarn "Language ${LANG[0]} or ${LANG_CC} not avaliable"
- ewarn "Language set to English"
- ewarn "If this is a mistake, please set the"
- ewarn "First LINGUAS language to one of the following"
- ewarn
- ewarn "bg - Bulgarian"
- ewarn "cz - Czech"
- ewarn "de - German"
- ewarn "dk - Danish"
- ewarn "el - Greek"
- ewarn "en - English"
- ewarn "es - Spanish"
- ewarn "fr - French"
- ewarn "hu - Hungarian"
- ewarn "ja - Japanese"
- ewarn "ko - Korean"
- ewarn "mk - FYRO Macedonian"
- ewarn "nl - Dutch"
- ewarn "no - Norwegian"
- ewarn "pl - Polish"
- ewarn "pt_BR - Portuguese - Brazil"
- ewarn "ro - Romanian"
- ewarn "ru - Russian"
- ewarn "sk - Slovak"
- ewarn "tr - Turkish"
- ewarn "uk - Ukranian"
- ewarn "zh_CN - Chinese - China"
- ewarn "zh_TW - Chinese - Taiwan"
- export LINGUAS="en ${LINGUAS}"
-}
-
-src_compile() {
-
- # have fun with LINGUAS variable
- if [[ -n $LINGUAS ]]
- then
- # LINGUAS has stuff in it, start the logic
- LANG=( $LINGUAS )
- if [ -e ${S}/help/help_mp-${LANG[0]}.h ]
- then
- einfo "Setting MPlayer messages to language: ${LANG[0]}"
- else
- LANG_CC=${LANG[0]}
- if [ ${#LANG_CC} -ge 2 ]
- then
- LANG_CC=${LANG_CC:0:2}
- if [ -e ${S}/help/help_mp-${LANG_CC}.h ]
- then
- einfo "Setting MPlayer messages to language ${LANG_CC}"
- export LINGUAS="${LANG_CC} ${LINGUAS}"
- else
- linguas_warn
- fi
- else
- linguas_warn
- fi
- fi
- else
- # sending blank LINGUAS, make it default to en
- einfo "No LINGUAS given, defaulting to English"
- export LINGUAS="en ${LINGUAS}"
- fi
-
- # check cpu flags
- if use x86
- then
- CPU_FLAGS=(3dnow 3dnowext mmx sse sse2 mmxext)
- ecpu_check CPU_FLAGS
- fi
-
- # let's play the filtration game! MPlayer hates on all!
- strip-flags
-
- #add -frename-registers per bug #75960
- append-flags -frename-registers
-
- # ugly optimizations cause MPlayer to cry on x86 systems!
- if use x86 ; then
- replace-flags -O0 -O2
- replace-flags -O3 -O2
- filter-flags -fPIC -fPIE
- fi
-
- local myconf=
- ################
- #Optional features#
- ###############
- myconf="${myconf} $(use_enable bidi fribidi)"
- myconf="${myconf} $(use_enable cdparanoia)"
- if use dvd; then
- myconf="${myconf} $(use_enable dvdread) $(use_enable !dvdread mpdvdkit)"
- else
- myconf="${myconf} --disable-dvdread --disable-mpdvdkit"
- fi
- myconf="${myconf} $(use_enable edl)"
-
- if use encode ; then
- myconf="${myconf} --enable-mencoder $(use_enable dv libdv)"
- else
- myconf="${myconf} --disable-mencoder --disable-libdv"
- fi
-
- myconf="${myconf} $(use_enable gtk gui)"
-
- if use !gtk && use !X && use !xv && use !xinerama; then
- myconf="${myconf} --disable-gui --disable-x11 --disable-xv --disable-xmga --disable-xinerama --disable-vm --disable-xvmc"
- else
- #note we ain't touching --enable-vm. That should be locked down in the future.
- myconf="${myconf} --enable-x11 $(use_enable xinerama) $(use_enable xv) $(use_enable gtk gui)"
- fi
-
- # this looks like a hack, but the
- # --enable-dga needs a paramter, but there's no surefire
- # way to tell what it is.. so I'm letting MPlayer decide
- # the enable part
- use !dga && myconf="${myconf} --disable-dga"
-
- # disable png *only* if gtk && png aren't on
- if use png || use gtk; then
- myconf="${myconf} --enable-png"
- else
- myconf="${myconf} --disable-png"
- fi
- myconf="${myconf} $(use_enable ipv6 inet6)"
- myconf="${myconf} $(use_enable joystick)"
- myconf="${myconf} $(use_enable lirc)"
- if use ia64
- then
- myconf="${myconf} --disable-live"
- else
- myconf="${myconf} $(use_enable live)"
- fi
- myconf="${myconf} $(use_enable rtc)"
- myconf="${myconf} $(use_enable samba smb)"
- myconf="${myconf} $(use_enable truetype freetype)"
- myconf="${myconf} $(use_enable v4l tv-v4l)"
- myconf="${myconf} $(use_enable v4l2 tv-v4l2)"
- myconf="${myconf} $(use_enable jack)"
-
- #########
- # Codecs #
- ########
- myconf="${myconf} --disable-divx4linux"
- myconf="${myconf} $(use_enable gif)"
- myconf="${myconf} $(use_enable jpeg)"
- #myconf="${myconf} $(use_enable ladspa)"
- myconf="${myconf} $(use_enable dts libdts)"
- myconf="${myconf} $(use_enable lzo liblzo)"
- myconf="${myconf} $(use_enable matroska internal-matroska)"
- myconf="${myconf} $(use_enable mpeg external-faad) $(use_enable !mpeg internal-faad)"
- myconf="${myconf} $(use_enable oggvorbis vorbis)"
- if use ia64; then
- myconf="${myconf} --disable-theora"
- else
- myconf="${myconf} $(use_enable theora)"
- fi
- myconf="${myconf} $(use_enable xmms)"
- myconf="${myconf} $(use_enable xvid)"
- use x86 && myconf="${myconf} $(use_enable real)"
- use x86 && myconf="${myconf} $(use_enable avi win32)"
-
- #############
- # Video Output #
- #############
- myconf="${myconf} $(use_enable 3dfx)"
- if use 3dfx; then
- myconf="${myconf} --enable-tdfxvid"
- else
- myconf="${myconf} --disable-tdfxvid"
- fi
- if use fbcon && use 3dfx; then
- myconf="${myconf} --enable-tdfxfb"
- else
- myconf="${myconf} --disable-tdfxfb"
- fi
-
- if use dvb ; then
- myconf="${myconf} --enable-dvbhead --with-dvbincdir=/usr/src/linux/include"
- else
- myconf="${myconf} --disable-dvbhead"
- fi
-
- myconf="${myconf} $(use_enable aalib aa)"
- myconf="${myconf} $(use_enable directfb)"
- myconf="${myconf} $(use_enable fbcon fbdev)"
- myconf="${myconf} $(use_enable ggi)"
- myconf="${myconf} $(use_enable libcaca caca)"
- if use matrox && use X; then
- myconf="${myconf} $(use_enable matrox xmga)"
- fi
- myconf="${myconf} $(use_enable matrox mga)"
- myconf="${myconf} $(use_enable opengl gl)"
- myconf="${myconf} $(use_enable sdl)"
-
- if use svga
- then
- myconf="${myconf} --enable-svga"
- else
- myconf="${myconf} --disable-svga --disable-vidix"
- fi
-
- myconf="${myconf} $(use_enable tga)"
-
- ( use xvmc && use nvidia ) \
- && myconf="${myconf} --enable-xvmc --with-xvmclib=XvMCNVIDIA"
-
- ( use xvmc && use i8x0 ) \
- && myconf="${myconf} --enable-xvmc --with-xvmclib=I810XvMC"
-
- ( use xvmc && use nvidia && use i8x0 ) \
- && {
- eerror "Invalid combination of USE flags"
- eerror "When building support for xvmc, you may only"
- eerror "include support for one video card:"
- eerror " nvidia, i8x0"
- eerror
- eerror "Emerge again with different USE flags"
-
- exit 1
- }
-
- ( use xvmc && ! use nvidia && ! use i8x0 ) && {
- ewarn "You tried to build with xvmc support."
- ewarn "No supported graphics hardware was specified."
- ewarn
- ewarn "No xvmc support will be included."
- ewarn "Please one appropriate USE flag and re-emerge:"
- ewarn " nvidia or i8x0"
-
- myconf="${myconf} --disable-xvmc"
- }
-
- #############
- # Audio Output #
- #############
- myconf="${myconf} $(use_enable alsa)"
- myconf="${myconf} $(use_enable arts)"
- myconf="${myconf} $(use_enable esd)"
- myconf="${myconf} $(use_enable mad)"
- myconf="${myconf} $(use_enable nas)"
- myconf="${myconf} $(use_enable oss ossaudio)"
-
- #################
- # Advanced Options #
- #################
- myconf="${myconf} $(use_enable 3dnow)"
- myconf="${myconf} $(use_enable 3dnowext 3dnowex)";
- myconf="${myconf} $(use_enable sse)"
- myconf="${myconf} $(use_enable sse2)"
- myconf="${myconf} $(use_enable mmx)"
- myconf="${myconf} $(use_enable mmxext mmx2)"
- myconf="${myconf} $(use_enable debug)"
- myconf="${myconf} $(use_enable nls i18n)"
-
- # mplayer now contains SIMD assembler code for amd64
- # AMD64 Team decided to hardenable SIMD assembler for all users
- # Danny van Dyk <kugelfang@gentoo.org> 2005/01/11
- if use amd64; then
- myconf="${myconf} --enable-3dnow --enable-3dnowex --enable-sse --enable-mmx --enable-mmx2"
- fi
-
- if use ppc64
- then
- myconf="${myconf} --disable-altivec"
- else
- myconf="${myconf} $(use_enable altivec)"
- use altivec && append-flags -maltivec -mabi=altivec
- fi
-
-
- if use xanim
- then
- myconf="${myconf} --with-xanimlibdir=/usr/lib/xanim/mods"
- fi
-
- if [ -e /dev/.devfsd ]
- then
- myconf="${myconf} --enable-linux-devfs"
- fi
-
- use live && myconf="${myconf} --with-livelibdir=/usr/$(get_libdir)/live"
-
- # support for blinkenlights
- use bl && myconf="${myconf} --enable-bl"
-
- #leave this in place till the configure/compilation borkage is completely corrected back to pre4-r4 levels.
- # it's intended for debugging so we can get the options we configure mplayer w/, rather then hunt about.
- # it *will* be removed asap; in the meantime, doesn't hurt anything.
- echo "${myconf}" > ${T}/configure-options
-
- ./configure \
- --prefix=/usr \
- --confdir=/usr/share/mplayer \
- --datadir=/usr/share/mplayer \
- --disable-runtime-cpudetection \
- --enable-largefiles \
- --enable-menu \
- --enable-network --enable-ftp \
- --with-reallibdir=${REALLIBDIR} \
- --with-x11incdir=/usr/X11R6/include \
- ${myconf} || die
-
- # we run into problems if -jN > -j1
- # see #86245
- MAKEOPTS="${MAKEOPTS} -j1"
-
- einfo "Make"
- make depend && emake || die "Failed to build MPlayer!"
- einfo "Make completed"
-
- # We build the shared libpostproc.so here so that our
- # mplayer binary is not linked to it, ensuring that we
- # do not run into issues ... (bug #14479)
- cd ${S}/libavcodec/libpostproc
- make SHARED_PP="yes" || die "Failed to build libpostproc.so!"
-}
-
-src_install() {
-
- einfo "Make install"
- make prefix=${D}/usr \
- BINDIR=${D}/usr/bin \
- LIBDIR=${D}/usr/$(get_libdir) \
- CONFDIR=${D}/usr/share/mplayer \
- DATADIR=${D}/usr/share/mplayer \
- MANDIR=${D}/usr/share/man \
- install || die "Failed to install MPlayer!"
- einfo "Make install completed"
-
- dodoc AUTHORS ChangeLog README
- # 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
- 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
-
- # Install the default Skin and Gnome menu entry
- if use gtk; then
- dodir /usr/share/mplayer/Skin
- cp -r ${WORKDIR}/Blue ${D}/usr/share/mplayer/Skin/default || die
-
- # Fix the symlink
- rm -rf ${D}/usr/bin/gmplayer
- dosym mplayer /usr/bin/gmplayer
-
- insinto /usr/share/pixmaps
- newins ${S}/Gui/mplayer/pixmaps/logo.xpm mplayer.xpm
- insinto /usr/share/applications
- doins ${FILESDIR}/mplayer.desktop
- fi
-
- 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 -Rd ${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
-
- insinto /etc
- newins ${S}/etc/example.conf mplayer.conf
- dosed -e 's/include =/#include =/' /etc/mplayer.conf
- dosed -e 's/fs=yes/fs=no/' /etc/mplayer.conf
- dosym ../../../etc/mplayer.conf /usr/share/mplayer/mplayer.conf
-
- #mv the midentify script to /usr/bin for emovix.
- cp ${D}/usr/share/doc/${PF}/TOOLS/midentify ${D}/usr/bin
- chmod a+x ${D}/usr/bin/midentify
-
- insinto /usr/share/mplayer
- doins ${S}/etc/codecs.conf
- 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_postinst() {
-
- if use matrox; then
- depmod -a &>/dev/null || :
- fi
-
- if use alsa ; then
- einfo "For those using alsa, please note the ao driver name is no longer"
- einfo "alsa9x or alsa1x. It is now just 'alsa' (omit quotes)."
- einfo "The syntax for optional drivers has also changed. For example"
- einfo "if you use a dmix driver called 'dmixer,' use"
- einfo "ao=alsa:device=dmixer instead of ao=alsa:dmixer"
- einfo "Some users may not need to specify the extra driver with the ao="
- einfo "command."
- 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
-}
-
+++ /dev/null
-# Copyright 1999-2005 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/mplayer-1.0_pre6-r6.ebuild,v 1.14 2005/10/31 09:47:21 flameeyes Exp $
-
-inherit eutils flag-o-matic kernel-mod
-
-RESTRICT="nostrip"
-IUSE="3dfx 3dnow 3dnowext aac aalib alsa altivec arts bidi bl cpudetection
-custom-cflags debug dga doc dts dvb cdparanoia directfb dvd dv
-dvdread edl encode esd fbcon gif ggi gtk i8x0 ipv6 jack joystick jpeg libcaca
-lirc live lzo mad matroska matrox mmx mmxext mythtv nas nls nvidia vorbis opengl
-oss png real rtc samba sdl sse sse2 svga tga theora truetype v4l v4l2
-win32codecs X xanim xinerama xmms xv xvid xvmc"
-
-BLUV=1.4
-SVGV=1.9.17
-
-# Handle PREversions as well
-MY_PV="${PV/_/}"
-MY_P="MPlayer-${MY_PV}a"
-S="${WORKDIR}/${MY_P}"
-SRC_URI="mirror://mplayer/releases/${MY_P}.tar.bz2
- 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
- svga? ( http://mplayerhq.hu/~alex/svgalib_helper-${SVGV}-mplayer.tar.bz2 )
- gtk? ( mirror://mplayer/Skin/Blue-${BLUV}.tar.bz2 )"
-
-# Only install Skin if GUI should be build (gtk as USE flag)
-DESCRIPTION="Media Player for Linux"
-HOMEPAGE="http://www.mplayerhq.hu/"
-
-# 'encode' in USE for MEncoder.
-RDEPEND="xvid? ( >=media-libs/xvid-0.9.0 )
- win32codecs? ( >=media-libs/win32codecs-20040916 )
- x86? ( real? ( >=media-video/realplayer-10.0.3 ) )
- aalib? ( media-libs/aalib )
- alsa? ( media-libs/alsa-lib )
- arts? ( kde-base/arts )
- bidi? ( dev-libs/fribidi )
- cdparanoia? ( media-sound/cdparanoia )
- dga? ( virtual/x11 )
- directfb? ( dev-libs/DirectFB )
- dts? ( media-libs/libdts )
- dvd? ( dvdread? ( media-libs/libdvdread ) )
- encode? (
- media-sound/lame
- dv? ( >=media-libs/libdv-0.9.5 )
- )
- esd? ( media-sound/esound )
- gif? ( || ( media-libs/giflib media-libs/libungif ) )
- ggi? ( media-libs/libggi )
- gtk? (
- media-libs/libpng
- virtual/x11
- =x11-libs/gtk+-1.2*
- =dev-libs/glib-1.2*
- )
- jpeg? ( media-libs/jpeg )
- libcaca? ( media-libs/libcaca )
- lirc? ( app-misc/lirc )
- lzo? ( dev-libs/lzo )
- mad? ( media-libs/libmad )
- matroska? ( >=media-libs/libmatroska-0.7.0 )
- nas? ( media-libs/nas )
- nls? ( sys-devel/gettext )
- vorbis? ( media-libs/libvorbis )
- opengl? ( virtual/opengl )
- png? ( media-libs/libpng )
- samba? ( >=net-fs/samba-2.2.8a )
- sdl? ( media-libs/libsdl )
- svga? ( media-libs/svgalib )
- theora? ( media-libs/libtheora )
- live? ( >=media-plugins/live-2004.07.20 )
- truetype? ( >=media-libs/freetype-2.1 )
- xinerama? ( virtual/x11 )
- jack? ( >=media-libs/bio2jack-0.4 )
- xmms? ( media-sound/xmms )
- xanim? ( >=media-video/xanim-2.80.1-r4 )
- sys-libs/ncurses"
-
-DEPEND="${RDEPEND}
- app-arch/unzip"
-
-SLOT="0"
-LICENSE="GPL-2"
-#KEYWORDS="~x86 ~ppc ~alpha ~amd64 ~ia64 ~hppa ~sparc"
-#agriffis - uncomment this when ia64 is ready - Chris
-KEYWORDS="~x86 ~ppc ~alpha ~amd64 hppa ~sparc ~ppc64 ~ia64"
-
-# ecpu_check
-# Usage:
-#
-# ecpu_check array_of_cpu_flags
-#
-# array_of_cpu_flags - An array of cpu flags to check against USE flags
-#
-# Checks user USE related cpu flags against /proc/cpuinfo. If user enables a
-# cpu flag that is not supported in their processor flags, it will warn the
-# user if CROSSCOMPILE is not set to 1 ( because cross compile users are
-# obviously using different cpu flags than their own cpu ). Examples:
-#
-# CPU_FLAGS=(mmx mmx2 sse sse2)
-# ecpu_check CPU_FLAGS
-# Chris White <chriswhite@gentoo.org> (03 Feb 2005)
-
-ecpu_check() {
- # Think about changing below to: if [ "${CROSSCOMPILE}" -ne 1 -a -e "/proc/cpuinfo" ]
- # and dropping the else if you do not plan on adding anything to that
- # empty block ....
- # PS: also try to add some quoting, and consider rather using ${foo} than $foo ...
- if [ "${CROSSCOMPILE}" != "1" -a -e "/proc/cpuinfo" ]
- then
- CPU_FLAGS=${1}
- USER_CPU=`grep "flags" /proc/cpuinfo`
-
- for flags in `seq 1 ${#CPU_FLAGS[@]}`
- do
- if has ${CPU_FLAGS[${flags} - 1]} ${USER_CPU} && ! has ${CPU_FLAGS[${flags} - 1]} ${USE}
- then
- ewarn "Your system is ${CPU_FLAGS[${flags} - 1]} capable but you don't have it enabled!"
- ewarn "You might be cross compiling (in this case set CROSSCOMPILE to 1 to disable this warning."
- fi
-
- if ! has ${CPU_FLAGS[${flags} - 1]} ${USER_CPU} && has ${CPU_FLAGS[${flags} -1]} ${USE}
- then
- ewarn "You have ${CPU_FLAGS[${flags} - 1]} support enabled but your processor doesn't"
- ewarn "Seem to support it! You might be cross compiling or do not have /proc filesystem"
- ewarn "enabled. If either is the case, set CROSSCOMPILE to 1 to disable this warning."
- fi
- done
- fi
-}
-
-pkg_setup() {
- if use real && use x86; then
- REALLIBDIR="/opt/RealPlayer/codecs"
- fi
-}
-
-src_unpack() {
-
- unpack ${MY_P}.tar.bz2 \
- font-arial-iso-8859-1.tar.bz2 font-arial-iso-8859-2.tar.bz2 \
- font-arial-cp1250.tar.bz2
-
- use svga && unpack svgalib_helper-${SVGV}-mplayer.tar.bz2
-
- use gtk && unpack Blue-${BLUV}.tar.bz2
-
- cd ${S}
-
- #adds mythtv support to mplayer
- use mythtv && epatch ${FILESDIR}/mplayer-mythtv.patch
-
- # Fix hppa compilation
- [ "${ARCH}" = "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
-
- # Remove kernel-2.6 workaround as the problem it works around is
- # fixed, and the workaround breaks sparc
- use sparc && sed -i 's:#define __KERNEL__::' osdep/kerneltwosix.h
- epatch ${FILESDIR}/${PN}-1.0_pre6-ppc64.patch
-
- # Fix bug #76429
- epatch ${FILESDIR}/${PN}-nl.patch
-
- # fixes bug #78337
- epatch ${FILESDIR}/${PN}-avi_crash.patch
-
- # fixes mplayer not seeing gcc 3.4-blahetc type
- # gcc versions. Half stolen from toolchain-funcs
- epatch ${FILESDIR}/${PN}-gcc_detection.patch
-
- #fixes endian issues with jack output
- epatch ${FILESDIR}/${PN}-jack.patch
-
- # fixes the real codecs names (there's no .so.6.0's at
- # the end anymore ) and add 3gp (nokia) video codec support
- # per bug #85642
- epatch ${FILESDIR}/${P}-codecs.patch
-
- # two security fixes, see #89277
- epatch ${FILESDIR}/rtsp_fix_20050415.diff
- epatch ${FILESDIR}/mmst_fix_20050415.diff
-}
-
-linguas_warn() {
- ewarn "Language ${LANG[0]} or ${LANG_CC} not avaliable"
- ewarn "Language set to English"
- ewarn "If this is a mistake, please set the"
- ewarn "First LINGUAS language to one of the following"
- ewarn
- ewarn "bg - Bulgarian"
- ewarn "cz - Czech"
- ewarn "de - German"
- ewarn "dk - Danish"
- ewarn "el - Greek"
- ewarn "en - English"
- ewarn "es - Spanish"
- ewarn "fr - French"
- ewarn "hu - Hungarian"
- ewarn "ja - Japanese"
- ewarn "ko - Korean"
- ewarn "mk - FYRO Macedonian"
- ewarn "nl - Dutch"
- ewarn "no - Norwegian"
- ewarn "pl - Polish"
- ewarn "pt_BR - Portuguese - Brazil"
- ewarn "ro - Romanian"
- ewarn "ru - Russian"
- ewarn "sk - Slovak"
- ewarn "tr - Turkish"
- ewarn "uk - Ukranian"
- ewarn "zh_CN - Chinese - China"
- ewarn "zh_TW - Chinese - Taiwan"
- export LINGUAS="en ${LINGUAS}"
-}
-
-src_compile() {
-
- # have fun with LINGUAS variable
- if [[ -n $LINGUAS ]]
- then
- # LINGUAS has stuff in it, start the logic
- LANG=( $LINGUAS )
- if [ -e ${S}/help/help_mp-${LANG[0]}.h ]
- then
- einfo "Setting MPlayer messages to language: ${LANG[0]}"
- else
- LANG_CC=${LANG[0]}
- if [ ${#LANG_CC} -ge 2 ]
- then
- LANG_CC=${LANG_CC:0:2}
- if [ -e ${S}/help/help_mp-${LANG_CC}.h ]
- then
- einfo "Setting MPlayer messages to language ${LANG_CC}"
- export LINGUAS="${LANG_CC} ${LINGUAS}"
- else
- linguas_warn
- fi
- else
- linguas_warn
- fi
- fi
- else
- # sending blank LINGUAS, make it default to en
- einfo "No LINGUAS given, defaulting to English"
- export LINGUAS="en ${LINGUAS}"
- fi
-
-
- # check cpu flags
- if use x86 && use !cpudetection
- then
- CPU_FLAGS=(3dnow 3dnowext mmx sse sse2 mmxext)
- ecpu_check CPU_FLAGS
- fi
-
- 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 ; then
- replace-flags -O0 -O2
- replace-flags -O3 -O2
- filter-flags -fPIC -fPIE
- fi
- else
- unset CFLAGS CXXFLAGS
- fi
-
- local myconf=
- ################
- #Optional features#
- ###############
- myconf="${myconf} $(use_enable cpudetection runtime-cpudetection)"
- myconf="${myconf} $(use_enable bidi fribidi)"
- myconf="${myconf} $(use_enable cdparanoia)"
- if use dvd; then
- myconf="${myconf} $(use_enable dvdread) $(use_enable !dvdread mpdvdkit)"
- else
- myconf="${myconf} --disable-dvdread --disable-mpdvdkit"
- fi
- myconf="${myconf} $(use_enable edl)"
-
- if use encode ; then
- myconf="${myconf} --enable-mencoder $(use_enable dv libdv)"
- else
- myconf="${myconf} --disable-mencoder --disable-libdv"
- fi
-
- myconf="${myconf} $(use_enable gtk gui)"
-
- if use !gtk && use !X && use !xv && use !xinerama; then
- myconf="${myconf} --disable-gui --disable-x11 --disable-xv --disable-xmga --disable-xinerama --disable-vm --disable-xvmc"
- else
- #note we ain't touching --enable-vm. That should be locked down in the future.
- myconf="${myconf} --enable-x11 $(use_enable xinerama) $(use_enable xv) $(use_enable gtk gui)"
- fi
-
- # this looks like a hack, but the
- # --enable-dga needs a paramter, but there's no surefire
- # way to tell what it is.. so I'm letting MPlayer decide
- # the enable part
- # 3dfx requires dga
-
- if ! use dga && ! use 3dfx ; then
- myconf="${myconf} --disable-dga"
- fi
-
- # disable png *only* if gtk && png aren't on
- if use png || use gtk; then
- myconf="${myconf} --enable-png"
- else
- myconf="${myconf} --disable-png"
- fi
- myconf="${myconf} $(use_enable ipv6 inet6)"
- myconf="${myconf} $(use_enable joystick)"
- myconf="${myconf} $(use_enable lirc)"
- myconf="${myconf} $(use_enable live)"
- myconf="${myconf} $(use_enable rtc)"
- myconf="${myconf} $(use_enable samba smb)"
- myconf="${myconf} $(use_enable truetype freetype)"
- myconf="${myconf} $(use_enable v4l tv-v4l)"
- myconf="${myconf} $(use_enable v4l2 tv-v4l2)"
- myconf="${myconf} $(use_enable jack)"
-
- #########
- # Codecs #
- ########
- myconf="${myconf} --disable-divx4linux"
- myconf="${myconf} $(use_enable gif)"
- myconf="${myconf} $(use_enable jpeg)"
- #myconf="${myconf} $(use_enable ladspa)"
- myconf="${myconf} $(use_enable dts libdts)"
- myconf="${myconf} $(use_enable lzo liblzo)"
- myconf="${myconf} $(use_enable matroska internal-matroska)"
- myconf="${myconf} $(use_enable aac internal-faad)"
- myconf="${myconf} $(use_enable vorbis)"
- myconf="${myconf} $(use_enable theora)"
- myconf="${myconf} $(use_enable xmms)"
- myconf="${myconf} $(use_enable xvid)"
- use x86 && myconf="${myconf} $(use_enable real)"
- myconf="${myconf} $(use_enable win32codecs win32)"
-
- #############
- # Video Output #
- #############
- myconf="${myconf} $(use_enable 3dfx)"
- if use 3dfx; then
- myconf="${myconf} --enable-tdfxvid"
- else
- myconf="${myconf} --disable-tdfxvid"
- fi
- if use fbcon && use 3dfx; then
- myconf="${myconf} --enable-tdfxfb"
- else
- myconf="${myconf} --disable-tdfxfb"
- fi
-
- if use dvb ; then
- myconf="${myconf} --enable-dvbhead --with-dvbincdir=/usr/src/linux/include"
- else
- myconf="${myconf} --disable-dvbhead"
- fi
-
- myconf="${myconf} $(use_enable aalib aa)"
- myconf="${myconf} $(use_enable directfb)"
- myconf="${myconf} $(use_enable fbcon fbdev)"
- myconf="${myconf} $(use_enable ggi)"
- myconf="${myconf} $(use_enable libcaca caca)"
- if use matrox && use X; then
- myconf="${myconf} $(use_enable matrox xmga)"
- fi
- myconf="${myconf} $(use_enable matrox mga)"
- myconf="${myconf} $(use_enable opengl gl)"
- myconf="${myconf} $(use_enable sdl)"
-
- if use svga
- then
- myconf="${myconf} --enable-svga"
- else
- myconf="${myconf} --disable-svga --disable-vidix"
- fi
-
- myconf="${myconf} $(use_enable tga)"
-
- ( use xvmc && use nvidia ) \
- && myconf="${myconf} --enable-xvmc --with-xvmclib=XvMCNVIDIA"
-
- ( use xvmc && use i8x0 ) \
- && myconf="${myconf} --enable-xvmc --with-xvmclib=I810XvMC"
-
- ( use xvmc && use nvidia && use i8x0 ) \
- && {
- eerror "Invalid combination of USE flags"
- eerror "When building support for xvmc, you may only"
- eerror "include support for one video card:"
- eerror " nvidia, i8x0"
- eerror
- eerror "Emerge again with different USE flags"
-
- exit 1
- }
-
- ( use xvmc && ! use nvidia && ! use i8x0 ) && {
- ewarn "You tried to build with xvmc support."
- ewarn "No supported graphics hardware was specified."
- ewarn
- ewarn "No xvmc support will be included."
- ewarn "Please one appropriate USE flag and re-emerge:"
- ewarn " nvidia or i8x0"
-
- myconf="${myconf} --disable-xvmc"
- }
-
- #############
- # Audio Output #
- #############
- myconf="${myconf} $(use_enable alsa)"
- myconf="${myconf} $(use_enable arts)"
- myconf="${myconf} $(use_enable esd)"
- myconf="${myconf} $(use_enable mad)"
- myconf="${myconf} $(use_enable nas)"
- myconf="${myconf} $(use_enable oss ossaudio)"
-
- #################
- # Advanced Options #
- #################
- myconf="${myconf} $(use_enable 3dnow)"
- myconf="${myconf} $(use_enable 3dnowext 3dnowex)";
- # Platform specific flags, hardcoded on amd64 (see below)
- use x86 && myconf="${myconf} $(use_enable sse)"
- use x86 && myconf="${myconf} $(use_enable sse2)"
- use x86 && myconf="${myconf} $(use_enable mmx)"
- use x86 && myconf="${myconf} $(use_enable mmxext mmx2)"
- myconf="${myconf} $(use_enable debug)"
- myconf="${myconf} $(use_enable nls i18n)"
-
- # mplayer now contains SIMD assembler code for amd64
- # AMD64 Team decided to hardenable SIMD assembler for all users
- # Danny van Dyk <kugelfang@gentoo.org> 2005/01/11
- if use amd64; then
- myconf="${myconf} --enable-3dnow --enable-3dnowex --enable-sse --enable-mmx --enable-mmx2"
- fi
-
- if use ppc64
- then
- myconf="${myconf} --disable-altivec"
- else
- myconf="${myconf} $(use_enable altivec)"
- use altivec && append-flags -maltivec -mabi=altivec
- fi
-
-
- if use xanim
- then
- myconf="${myconf} --with-xanimlibdir=/usr/lib/xanim/mods"
- fi
-
- if [ -e /dev/.devfsd ]
- then
- myconf="${myconf} --enable-linux-devfs"
- fi
-
- use live && myconf="${myconf} --with-livelibdir=/usr/$(get_libdir)/live"
-
- # support for blinkenlights
- use bl && myconf="${myconf} --enable-bl"
-
- #leave this in place till the configure/compilation borkage is completely corrected back to pre4-r4 levels.
- # it's intended for debugging so we can get the options we configure mplayer w/, rather then hunt about.
- # it *will* be removed asap; in the meantime, doesn't hurt anything.
- echo "${myconf}" > ${T}/configure-options
-
- ./configure \
- --prefix=/usr \
- --confdir=/usr/share/mplayer \
- --datadir=/usr/share/mplayer \
- --enable-largefiles \
- --enable-menu \
- --enable-network --enable-ftp \
- --with-reallibdir=${REALLIBDIR} \
- --with-x11incdir=/usr/X11R6/include \
- --disable-external-faad \
- ${myconf} || die
-
- # we run into problems if -jN > -j1
- # see #86245
- MAKEOPTS="${MAKEOPTS} -j1"
-
- einfo "Make"
- make depend && emake || die "Failed to build MPlayer!"
- einfo "Make completed"
-
- # We build the shared libpostproc.so here so that our
- # mplayer binary is not linked to it, ensuring that we
- # do not run into issues ... (bug #14479)
- cd ${S}/libavcodec/libpostproc
- make SHARED_PP="yes" || die "Failed to build libpostproc.so!"
-}
-
-src_install() {
-
- einfo "Make install"
- make prefix=${D}/usr \
- BINDIR=${D}/usr/bin \
- LIBDIR=${D}/usr/$(get_libdir) \
- CONFDIR=${D}/usr/share/mplayer \
- DATADIR=${D}/usr/share/mplayer \
- MANDIR=${D}/usr/share/man \
- install || die "Failed to install MPlayer!"
- einfo "Make install completed"
-
- dodoc AUTHORS ChangeLog README
- # 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
- 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
-
- # Install the default Skin and Gnome menu entry
- if use gtk; then
- dodir /usr/share/mplayer/Skin
- cp -r ${WORKDIR}/Blue ${D}/usr/share/mplayer/Skin/default || die
-
- # Fix the symlink
- rm -rf ${D}/usr/bin/gmplayer
- dosym mplayer /usr/bin/gmplayer
-
- insinto /usr/share/pixmaps
- newins ${S}/Gui/mplayer/pixmaps/logo.xpm mplayer.xpm
- insinto /usr/share/applications
- doins ${FILESDIR}/mplayer.desktop
- fi
-
- 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 -Rd ${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
-
- insinto /etc
- newins ${S}/etc/example.conf mplayer.conf
- dosed -e 's/include =/#include =/' /etc/mplayer.conf
- dosed -e 's/fs=yes/fs=no/' /etc/mplayer.conf
- dosym ../../../etc/mplayer.conf /usr/share/mplayer/mplayer.conf
-
- #mv the midentify script to /usr/bin for emovix.
- cp ${D}/usr/share/doc/${PF}/TOOLS/midentify ${D}/usr/bin
- chmod a+x ${D}/usr/bin/midentify
-
- insinto /usr/share/mplayer
- doins ${S}/etc/codecs.conf
- 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_postinst() {
-
- if use matrox; then
- depmod -a &>/dev/null || :
- fi
-
- if use alsa ; then
- einfo "For those using alsa, please note the ao driver name is no longer"
- einfo "alsa9x or alsa1x. It is now just 'alsa' (omit quotes)."
- einfo "The syntax for optional drivers has also changed. For example"
- einfo "if you use a dmix driver called 'dmixer,' use"
- einfo "ao=alsa:device=dmixer instead of ao=alsa:dmixer"
- einfo "Some users may not need to specify the extra driver with the ao="
- einfo "command."
- 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
-}
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/mplayer-1.0_pre7-r1.ebuild,v 1.10 2005/10/30 19:27:51 lu_zero Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/mplayer-1.0_pre7-r1.ebuild,v 1.11 2005/11/01 16:41:13 lu_zero Exp $
inherit eutils flag-o-matic
# Remove kernel-2.6 workaround as the problem it works around is
# fixed, and the workaround breaks sparc
use sparc && sed -i 's:#define __KERNEL__::' osdep/kerneltwosix.h
- epatch ${FILESDIR}/${PN}-1.0_pre6-ppc64.patch
+ epatch ${FILESDIR}/${P}-ppc64.patch
# Fix building with gcc4
epatch ${FILESDIR}/${P}-gcc4.patch
+++ /dev/null
-# Copyright 1999-2005 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/mplayer-1.0_pre7.ebuild,v 1.18 2005/10/31 09:47:21 flameeyes Exp $
-
-inherit eutils flag-o-matic kernel-mod
-
-RESTRICT="nostrip"
-IUSE="3dfx 3dnow 3dnowext aac aalib alsa altivec arts bidi bl cpudetection
-custom-cflags debug dga doc dts dvb cdparanoia directfb dvd dv
-dvdread edl encode esd fbcon gif ggi gtk i8x0 ipv6 jack joystick jpeg libcaca
-lirc live lzo mad matroska matrox mmx mmxext mythtv nas nls nvidia vorbis opengl
-oss png real rtc samba sdl sse sse2 svga tga theora truetype v4l v4l2
-win32codecs X xanim xinerama xmms xv xvid xvmc"
-
-BLUV=1.4
-SVGV=1.9.17
-
-# Handle PREversions as well
-MY_PV="${PV/_/}"
-MY_P="MPlayer-${MY_PV}"
-S="${WORKDIR}/${MY_P}"
-SRC_URI="mirror://mplayer/releases/${MY_P}.tar.bz2
- 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
- svga? ( http://mplayerhq.hu/~alex/svgalib_helper-${SVGV}-mplayer.tar.bz2 )
- gtk? ( mirror://mplayer/Skin/Blue-${BLUV}.tar.bz2 )"
-
-# Only install Skin if GUI should be build (gtk as USE flag)
-DESCRIPTION="Media Player for Linux"
-HOMEPAGE="http://www.mplayerhq.hu/"
-
-# 'encode' in USE for MEncoder.
-RDEPEND="xvid? ( >=media-libs/xvid-0.9.0 )
- win32codecs? ( >=media-libs/win32codecs-20040916 )
- x86? ( real? ( >=media-video/realplayer-10.0.3 ) )
- aalib? ( media-libs/aalib )
- alsa? ( media-libs/alsa-lib )
- arts? ( kde-base/arts )
- bidi? ( dev-libs/fribidi )
- cdparanoia? ( media-sound/cdparanoia )
- dga? ( virtual/x11 )
- directfb? ( dev-libs/DirectFB )
- dts? ( media-libs/libdts )
- dvd? ( dvdread? ( media-libs/libdvdread ) )
- encode? (
- media-sound/lame
- dv? ( >=media-libs/libdv-0.9.5 )
- )
- esd? ( media-sound/esound )
- gif? ( || ( media-libs/giflib media-libs/libungif ) )
- ggi? ( media-libs/libggi )
- gtk? (
- media-libs/libpng
- virtual/x11
- =x11-libs/gtk+-1.2*
- =dev-libs/glib-1.2*
- )
- jpeg? ( media-libs/jpeg )
- libcaca? ( media-libs/libcaca )
- lirc? ( app-misc/lirc )
- lzo? ( dev-libs/lzo )
- mad? ( media-libs/libmad )
- nas? ( media-libs/nas )
- nls? ( sys-devel/gettext )
- vorbis? ( media-libs/libvorbis )
- opengl? ( virtual/opengl )
- png? ( media-libs/libpng )
- samba? ( >=net-fs/samba-2.2.8a )
- sdl? ( media-libs/libsdl )
- svga? ( media-libs/svgalib )
- theora? ( media-libs/libtheora )
- live? ( >=media-plugins/live-2004.07.20 )
- truetype? ( >=media-libs/freetype-2.1 )
- xinerama? ( virtual/x11 )
- jack? ( >=media-libs/bio2jack-0.4 )
- xmms? ( media-sound/xmms )
- xanim? ( >=media-video/xanim-2.80.1-r4 )
- sys-libs/ncurses"
-
-DEPEND="${RDEPEND}
- app-arch/unzip"
-
-SLOT="0"
-LICENSE="GPL-2"
-KEYWORDS="~alpha ~amd64 hppa ia64 ~ppc ~ppc64 ~sparc ~x86"
-
-# ecpu_check
-# Usage:
-#
-# ecpu_check array_of_cpu_flags
-#
-# array_of_cpu_flags - An array of cpu flags to check against USE flags
-#
-# Checks user USE related cpu flags against /proc/cpuinfo. If user enables a
-# cpu flag that is not supported in their processor flags, it will warn the
-# user if CROSSCOMPILE is not set to 1 ( because cross compile users are
-# obviously using different cpu flags than their own cpu ). Examples:
-#
-# CPU_FLAGS=(mmx mmx2 sse sse2)
-# ecpu_check CPU_FLAGS
-# Chris White <chriswhite@gentoo.org> (03 Feb 2005)
-
-ecpu_check() {
- # Think about changing below to: if [ "${CROSSCOMPILE}" -ne 1 -a -e "/proc/cpuinfo" ]
- # and dropping the else if you do not plan on adding anything to that
- # empty block ....
- # PS: also try to add some quoting, and consider rather using ${foo} than $foo ...
- if [ "${CROSSCOMPILE}" != "1" -a -e "/proc/cpuinfo" ]
- then
- CPU_FLAGS=${1}
- USER_CPU=`grep "flags" /proc/cpuinfo`
-
- for flags in `seq 1 ${#CPU_FLAGS[@]}`
- do
- if has ${CPU_FLAGS[${flags} - 1]} ${USER_CPU} && ! has ${CPU_FLAGS[${flags} - 1]} ${USE}
- then
- ewarn "Your system is ${CPU_FLAGS[${flags} - 1]} capable but you don't have it enabled!"
- ewarn "You might be cross compiling (in this case set CROSSCOMPILE to 1 to disable this warning."
- fi
-
- if ! has ${CPU_FLAGS[${flags} - 1]} ${USER_CPU} && has ${CPU_FLAGS[${flags} -1]} ${USE}
- then
- ewarn "You have ${CPU_FLAGS[${flags} - 1]} support enabled but your processor doesn't"
- ewarn "Seem to support it! You might be cross compiling or do not have /proc filesystem"
- ewarn "enabled. If either is the case, set CROSSCOMPILE to 1 to disable this warning."
- fi
- done
- fi
-}
-
-pkg_setup() {
- if use real && use x86; then
- REALLIBDIR="/opt/RealPlayer/codecs"
- fi
-}
-
-src_unpack() {
-
- unpack ${MY_P}.tar.bz2 \
- font-arial-iso-8859-1.tar.bz2 font-arial-iso-8859-2.tar.bz2 \
- font-arial-cp1250.tar.bz2
-
- use svga && unpack svgalib_helper-${SVGV}-mplayer.tar.bz2
-
- use gtk && unpack Blue-${BLUV}.tar.bz2
-
- cd ${S}
-
- #adds mythtv support to mplayer
- use mythtv && epatch ${FILESDIR}/mplayer-mythtv.patch
-
- # Fix hppa compilation
- [ "${ARCH}" = "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
-
- # Remove kernel-2.6 workaround as the problem it works around is
- # fixed, and the workaround breaks sparc
- use sparc && sed -i 's:#define __KERNEL__::' osdep/kerneltwosix.h
- epatch ${FILESDIR}/${PN}-1.0_pre6-ppc64.patch
-
- # Fix building with gcc4
- epatch ${FILESDIR}/${P}-gcc4.patch
-
- # fixes mplayer not seeing gcc 3.4-blahetc type
- # gcc versions. Half stolen from toolchain-funcs
- epatch ${FILESDIR}/${P}-gcc_detection.patch
-}
-
-linguas_warn() {
- ewarn "Language ${LANG[0]} or ${LANG_CC} not avaliable"
- ewarn "Language set to English"
- ewarn "If this is a mistake, please set the"
- ewarn "First LINGUAS language to one of the following"
- ewarn
- ewarn "bg - Bulgarian"
- ewarn "cz - Czech"
- ewarn "de - German"
- ewarn "dk - Danish"
- ewarn "el - Greek"
- ewarn "en - English"
- ewarn "es - Spanish"
- ewarn "fr - French"
- ewarn "hu - Hungarian"
- ewarn "ja - Japanese"
- ewarn "ko - Korean"
- ewarn "mk - FYRO Macedonian"
- ewarn "nl - Dutch"
- ewarn "no - Norwegian"
- ewarn "pl - Polish"
- ewarn "pt_BR - Portuguese - Brazil"
- ewarn "ro - Romanian"
- ewarn "ru - Russian"
- ewarn "sk - Slovak"
- ewarn "tr - Turkish"
- ewarn "uk - Ukranian"
- ewarn "zh_CN - Chinese - China"
- ewarn "zh_TW - Chinese - Taiwan"
- export LINGUAS="en ${LINGUAS}"
-}
-
-src_compile() {
-
- # have fun with LINGUAS variable
- if [[ -n $LINGUAS ]]
- then
- # LINGUAS has stuff in it, start the logic
- LANG=( $LINGUAS )
- if [ -e ${S}/help/help_mp-${LANG[0]}.h ]
- then
- einfo "Setting MPlayer messages to language: ${LANG[0]}"
- else
- LANG_CC=${LANG[0]}
- if [ ${#LANG_CC} -ge 2 ]
- then
- LANG_CC=${LANG_CC:0:2}
- if [ -e ${S}/help/help_mp-${LANG_CC}.h ]
- then
- einfo "Setting MPlayer messages to language ${LANG_CC}"
- export LINGUAS="${LANG_CC} ${LINGUAS}"
- else
- linguas_warn
- fi
- else
- linguas_warn
- fi
- fi
- else
- # sending blank LINGUAS, make it default to en
- einfo "No LINGUAS given, defaulting to English"
- export LINGUAS="en ${LINGUAS}"
- fi
-
-
- # check cpu flags
- if use x86 && use !cpudetection
- then
- CPU_FLAGS=(3dnow 3dnowext mmx sse sse2 mmxext)
- ecpu_check CPU_FLAGS
- fi
-
- 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 ; then
- replace-flags -O0 -O2
- replace-flags -O3 -O2
- filter-flags -fPIC -fPIE
- fi
- else
- unset CFLAGS CXXFLAGS
- fi
-
- local myconf=
- ################
- #Optional features#
- ###############
- myconf="${myconf} $(use_enable cpudetection runtime-cpudetection)"
- myconf="${myconf} $(use_enable bidi fribidi)"
- myconf="${myconf} $(use_enable cdparanoia)"
- if use dvd; then
- myconf="${myconf} $(use_enable dvdread) $(use_enable !dvdread mpdvdkit)"
- else
- myconf="${myconf} --disable-dvdread --disable-mpdvdkit"
- fi
- myconf="${myconf} $(use_enable edl)"
-
- if use encode ; then
- myconf="${myconf} --enable-mencoder $(use_enable dv libdv)"
- else
- myconf="${myconf} --disable-mencoder --disable-libdv"
- fi
-
- myconf="${myconf} $(use_enable gtk gui)"
-
- if use !gtk && use !X && use !xv && use !xinerama; then
- myconf="${myconf} --disable-gui --disable-x11 --disable-xv --disable-xmga --disable-xinerama --disable-vm --disable-xvmc"
- else
- #note we ain't touching --enable-vm. That should be locked down in the future.
- myconf="${myconf} --enable-x11 $(use_enable xinerama) $(use_enable xv) $(use_enable gtk gui)"
- fi
-
- # this looks like a hack, but the
- # --enable-dga needs a paramter, but there's no surefire
- # way to tell what it is.. so I'm letting MPlayer decide
- # the enable part
- if ! use dga && ! use 3dfx ; then
- myconf="${myconf} --disable-dga"
- fi
- # disable png *only* if gtk && png aren't on
- if use png || use gtk; then
- myconf="${myconf} --enable-png"
- else
- myconf="${myconf} --disable-png"
- fi
- myconf="${myconf} $(use_enable ipv6 inet6)"
- myconf="${myconf} $(use_enable joystick)"
- myconf="${myconf} $(use_enable lirc)"
- myconf="${myconf} $(use_enable live)"
- myconf="${myconf} $(use_enable rtc)"
- myconf="${myconf} $(use_enable samba smb)"
- myconf="${myconf} $(use_enable truetype freetype)"
- myconf="${myconf} $(use_enable v4l tv-v4l)"
- myconf="${myconf} $(use_enable v4l2 tv-v4l2)"
- myconf="${myconf} $(use_enable jack)"
-
- #########
- # Codecs #
- ########
- myconf="${myconf} --disable-divx4linux"
- myconf="${myconf} $(use_enable gif)"
- myconf="${myconf} $(use_enable jpeg)"
- #myconf="${myconf} $(use_enable ladspa)"
- myconf="${myconf} $(use_enable dts libdts)"
- myconf="${myconf} $(use_enable lzo liblzo)"
- myconf="${myconf} $(use_enable matroska internal-matroska)"
- myconf="${myconf} $(use_enable aac internal-faad)"
- myconf="${myconf} $(use_enable vorbis)"
- myconf="${myconf} $(use_enable theora)"
- myconf="${myconf} $(use_enable xmms)"
- myconf="${myconf} $(use_enable xvid)"
- use x86 && myconf="${myconf} $(use_enable real)"
- myconf="${myconf} $(use_enable win32codecs win32)"
-
- #############
- # Video Output #
- #############
- myconf="${myconf} $(use_enable 3dfx)"
- if use 3dfx; then
- myconf="${myconf} --enable-tdfxvid"
- else
- myconf="${myconf} --disable-tdfxvid"
- fi
- if use fbcon && use 3dfx; then
- myconf="${myconf} --enable-tdfxfb"
- else
- myconf="${myconf} --disable-tdfxfb"
- fi
-
- if use dvb ; then
- myconf="${myconf} --enable-dvbhead --with-dvbincdir=/usr/src/linux/include"
- else
- myconf="${myconf} --disable-dvbhead"
- fi
-
- use aalib || myconf="${myconf} --disable-aa"
- myconf="${myconf} $(use_enable directfb)"
- myconf="${myconf} $(use_enable fbcon fbdev)"
- myconf="${myconf} $(use_enable ggi)"
- myconf="${myconf} $(use_enable libcaca caca)"
- if use matrox && use X; then
- myconf="${myconf} $(use_enable matrox xmga)"
- fi
- myconf="${myconf} $(use_enable matrox mga)"
- myconf="${myconf} $(use_enable opengl gl)"
- myconf="${myconf} $(use_enable sdl)"
-
- if use svga
- then
- myconf="${myconf} --enable-svga"
- else
- myconf="${myconf} --disable-svga --disable-vidix"
- fi
-
- myconf="${myconf} $(use_enable tga)"
-
- ( use xvmc && use nvidia ) \
- && myconf="${myconf} --enable-xvmc --with-xvmclib=XvMCNVIDIA"
-
- ( use xvmc && use i8x0 ) \
- && myconf="${myconf} --enable-xvmc --with-xvmclib=I810XvMC"
-
- ( use xvmc && use nvidia && use i8x0 ) \
- && {
- eerror "Invalid combination of USE flags"
- eerror "When building support for xvmc, you may only"
- eerror "include support for one video card:"
- eerror " nvidia, i8x0"
- eerror
- eerror "Emerge again with different USE flags"
-
- exit 1
- }
-
- ( use xvmc && ! use nvidia && ! use i8x0 ) && {
- ewarn "You tried to build with xvmc support."
- ewarn "No supported graphics hardware was specified."
- ewarn
- ewarn "No xvmc support will be included."
- ewarn "Please one appropriate USE flag and re-emerge:"
- ewarn " nvidia or i8x0"
-
- myconf="${myconf} --disable-xvmc"
- }
-
- #############
- # Audio Output #
- #############
- myconf="${myconf} $(use_enable alsa)"
- myconf="${myconf} $(use_enable arts)"
- myconf="${myconf} $(use_enable esd)"
- myconf="${myconf} $(use_enable mad)"
- myconf="${myconf} $(use_enable nas)"
- myconf="${myconf} $(use_enable oss ossaudio)"
-
- #################
- # Advanced Options #
- #################
- # Platform specific flags, hardcoded on amd64 (see below)
- use x86 && myconf="${myconf} $(use_enable 3dnow)"
- use x86 && myconf="${myconf} $(use_enable 3dnowext 3dnowex)";
- use x86 && myconf="${myconf} $(use_enable sse)"
- use x86 && myconf="${myconf} $(use_enable sse2)"
- use x86 && myconf="${myconf} $(use_enable mmx)"
- use x86 && myconf="${myconf} $(use_enable mmxext mmx2)"
- myconf="${myconf} $(use_enable debug)"
- myconf="${myconf} $(use_enable nls i18n)"
-
- # mplayer now contains SIMD assembler code for amd64
- # AMD64 Team decided to hardenable SIMD assembler for all users
- # Danny van Dyk <kugelfang@gentoo.org> 2005/01/11
- if use amd64; then
- myconf="${myconf} --enable-3dnow --enable-3dnowex --enable-sse --enable-sse2 --enable-mmx --enable-mmx2"
- fi
-
- if use ppc64
- then
- myconf="${myconf} --disable-altivec"
- else
- myconf="${myconf} $(use_enable altivec)"
- use altivec && append-flags -maltivec -mabi=altivec
- fi
-
-
- if use xanim
- then
- myconf="${myconf} --with-xanimlibdir=/usr/lib/xanim/mods"
- fi
-
- if [ -e /dev/.devfsd ]
- then
- myconf="${myconf} --enable-linux-devfs"
- fi
-
- use xmms && myconf="${myconf} --with-xmmslibdir=/usr/$(get_libdir)"
-
- use live && myconf="${myconf} --with-livelibdir=/usr/$(get_libdir)/live"
-
- # support for blinkenlights
- use bl && myconf="${myconf} --enable-bl"
-
- #leave this in place till the configure/compilation borkage is completely corrected back to pre4-r4 levels.
- # it's intended for debugging so we can get the options we configure mplayer w/, rather then hunt about.
- # it *will* be removed asap; in the meantime, doesn't hurt anything.
- echo "${myconf}" > ${T}/configure-options
-
- ./configure \
- --prefix=/usr \
- --confdir=/usr/share/mplayer \
- --datadir=/usr/share/mplayer \
- --enable-largefiles \
- --enable-menu \
- --enable-network --enable-ftp \
- --with-reallibdir=${REALLIBDIR} \
- --with-x11incdir=/usr/X11R6/include \
- --disable-external-faad \
- ${myconf} || die
-
- # we run into problems if -jN > -j1
- # see #86245
- MAKEOPTS="${MAKEOPTS} -j1"
-
- einfo "Make"
- make depend && emake || die "Failed to build MPlayer!"
- einfo "Make completed"
-
- # We build the shared libpostproc.so here so that our
- # mplayer binary is not linked to it, ensuring that we
- # do not run into issues ... (bug #14479)
- cd ${S}/libavcodec/libpostproc
- make SHARED_PP="yes" || die "Failed to build libpostproc.so!"
-}
-
-src_install() {
-
- einfo "Make install"
- make prefix=${D}/usr \
- BINDIR=${D}/usr/bin \
- LIBDIR=${D}/usr/$(get_libdir) \
- CONFDIR=${D}/usr/share/mplayer \
- DATADIR=${D}/usr/share/mplayer \
- MANDIR=${D}/usr/share/man \
- install || die "Failed to install MPlayer!"
- einfo "Make install completed"
-
- dodoc AUTHORS ChangeLog README
- # 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
- 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
-
- # Install the default Skin and Gnome menu entry
- if use gtk; then
- dodir /usr/share/mplayer/Skin
- cp -r ${WORKDIR}/Blue ${D}/usr/share/mplayer/Skin/default || die
-
- # Fix the symlink
- rm -rf ${D}/usr/bin/gmplayer
- dosym mplayer /usr/bin/gmplayer
-
- insinto /usr/share/pixmaps
- newins ${S}/Gui/mplayer/pixmaps/logo.xpm mplayer.xpm
- insinto /usr/share/applications
- doins ${FILESDIR}/mplayer.desktop
- fi
-
- 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 -Rd ${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
-
- insinto /etc
- newins ${S}/etc/example.conf mplayer.conf
- dosed -e 's/include =/#include =/' /etc/mplayer.conf
- dosed -e 's/fs=yes/fs=no/' /etc/mplayer.conf
- dosym ../../../etc/mplayer.conf /usr/share/mplayer/mplayer.conf
-
- #mv the midentify script to /usr/bin for emovix.
- cp ${D}/usr/share/doc/${PF}/TOOLS/midentify ${D}/usr/bin
- chmod a+x ${D}/usr/bin/midentify
-
- insinto /usr/share/mplayer
- doins ${S}/etc/codecs.conf
- 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_postinst() {
-
- if use matrox; then
- depmod -a &>/dev/null || :
- fi
-
- if use alsa ; then
- einfo "For those using alsa, please note the ao driver name is no longer"
- einfo "alsa9x or alsa1x. It is now just 'alsa' (omit quotes)."
- einfo "The syntax for optional drivers has also changed. For example"
- einfo "if you use a dmix driver called 'dmixer,' use"
- einfo "ao=alsa:device=dmixer instead of ao=alsa:dmixer"
- einfo "Some users may not need to specify the extra driver with the ao="
- einfo "command."
- 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
-}
-