Package: libxine1
Version: 1.0.1-1.0
Severity: serious
Tags: patch
Justification: no longer builds from source

Hi,

Attached is a patch stolen from cvs to build against GCC 4.0

You also need to update the ffmpeg source to a more recent version.

Christian

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (900, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.12
Locale: [EMAIL PROTECTED], [EMAIL PROTECTED] (charmap=ISO-8859-15)

Versions of packages libxine1 depends on:
ii  libasound2              1.0.9-3          ALSA library
ii  libavcodeccvs           3:20050716-0.3   library to encode decode multimedi
ii  libc6                   2.3.2.ds1-22     GNU C Library: Shared libraries an
ii  libfame-0.9             0.9.0-0.1        A video encoding library - runtime
ii  libfreetype6            2.1.10-1         FreeType 2 font engine, shared lib
ii  libglu1-xorg [libglu1c2 6.8.2.dfsg.1-2   Mesa OpenGL utility library [X.Org
ii  libmodplug0             1:0.7-4          shared libraries for mod music bas
ii  libogg0                 1.1.2-1          Ogg Bitstream Library
ii  libpng12-0              1.2.8rel-1       PNG library - runtime
ii  libspeex1               1.1.6-2          The Speex Speech Codec
ii  libstdc++6              4.0.1-2          The GNU Standard C++ Library v3
ii  libtheora0              0.0.0.alpha4-1.1 The Theora Video Compression Codec
ii  libvorbis0a             1.1.0-1          The Vorbis General Audio Compressi
ii  libxext6                6.8.2.dfsg.1-2   X Window System miscellaneous exte
ii  xlibmesa-gl [libgl1]    6.8.2.dfsg.1-2   Mesa 3D graphics library [X.Org]
ii  xlibs                   6.8.2.dfsg.1-2   X Window System client libraries m
ii  zlib1g                  1:1.2.2-9        compression library - runtime

Versions of packages libxine1 recommends:
ii  libmng1                   1.0.8-1        Multiple-image Network Graphics li
ii  libxv1                    6.8.2.dfsg.1-2 X Window System video extension li

-- no debconf information
diff -ur xine-lib-1.0.1.orig/src/libw32dll/w32codec.c xine-lib-1.0.1/src/libw32dll/w32codec.c
--- xine-lib-1.0.1.orig/src/libw32dll/w32codec.c	2005-04-26 10:09:15.000000000 +0200
+++ xine-lib-1.0.1/src/libw32dll/w32codec.c	2005-07-14 20:22:07.000000000 +0200
@@ -131,7 +131,6 @@
  */
 static pthread_mutex_t win32_codec_mutex;
 static pthread_once_t once_control = PTHREAD_ONCE_INIT;
-static char*   win32_codec_name; 
 
 #define VIDEOBUFSIZE 128*1024
 
diff -ur xine-lib-1.0.1.orig/src/libw32dll/wine/ext.c xine-lib-1.0.1/src/libw32dll/wine/ext.c
--- xine-lib-1.0.1.orig/src/libw32dll/wine/ext.c	2005-04-26 10:09:14.000000000 +0200
+++ xine-lib-1.0.1/src/libw32dll/wine/ext.c	2005-07-14 20:18:26.000000000 +0200
@@ -469,7 +469,7 @@
 
     if (type&MEM_RESERVE && (unsigned)address&0xffff) {
        size += (unsigned)address&0xffff;
-       (unsigned)address &= ~0xffff;
+       address = (unsigned)address & ~0xffff;
     }
     pgsz = sysconf(_SC_PAGESIZE);
     if (type&MEM_COMMIT && (unsigned)address%pgsz) {
diff -ur xine-lib-1.0.1.orig/src/libw32dll/wine/win32.c xine-lib-1.0.1/src/libw32dll/wine/win32.c
--- xine-lib-1.0.1.orig/src/libw32dll/wine/win32.c	2005-04-26 10:09:14.000000000 +0200
+++ xine-lib-1.0.1/src/libw32dll/wine/win32.c	2005-07-14 20:19:43.000000000 +0200
@@ -2623,7 +2623,7 @@
     dbgprintf("GetWindowThreadProcessId(0x%x, 0x%x) => %d\n",
 	win, pid_data, tid);
     if (pid_data)
-	(int)*pid_data = tid;
+	*pid_data = tid;
     return tid;
 }
 
diff -ur xine-lib-1.0.1.orig/src/libxineadec/nosefart/nes_apu.c xine-lib-1.0.1/src/libxineadec/nosefart/nes_apu.c
--- xine-lib-1.0.1.orig/src/libxineadec/nosefart/nes_apu.c	2005-04-26 10:09:16.000000000 +0200
+++ xine-lib-1.0.1/src/libxineadec/nosefart/nes_apu.c	2005-07-14 20:27:22.000000000 +0200
@@ -1011,10 +1011,13 @@
          accum = -0x8000;
 
       /* signed 16-bit output, unsigned 8-bit */
-      if (16 == apu->sample_bits)
-         *((int16 *) buffer)++ = (int16) accum;
-      else
-         *((uint8 *) buffer)++ = (accum >> 8) ^ 0x80;
+      if (16 == apu->sample_bits) {
+		*((int16 *) buffer) = (int16) accum;
+		buffer = (int16 *) buffer + 1;
+		} else {
+		*((uint8 *) buffer) = (accum >> 8) ^ 0x80;
+		buffer = (int8 *) buffer + 1;
+		}
    }
 
    /* resync cycle counter */
diff -ur xine-lib-1.0.1.orig/src/post/audio/stretch.c xine-lib-1.0.1/src/post/audio/stretch.c
--- xine-lib-1.0.1.orig/src/post/audio/stretch.c	2005-04-26 10:09:10.000000000 +0200
+++ xine-lib-1.0.1/src/post/audio/stretch.c	2005-07-14 20:30:45.000000000 +0200
@@ -476,7 +476,7 @@
     memcpy( outbuf->mem, data_out, 
             outbuf->num_frames * this->bytes_per_frame );
     num_frames_out -= outbuf->num_frames;
-    (uint8_t *)data_out += outbuf->num_frames * this->bytes_per_frame;
+    data_out = (uint8_t *)data_out + outbuf->num_frames * this->bytes_per_frame;
                 
     outbuf->vpts        = this->pts;
     this->pts           = 0;
@@ -587,7 +587,7 @@
     memcpy( (uint8_t *)this->audiofrag + this->num_frames * this->bytes_per_frame,
             data_in, frames_to_copy * this->bytes_per_frame );
     
-    (uint8_t *)data_in += frames_to_copy * this->bytes_per_frame;
+    data_in = (uint8_t *)data_in + frames_to_copy * this->bytes_per_frame;
     this->num_frames += frames_to_copy;
     buf->num_frames -= frames_to_copy;
 
Seulement dans xine-lib-1.0.1.orig/src/video_out/libdha: pci_ids.h
Seulement dans xine-lib-1.0.1.orig/src/video_out/libdha: pci_names.h
Seulement dans xine-lib-1.0.1.orig/src/video_out/libdha: pci_vendors.h
diff -ur xine-lib-1.0.1.orig/src/video_out/vidix/drivers/pm3_vid.c xine-lib-1.0.1/src/video_out/vidix/drivers/pm3_vid.c
--- xine-lib-1.0.1.orig/src/video_out/vidix/drivers/pm3_vid.c	2005-04-26 10:09:11.000000000 +0200
+++ xine-lib-1.0.1/src/video_out/vidix/drivers/pm3_vid.c	2005-07-14 19:56:22.000000000 +0200
@@ -49,7 +49,7 @@
 
 static pciinfo_t pci_info;
 
-static void *pm3_reg_base;
+void *pm3_reg_base;
 static void *pm3_mem;
 
 static int pm3_vidmem = PM3_VIDMEM;
@@ -288,7 +288,7 @@
 static void
 pm3_setup_overlay(vidix_playback_t *info)
 {
-    int shrink, zoom;
+    uint shrink, zoom;
     int format = 0;
     int filter = 0;
     int sw = src_w;
@@ -494,7 +494,7 @@
 {
     u_int size = dma->size;
     u_int pages = (size + page_size-1) / page_size;
-    long baddr[pages];
+    unsigned long baddr[pages];
     u_int i;
     uint32_t dest;
 
diff -ur xine-lib-1.0.1.orig/src/xine-engine/post.c xine-lib-1.0.1/src/xine-engine/post.c
--- xine-lib-1.0.1.orig/src/xine-engine/post.c	2005-04-26 10:09:12.000000000 +0200
+++ xine-lib-1.0.1/src/xine-engine/post.c	2005-07-14 19:54:09.000000000 +0200
@@ -241,7 +241,7 @@
     if (!*input) return port;
     (*input)->xine_in.name = "video in";
     (*input)->xine_in.type = XINE_POST_DATA_VIDEO;
-    (xine_video_port_t *)(*input)->xine_in.data = &port->new_port;
+    (*input)->xine_in.data = &port->new_port;
     (*input)->post = post;
     xine_list_append_content(post->input, *input);
   }
@@ -251,7 +251,7 @@
     if (!*output) return port;
     (*output)->xine_out.name = "video out";
     (*output)->xine_out.type = XINE_POST_DATA_VIDEO;
-    (xine_video_port_t **)(*output)->xine_out.data = &port->original_port;
+    (*output)->xine_out.data = &port->original_port;
     (*output)->xine_out.rewire = post_video_rewire;
     (*output)->post = post;
     (*output)->user_data = port;
@@ -718,7 +718,7 @@
     if (!*input) return port;
     (*input)->xine_in.name = "audio in";
     (*input)->xine_in.type = XINE_POST_DATA_AUDIO;
-    (xine_audio_port_t *)(*input)->xine_in.data = &port->new_port;
+    (*input)->xine_in.data = &port->new_port;
     (*input)->post = post;
     xine_list_append_content(post->input, *input);
   }
@@ -728,7 +728,7 @@
     if (!*output) return port;
     (*output)->xine_out.name = "audio out";
     (*output)->xine_out.type = XINE_POST_DATA_AUDIO;
-    (xine_audio_port_t **)(*output)->xine_out.data = &port->original_port;
+    (*output)->xine_out.data = &port->original_port;
     (*output)->xine_out.rewire = post_audio_rewire;
     (*output)->post = post;
     (*output)->user_data = port;
diff -ur xine-lib-1.0.1.orig/src/xine-utils/color.c xine-lib-1.0.1/src/xine-utils/color.c
--- xine-lib-1.0.1.orig/src/xine-utils/color.c	2005-04-26 10:09:15.000000000 +0200
+++ xine-lib-1.0.1/src/xine-utils/color.c	2005-07-14 19:46:23.000000000 +0200
@@ -495,8 +495,8 @@
 
   /* process blocks of 4 pixels */
   for (x=0; x < (width / 4); x++) {
-    n1  = *(((unsigned int *) src1)++);
-    n2  = *(((unsigned int *) src2)++);
+    n1  = *(((unsigned int *) src1)); src1 = ((unsigned int *) src1) + 1;
+    n2  = *(((unsigned int *) src2)); src2 = ((unsigned int *) src2) + 1;
     n3  = (n1 & 0xFF00FF00) >> 8;
     n4  = (n2 & 0xFF00FF00) >> 8;
     n1 &= 0x00FF00FF;
diff -ur xine-lib-1.0.1.orig/src/xine-utils/memcpy.c xine-lib-1.0.1/src/xine-utils/memcpy.c
--- xine-lib-1.0.1.orig/src/xine-utils/memcpy.c	2005-04-26 10:09:15.000000000 +0200
+++ xine-lib-1.0.1/src/xine-utils/memcpy.c	2005-07-14 19:51:07.000000000 +0200
@@ -218,8 +218,8 @@
         "movntps %%xmm2, 32(%1)\n"
         "movntps %%xmm3, 48(%1)\n"
         :: "r" (from), "r" (to) : "memory");
-        ((const unsigned char *)from)+=64;
-        ((unsigned char *)to)+=64;
+        from = ((const unsigned char *)from) + 64;
+        to = ((unsigned char *)to) + 64;
       }
     else
       /*
@@ -241,8 +241,8 @@
         "movntps %%xmm2, 32(%1)\n"
         "movntps %%xmm3, 48(%1)\n"
         :: "r" (from), "r" (to) : "memory");
-        ((const unsigned char *)from)+=64;
-        ((unsigned char *)to)+=64;
+        from = ((const unsigned char *)from) + 64;
+        to = ((unsigned char *)to) + 64;
       }
     /* since movntq is weakly-ordered, a "sfence"
      * is needed to become ordered again. */
@@ -296,8 +296,8 @@
       "movq %%mm6, 48(%1)\n"
       "movq %%mm7, 56(%1)\n"
       :: "r" (from), "r" (to) : "memory");
-      ((const unsigned char *)from)+=64;
-      ((unsigned char *)to)+=64;
+      from = ((const unsigned char *)from) + 64;
+      to = ((unsigned char *)to) + 64;
     }
     __asm__ __volatile__ ("emms":::"memory");
   }
@@ -363,8 +363,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 = ((const unsigned char *)from) + 64;
+      to = ((unsigned char *)to) + 64;
     }
      /* since movntq is weakly-ordered, a "sfence"
      * is needed to become ordered again. */

Reply via email to