Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 35716 - xine-lib-1_rc2 fails to compile
Summary: xine-lib-1_rc2 fails to compile
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Media-video project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-12-13 03:19 UTC by Alexander Puchmayr
Modified: 2004-02-16 15:05 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Puchmayr 2003-12-13 03:19:05 UTC
when trying to emerge xine-lib-1_rc2, it fails to compile. Since it is caused by other files than in bug #35594, #34592 and #34626, I decided to create a new bug.

Here are the details:
root@host:> emerge xine-lib
[...]
/bin/sh ../../../libtool-nofpic --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../.. -I../../../include -I../../../include -I../../../src -I../../../src/xine-engine -I../../../src/xine-engine -I../../../src/xine-utils  -I../../../src/input -I../../../src/input    `echo -Wall -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE  -Wpointer-arith -Wnested-externs -Wcast-align -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -march=athlon-xp -O3 -pipe -fomit-frame-pointer -msse -mmmx -m3dnow -funroll-all-loops   -I/usr/kde/3.1/include/artsc  | sed -e 's/-fomit-frame-pointer//g'` -c -o ifs_display.lo `test -f 'ifs_display.c' || echo './'`ifs_display.c
rm: cannot remove `': Invalid argument
ifs_display.c: In function `ifs_update':
ifs_display.c:62: invalid `asm': Wrong address expression or operand constraint
ifs_display.c:64: invalid `asm': Wrong address expression or operand constraint
ifs_display.c:62: invalid `asm': Wrong address expression or operand constraint
ifs_display.c:64: invalid `asm': Wrong address expression or operand constraint
ifs_display.c:62: invalid `asm': Wrong address expression or operand constraint
ifs_display.c:64: invalid `asm': Wrong address expression or operand constraint
ifs_display.c:62: invalid `asm': Wrong address expression or operand constraint
ifs_display.c:64: invalid `asm': Wrong address expression or operand constraint
{standard input}: Assembler messages:
{standard input}:114: Error: expecting operand before ','; got nothing
{standard input}:119: Error: expecting operand after ','; got nothing
{standard input}:140: Error: expecting operand before ','; got nothing
{standard input}:145: Error: expecting operand after ','; got nothing
{standard input}:166: Error: expecting operand before ','; got nothing
{standard input}:171: Error: expecting operand after ','; got nothing
{standard input}:192: Error: expecting operand before ','; got nothing
{standard input}:197: Error: expecting operand after ','; got nothing
make[4]: *** [ifs_display.lo] Error 1
make[4]: Leaving directory `/var/tmp/portage/xine-lib-1_rc2/work/xine-lib-1-rc2/src/post/goom'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/var/tmp/portage/xine-lib-1_rc2/work/xine-lib-1-rc2/src/post'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/xine-lib-1_rc2/work/xine-lib-1-rc2/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/xine-lib-1_rc2/work/xine-lib-1-rc2'
make: *** [all] Error 2

!!! ERROR: media-libs/xine-lib-1_rc2 failed.
!!! Function src_compile, Line 114, Exitcode 2
!!! Parallel make failed


Reproducible: Always
Steps to Reproduce:
Comment 1 Michael Stahl 2004-01-21 14:32:03 UTC
It also fails here, although at a different place:

source='input_v4l.c' object='input_v4l.lo' libtool=yes \
depfile='.deps/input_v4l.Plo' tmpdepfile='.deps/input_v4l.TPlo' \
depmode=gcc3 /bin/sh ../../depcomp \
/bin/sh ../../libtool-nofpic --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../.. -I../../include -I../../include -I../../src -I../../src/xine-engine -I../../src/xine-engine -I../../src/xine-utils  -I../../src/input -I../../src/input   -D_LARGEFILE64_SOURCE   -I../../src/input/libdvdnav/ -Wall -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE  -Wpointer-arith -Wnested-externs -Wcast-align -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -mcpu=athlon-xp -O2 -pipe   -I/usr/kde/3.1/include/artsc  -c -o input_v4l.lo `test -f 'input_v4l.c' || echo './'`input_v4l.c
In file included from /usr/include/linux/videodev2.h:16,
                 from /usr/include/linux/videodev.h:14,
                 from input_v4l.c:36:
/usr/include/linux/time.h:9: redefinition of `struct timespec'
/usr/include/linux/time.h:88: redefinition of `struct timeval'
In file included from ../../include/xine.h:51,
                 from ../../src/xine-engine/xine_internal.h:43,
                 from input_v4l.c:49:
/usr/include/sys/time.h:57: redefinition of `struct timezone'
/usr/include/sys/time.h:94: parse error before numeric constant
/usr/include/sys/time.h:108: redefinition of `struct itimerval'
In file included from ../../include/xine.h:52,
                 from ../../src/xine-engine/xine_internal.h:43,
                 from input_v4l.c:49:
/usr/include/time.h:160: redefinition of `struct itimerspec'
input_v4l.c:780: warning: `close_radio_capture_device' defined but not used
make[4]: *** [input_v4l.lo] Error 1
make[4]: Leaving directory `/var/tmp/portage/xine-lib-1_rc2/work/xine-lib-1-rc2/src/input'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/var/tmp/portage/xine-lib-1_rc2/work/xine-lib-1-rc2/src/input'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/xine-lib-1_rc2/work/xine-lib-1-rc2/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/xine-lib-1_rc2/work/xine-lib-1-rc2'
make: *** [all] Error 2

!!! ERROR: media-libs/xine-lib-1_rc2 failed.
!!! Function src_compile, Line 113, Exitcode 2
!!! Parallel make failed

output of "emerge info"

Portage 2.0.49-r20 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r9, 2.4.20-gentoo-r8)
=================================================================
System uname: 2.4.20-gentoo-r8 i686 AMD Athlon(TM) XP 2200+
Gentoo Base System version 1.4.3.10p1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-mcpu=athlon-xp -O2 -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.1/share/config /usr/kde/3/share/config /usr/share/config /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-mcpu=athlon-xp -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="http://ftp.snt.utwente.nl/pub/os/linux/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X alsa apm arts avi berkdb cdr crypt cups dga dvd encode esd foomaticdb gdbm gif gphoto gpm gtk gtk2 imap imlib informix java jpeg kde libg++ libwww mad maildir mikmod mmx motif mozilla mpeg ncurses nls odbc oggvorbis opengl oss pam pdflib perl png postgres ppds python qt quicktime readline ruby samba scanner sdl slang spell sse ssl svga tcltk tcpd tetex tiff truetype usb x86 xml2 xmms xv zlib"
Comment 2 Martin Holzer (RETIRED) gentoo-dev 2004-02-16 02:59:03 UTC
please try rc3
Comment 3 Alexander Puchmayr 2004-02-16 15:05:54 UTC
Seems that array-access in mmx-macro leads to wrong asm-code ...
I created the following patch, which solved my problem:

xine-lib-1-rc2/src/post/goom/ifs_display.c
--- xine-lib-1-rc2.save/src/post/goom/ifs_display.c     2003-10-03 18:36:04.000000000 +0200
+++ xine-lib-1-rc2/src/post/goom/ifs_display.c  2004-02-16 23:46:21.000000000 +0100
@@ -59,9 +59,12 @@

                if ((x < width) && (y < height) && (x > 0) && (y > 0)) {
                        int     pos = x + (y * width);
-                       movd_m2r (back[pos], mm0);
+                       guint32 tmp=back[pos];
+                       int tmp2;
+                       movd_m2r (tmp, mm0);
                        paddusb_r2r (mm1, mm0);
-                       movd_r2m (mm0, data[pos]);
+                       movd_r2m (mm0, tmp2);
+                       data[pos]=tmp2;
                }
        }
        emms();/*__asm__ __volatile__ ("emms");*/