Perhaps some flags striping is at hand ;) Portage 2.0.49-r3 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1, 2.6.0-test4-mm5) ================================================================= System uname: 2.6.0-test4-mm5 i686 Intel(R) Celeron(R) CPU 1.70GHz distcc 2.10 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O2 -mcpu=i686 -mfpmath=sse -march=pentium3 -pipe -fomit-frame-pointer -mmmx -msse -msse2" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2 -mcpu=i686 -mfpmath=sse -march=pentium3 -pipe -fomit-frame-pointer -mmmx -msse -msse2" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs sandbox ccache userpriv usersandbox" GENTOO_MIRRORS="http://www.mirror.ac.uk/sites/www.ibiblio.org/gentoo http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="x86 avi crypt cups encode foomaticdb gif jpeg libg++ mad mikmod mmx mpeg ncurses png quicktime spell truetype xml2 xmms xv zlib gtkhtml alsa gdbm slang readline arts tetex aalib bonobo svga ggi tcltk java guile mysql X sdl gpm tcpd pam libwww ssl perl python esd imlib oggvorbis gnome qt kde motif opengl mozilla cdr apache2 dvd gtk2 ipv6 maildir sasl sse tiff usb wmf xml -oss -apm -nls -pdflib -berkdb gtk -ldap joystick oss"
actually it compiles just fine ... root@vapier 0 root # cat /var/db/pkg/net-im/gaim-0.68/CFLAGS -march=pentium4 -O2 -frename-registers -fomit-frame-pointer -pipe -mfpmath=sse -mmmx -msse -msse2 -fdelete-null-pointer-checks -funroll-loops -ffast-math -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE perhaps it's your usage of march/mcpu that's messing it up ? or perhaps the multiple job support that you have ? cant say really since you didnt post compile errors ;)
/bin/sh ../../../libtool --silent --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../.. -I../../../src -I../../../src/protocols -DCONFDIR=\"\" -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -Dlint -O2 -mcpu=i686 -mfpmath=sse -march=pentium3 -pipe -fomit-frame-pointer -mmmx -msse -msse2 -c -o Zinternal.lo `test -f 'Zinternal.c' || echo './'`Zinternal.c {standard input}: Assembler messages: {standard input}:66: Error: suffix or operands invalid for `movd' make[4]: *** [Zinternal.lo] Error 1
try it w/out mcpu=i686 (i think it'll still die ...) could be just with gcc-3.2.3 ... works fine with 3.3.1 :)
Same error. You have to understand that "regular" users don't still use gcc 3.3.1
i know, but the point is filtering out -msse2 for everyone who uses gcc is dumb if only certain versions are affected ... we know that 3.2 is broken, so we can say: [ "`gcc-version`" == "3.2" ] && filter-flags -msse2 i hate filtering flags for ppl who can use them
The -msse2 flag on its own isn't causing the problem; the error seems to be caused by using -msse2 under certain combinations of CFLAGS: -march=pentium4 -Ox -msse2 compiles ok -march=pentium3 -O3 -msse2 won't compile -march=pentium3 -O2 -msse2 won't compile -march=pentium3 -O1 -msse2 won't compile -march=pentium3 -Os -msse2 compiles ok -march=pentium3 -msse2 compiles ok -march=pentium2 -O3 -msse2 won't compile -march=pentium2 -O2 -msse2 won't compile -march=pentium2 -O1 -msse2 won't compile -march=pentium2 -Os -msse2 compiles ok -march=pentium2 -msse2 compiles ok -O3 -msse2 won't compile -O2 -msse2 won't compile -O1 -msse2 won't compile -Os -msse2 compiles ok -msse2 compiles ok I'm not sure how -msse2 fares using gcc-3.3.x :)
It compiled fine with gcc 3.3.1
so basically this is fairly silly, I'm leaving it alone for now... will ponder more later.
is this fixed up to 0.71 ? or gcc3 upstream ?
So is this really a gcc bug or USE flag issue? It definitely seems beyond just gaim.
This ebuild isn't in portage anymore. This bug should be closed.
As I said earlier I don't think this problem is a gaim problem, but somewhat of a gcc issue. Do others agree/disagree?
I've had it with this bug staring me in the face. From Brandy's comments it seems like a gcc thing, not a gaim thing. Andre does this behavior happen for you in gaim-0.75-r8? I will close this bug relatively soon unless I hear that it is definitely a gaim thing and persists in 0.75.
since I've only been using gcc 3.3.1, it has always compiled fine.
For some reason I didn't see Spanky's suggestion of filtering -msse2 for gcc-version 3.2. I'm going to implement that in existing gaim-0.75-r8 and close this out.