From ecaa3942b14e23b940ecdc7ca835eb48d31d023b Mon Sep 17 00:00:00 2001 From: Stefan Fiedler Date: Fri, 4 Nov 2005 17:34:44 +0000 Subject: [PATCH] Stefan Fiedler: mplayer: adapt patch for gcc40 from T2 don't install postproc.h, ffmpeg already does Index: package/jimmy/mplayer/gcc4-fix.patch =================================================================== [2005102619085918661] (https://www.rocklinux.net/submaster) git-svn-id: http://www.rocklinux.org/svn/rock-linux/trunk@6593 c5f82cb5-29bc-0310-9cd0-bff59a50e3bc --- .../jimmy/mplayer/ffmpeg-shared-file.patch | 11 + package/jimmy/mplayer/gcc4-fix.patch | 190 ++++++++++++++++++ package/jimmy/mplayer/mplayer.conf | 3 + 3 files changed, 204 insertions(+) create mode 100644 package/jimmy/mplayer/ffmpeg-shared-file.patch create mode 100644 package/jimmy/mplayer/gcc4-fix.patch diff --git a/package/jimmy/mplayer/ffmpeg-shared-file.patch b/package/jimmy/mplayer/ffmpeg-shared-file.patch new file mode 100644 index 000000000..78695fe5d --- /dev/null +++ b/package/jimmy/mplayer/ffmpeg-shared-file.patch @@ -0,0 +1,11 @@ +--- MPlayer-1.0pre7try2/libavcodec/libpostproc/Makefile~ 2005-04-16 22:41:13.000000000 +0200 ++++ MPlayer-1.0pre7try2/libavcodec/libpostproc/Makefile 2005-10-26 03:24:19.000000000 +0200 +@@ -61,7 +61,7 @@ + endif + endif + mkdir -p $(prefix)/include/postproc +- install -m 644 postprocess.h $(prefix)/include/postproc/postprocess.h ++# install -m 644 postprocess.h $(prefix)/include/postproc/postprocess.h + + + # diff --git a/package/jimmy/mplayer/gcc4-fix.patch b/package/jimmy/mplayer/gcc4-fix.patch new file mode 100644 index 000000000..3a21aa664 --- /dev/null +++ b/package/jimmy/mplayer/gcc4-fix.patch @@ -0,0 +1,190 @@ +# --- T2-COPYRIGHT-NOTE-BEGIN --- +# This copyright note is auto-generated by ./scripts/Create-CopyPatch. +# +# T2 SDE: package/.../mplayer/gcc4-fix.patch +# Copyright (C) 2004 - 2005 The T2 SDE Project +# +# More information can be found in the files COPYING and README. +# +# This patch file is dual-licensed. It is available under the license the +# patched project is licensed under, as long as it is an OpenSource license +# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms +# of the GNU General Public License as published by the Free Software +# Foundation; either version 2 of the License, or (at your option) any later +# version. +# --- T2-COPYRIGHT-NOTE-END --- +diff -Nur MPlayer-1.0pre7.orig/liba52/imdct.c MPlayer-1.0pre7/liba52/imdct.c +--- MPlayer-1.0pre7.orig/liba52/imdct.c 2005-03-23 01:27:18.000000000 +0200 ++++ MPlayer-1.0pre7/liba52/imdct.c 2005-09-25 10:31:27.000000000 +0300 +@@ -937,7 +937,8 @@ + /* 4-7. iterations */ + for (m=3; m < 7; m++) { + two_m = (1 << m); +- two_m_plus_one = two_m<<1; ++ int two_m_plus_four=two_m<<4; ++ complex_t* buf_plus_128=buf+128; + asm volatile( + "movl %0, %%esi \n\t" + ".balign 16 \n\t" +@@ -963,7 +964,7 @@ + "addl %2, %%esi \n\t" + "cmpl %1, %%esi \n\t" + " jb 1b \n\t" +- :: "g" (buf), "m" (buf+128), "m" (two_m_plus_one<<3), "r" (two_m<<3), ++ :: "g" (buf), "m" (buf_plus_128), "m" (two_m_plus_four), "r" (two_m<<3), + "r" (sseW[m]) + : "%esi", "%edi", "%edx" + ); +diff -Nur MPlayer-1.0pre7.orig/libavcodec/libpostproc/postprocess_template.c MPlayer-1.0pre7/libavcodec/libpostproc/postprocess_template.c +--- MPlayer-1.0pre7.orig/libavcodec/libpostproc/postprocess_template.c 2005-04-16 23:41:13.000000000 +0300 ++++ MPlayer-1.0pre7/libavcodec/libpostproc/postprocess_template.c 2005-09-25 10:31:27.000000000 +0300 +@@ -2648,6 +2648,8 @@ + static always_inline void RENAME(do_a_deblock)(uint8_t *src, int step, int stride, PPContext *c){ + int64_t dc_mask, eq_mask; + int64_t sums[10*8*2]; ++ int64_t dc_and_eq_mask; ++ + src+= step*3; // src points to begin of the 8x8 Block + //START_TIMER + asm volatile( +@@ -2754,8 +2756,9 @@ + : "r" (src), "r" ((long)step), "m" (c->pQPb), "m"(c->ppMode.flatnessThreshold) + : "%"REG_a + ); ++ dc_and_eq_mask=dc_mask & eq_mask; + +- if(dc_mask & eq_mask){ ++ if(dc_and_eq_mask){ + long offset= -8*step; + int64_t *temp_sums= sums; + +@@ -2930,7 +2933,7 @@ + " js 1b \n\t" + + : "+r"(offset), "+r"(temp_sums) +- : "r" ((long)step), "r"(src - offset), "m"(dc_mask & eq_mask) ++ : "r" ((long)step), "r"(src - offset), "m"(dc_and_eq_mask) + ); + }else + src+= step; // src points to begin of the 8x8 Block +diff -Nur MPlayer-1.0pre7.orig/libmpdemux/frequencies.h MPlayer-1.0pre7/libmpdemux/frequencies.h +--- MPlayer-1.0pre7.orig/libmpdemux/frequencies.h 2001-11-17 00:06:48.000000000 +0200 ++++ MPlayer-1.0pre7/libmpdemux/frequencies.h 2005-09-25 10:31:27.000000000 +0300 +@@ -104,7 +104,7 @@ + /* --------------------------------------------------------------------- */ + + extern struct CHANLISTS chanlists[]; +-extern struct STRTAB chanlist_names[]; ++/* extern struct STRTAB chanlist_names[]; */ + + extern int chantab; + extern struct CHANLIST *chanlist; +diff -Nur MPlayer-1.0pre7.orig/libvo/aclib_template.c MPlayer-1.0pre7/libvo/aclib_template.c +--- MPlayer-1.0pre7.orig/libvo/aclib_template.c 2005-01-21 23:11:35.000000000 +0200 ++++ MPlayer-1.0pre7/libvo/aclib_template.c 2005-09-25 10:31:27.000000000 +0300 +@@ -249,8 +249,8 @@ + MOVNTQ" %%mm6, 48(%1)\n" + MOVNTQ" %%mm7, 56(%1)\n" + :: "r" (from), "r" (to) : "memory"); +- ((const unsigned char *)from)+=64; +- ((unsigned char *)to)+=64; ++ from+=64; ++ to+=64; + } + + // printf(" %d %d\n", (int)from&1023, (int)to&1023); +@@ -338,8 +338,8 @@ + MOVNTQ" %%mm6, 48(%1)\n" + MOVNTQ" %%mm7, 56(%1)\n" + :: "r" (from), "r" (to) : "memory"); +- ((const unsigned char *)from)+=64; +- ((unsigned char *)to)+=64; ++ from+=64; ++ to+=64; + } + + #endif /* Have SSE */ +diff -Nur MPlayer-1.0pre7.orig/mmx.h MPlayer-1.0pre7/mmx.h +--- MPlayer-1.0pre7.orig/mmx.h 2001-10-28 13:47:21.000000000 +0200 ++++ MPlayer-1.0pre7/mmx.h 2005-09-25 10:31:27.000000000 +0300 +@@ -353,11 +353,11 @@ + #define mmx_m2r(op, mem, reg) \ + __asm__ __volatile__ (#op " %0, %%" #reg \ + : /* nothing */ \ +- : "X" (mem)) ++ : "m" (mem)) + + #define mmx_r2m(op, reg, mem) \ + __asm__ __volatile__ (#op " %%" #reg ", %0" \ +- : "=X" (mem) \ ++ : "=m" (mem) \ + : /* nothing */ ) + + #define mmx_r2r(op, regs, regd) \ +@@ -367,8 +367,8 @@ + __asm__ __volatile__ ("movq %0, %%mm0\n\t" \ + #op " %1, %%mm0\n\t" \ + "movq %%mm0, %0" \ +- : "=X" (memd) \ +- : "X" (mems)) ++ : "=m" (memd) \ ++ : "m" (mems)) + + #endif + +diff -Nur MPlayer-1.0pre7.orig/postproc/swscale_template.c MPlayer-1.0pre7/postproc/swscale_template.c +--- MPlayer-1.0pre7.orig/postproc/swscale_template.c 2005-02-17 01:47:00.000000000 +0200 ++++ MPlayer-1.0pre7/postproc/swscale_template.c 2005-09-25 10:31:27.000000000 +0300 +@@ -2136,6 +2136,7 @@ + else + { + long counter= -2*dstW; ++ uint8_t* ptr=src+filterSize; + // filter-= counter*filterSize/2; + filterPos-= counter/2; + dst-= counter/2; +@@ -2177,7 +2178,7 @@ + " jnc 1b \n\t" + + : "+r" (counter), "+r" (filter) +- : "m" (filterPos), "m" (dst), "m"(src+filterSize), ++ : "m" (filterPos), "m" (dst), "m"(ptr), + "m" (src), "r" ((long)filterSize*2) + : "%"REG_b, "%"REG_a, "%"REG_c + ); +@@ -2320,6 +2321,8 @@ + { + #endif + //NO MMX just normal asm ... ++ int xInc_hi=xInc>>16; ++ int xInc_lo=xInc&0xffff; + asm volatile( + "xor %%"REG_a", %%"REG_a" \n\t" // i + "xor %%"REG_b", %%"REG_b" \n\t" // xx +@@ -2356,7 +2359,7 @@ + " jb 1b \n\t" + + +- :: "r" (src), "m" (dst), "m" (dstWidth), "m" (xInc>>16), "m" (xInc&0xFFFF) ++ :: "r" (src), "m" (dst), "m" (dstWidth), "m" (xInc_hi), "m" (xInc_lo) + : "%"REG_a, "%"REG_b, "%ecx", "%"REG_D, "%esi" + ); + #ifdef HAVE_MMX2 +@@ -2515,6 +2518,8 @@ + else + { + #endif ++ int xInc_hi=xInc>>16; ++ int xInc_lo=xInc&0xffff; + asm volatile( + "xor %%"REG_a", %%"REG_a" \n\t" // i + "xor %%"REG_b", %%"REG_b" \n\t" // xx +@@ -2548,7 +2553,7 @@ + "cmp %2, %%"REG_a" \n\t" + " jb 1b \n\t" + +- :: "m" (src1), "m" (dst), "m" ((long)dstWidth), "m" ((long)(xInc>>16)), "m" ((xInc&0xFFFF)), ++ :: "m" (src1), "m" (dst), "m" ((long)dstWidth), "m" ((long)(xInc_hi)), "m" ((xInc_lo)), + "r" (src2) + : "%"REG_a, "%"REG_b, "%ecx", "%"REG_D, "%esi" + ); diff --git a/package/jimmy/mplayer/mplayer.conf b/package/jimmy/mplayer/mplayer.conf index cc68ae663..b636d9742 100644 --- a/package/jimmy/mplayer/mplayer.conf +++ b/package/jimmy/mplayer/mplayer.conf @@ -100,6 +100,9 @@ fi var_append confopt " " "--enable-tv-v4l2 --enable-tv-v4l" +# only gcc 2.95 and gcc 3.x are officially supported +[ "${ROCKCFG_DEFAULT_CC:3:1}" -gt "3" ] && var_append confopt " " "--disable-gcc-checking" + hook_add premake 3 mplayer_premake hook_add postmake 5 mplayer_postmake