/var/tmp/portage/xine-lib-1_rc5-r1/work/xine-lib-1-rc5/src/libmpeg2/idct_altivec.c fails to compile on PPC (G4 Powerbook, gcc 3.3.3). Vast spewage of customary altivec related errors e.g. 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 -Wa,-m7400 -O3 -pipe -fomit-frame-pointer -fexpensive-optimizations -fschedule-insns2 -fno-strict-aliasing -ffast-math -funroll-loops -finline-functions -Wall -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE -Wpointer-arith -Wnested-externs -Wcast-align -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -O2 -pipe -mcpu=7400 -fno-strict-aliasing -MT idct_altivec.lo -MD -MP -MF .deps/idct_altivec.Tpo -c idct_altivec.c -fPIC -DPIC -o .libs/idct_altivec.o idct_altivec.c:629: error: syntax error before "signed" idct_altivec.c:630: error: `vector' undeclared here (not in a function) idct_altivec.c:630: error: syntax error before "signed" idct_altivec.c:630: error: initializer element is not constant idct_altivec.c:630: error: (near initialization for `constants[0]') idct_altivec.c:631: error: `vector' undeclared here (not in a function) idct_altivec.c:631: error: syntax error before "signed" idct_altivec.c:631: error: initializer element is not constant Reproducible: Always Steps to Reproduce: 1. 2. 3. Portage 2.0.50-r8 (default-ppc-2004.1, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.7) ================================================================= System uname: 2.6.7 ppc 7455, altivec supported Gentoo Base System version 1.5.0 Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5-r1 ACCEPT_KEYWORDS="ppc ~ppc" AUTOCLEAN="yes" CFLAGS="-O2 -pipe -mcpu=7400 -maltivec -mabi=altivec -fno-strict-aliasing" CHOST="powerpc-unknown-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -pipe -mcpu=7400 -maltivec -mabi=altivec -fno-strict-aliasing" DISTDIR="/usr/portage/distfiles" FEATURES="ccache" GENTOO_MIRRORS="http://www.mirror.ac.uk/sites/www.ibiblio.org/gentoo ftp://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://ftp.easynet.nl/mirror/gentoo/ http://ftp.du.se/pub/os/gentoo http://gentoo.mirror.sdv.fr" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X alsa altivec berkdb cdr crypt cups dvd esd foomaticdb gdbm gif gimpprint gnome gnome-libs gnutls gphoto2 gpm gtk gtk2 gtkhtml imap imlib jpeg ldap libwww lzw-tiff maildir mitshm mng motif mozilla nls offensive oggvorbis opengl oss pam pcmcia perl png postgres ppc ppds python readline sasl sdl slang ssl tcpd tetex tiff truetype udev virtual-x11 wmf xml xorg xv xvid zlib"
could you confirm that xine-lib-1_rc5 works ?
xine-lib-1_rc5 also failed to compile on PPC (same problem) xine-lib-1_rc4_rc1 DOES compile on PPC
Adding -U__ALTIVEC__ to the CFLAGS forces the preprocessor to choose the correct code to compile. The other part is for the altivec-enabled gcc-2 IIRC.
Fix is in the CVS and will show up on the mirrors in a few hours. -U__ALTIVEC__ is always added to CFLAGS. If USE="altivec" is set, --enable-altivec is given to configure. If USE="-altivec" is set, --disable-altivec is given to configure (and disables the use of altivec).