Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 66223 - [linux26-headers] xorg-x11-6.7.0-r2 fails to compile
Summary: [linux26-headers] xorg-x11-6.7.0-r2 fails to compile
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: PPC64 Linux
: High critical (vote)
Assignee: Gentoo X packagers
Keywords: Inclusion
: 66398 (view as bug list)
Depends on:
Reported: 2004-10-03 10:18 UTC by Markus Rothe (RETIRED)
Modified: 2005-01-05 11:25 UTC (History)
4 users (show)

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

My /usr/include files(1) (,1.68 MB, application/zip)
2004-10-30 21:06 UTC, Yang Dehua
My /usr/include files(2) (,1.95 MB, application/zip)
2004-10-30 21:08 UTC, Yang Dehua
My /usr/include files(3) (,1.60 MB, application/zip)
2004-10-30 21:09 UTC, Yang Dehua
My /usr/include files(4) (,1.74 MB, application/zip)
2004-10-30 21:10 UTC, Yang Dehua
My /usr/include files(5) (,1.51 MB, application/zip)
2004-10-30 21:11 UTC, Yang Dehua
My /usr/include files(6) (,1.12 MB, application/zip)
2004-10-30 21:12 UTC, Yang Dehua
My /usr/include files(7) (,1.78 MB, application/zip)
2004-10-30 21:14 UTC, Yang Dehua
xorg-x11-ppc64-linux26-headers.patch (xorg-x11-ppc64-linux26-headers.patch,526 bytes, patch)
2004-12-19 12:07 UTC, Markus Rothe (RETIRED)
Details | Diff
ppc64-26headers.patch (ppc64-26headers.patch,766 bytes, patch)
2004-12-19 15:07 UTC, Donnie Berkholz (RETIRED)
Details | Diff
ppc64-26headers.patch (ppc64-26headers.patch,763 bytes, patch)
2004-12-19 15:10 UTC, Donnie Berkholz (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Markus Rothe (RETIRED) gentoo-dev 2004-10-03 10:18:39 UTC

just another package that fails with linux26-headers. Here is the output:

gcc -c -O2 -fno-strict-aliasing -fsigned-char -mminimal-toc     
-I../../../../../../programs/Xserver/hw/xfree86/os-support -I. 
-I../../../../../../programs/Xserver/mi  -I../../../../../.. 
-I../../../../../../exports/include   -Dlinux -D__powerpc64__ 
-D_POSIX_C_SOURCE=199309L                 -D_POSIX_SOURCE 
-D_XOPEN_SOURCE                          -D_BSD_SOURCE -D_SVID_SOURCE                             
-D_GNU_SOURCE                           -DSHAPE -DXINPUT -DXKB -DLBX 
-DPIXPRIV -DSINGLEDEPTH                                 -DXFreeXDGA 
-DXvExtension                               -DXFree86LOADER 
-DDLOPEN_HACK -DXFree86Server                           -DXF86VIDMODE                           
-DXvMCExtension                                 -DSMART_SCHEDULE                       
-DBUILDDEBUG -DXResExtension                             
-DXORG_VERSION_CURRENT="(((6) * 10000000) + ((7) * 100000) + ((0) * 
-DXVENDORNAMESHORT='"X.Org"'  lnx_KbdMap.c
In file included from /usr/include/asm/atomic.h:16,
                 from /usr/include/asm/processor.h:16,
                 from /usr/include/linux/prefetch.h:15,
                 from /usr/include/linux/list.h:5,
                 from /usr/include/linux/wait.h:12,
                 from /usr/include/linux/keyboard.h:4,
                 from lnx_KbdMap.c:108:
/usr/include/asm/memory.h:26:30: macro "eieio" passed 1 arguments, but 
takes just 0
In file included from /usr/include/asm/atomic.h:16,
                 from /usr/include/asm/processor.h:16,
                 from /usr/include/linux/prefetch.h:15,
                 from /usr/include/linux/list.h:5,
                 from /usr/include/linux/wait.h:12,
                 from /usr/include/linux/keyboard.h:4,
                 from lnx_KbdMap.c:108:
/usr/include/asm/memory.h:27: error: syntax error before '{' token
make[7]: *** [lnx_KbdMap.o] Error 1
make[7]: Leaving directory 
make[6]: *** [linux] Error 2
make[6]: Leaving directory 
make[5]: *** [all] Error 2
make[5]: Leaving directory 
make[4]: *** [hw/xfree86] Error 2
make[4]: Leaving directory 
make[3]: *** [all] Error 2
make[3]: Leaving directory 
make[2]: *** [all] Error 2
make[2]: Leaving directory `/var/tmp/portage/xorg-x11-6.7.0-r2/work/xc'
make[1]: *** [World] Error 2
make[1]: Leaving directory `/var/tmp/portage/xorg-x11-6.7.0-r2/work/xc'
make: *** [World] Error 2

!!! ERROR: x11-base/xorg-x11-6.7.0-r2 failed.
!!! Function src_compile, Line 584, Exitcode 2
!!! (no error message)

I'm using gcc-3.4.1 and linux26-headers-

Comment 1 Tim Yamin (RETIRED) gentoo-dev 2004-10-17 13:26:15 UTC
*** Bug 66398 has been marked as a duplicate of this bug. ***
Comment 2 Tim Yamin (RETIRED) gentoo-dev 2004-10-17 13:26:29 UTC
Want to try "sed -i -e 's/inline/__inline__/g' /usr/include/asm/memory.h" and see if that helps?
Comment 3 Markus Rothe (RETIRED) gentoo-dev 2004-10-18 03:20:41 UTC

no this didn't fixed the problem. Same error.

Comment 4 Tim Yamin (RETIRED) gentoo-dev 2004-10-30 15:04:03 UTC
Ok, would somebody mind uploading a tarball.bz2 of /usr/include please? Thanks...
Comment 5 Yang Dehua 2004-10-30 20:48:44 UTC
Well, too big to be uploaded.
Comment 6 Yang Dehua 2004-10-30 21:06:45 UTC
Created attachment 42967 [details]
My /usr/include files(1)
Comment 7 Yang Dehua 2004-10-30 21:08:02 UTC
Created attachment 42969 [details]
My /usr/include files(2)
Comment 8 Yang Dehua 2004-10-30 21:09:13 UTC
Created attachment 42971 [details]
My /usr/include files(3)
Comment 9 Yang Dehua 2004-10-30 21:10:22 UTC
Created attachment 42972 [details]
My /usr/include files(4)
Comment 10 Yang Dehua 2004-10-30 21:11:20 UTC
Created attachment 42973 [details]
My /usr/include files(5)
Comment 11 Yang Dehua 2004-10-30 21:12:15 UTC
Created attachment 42974 [details]
My /usr/include files(6)
Comment 12 Yang Dehua 2004-10-30 21:14:13 UTC
Created attachment 42975 [details]
My /usr/include files(7)
Comment 13 Markus Rothe (RETIRED) gentoo-dev 2004-11-01 07:34:16 UTC
Comment 14 Markus Rothe (RETIRED) gentoo-dev 2004-11-01 07:34:44 UTC
sry.. wrong bug...
Comment 15 Yang Dehua 2004-11-01 15:33:24 UTC
Would you  mind explaining a little bit, what's "wrong bug"?
Comment 16 Markus Rothe (RETIRED) gentoo-dev 2004-11-02 05:29:02 UTC
I accidently marked this bug as fixed... sry.. ( don't ask how ;-)  - to stupid... )

Comment 17 Tim Yamin (RETIRED) gentoo-dev 2004-11-07 12:46:44 UTC
Ok, if you replace:

__asm__ __volatile__ ("eieio" : : : "memory");

... in <asm/memory.h> with:

__asm__ __volatile__ ("eieio" : : );

... what happens?
Comment 18 Yang Dehua 2004-11-07 22:38:39 UTC
I just tried, the same problem remained as before. 
Comment 19 Yang Dehua 2004-11-17 17:49:56 UTC
I noticed the xorg-x11-6.8.0-r3 marked as stable on ppc64. I tried to emerge it but failed with the same problem here reported. Why is marked as stable while the problem persists?
Comment 20 Markus Rothe (RETIRED) gentoo-dev 2004-11-17 22:40:32 UTC
the 6.8.0-r3 ebuild was marked stable, because it works great with linux-headers and fixed a security bug.  This bug #66223 occures with linux26-headers. we currently have _no_ ebuild of xorg-x11 which builds under linux26-headers...  Please do this:  1) emerge unmerge linux26-headers 2) emerge linux-headers 3) emerge xorg-x11 4) emerge unmerge linux-headers 5) emerge linux26-headers  Greets,  Markus
Comment 21 Markus Rothe (RETIRED) gentoo-dev 2004-11-17 22:40:53 UTC
I *hate* links2...
Comment 22 Jocelyn Mayer 2004-12-13 01:03:15 UTC
The bug is an xorg-x11 one, not a linux26-headers bug.
in programs/Xsserver/hw/xfree86/common/compiler.h
you can find this macro:
#define eieio()  __asm__ __volatile__ ("eieio" ::: "memory");
which conflicts with the kernel one (which is a static inline function).
Doing an #undef eieio in the files that don't compile before including <linux/keyboard.h> would solve the problem (but it's a clean solution).
So linux26-headers are absolutely not buggy, here.
Comment 23 Jocelyn Mayer 2004-12-13 01:04:07 UTC
Sorry, wanted to say: "it's not a clean solution", of course !
Comment 24 Tim Yamin (RETIRED) gentoo-dev 2004-12-13 11:04:37 UTC
Whee, so it is an X bug after all - I was wondering what the headers had broken here. Ok, I think the best solution for this would be the following in <programs/Xsserver/hw/xfree86/common/compiler.h> instead of the #define eieio we have now:

#include <asm/memory.h>
#ifndef eieio /* We deal with arch-specific eieio() routines above... */
#  define eieio __asm__ __volatile__ ("eieio" ::: "memory");

X Team, please comment/fix...
Comment 25 Markus Rothe (RETIRED) gentoo-dev 2004-12-19 12:07:12 UTC
Created attachment 46363 [details, diff]

I've verified that this works on ppc64.

Here is an "ready to add" patch. X11 Team, please add it to portage, or give me
the permission to do so.

Comment 26 Donnie Berkholz (RETIRED) gentoo-dev 2004-12-19 13:43:29 UTC
ajax or anyone else, can you think of a reason this shouldn't go upstream? I think we should push it for 6.8.2.
Comment 27 Donnie Berkholz (RETIRED) gentoo-dev 2004-12-19 13:53:39 UTC
I've added this to Please test and mark ~ppc64 as appropriate. I may be able to add it to 6.8.0-r4 too if there is demand.
Comment 28 Donnie Berkholz (RETIRED) gentoo-dev 2004-12-19 15:07:22 UTC
Created attachment 46371 [details, diff]

At ajax's request, this patch adds a check for whether linux is defined because
asm/memory.h doesn't exist on all systems. Should be suitable for upstream.
Comment 29 Donnie Berkholz (RETIRED) gentoo-dev 2004-12-19 15:10:32 UTC
Created attachment 46372 [details, diff]

Oops, should only wrap the #include in defined(linux)
Comment 30 Adam Jackson 2004-12-19 15:32:57 UTC
attachment #46372 [details, diff] upstreamed as
Comment 31 Donnie Berkholz (RETIRED) gentoo-dev 2004-12-19 17:19:13 UTC
Following this upstream for now.
Comment 32 Markus Rothe (RETIRED) gentoo-dev 2004-12-23 12:12:35 UTC
could the patch please be added to xorg-x11-6.8.0-r4?

Comment 33 Donnie Berkholz (RETIRED) gentoo-dev 2004-12-23 19:31:30 UTC
Done. Better test it quick, I'm going on vacation tomorrow.
Comment 34 Markus Rothe (RETIRED) gentoo-dev 2005-01-05 11:25:13 UTC
this one is fixed. closing