Making all in src make[2]: Entering directory `/var/tmp/portage/totem-0.99.22/work/totem-0.99.22/src' i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -D_REENTRANT -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_API -DORBIT2=1 -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/include/libgnomeui-2.0 -I/usr/include/libgnome-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/libart-2.0 -I/usr/include/gconf/2 -I/usr/include/libbonoboui-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/bonobo-activation-2.0 -I/usr/include/libxml2 -I/usr/include/libglade-2.0 -I/usr/include/gnome-vfs-module-2.0 -I/usr/include/gnome-desktop-2.0 -I/usr/include/startup-notification-1.0 -I/usr/include/libnautilus-burn -DGNOMELOCALEDIR=\""/usr/share/locale"\" -DGCONF_PREFIX=\""/apps/totem"\" -DDATADIR=\""/usr/share"\" -DLIBDIR=\""/usr/lib"\" -DLOGO_PATH=DATADIR\"\"G_DIR_SEPARATOR_S\"totem\"G_DIR_SEPARATOR_S\"totem_logo.png\" -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wsign-compare -fno-strict-aliasing -I/usr/X11R6/include -O3 -pipe -march=athlon-xp -mmmx -msse -m3dnow -mfpmath=387 -ftracer -fomit-frame-pointer -ffast-math -falign-functions=64 -falign-loops=4 -falign-jumps=4 -funroll-loops -fprefetch-loop-arrays -c totem.c In file included from /usr/include/glib-2.0/glib/gi18n.h:23, from totem-private.h:24, from totem.c:54: /usr/include/libintl.h:40: error: parse error before "const" /usr/include/libintl.h:44: error: parse error before "const" /usr/include/libintl.h:51: error: parse error before "const" /usr/include/libintl.h:81: error: parse error before "const" /usr/include/libintl.h:85: error: parse error before "const" /usr/include/libintl.h:90: error: parse error before "const" In file included from totem-private.h:24, from totem.c:54: /usr/include/glib-2.0/glib/gi18n.h:25:1: warning: "_" redefined In file included from /usr/include/libgnome-2.0/libgnome/gnome-i18n.h:38, from /usr/include/libgnome-2.0/libgnome/libgnome.h:30, from /usr/include/libgnomeui-2.0/gnome.h:5, from totem.c:23: /usr/include/libbonobo-2.0/bonobo/bonobo-i18n.h:69:1: warning: this is the location of the previous definition totem.c: In function `main': totem.c:3800: warning: statement with no effect totem.c:3801: warning: statement with no effect totem.c:3802: warning: statement with no effect make[2]: *** [totem.o] Error 1 make[2]: Leaving directory `/var/tmp/portage/totem-0.99.22/work/totem-0.99.22/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/totem-0.99.22/work/totem-0.99.22' make: *** [all-recursive-am] Error 2
A gcc -E shows that on the offending lines in libintl.h gettext, etc. has been defined out of existence: # 1 "/usr/include/libintl.h" 1 3 4 # 35 "/usr/include/libintl.h" 3 4 (...) extern char *(__const char *__msgid) __attribute__ ((__nothrow__)); This can in turn be traced back to bonobo-i18n.h, which is defining out gettext etc. because ENABLE_NLS is not defined; this in turn is because the nls detection fails in configure. Will investigate with autotools.
Looking at config.log: this is because LIBS is defined to '-L ' which of course breaks every AC test (i686-pc-linux-gnu-gcc: argument to `-L' is missing) This is because of configure.in line 203: LIBS="-L$x_libraries $LIBS" which breaks if $x_libraries is empty. Patching configure.in: --- configure.in 2004/11/22 21:41:20 1.1 +++ configure.in 2004/11/22 21:41:26 @@ -200,6 +200,9 @@ AC_SUBST(REMOTE_LIBS) AC_PATH_X CFLAGS="-I$x_includes $CFLAGS" +if test -z "$x_libraries" ; then + x_libraries="." +fi LIBS="-L$x_libraries $LIBS" XTEST_LIBS="" and running autoconf makes configure work as expected. I'll write a patching ebuild and test it the whole way.
Ah, of course. I'm running xorg-x11-6.8.0-r2 (I know it's under development; I needed the threading fixes), which puts libXt.so in /usr/lib; so AC_PATH_X realises that linking X doesn't need any special -L flags and returns empty $x_libraries. I guess we should expect to see this sort of thing quite often till everything is fixed. I'll upstream this myself.
Created attachment 44503 [details, diff] totem-0.99.22-x_includes.patch Yes, this works. Upstreamed at http://bugzilla.gnome.org/show_bug.cgi?id=159126
thanks for looking into and patching this
this is a dupe of #71863, does that not work for you ? cc-ing x maintainers so they are aware of these kind of problems.
No, the patch in bug 71863 was applied when the above build failure occurred. Perhaps because my gnome libraries are more up to date? Odd that I didn't realise they were the same bug, though. Anyway, my patch fixes the underlying problem, not just a symptom.
patch applied to .19 & .22 , thanks for the works.