Dodałem patch`a umożliwającego budowanie na gcc-4.* i zmieniłem, żeby standardowo budował bez live.com bo z nie chciało pójść. W załączniku przesyłam diffa na speca i patcha. Prosze o sprawdzenie i ewentualne dodanie.
-- Pozdr. B. GG:2582353 || hoganx[at]gmail.com || Linux registered user nr 406004
diff -bBur MPlayer-20050413-orig/configure MPlayer-20050413/configure --- MPlayer-20050413-orig/configure 2005-04-06 14:57:08.000000000 +0300 +++ MPlayer-20050413/configure 2005-04-14 16:20:41.000000000 +0300 @@ -604,7 +604,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.[0-9]|3.[0-9].[0-9]|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` diff -bBur MPlayer-20050413-orig/liba52/imdct.c MPlayer-20050413/liba52/imdct.c --- MPlayer-20050413-orig/liba52/imdct.c 2005-03-23 01:27:18.000000000 +0200 +++ MPlayer-20050413/liba52/imdct.c 2005-04-14 16:48:54.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 -bBur MPlayer-20050413-orig/libavcodec/libpostproc/postprocess_template.c MPlayer-20050413/libavcodec/libpostproc/postprocess_template.c --- MPlayer-20050413-orig/libavcodec/libpostproc/postprocess_template.c 2005-02-27 10:56:26.000000000 +0200 +++ MPlayer-20050413/libavcodec/libpostproc/postprocess_template.c 2005-04-14 16:35:07.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 -bBur MPlayer-20050413-orig/libmpdemux/frequencies.h MPlayer-20050413/libmpdemux/frequencies.h --- MPlayer-20050413-orig/libmpdemux/frequencies.h 2001-11-17 00:06:48.000000000 +0200 +++ MPlayer-20050413/libmpdemux/frequencies.h 2005-04-14 16:36:51.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 -bBur MPlayer-20050413-orig/mmx.h MPlayer-20050413/mmx.h --- MPlayer-20050413-orig/mmx.h 2001-10-28 13:47:21.000000000 +0200 +++ MPlayer-20050413/mmx.h 2005-04-14 16:22:54.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 -bBur MPlayer-20050413-orig/postproc/swscale_template.c MPlayer-20050413/postproc/swscale_template.c --- MPlayer-20050413-orig/postproc/swscale_template.c 2005-02-17 01:47:00.000000000 +0200 +++ MPlayer-20050413/postproc/swscale_template.c 2005-04-14 16:46:12.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" ); --- MPlayer-1.0pre7/libvo/aclib_template.c 2005-04-25 08:26:11.000000000 +0000 +++ MPlayer-1.0pre7.az/libvo/aclib_template.c 2005-04-25 08:26:17.000000000 +0000 @@ -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 */
--- mplayer.spec.org 2006-02-04 00:43:19.000000000 +0100 +++ mplayer.spec 2006-02-03 23:05:04.000000000 +0100 @@ -24,7 +24,7 @@ %bcond_without joystick # disable joystick support %bcond_without libdv # disable libdv en/decoding support %bcond_without lirc # without lirc support -%bcond_without live # without live.com libraries +%bcond_with live # without live.com libraries %bcond_without mad # without mad (audio MPEG) support %bcond_without polyp # without polyp audio output %bcond_without quicktime # without binary quicktime dll support @@ -109,6 +109,7 @@ Patch13: %{name}-mythtv.patch Patch14: %{name}-shared.patch Patch15: %{name}-xvmc.patch +Patch16: %{name}-1.0_pre7-gcc4.patch #http://www.openchrome.org/snapshots/mplayer/ URL: http://www.mplayerhq.hu/ %{?with_directfb:BuildRequires: DirectFB-devel} @@ -307,7 +308,7 @@ %patch14 -p1 %endif %patch15 -p0 - +%patch16 -p1 # kill evil file, hackery not needed with llh echo > osdep/kerneltwosix.h
_______________________________________________ pld-devel-pl mailing list pld-devel-pl@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-pl