Sparc needs double precision items to be aligned mod64, so when building libglx.so (and hw/dmx) in xorg-server, __GLX_ALIGN64 must be defined. Otherwise, depending on the compiler used to build xorg-server and other random events, libglx.so might work or it might generate Bus errors (Signal 10) which kill Xserver. This is the same as hw/xfree86/doc/changelogs/CHANGELOG, entry 417.
By popular demand, I am expanding this to ask about the status of other 64-bit architectures, such as alpha, ia64, amd64, mips, ppc64. They might run into the same problem, but I am not in a position to test them.
From the imake... #if BuildGlxExt ... # if defined(SparcArchitecture) \ || defined (Sparc64Architecture) \ || defined(ia64Architecture) \ || defined(s390xArchitecture) \ || defined(AMD64Architecture) # define GlxArchDefines -D__GLX_ALIGN64 # elif defined(AlphaArchitecture) /* On the Alpha we need to ensure floating point accuracy for 3D */ # define GlxArchDefines -D__GLX_ALIGN64 -mieee # elif defined(DarwinArchitecture) /* GLX contains lots of uninitialized globals, which can upset Darwin */ # define GlxArchDefines -fno-common
Sorry about the phenomenal bug spam, guys. Adding xorg-team@ to the QA contact so bugs don't get lost in future.
*** This bug has been marked as a duplicate of bug 8392 ***
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.