summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris White <chriswhite@gentoo.org>2005-03-20 17:23:04 +0000
committerChris White <chriswhite@gentoo.org>2005-03-20 17:23:04 +0000
commit4243dbfc64256510b0746b7d7fb24dc55a5cc3ce (patch)
tree8185f090f2c971471dfb7aa6a5b541dac72c9a7c /media-video/mplayer
parentRevision bump; apply patch against trunk to fix max label unhandled exception... (diff)
downloadhistorical-4243dbfc64256510b0746b7d7fb24dc55a5cc3ce.tar.gz
historical-4243dbfc64256510b0746b7d7fb24dc55a5cc3ce.tar.bz2
historical-4243dbfc64256510b0746b7d7fb24dc55a5cc3ce.zip
The big closer. Bug #51853 goes bye bye. MPlayer will now compile with pic and x86 without filtration.
Package-Manager: portage-2.0.51.19
Diffstat (limited to 'media-video/mplayer')
-rw-r--r--media-video/mplayer/ChangeLog9
-rw-r--r--media-video/mplayer/Manifest83
-rw-r--r--media-video/mplayer/files/digest-mplayer-1.0_pre6-r26
-rw-r--r--media-video/mplayer/files/mplayer-1.0_pre6-pic.patch285
-rw-r--r--media-video/mplayer/mplayer-1.0_pre6-r2.ebuild612
5 files changed, 954 insertions, 41 deletions
diff --git a/media-video/mplayer/ChangeLog b/media-video/mplayer/ChangeLog
index 5fb4cfec96ee..a35233201451 100644
--- a/media-video/mplayer/ChangeLog
+++ b/media-video/mplayer/ChangeLog
@@ -1,6 +1,13 @@
# 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.282 2005/03/20 04:01:12 chriswhite Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/mplayer/ChangeLog,v 1.283 2005/03/20 17:23:04 chriswhite Exp $
+
+*mplayer-1.0_pre6-r2 (21 Mar 2005)
+
+ 21 Mar 2005; Chris White <chriswhite@gentoo.org>
+ +files/mplayer-1.0_pre6-pic.patch, +mplayer-1.0_pre6-r2.ebuild:
+ The big closer. Bug #51853 goes bye bye. MPlayer will now compile with pic
+ and x86 without filtration.
20 Mar 2005; Chris White <chriswhite@gentoo.org>
mplayer-1.0_pre6-r1.ebuild:
diff --git a/media-video/mplayer/Manifest b/media-video/mplayer/Manifest
index e2968147b662..ff3a8aa980fb 100644
--- a/media-video/mplayer/Manifest
+++ b/media-video/mplayer/Manifest
@@ -1,58 +1,61 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
-MD5 a1ed43e3644e0eef95cd878a4bf2ead1 mplayer-1.0_pre5-r5.ebuild 16786
-MD5 c098282cf0148b2caac4682eceec5258 mplayer-1.0_pre5-r2.ebuild 14050
-MD5 788c97fffc9327cee36ea8b524db7606 mplayer-1.0_pre6-r1.ebuild 16491
-MD5 8f9db270042c019287fc969f41ac8801 mplayer-1.0_pre5-r4.ebuild 16480
+MD5 c2b43c2b4dd80b325e44727955f49f56 ChangeLog 52298
+MD5 31018765c8c65a239dba78a98c405543 metadata.xml 224
MD5 6922dce70bbab5cbe8c21e003ffd5226 mplayer-1.0_pre4-r7.ebuild 12234
-MD5 91927f2b5f01fbba4e3c2e553e153bff ChangeLog 52037
+MD5 c098282cf0148b2caac4682eceec5258 mplayer-1.0_pre5-r2.ebuild 14050
MD5 a899c1b15e110f948f5eaba5746a7016 mplayer-1.0_pre5-r3.ebuild 14739
-MD5 31018765c8c65a239dba78a98c405543 metadata.xml 224
-MD5 9ca8563e7f6df3496b972f87feabd6c0 files/mplayer-1.0_pre6-configure.patch 534
-MD5 7f52d1618f675149115ecf8d313b497e files/mplayer-1.0_pre5-yuv2rgb_fix.patch 19505
-MD5 65d49d490b98ac8cabcafc5cb439825c files/mplayer-odml.patch 730
-MD5 59120b22317a30fb88a5e4946eaed3f0 files/mplayer-nl.patch 673
-MD5 5cc95d6b380dc27e5ceae0f53ab88f99 files/mplayer-1.0_pre5-mga-kernel-2.6.patch 15043
+MD5 8f9db270042c019287fc969f41ac8801 mplayer-1.0_pre5-r4.ebuild 16480
+MD5 a1ed43e3644e0eef95cd878a4bf2ead1 mplayer-1.0_pre5-r5.ebuild 16786
+MD5 788c97fffc9327cee36ea8b524db7606 mplayer-1.0_pre6-r1.ebuild 16491
+MD5 a535eef0cbde3917672511ab0e6b0b65 mplayer-1.0_pre6-r2.ebuild 17304
+MD5 484c45fb52a157c6b056b4298f787f3d files/cachefill.patch 6053
+MD5 e4581f6934f66ccecc8c1682664623d0 files/digest-mplayer-1.0_pre4-r7 358
+MD5 0c3c71bf461e94d4dcffabab341ddeec files/digest-mplayer-1.0_pre5-r2 440
+MD5 0c3c71bf461e94d4dcffabab341ddeec files/digest-mplayer-1.0_pre5-r3 440
+MD5 3e0467a312a41645fdc9e65b1caf6e83 files/digest-mplayer-1.0_pre5-r4 510
+MD5 f56773d6c12d0e9bf91edfe8a1f7551d files/digest-mplayer-1.0_pre5-r5 514
+MD5 7d81475ff0d1ba01de3b714d6dcc4891 files/gui_vuln_code.patch 17981
+MD5 a71fc9832d953424652af1125fb7ea64 files/mplayer-0.90-coreutils-fixup.patch 1857
+MD5 c54c7ba8e18c8e7f3412c6d6939d010a files/mplayer-1.0-gtk2.patch 5903
+MD5 a9fa1b94e4e3842e2c5e552644b03eaa files/mplayer-1.0_pre4-alsa-gcc34.patch 299
MD5 a39bd930af792269808dc4bdbc382fbb files/mplayer-1.0_pre4-altivec-gcc34.patch 650
+MD5 42733acde24d84c1482db03c777360ab files/mplayer-1.0_pre4-help_mp-ro.h.patch 3267
+MD5 09766023054d07a5f795eda66f247c42 files/mplayer-1.0_pre4-mpst.patch 459
+MD5 1479661ba42d9647f03f2029efcc8565 files/mplayer-1.0_pre5-bio2jack.patch 2691
+MD5 5c931dfafbd010eab985c7f427e2cb8b files/mplayer-1.0_pre5-configure.patch 1281
+MD5 443b9526abb33e4e9f8786f764253b53 files/mplayer-1.0_pre5-gcc_detection.patch 445
+MD5 4be5ce1a1c93b8d40bc961468fcc1aa7 files/mplayer-1.0_pre5-live.patch 378
+MD5 5cc95d6b380dc27e5ceae0f53ab88f99 files/mplayer-1.0_pre5-mga-kernel-2.6.patch 15043
MD5 1056be7554e42ba655fd7423fe6baad7 files/mplayer-1.0_pre5-mips64.patch 459
-MD5 d58a5b4657be0c3010eff827e6970371 files/mplayer-gif.patch 1694
-MD5 1f9260386b063367f192b6d5d65d6aea files/real_demux.patch 3107
MD5 d77341e4aea32e3e992f01ce5cc12ae0 files/mplayer-1.0_pre5-r1-conf_locale.patch 853
-MD5 a71fc9832d953424652af1125fb7ea64 files/mplayer-0.90-coreutils-fixup.patch 1857
-MD5 6748b8218fbe9ff36efcec61c749a346 files/mplayer-1.0_pre6-codecs.patch 1264
+MD5 f2d6c259271fd9abc036acd72a26d376 files/mplayer-1.0_pre5-r4-ppc64.patch 597
MD5 a657a67a5658b998acc23a00ffa3951e files/mplayer-1.0_pre5-r5-configure.patch 613
+MD5 7f52d1618f675149115ecf8d313b497e files/mplayer-1.0_pre5-yuv2rgb_fix.patch 19505
+MD5 9ca8563e7f6df3496b972f87feabd6c0 files/mplayer-1.0_pre6-configure.patch 534
+MD5 0ea2e07703fc2105a7f3d265106e9b1f files/mplayer-1.0_pre6-ppc64.patch 353
+MD5 475b283b41206562f0ee5ad28ff141e7 files/mplayer-avi_crash.patch 1388
MD5 efe0d2d4856bdb10685bf499d2b6803a files/mplayer-gcc_detection.patch 390
+MD5 d58a5b4657be0c3010eff827e6970371 files/mplayer-gif.patch 1694
+MD5 68f89231bdbc972ac6abf45a135c8282 files/mplayer-jack.patch 272
+MD5 38c7908ce49f7f6a272993ba5bc9dd09 files/mplayer-mythtv.patch 13755
+MD5 59120b22317a30fb88a5e4946eaed3f0 files/mplayer-nl.patch 673
+MD5 65d49d490b98ac8cabcafc5cb439825c files/mplayer-odml.patch 730
MD5 4530ba68fc882c8c4b1fc3a2399d3152 files/mplayer-x11.patch 593
-MD5 475b283b41206562f0ee5ad28ff141e7 files/mplayer-avi_crash.patch 1388
-MD5 09766023054d07a5f795eda66f247c42 files/mplayer-1.0_pre4-mpst.patch 459
-MD5 c39b2e0baa9cc24d22b62765776426ad files/str_undefined.patch 1845
-MD5 443b9526abb33e4e9f8786f764253b53 files/mplayer-1.0_pre5-gcc_detection.patch 445
MD5 2dc9c3b558bde75c56ddd33331a5d04d files/mplayer.desktop 793
-MD5 1479661ba42d9647f03f2029efcc8565 files/mplayer-1.0_pre5-bio2jack.patch 2691
-MD5 7d81475ff0d1ba01de3b714d6dcc4891 files/gui_vuln_code.patch 17981
+MD5 1f9260386b063367f192b6d5d65d6aea files/real_demux.patch 3107
+MD5 c39b2e0baa9cc24d22b62765776426ad files/str_undefined.patch 1845
MD5 e614f6546020b77ced4ba12c36e5b51e files/strl.c 950
-MD5 c54c7ba8e18c8e7f3412c6d6939d010a files/mplayer-1.0-gtk2.patch 5903
-MD5 5c931dfafbd010eab985c7f427e2cb8b files/mplayer-1.0_pre5-configure.patch 1281
-MD5 38c7908ce49f7f6a272993ba5bc9dd09 files/mplayer-mythtv.patch 13755
-MD5 f2d6c259271fd9abc036acd72a26d376 files/mplayer-1.0_pre5-r4-ppc64.patch 597
MD5 34f948b8f242a2aadb53a1e2b00e3155 files/vuln02-fix.diff 467
-MD5 0ea2e07703fc2105a7f3d265106e9b1f files/mplayer-1.0_pre6-ppc64.patch 353
-MD5 e4581f6934f66ccecc8c1682664623d0 files/digest-mplayer-1.0_pre4-r7 358
-MD5 0c3c71bf461e94d4dcffabab341ddeec files/digest-mplayer-1.0_pre5-r2 440
-MD5 0c3c71bf461e94d4dcffabab341ddeec files/digest-mplayer-1.0_pre5-r3 440
-MD5 3e0467a312a41645fdc9e65b1caf6e83 files/digest-mplayer-1.0_pre5-r4 510
-MD5 f56773d6c12d0e9bf91edfe8a1f7551d files/digest-mplayer-1.0_pre5-r5 514
MD5 13bcf07a21789edf9b2f7b7935828b5b files/digest-mplayer-1.0_pre6-r1 429
-MD5 a9fa1b94e4e3842e2c5e552644b03eaa files/mplayer-1.0_pre4-alsa-gcc34.patch 299
-MD5 484c45fb52a157c6b056b4298f787f3d files/cachefill.patch 6053
-MD5 42733acde24d84c1482db03c777360ab files/mplayer-1.0_pre4-help_mp-ro.h.patch 3267
-MD5 4be5ce1a1c93b8d40bc961468fcc1aa7 files/mplayer-1.0_pre5-live.patch 378
-MD5 68f89231bdbc972ac6abf45a135c8282 files/mplayer-jack.patch 272
+MD5 6748b8218fbe9ff36efcec61c749a346 files/mplayer-1.0_pre6-codecs.patch 1264
+MD5 13bcf07a21789edf9b2f7b7935828b5b files/digest-mplayer-1.0_pre6-r2 429
+MD5 71776b99a9550d28e282f420f523ae33 files/mplayer-1.0_pre6-pic.patch 8546
-----BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.1 (GNU/Linux)
+Version: GnuPG v1.4.0 (GNU/Linux)
-iD8DBQFCPXlhI1lqEGTUzyQRAql2AJ94eQ7L4DUCltFNGCpluf+JxkGYigCgtTSC
-omLoJu8vS8rlagRrO2j1ZIw=
-=P0NL
+iD8DBQFCPam1FdQwWVoAgN4RAkWcAKC3zVM9cQafP/vj7eiv5FZ1hVOhPgCgqaWW
+z+sc03KqRhw2YV1mYDDoY+U=
+=Yvks
-----END PGP SIGNATURE-----
diff --git a/media-video/mplayer/files/digest-mplayer-1.0_pre6-r2 b/media-video/mplayer/files/digest-mplayer-1.0_pre6-r2
new file mode 100644
index 000000000000..e1f275c04592
--- /dev/null
+++ b/media-video/mplayer/files/digest-mplayer-1.0_pre6-r2
@@ -0,0 +1,6 @@
+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
diff --git a/media-video/mplayer/files/mplayer-1.0_pre6-pic.patch b/media-video/mplayer/files/mplayer-1.0_pre6-pic.patch
new file mode 100644
index 000000000000..230f9cda6b12
--- /dev/null
+++ b/media-video/mplayer/files/mplayer-1.0_pre6-pic.patch
@@ -0,0 +1,285 @@
+--- configure.old 2005-03-20 13:19:29.000000000 +0900
++++ configure 2005-03-20 13:20:40.000000000 +0900
+@@ -6370,21 +6375,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
+--- libavcodec/common.h.old 2005-03-20 13:36:31.000000000 +0900
++++ libavcodec/common.h 2005-03-20 13:36:54.000000000 +0900
+@@ -1255,24 +1255,12 @@
+ #endif
+
+
+-#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" (y), "r" (b), "r" (d)\
+-);
+-#else
+ #define COPY3_IF_LT(x,y,a,b,c,d)\
+ if((y)<(x)){\
+ (x)=(y);\
+ (a)=(b);\
+ (c)=(d);\
+ }
+-#endif
+
+ #if defined(ARCH_X86) || defined(ARCH_X86_64)
+ static inline long long rdtsc(void)
+--- postproc/swscale_template.c.old 2005-03-20 14:50:33.000000000 +0900
++++ postproc/swscale_template.c 2005-03-20 14:53:44.000000000 +0900
+@@ -2334,7 +2334,11 @@
+
+
+ :: "r" (src), "m" (dst), "m" (dstWidth), "m" (xInc>>16), "m" (xInc&0xFFFF)
++#ifdef __PIC__ // remove registers from the clober list. This prevents gcc and pic from dying
++ : "%ecx", "%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__ // remove registers from the clober list. This prevents gcc and pic from dying
++ : "%ecx", "%esi"
++#else
+ : "%"REG_a, "%"REG_b, "%ecx", "%"REG_D, "%esi"
++#endif
+ );
+ #ifdef HAVE_MMX2
+ } //if MMX2 can't be used
+--- postproc/rgb2rgb_template.c.old 2005-03-20 14:54:15.000000000 +0900
++++ postproc/rgb2rgb_template.c 2005-03-20 14:55:41.000000000 +0900
+@@ -2173,7 +2173,10 @@
+ "add $8, %%"REG_a" \n\t"
+ " js 1b \n\t"
+ : : "r" (src+width*3), "r" (ydst+width), "g" ((long)-width)
++#ifdef __PIC__ // remove registers from the clober list. This prevents gcc and pic from dying
++#else
+ : "%"REG_a, "%"REG_b
++#endif
+ );
+ ydst += lumStride;
+ src += srcStride;
+@@ -2325,7 +2328,10 @@
+ "add $4, %%"REG_a" \n\t"
+ " js 1b \n\t"
+ : : "r" (src+chromWidth*6), "r" (src+srcStride+chromWidth*6), "r" (udst+chromWidth), "r" (vdst+chromWidth), "g" ((long)-chromWidth)
++#ifdef __PIC__ // remove registers from the clober list. This prevents gcc and pic from dying
++#else
+ : "%"REG_a, "%"REG_b
++#endif
+ );
+
+ udst += chromStride;
+--- postproc/yuv2rgb.c.old 2005-03-20 14:55:59.000000000 +0900
++++ postproc/yuv2rgb.c 2005-03-20 14:56:22.000000000 +0900
+@@ -580,7 +580,7 @@
+
+ SwsFunc yuv2rgb_get_func_ptr (SwsContext *c)
+ {
+-#if defined(ARCH_X86) || defined(ARCH_X86_64)
++#if defined(ARCH_X86) && !defined(__PIC__) || defined(ARCH_X86_64)
+ if(c->flags & SWS_CPU_CAPS_MMX2){
+ switch(c->dstFormat){
+ case IMGFMT_BGR32: return yuv420_rgb32_MMX2;
+--- libvo/osd_template.c.old 2005-03-20 15:37:23.000000000 +0900
++++ libvo/osd_template.c 2005-03-20 15:38:26.000000000 +0900
+@@ -293,7 +293,7 @@
+ #endif
+ for(y=0;y<h;y++){
+ register int x;
+-#if defined(ARCH_X86) || defined(ARCH_X86_64)
++#if defined(ARCH_X86) && !defined(__PIC__) || defined(ARCH_X86_64)
+ #ifdef HAVE_MMX
+ #ifdef HAVE_3DNOW
+ asm volatile(
+--- mp3lib/Makefile.old 2005-03-20 16:06:38.000000000 +0900
++++ mp3lib/Makefile 2005-03-20 16:09:58.000000000 +0900
+@@ -11,13 +11,17 @@
+ ifeq ($(TARGET_ARCH_X86),yes)
+ SRCS += decode_i586.c
+ OBJS += decode_i586.o
++ifeq ($(TARGET_MMX),yes)
+ SRCS += decode_MMX.c dct64_MMX.c tabinit_MMX.c
+ OBJS += decode_MMX.o dct64_MMX.o tabinit_MMX.o
++endif
++ifeq ($(TARGET_3DNOW),yes)
+ SRCS += dct36_3dnow.c dct64_3dnow.c
+ OBJS += dct36_3dnow.o dct64_3dnow.o
+ SRCS += dct36_k7.c dct64_k7.c
+ OBJS += dct36_k7.o dct64_k7.o
+ endif
++endif
+ ifeq ($(TARGET_ARCH_POWERPC),yes)
+ ifeq ($(TARGET_ALTIVEC),yes)
+ SRCS += dct64_altivec.c
+--- liba52/imdct.c.old 2005-03-20 16:14:03.000000000 +0900
++++ liba52/imdct.c 2005-03-20 16:23:41.000000000 +0900
+@@ -753,10 +753,9 @@
+ 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 };
+
+-#undef HAVE_3DNOWEX
+-#include "imdct_3dnow.h"
+-#define HAVE_3DNOWEX
++#ifdef HAVE_3DNOWEX
+ #include "imdct_3dnow.h"
++#endif
+
+ void
+ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
+@@ -782,16 +781,27 @@
+ /* Pre IFFT complex multiply plus IFFT cmplx conjugate */
+ /* Bit reversed shuffling */
+ asm volatile(
++#ifdef __PIC__
++ "pushl %%ebx\n\t"
++#endif
+ "xorl %%esi, %%esi \n\t"
+ "leal "MANGLE(bit_reverse_512)", %%eax \n\t"
+ "movl $1008, %%edi \n\t"
+ "pushl %%ebp \n\t" //use ebp without telling gcc
+ ".balign 16 \n\t"
+ "1: \n\t"
++#ifdef __PIC_
+ "movlps (%0, %%esi), %%xmm0 \n\t" // XXXI
+ "movhps 8(%0, %%edi), %%xmm0 \n\t" // RXXI
+ "movlps 8(%0, %%esi), %%xmm1 \n\t" // XXXi
+ "movhps (%0, %%edi), %%xmm1 \n\t" // rXXi
++#else
++ "movl %[data], %%ebx\n\t"
++ "movlps (%%ebx, %%esi), %%xmm0\n\t"
++ "movhps 8(%%ebx, %%edi), %%xmm0\n\t"
++ "movlps 8(%%ebx, %%esi), %%xmm1\n\t"
++ "movhps (%%ebx,%%edi), %%xmm1\n\t"
++#endif
+ "shufps $0x33, %%xmm1, %%xmm0 \n\t" // irIR
+ "movaps "MANGLE(sseSinCos1c)"(%%esi), %%xmm2\n\t"
+ "mulps %%xmm0, %%xmm2 \n\t"
+@@ -807,7 +817,14 @@
+ "subl $16, %%edi \n\t"
+ " jnc 1b \n\t"
+ "popl %%ebp \n\t"//no we didnt touch ebp *g*
++#ifdef __PIC__
++ "popl %%ebx\n\t"
++#endif
++#ifndef __PIC__
+ :: "b" (data), "c" (buf)
++#else
++ :: [data] "g" (data), "c" (buf)
++#endif
+ : "%esi", "%edi", "%eax", "%edx"
+ );
+
+@@ -1302,7 +1319,7 @@
+ #endif // arch_x86
+
+ imdct_512 = imdct_do_512;
+-#ifdef ARCH_X86
++#if defined(ARCH_X86) && !defined(__PIC__)
+ if(mm_accel & MM_ACCEL_X86_SSE)
+ {
+ fprintf (stderr, "Using SSE optimized IMDCT transform\n");
+--- mp3lib/decod386.c.old 2005-03-20 16:34:43.000000000 +0900
++++ mp3lib/decod386.c 2005-03-20 16:35:01.000000000 +0900
+@@ -117,7 +117,7 @@
+
+ static synth_func_t synth_func;
+
+-#if defined(CAN_COMPILE_X86_ASM)
++#if defined(CAN_COMPILE_X86_ASM) && !defined(__PIC__)
+ int synth_1to1_MMX( real *bandPtr,int channel,short * samples)
+ {
+ static short buffs[2][2][0x110];
+--- mp3lib/mpg123.h.old 2005-03-20 16:33:45.000000000 +0900
++++ mp3lib/mpg123.h 2005-03-20 16:33:35.000000000 +0900
+@@ -111,13 +111,17 @@
+ extern real *mp3lib_pnts[];
+
+ extern int synth_1to1_pent( real *,int,short * );
++#ifndef __PIC__
+ extern void make_decode_tables_MMX(long scaleval);
+ extern int synth_1to1_MMX( real *,int,short * );
+ extern int synth_1to1_MMX_s(real *, int, short *, short *, int *);
++#endif
+ extern void dct64(real *a,real *b,real *c);
+
++#ifndef __PIC__
+ extern void dct36_3dnow(real *,real *,real *,real *,real *);
+ extern void dct36_3dnowex(real *,real *,real *,real *,real *);
++#endif
+ extern void dct36_sse(real *,real *,real *,real *,real *);
+
+ typedef int (*synth_func_t)( real *,int,short * );
+--- mp3lib/sr1.c.old 2005-03-20 16:38:53.000000000 +0900
++++ mp3lib/sr1.c 2005-03-20 16:31:33.000000000 +0900
+@@ -383,10 +383,12 @@
+ /******************************************************************************/
+
+ /* It's hidden from gcc in assembler */
++#ifndef __PIC__
+ extern void dct64_MMX(real *, real *, real *);
+ extern void dct64_MMX_3dnow(real *, real *, real *);
+ extern void dct64_MMX_3dnowex(real *, real *, real *);
+ void (*dct64_MMX_func)(real *, real *, real *);
++#endif
+
+ #include "../cpudetect.h"
+
+@@ -406,6 +408,7 @@
+
+ #ifdef CAN_COMPILE_X86_ASM
+
++#ifndef __PIC__
+ if (gCpuCaps.hasMMX)
+ {
+ _has_mmx = 1;
+@@ -434,6 +437,7 @@
+ mp_msg(MSGT_DECAUDIO,MSGL_V,"mp3lib: using MMX optimized decore!\n");
+ }
+ else
++#endif
+ if (gCpuCaps.cpuType >= CPUTYPE_I586)
+ {
+ synth_func = synth_1to1_pent;
+--- mp3lib/decode_i586.c.old 2005-03-21 00:08:25.000000000 +0900
++++ mp3lib/decode_i586.c 2005-03-21 00:07:58.000000000 +0900
+@@ -307,6 +307,10 @@
+ " movl "MANGLE(saved_ebp)",%%ebp\n\t"
+ :"=a"(retval)
+ :"m"(bandPtr),"m"(channel),"m"(samples),"m"(tmp[0])
++#ifdef __PIC__
++ :"memory", "%edi", "%esi");
++#else
+ :"memory","%edi","%esi","%ebx");
++#endif
+ return retval;
+ }
diff --git a/media-video/mplayer/mplayer-1.0_pre6-r2.ebuild b/media-video/mplayer/mplayer-1.0_pre6-r2.ebuild
new file mode 100644
index 000000000000..4808729cbd42
--- /dev/null
+++ b/media-video/mplayer/mplayer-1.0_pre6-r2.ebuild
@@ -0,0 +1,612 @@
+# 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-r2.ebuild,v 1.1 2005/03/20 17:23:04 chriswhite Exp $
+
+inherit eutils flag-o-matic kernel-mod
+
+RESTRICT="nostrip"
+IUSE="3dfx 3dnow 3dnowex aalib alsa altivec arts avi bidi debug dga divx4linux 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? (
+ divx4linux? ( >=media-libs/divx4linux-20030428 )
+ 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"
+
+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
+
+ # fixes -fPIC handling
+ sed -i -e 's/#if\(\(.*def *\)\|\(.*defined *\)\)PIC/#if\1__PIC__/' \
+ libavcodec/i386/dsputil_mmx{.c,_rnd.h} \
+ libavcodec/msmpeg4.c \
+ libavcodec/libpostproc/mangle.h \
+ libavcodec/common.h \
+ || die "sed failed (__PIC__)"
+
+ epatch ${FILESDIR}/${P}-pic.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
+ then
+ CPU_FLAGS=(3dnow 3dnowex 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} $(use_enable 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)"
+
+ # x86+pic doesn't like mp3lib despite patches
+ # disable it and use internal ffmpeg's mp3 decoder instead
+ if use x86 && has_pic ; then
+ myconf="${myconf} --disable-mp3lib"
+ fi
+
+ #############
+ # 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 #
+ #################
+
+ if has_pic && use x86 || use !mmx; then
+ myconf="${myconf} --disable-mmx"
+ else
+ myconf="${myconf} --enable-mmx"
+ fi
+
+ if has_pic && use x86 || use !mmxext; then
+ myconf="${myconf} --disable-mmx2"
+ else
+ myconf="${myconf} --enable-mmx2"
+ fi
+
+ if has_pic && use x86 || use !3dnow; then
+ myconf="${myconf} --disable-3dnow"
+ else
+ myconf="${myconf} --enable-3dnow"
+ fi
+
+ if has_pic && use x86 || use !3dnowex; then
+ myconf="${myconf} --disable-3dnowex"
+ else
+ myconf="${myconf} --enable-3dnowex"
+ fi
+
+ myconf="${myconf} $(use_enable sse)"
+ myconf="${myconf} $(use_enable sse2)"
+ 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
+
+ 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
+ fi
+
+ insinto /usr/share/pixmaps
+ newins ${S}/Gui/mplayer/pixmaps/logo.xpm mplayer.xpm
+ insinto /usr/share/applications
+ doins ${FILESDIR}/mplayer.desktop
+
+ 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
+}
+