With recent mesa HEAD, the glapi sources used only in the xserver glx
module are carried in the mesa tree. Previously, these were generated
separately and committed to the xserver tree.
The build is changed to symlink these files like the other mesa sources.
This reduces the chance for mismatches between mesa's glX API and the
xserver's glX API.
RISC chips that trap on unaligned loads and stores need to
define __GLX_ALIGN64. This used to get added to the cflags
in the old *.cf files but it no longer does in the modular
X server.
Also, Alpha needs to pass -mieee to the compiler as well.
This is a simple backport of a patch that debian, and probably other
distributions, have been applying forever. To the best of my
knowledge the patch was written by Jurij Smakov. See Debian bug
number #388125.
I just checked and this has been rotting for more than a year in
freedesktop bugzilla as #8392.
Signed-off-by: David S. Miller <davem@davemloft.net>
These hints allow an acceleration architecture to optimize allocation of certain
types of pixmaps, such as pixmaps that will serve as backing pixmaps for
redirected windows.
This makes the root visual a GLX capable visual again and adds a GLX visual
for the COMPOSITE ARGB visual cleanly (as opposed to the hack we had before).
Right now we default to "all" which gives us a situation much like before,
but when the "typical" option is implemented, we can change the default and
reduce the number of visuals the GLX module bloats the X server with.
XIDs for GLX visuals and FBConfigs used to be interchangable and the list of
GLX visuals was identical to the list for FBConfigs. This patch splits handling
of these two data types and allows the X server to pick and choose the FBConfigs
that are exposed as visuals.
Instead of the fragile setup where we filter the modes common between the
DDX generated GLX visuals and the DRI driver generated fbconfigs, we now
just take the fbconfigs returned by the DRI driver to be our supported set.
* GL/glx/glxvisuals.c: added boolean to disable
calling init_visuals(). This gives a chance to Xephyr
to take over visuals manipulation and avoid a crash at
server shutdown in __glXMesaScreenDestroy(), due to the fact
that mesa might sees more visual than what it has actually created in
init_visuals(). It might see more visuals because Xephyr can augment
the number of visuals, dynamically.
* os/utils.c: the boolean is actually defined here.
This reverts commit 2243b30e54. The existing
DRI interface doesn't let us get from a __DRIdrawable to the corresponding
X drawable, and thus, we can't implement AIGLX damage tracking with the
current interface.