summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'x11-base/xorg-server/files')
-rw-r--r--x11-base/xorg-server/files/01-no-move-damage.patch33
-rw-r--r--x11-base/xorg-server/files/02-dont-backfill-bg-none.patch21
-rw-r--r--x11-base/xorg-server/files/03-tfp-damage.patch211
-rw-r--r--x11-base/xorg-server/files/04-mesa-copy-sub-buffer.patch361
-rw-r--r--x11-base/xorg-server/files/05-offscreen-pixmaps.patch55
-rw-r--r--x11-base/xorg-server/files/06-aiglx-happy-vt-switch.patch241
-rw-r--r--x11-base/xorg-server/files/1.1.1-dbe-render.diff183
-rw-r--r--x11-base/xorg-server/files/1.1.1-fix-xrandr-zoom-keys.patch186
-rw-r--r--x11-base/xorg-server/files/1.1.1-fix_acpi_tokenize.patch21
-rw-r--r--x11-base/xorg-server/files/1.1.1-fix_big_endian_glx.patch24
-rw-r--r--x11-base/xorg-server/files/1.1.1-fixdualhead.patch28
-rw-r--r--x11-base/xorg-server/files/1.1.1-sparc-includes.patch28
-rw-r--r--x11-base/xorg-server/files/1.1.1-sparc64-ati-lockups.patch18
-rw-r--r--x11-base/xorg-server/files/digest-xorg-server-1.1.1-r16
-rw-r--r--x11-base/xorg-server/files/digest-xorg-server-1.1.1-r56
-rw-r--r--x11-base/xorg-server/files/xorg-conf-example.patch56
-rw-r--r--x11-base/xorg-server/files/xorg-server-1.1.1-install-libxf86config-headers.patch19
-rw-r--r--x11-base/xorg-server/files/xorg-x11-server-1.1.1-mesa-6.5.1.patch54
18 files changed, 0 insertions, 1551 deletions
diff --git a/x11-base/xorg-server/files/01-no-move-damage.patch b/x11-base/xorg-server/files/01-no-move-damage.patch
deleted file mode 100644
index 4278043ba262..000000000000
--- a/x11-base/xorg-server/files/01-no-move-damage.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-Disable damage notifications on move for manually redirected windows.
-The automatic compositor needs damage notification on move, but a
-compositing manager doesn't.
-
---- ./composite/compwindow.c.spiffiffity 2006-03-29 12:51:53.000000000 -0500
-+++ ./composite/compwindow.c 2006-04-13 23:18:42.000000000 -0400
-@@ -571,12 +571,15 @@
- }
- else
- {
-+ CompWindowPtr cw = GetCompWindow (pWin);
-+
- ptOldOrg.x -= dx;
- ptOldOrg.y -= dy;
- REGION_TRANSLATE (prgnSrc, prgnSrc,
- pWin->drawable.x - ptOldOrg.x,
- pWin->drawable.y - ptOldOrg.y);
-- DamageDamageRegion (&pWin->drawable, prgnSrc);
-+ if (pWin->redirectDraw && cw->update == CompositeRedirectAutomatic)
-+ DamageDamageRegion (&pWin->drawable, prgnSrc);
- }
- cs->CopyWindow = pScreen->CopyWindow;
- pScreen->CopyWindow = compCopyWindow;
-@@ -655,7 +658,8 @@
- /*
- * Report that as damaged so it will be redrawn
- */
-- DamageDamageRegion (&pWin->drawable, &damage);
-+ if (cw->update == CompositeRedirectAutomatic)
-+ DamageDamageRegion (&pWin->drawable, &damage);
- REGION_UNINIT (pScreen, &damage);
- /*
- * Save the new border clip region
diff --git a/x11-base/xorg-server/files/02-dont-backfill-bg-none.patch b/x11-base/xorg-server/files/02-dont-backfill-bg-none.patch
deleted file mode 100644
index 9a5cacdea09a..000000000000
--- a/x11-base/xorg-server/files/02-dont-backfill-bg-none.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Disable backfilling of windows created with bg=none, which otherwise
-would force a framebuffer readback.
-
---- ./composite/compalloc.c.spiffiffity 2006-03-13 16:59:55.000000000 -0500
-+++ ./composite/compalloc.c 2006-04-12 16:37:50.000000000 -0400
-@@ -478,6 +478,7 @@
- * Copy bits from the parent into the new pixmap so that it will
- * have "reasonable" contents in case for background None areas.
- */
-+#if 0
- if (pGC)
- {
- XID val = IncludeInferiors;
-@@ -492,6 +493,7 @@
- w, h, 0, 0);
- FreeScratchGC (pGC);
- }
-+#endif
- return pPixmap;
- }
-
diff --git a/x11-base/xorg-server/files/03-tfp-damage.patch b/x11-base/xorg-server/files/03-tfp-damage.patch
deleted file mode 100644
index 942d44e3dc1e..000000000000
--- a/x11-base/xorg-server/files/03-tfp-damage.patch
+++ /dev/null
@@ -1,211 +0,0 @@
---- ./GL/glx/glxdrawable.h.tfp-damage 2006-03-11 19:11:33.000000000 -0500
-+++ ./GL/glx/glxdrawable.h 2006-06-20 20:33:53.000000000 -0400
-@@ -41,6 +41,8 @@
- **
- */
-
-+#include <damage.h>
-+
- typedef struct {
-
- DrawablePtr pDraw;
-@@ -49,7 +51,7 @@
- ScreenPtr pScreen;
- Bool idExists;
- int refcnt;
--
-+ DamagePtr pDamage;
- } __GLXpixmap;
-
- struct __GLXdrawable {
---- ./GL/glx/glxcmds.c.tfp-damage 2006-05-09 13:44:26.000000000 -0400
-+++ ./GL/glx/glxcmds.c 2006-06-20 20:33:53.000000000 -0400
-@@ -1271,6 +1271,7 @@
- pGlxPixmap->pGlxScreen = pGlxScreen;
- pGlxPixmap->pScreen = pScreen;
- pGlxPixmap->idExists = True;
-+ pGlxPixmap->pDamage = NULL;
- pGlxPixmap->refcnt = 0;
-
- pGlxPixmap->modes = modes;
---- ./GL/glx/glxdri.c.tfp-damage 2006-04-02 21:25:21.000000000 -0400
-+++ ./GL/glx/glxdri.c 2006-06-21 00:39:40.000000000 -0400
-@@ -296,24 +296,18 @@
- }
-
- static void
--glxFillAlphaChannel (PixmapPtr pixmap)
-+glxFillAlphaChannel (PixmapPtr pixmap, int x, int y, int width, int height)
- {
-- int i, j;
-- CARD32 *pixels = (CARD32 *)pixmap->devPrivate.ptr;
-+ int i;
-+ CARD32 *p, *end, *pixels = (CARD32 *)pixmap->devPrivate.ptr;
- CARD32 rowstride = pixmap->devKind / 4;
-- CARD32 x, y;
--
-- x = pixmap->drawable.x;
-- y = pixmap->drawable.y;
-
-- for (i = y; i < pixmap->drawable.height + y; ++i)
-+ for (i = y; i < y + height; i++)
- {
-- for (j = x; j < pixmap->drawable.width + x; ++j)
-- {
-- int index = i * rowstride + j;
--
-- pixels[index] |= 0xFF000000;
-- }
-+ p = &pixels[i * rowstride + x];
-+ end = p + width;
-+ while (p < end)
-+ *p++ |= 0xFF000000;
- }
- }
-
-@@ -326,7 +320,6 @@
- * - No fbconfig handling for TEXTURE_TARGET
- * - No fbconfig exposure of Y inversion state
- * - No GenerateMipmapEXT support (due to no FBO support)
-- * - No damage tracking between binds
- * - No support for anything but 16bpp and 32bpp-sparse pixmaps
- */
-
-@@ -335,38 +328,97 @@
- int buffer,
- __GLXpixmap *glxPixmap)
- {
-+ RegionPtr pRegion;
- PixmapPtr pixmap;
- int bpp;
-- Bool npot;
-+ GLenum target, format, type;
-
- pixmap = (PixmapPtr) glxPixmap->pDraw;
-- bpp = pixmap->drawable.depth >= 24 ? 4 : 2; /* XXX 24bpp packed, 8, etc */
--
-+ if (!glxPixmap->pDamage) {
-+ glxPixmap->pDamage = DamageCreate(NULL, NULL, DamageReportNone,
-+ TRUE, glxPixmap->pScreen, NULL);
-+ if (!glxPixmap->pDamage)
-+ return BadAlloc;
-+
-+ DamageRegister ((DrawablePtr) pixmap, glxPixmap->pDamage);
-+ pRegion = NULL;
-+ } else {
-+ pRegion = DamageRegion(glxPixmap->pDamage);
-+ if (REGION_NIL(pRegion))
-+ return Success;
-+ }
-+
-+ /* XXX 24bpp packed, 8, etc */
-+ if (pixmap->drawable.depth >= 24) {
-+ bpp = 4;
-+ format = GL_BGRA;
-+ type = GL_UNSIGNED_BYTE;
-+ } else {
-+ bpp = 2;
-+ format = GL_RGB;
-+ type = GL_UNSIGNED_SHORT_5_6_5;
-+ }
-+
-+ target = GL_TEXTURE_RECTANGLE_ARB;
-+
- CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_ROW_LENGTH,
-- pixmap->devKind / bpp) );
-- CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SKIP_ROWS,
-- pixmap->drawable.y) );
-- CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SKIP_PIXELS,
-- pixmap->drawable.x) );
--
-- if (pixmap->drawable.depth == 24)
-- glxFillAlphaChannel(pixmap);
--
-- npot = !(glxCountBits(pixmap->drawable.width) == 1 &&
-- glxCountBits(pixmap->drawable.height) == 1) /* ||
-- strstr(CALL_GetString(GL_EXTENSIONS,
-- "GL_ARB_texture_non_power_of_two")) */ ;
--
-- CALL_TexImage2D( GET_DISPATCH(),
-- ( npot ? GL_TEXTURE_RECTANGLE_ARB : GL_TEXTURE_2D,
-- 0,
-- bpp == 4 ? 4 : 3,
-- pixmap->drawable.width,
-- pixmap->drawable.height,
-- 0,
-- bpp == 4 ? GL_BGRA : GL_RGB,
-- bpp == 4 ? GL_UNSIGNED_BYTE : GL_UNSIGNED_SHORT_5_6_5,
-- pixmap->devPrivate.ptr ) );
-+ pixmap->devKind / bpp) );
-+ if (pRegion == NULL)
-+ {
-+ if (pixmap->drawable.depth == 24)
-+ glxFillAlphaChannel(pixmap,
-+ pixmap->drawable.x,
-+ pixmap->drawable.y,
-+ pixmap->drawable.width,
-+ pixmap->drawable.height);
-+
-+ CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SKIP_PIXELS,
-+ pixmap->drawable.x) );
-+ CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SKIP_ROWS,
-+ pixmap->drawable.y) );
-+
-+ CALL_TexImage2D( GET_DISPATCH(),
-+ (target,
-+ 0,
-+ bpp == 4 ? 4 : 3,
-+ pixmap->drawable.width,
-+ pixmap->drawable.height,
-+ 0,
-+ format,
-+ type,
-+ pixmap->devPrivate.ptr) );
-+ } else {
-+ int i, numRects;
-+ BoxPtr p;
-+
-+ numRects = REGION_NUM_RECTS (pRegion);
-+ p = REGION_RECTS (pRegion);
-+ for (i = 0; i < numRects; i++)
-+ {
-+ if (pixmap->drawable.depth == 24)
-+ glxFillAlphaChannel(pixmap,
-+ pixmap->drawable.x + p[i].x1,
-+ pixmap->drawable.y + p[i].y1,
-+ p[i].x2 - p[i].x1,
-+ p[i].y2 - p[i].y1);
-+
-+ CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SKIP_PIXELS,
-+ pixmap->drawable.x + p[i].x1) );
-+ CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SKIP_ROWS,
-+ pixmap->drawable.y + p[i].y1) );
-+
-+ CALL_TexSubImage2D( GET_DISPATCH(),
-+ (target,
-+ 0,
-+ p[i].x1, p[i].y1,
-+ p[i].x2 - p[i].x1, p[i].y2 - p[i].y1,
-+ format,
-+ type,
-+ pixmap->devPrivate.ptr) );
-+ }
-+ }
-+
-+ DamageEmpty(glxPixmap->pDamage);
-
- return Success;
- }
---- ./GL/glx/glxext.c.tfp-damage 2006-03-16 20:47:25.000000000 -0500
-+++ ./GL/glx/glxext.c 2006-06-20 20:33:53.000000000 -0400
-@@ -141,6 +141,10 @@
-
- pGlxPixmap->idExists = False;
- if (!pGlxPixmap->refcnt) {
-+ if (pGlxPixmap->pDamage) {
-+ DamageUnregister (pGlxPixmap->pDraw, pGlxPixmap->pDamage);
-+ DamageDestroy(pGlxPixmap->pDamage);
-+ }
- /*
- ** The DestroyPixmap routine should decrement the refcount and free
- ** only if it's zero.
diff --git a/x11-base/xorg-server/files/04-mesa-copy-sub-buffer.patch b/x11-base/xorg-server/files/04-mesa-copy-sub-buffer.patch
deleted file mode 100644
index 2b62daddb451..000000000000
--- a/x11-base/xorg-server/files/04-mesa-copy-sub-buffer.patch
+++ /dev/null
@@ -1,361 +0,0 @@
---- ./GL/glx/glxdrawable.h.mesa-copy-sub-buffer 2006-07-06 21:40:41.000000000 -0400
-+++ ./GL/glx/glxdrawable.h 2006-07-06 21:56:33.000000000 -0400
-@@ -58,6 +58,8 @@
- void (*destroy)(__GLXdrawable *private);
- GLboolean (*resize)(__GLXdrawable *private);
- GLboolean (*swapBuffers)(__GLXdrawable *);
-+ void (*copySubBuffer)(__GLXdrawable *drawable,
-+ int x, int y, int w, int h);
-
- /*
- ** list of drawable private structs
---- ./GL/glx/glxcmds.c.mesa-copy-sub-buffer 2006-07-06 21:40:41.000000000 -0400
-+++ ./GL/glx/glxcmds.c 2006-07-06 22:30:01.000000000 -0400
-@@ -1331,21 +1331,14 @@
-
- /*****************************************************************************/
-
--/*
--** NOTE: There is no portable implementation for swap buffers as of
--** this time that is of value. Consequently, this code must be
--** implemented by somebody other than SGI.
--*/
--int __glXSwapBuffers(__GLXclientState *cl, GLbyte *pc)
-+static __GLXdrawable *
-+SyncContextGetDrawable (__GLXclientState *cl, GLXContextTag tag,
-+ XID drawId, int *status)
- {
- ClientPtr client = cl->client;
- DrawablePtr pDraw;
-- xGLXSwapBuffersReq *req = (xGLXSwapBuffersReq *) pc;
-- GLXContextTag tag = req->contextTag;
-- XID drawId = req->drawable;
- __GLXpixmap *pGlxPixmap;
- __GLXcontext *glxc = NULL;
-- int error;
-
- /*
- ** Check that the GLX drawable is valid.
-@@ -1361,11 +1354,11 @@
- ** Drawable is an X pixmap, which is not allowed.
- */
- client->errorValue = drawId;
-- return __glXBadDrawable;
-+ *status = __glXBadDrawable;
-+ return NULL;
- }
- } else {
-- pGlxPixmap = (__GLXpixmap *) LookupIDByType(drawId,
-- __glXPixmapRes);
-+ pGlxPixmap = (__GLXpixmap *) LookupIDByType(drawId, __glXPixmapRes);
- if (pGlxPixmap) {
- /*
- ** Drawable is a GLX pixmap.
-@@ -1375,21 +1368,23 @@
- ** Drawable is neither a X window nor a GLX pixmap.
- */
- client->errorValue = drawId;
-- return __glXBadDrawable;
-+ *status = __glXBadDrawable;
-+ return NULL;
- }
- }
-
- if (tag) {
- glxc = __glXLookupContextByTag(cl, tag);
- if (!glxc) {
-- return __glXBadContextTag;
-+ *status = __glXBadContextTag;
-+ return NULL;
- }
- /*
- ** The calling thread is swapping its current drawable. In this case,
- ** glxSwapBuffers is in both GL and X streams, in terms of
- ** sequentiality.
- */
-- if (__glXForceCurrent(cl, tag, &error)) {
-+ if (__glXForceCurrent(cl, tag, status)) {
- /*
- ** Do whatever is needed to make sure that all preceding requests
- ** in both streams are completed before the swap is executed.
-@@ -1397,33 +1392,53 @@
- CALL_Finish( GET_DISPATCH(), () );
- __GLX_NOTE_FLUSHED_CMDS(glxc);
- } else {
-- return error;
-+ return NULL;
- }
- }
-
-+ *status = Success;
- if (pDraw) {
-- __GLXdrawable *glxPriv;
-+ __GLXdrawable *glxPriv;
-
- if (glxc) {
- glxPriv = __glXGetDrawable(glxc, pDraw, drawId);
- if (glxPriv == NULL) {
-- return __glXBadDrawable;
-+ *status = __glXBadDrawable;
-+ return NULL;
- }
- }
- else {
- glxPriv = __glXFindDrawable(drawId);
- if (glxPriv == NULL) {
- /* This is a window we've never seen before, do nothing */
-- return Success;
-+ return NULL;
- }
- }
-
-- if ((*glxPriv->swapBuffers)(glxPriv) == GL_FALSE) {
-- return __glXBadDrawable;
-- }
-+ return glxPriv;
- }
-
-- return Success;
-+ return NULL;
-+}
-+
-+/*
-+** NOTE: There is no portable implementation for swap buffers as of
-+** this time that is of value. Consequently, this code must be
-+** implemented by somebody other than SGI.
-+*/
-+int __glXSwapBuffers(__GLXclientState *cl, GLbyte *pc)
-+{
-+ xGLXSwapBuffersReq *req = (xGLXSwapBuffersReq *) pc;
-+ GLXContextTag tag = req->contextTag;
-+ __GLXdrawable *glxPriv;
-+ int status;
-+
-+ glxPriv = SyncContextGetDrawable (cl, tag, req->drawable, &status);
-+ if (glxPriv && (*glxPriv->swapBuffers)(glxPriv) == GL_FALSE) {
-+ return __glXBadDrawable;
-+ }
-+
-+ return status;
- }
-
-
-@@ -1544,6 +1559,30 @@
- pGlxPixmap);
- }
-
-+int __glXCopySubBufferMESA(__GLXclientState *cl, GLbyte *pc)
-+{
-+ xGLXVendorPrivateReq *req = (xGLXVendorPrivateReq *) pc;
-+ GLXContextTag tag = req->contextTag;
-+ __GLXdrawable *glxPriv;
-+ GLXDrawable drawId;
-+ int x, y, width, height;
-+ int status;
-+
-+ pc += __GLX_VENDPRIV_HDR_SIZE;
-+
-+ drawId = *((CARD32 *) (pc));
-+ x = *((INT32 *) (pc + 4));
-+ y = *((INT32 *) (pc + 8));
-+ width = *((INT32 *) (pc + 12));
-+ height = *((INT32 *) (pc + 16));
-+
-+ glxPriv = SyncContextGetDrawable (cl, tag, drawId, &status);
-+ if (glxPriv)
-+ (*glxPriv->copySubBuffer)(glxPriv, x, y, width, height);
-+
-+ return status;
-+}
-+
- /*
- ** Get drawable attributes
- */
-@@ -2173,7 +2212,9 @@
- case X_GLXvop_BindTexImageEXT:
- return __glXBindTexImageEXT(cl, pc);
- case X_GLXvop_ReleaseTexImageEXT:
-- return __glXReleaseTexImageEXT(cl, pc);
-+ return __glXReleaseTexImageEXT(cl, pc);
-+ case X_GLXvop_CopySubBufferMESA:
-+ return __glXCopySubBufferMESA(cl, pc);
- }
- #endif
-
---- ./GL/glx/glxdri.c.mesa-copy-sub-buffer 2006-07-06 21:40:41.000000000 -0400
-+++ ./GL/glx/glxdri.c 2006-07-06 21:59:38.000000000 -0400
-@@ -112,12 +112,28 @@
- * months ago. :(
- * 20050727 - Gut all the old interfaces. This breaks compatability with
- * any DRI driver built to any previous version.
-+ * 20060314 - Added support for GLX_MESA_copy_sub_buffer.
- */
-+
- #define INTERNAL_VERSION 20050727
-
- static const char CREATE_NEW_SCREEN_FUNC[] =
- "__driCreateNewScreen_" STRINGIFY (INTERNAL_VERSION);
-
-+/* The DRI driver entry point version wasn't bumped when the
-+ * copySubBuffer functionality was added to the DRI drivers, but the
-+ * functionality is still conditional on the value of the
-+ * internal_api_version passed to __driCreateNewScreen. However, the
-+ * screen constructor doesn't fail for a DRI driver that's older than
-+ * the passed in version number, so there's no way we can know for
-+ * sure that we can actually use the copySubBuffer functionality. But
-+ * since the earliest (and at this point only) released mesa version
-+ * (6.5) that uses the 20050727 entry point does have copySubBuffer,
-+ * we'll just settle for that. We still have to pass in a higher to
-+ * the screen constructor to enable the functionality.
-+ */
-+#define COPY_SUB_BUFFER_INTERNAL_VERSION 20060314
-+
- static void
- __glXDRIleaveServer(void)
- {
-@@ -177,6 +193,27 @@
- return TRUE;
- }
-
-+static void
-+__glXDRIdrawableCopySubBuffer(__GLXdrawable *basePrivate,
-+ int x, int y, int w, int h)
-+{
-+ __GLXDRIdrawable *private = (__GLXDRIdrawable *) basePrivate;
-+ __GLXDRIscreen *screen;
-+
-+ /* FIXME: We're jumping through hoops here to get the DRIdrawable
-+ * which the dri driver tries to keep to it self... cf. FIXME in
-+ * createDrawable. */
-+
-+ screen = (__GLXDRIscreen *) __glXgetActiveScreen(private->base.pDraw->pScreen->myNum);
-+ private->driDrawable = (screen->driScreen.getDrawable)(NULL,
-+ private->base.drawId,
-+ screen->driScreen.private);
-+
-+ (*private->driDrawable->copySubBuffer)(NULL,
-+ private->driDrawable->private,
-+ x, y, w, h);
-+}
-+
- static __GLXdrawable *
- __glXDRIcontextCreateDrawable(__GLXcontext *context,
- DrawablePtr pDraw,
-@@ -195,10 +232,11 @@
- return NULL;
- }
-
-- private->base.destroy = __glXDRIdrawableDestroy;
-- private->base.resize = __glXDRIdrawableResize;
-- private->base.swapBuffers = __glXDRIdrawableSwapBuffers;
--
-+ private->base.destroy = __glXDRIdrawableDestroy;
-+ private->base.resize = __glXDRIdrawableResize;
-+ private->base.swapBuffers = __glXDRIdrawableSwapBuffers;
-+ private->base.copySubBuffer = __glXDRIdrawableCopySubBuffer;
-+
- #if 0
- /* FIXME: It would only be natural that we called
- * driScreen->createNewDrawable here but the DRI drivers manage
-@@ -218,7 +256,6 @@
- return &private->base;
- }
-
--
- static void
- __glXDRIcontextDestroy(__GLXcontext *baseContext)
- {
-@@ -770,7 +807,7 @@
- __DRIframebuffer framebuffer;
- int fd = -1;
- int status;
-- int api_ver = INTERNAL_VERSION;
-+ int api_ver = COPY_SUB_BUFFER_INTERNAL_VERSION;
- drm_magic_t magic;
- drmVersionPtr version;
- char *driverName;
---- ./GL/glx/g_disptab.h.mesa-copy-sub-buffer 2006-03-11 19:11:33.000000000 -0500
-+++ ./GL/glx/g_disptab.h 2006-07-06 21:56:33.000000000 -0400
-@@ -48,6 +48,7 @@
- extern int __glXSwapBuffers(__GLXclientState*, GLbyte*);
- extern int __glXBindTexImageEXT(__GLXclientState *cl, GLbyte *pc);
- extern int __glXReleaseTexImageEXT(__GLXclientState *cl, GLbyte *pc);
-+extern int __glXCopySubBufferMESA(__GLXclientState *cl, GLbyte *pc);
- extern int __glXGetDrawableAttributesSGIX(__GLXclientState *cl, GLbyte *pc);
- extern int __glXUseXFont(__GLXclientState*, GLbyte*);
- extern int __glXCreateGLXPixmap(__GLXclientState*, GLbyte*);
-@@ -76,6 +77,7 @@
- extern int __glXSwapSwapBuffers(__GLXclientState*, GLbyte*);
- extern int __glXSwapBindTexImageEXT(__GLXclientState *cl, GLbyte *pc);
- extern int __glXSwapReleaseTexImageEXT(__GLXclientState *cl, GLbyte *pc);
-+extern int __glXSwapReleaseTexImageEXT(__GLXclientState *cl, GLbyte *pc);
- extern int __glXSwapGetDrawableAttributesSGIX(__GLXclientState *cl, GLbyte *pc);
- extern int __glXSwapUseXFont(__GLXclientState*, GLbyte*);
- extern int __glXSwapCreateGLXPixmap(__GLXclientState*, GLbyte*);
-@@ -105,4 +107,11 @@
- extern __GLXdispatchSingleProcPtr __glXSingleTable[__GLX_SINGLE_TABLE_SIZE];
- extern __GLXdispatchRenderProcPtr __glXSwapRenderTable[__GLX_RENDER_TABLE_SIZE];
- extern __GLXdispatchSingleProcPtr __glXSwapSingleTable[__GLX_SINGLE_TABLE_SIZE];
-+
-+/* Copied from mesa src/glx/x11/glxcmds.c
-+ *
-+ * Apparently there's no standardized opcode for this extension.
-+ */
-+#define X_GLXvop_CopySubBufferMESA 5154 /* temporary */
-+
- #endif /* _GLX_g_disptab_h_ */
---- ./GL/glx/glxscreens.c.mesa-copy-sub-buffer 2006-03-20 15:10:29.000000000 -0500
-+++ ./GL/glx/glxscreens.c 2006-07-06 21:56:33.000000000 -0400
-@@ -139,6 +139,7 @@
- "GLX_SGIX_swap_barrier "
- #endif
- "GLX_SGIX_fbconfig "
-+ "GLX_MESA_copy_sub_buffer "
- ;
-
- __GLXscreen **__glXActiveScreens;
---- ./GL/glx/glxcmdsswap.c.mesa-copy-sub-buffer 2006-04-02 22:09:15.000000000 -0400
-+++ ./GL/glx/glxcmdsswap.c 2006-07-06 21:56:33.000000000 -0400
-@@ -432,6 +432,31 @@
- return __glXReleaseTexImageEXT(cl, (GLbyte *)pc);
- }
-
-+int __glXSwapCopySubBufferMESA(__GLXclientState *cl, GLbyte *pc)
-+{
-+ xGLXVendorPrivateReq *req = (xGLXVendorPrivateReq *) pc;
-+ GLXDrawable *drawId;
-+ int *buffer;
-+
-+ (void) drawId;
-+ (void) buffer;
-+
-+ __GLX_DECLARE_SWAP_VARIABLES;
-+
-+ pc += __GLX_VENDPRIV_HDR_SIZE;
-+
-+ __GLX_SWAP_SHORT(&req->length);
-+ __GLX_SWAP_INT(&req->contextTag);
-+ __GLX_SWAP_INT(pc);
-+ __GLX_SWAP_INT(pc + 4);
-+ __GLX_SWAP_INT(pc + 8);
-+ __GLX_SWAP_INT(pc + 12);
-+ __GLX_SWAP_INT(pc + 16);
-+
-+ return __glXCopySubBufferMESA(cl, pc);
-+
-+}
-+
- int __glXSwapGetDrawableAttributesSGIX(__GLXclientState *cl, GLbyte *pc)
- {
- xGLXVendorPrivateWithReplyReq *req = (xGLXVendorPrivateWithReplyReq *)pc;
-@@ -899,7 +924,9 @@
- case X_GLXvop_BindTexImageEXT:
- return __glXSwapBindTexImageEXT(cl, pc);
- case X_GLXvop_ReleaseTexImageEXT:
-- return __glXSwapReleaseTexImageEXT(cl, pc);
-+ return __glXSwapReleaseTexImageEXT(cl, pc);
-+ case X_GLXvop_CopySubBufferMESA:
-+ return __glXSwapCopySubBufferMESA(cl, pc);
- }
- #endif
-
diff --git a/x11-base/xorg-server/files/05-offscreen-pixmaps.patch b/x11-base/xorg-server/files/05-offscreen-pixmaps.patch
deleted file mode 100644
index 3841b043bab4..000000000000
--- a/x11-base/xorg-server/files/05-offscreen-pixmaps.patch
+++ /dev/null
@@ -1,55 +0,0 @@
---- ./hw/xfree86/xaa/xaaInit.c.offscreen-pixmaps 2006-07-05 14:31:42.000000000 -0400
-+++ ./hw/xfree86/xaa/xaaInit.c 2006-08-30 16:47:29.000000000 -0400
-@@ -98,6 +98,30 @@
- xfree(infoRec);
- }
-
-+void
-+XAAEvictPixmaps(void)
-+{
-+ XAAScreenPtr pScreenPriv;
-+ XAAInfoRecPtr infoRec;
-+ ScreenPtr pScreen;
-+ int i;
-+
-+ xf86MsgVerb(X_INFO, 3, "XAA: Evicting pixmaps\n");
-+
-+ for (i = 0; i < screenInfo.numScreens; i++) {
-+ pScreen = screenInfo.screens[i];
-+ infoRec = GET_XAAINFORECPTR_FROM_SCREEN(pScreen);
-+
-+ pScreenPriv = pScreen->devPrivates[XAAScreenIndex].ptr;
-+ infoRec = pScreenPriv->AccelInfoRec;
-+
-+ infoRec->offscreenDepths = 0;
-+ infoRec->Flags &= ~OFFSCREEN_PIXMAPS;
-+
-+ XAAMoveOutOffscreenPixmaps(pScreen);
-+ XAAInvalidatePixmapCache(pScreen);
-+ }
-+}
-
- Bool
- XAAInit(ScreenPtr pScreen, XAAInfoRecPtr infoRec)
---- ./GL/glx/glxdri.c.offscreen-pixmaps 2006-08-30 16:46:45.000000000 -0400
-+++ ./GL/glx/glxdri.c 2006-08-30 16:45:52.000000000 -0400
-@@ -367,6 +367,19 @@
- int bpp;
- GLenum target, format, type;
-
-+ /* When the GLX_EXT_texture_from_pixmap is used, as it's
-+ * implemented here, we want to pull pixmap out of video memory
-+ * and into host memory. */
-+ {
-+ extern void XAAEvictPixmaps(void);
-+ static int evictedPixmaps;
-+
-+ if (!evictedPixmaps) {
-+ XAAEvictPixmaps();
-+ evictedPixmaps = TRUE;
-+ }
-+ }
-+
- pixmap = (PixmapPtr) glxPixmap->pDraw;
- if (!glxPixmap->pDamage) {
- glxPixmap->pDamage = DamageCreate(NULL, NULL, DamageReportNone,
diff --git a/x11-base/xorg-server/files/06-aiglx-happy-vt-switch.patch b/x11-base/xorg-server/files/06-aiglx-happy-vt-switch.patch
deleted file mode 100644
index 314f1f087b23..000000000000
--- a/x11-base/xorg-server/files/06-aiglx-happy-vt-switch.patch
+++ /dev/null
@@ -1,241 +0,0 @@
-diff --git a/GL/glx/glxdri.c b/GL/glx/glxdri.c
-index cfa9996..77fa4bf 100644
---- a/GL/glx/glxdri.c
-+++ b/GL/glx/glxdri.c
-@@ -63,27 +63,30 @@ #include "dispatch.h"
- #define STRINGIFY(macro_or_string) STRINGIFY_ARG (macro_or_string)
- #define STRINGIFY_ARG(contents) #contents
-
--typedef struct __GLXDRIscreen __GLXDRIscreen;
--typedef struct __GLXDRIcontext __GLXDRIcontext;
-+typedef struct __GLXDRIscreen __GLXDRIscreen;
-+typedef struct __GLXDRIcontext __GLXDRIcontext;
- typedef struct __GLXDRIdrawable __GLXDRIdrawable;
-
- struct __GLXDRIscreen {
-- __GLXscreen base;
-+ __GLXscreen base;
-
-- __DRIscreen driScreen;
-- void *driver;
-+ xf86EnterVTProc *enterVT;
-+ xf86LeaveVTProc *leaveVT;
-+
-+ __DRIscreen driScreen;
-+ void *driver;
- };
-
- struct __GLXDRIcontext {
-- __GLXcontext base;
-+ __GLXcontext base;
-
-- __DRIcontext driContext;
-+ __DRIcontext driContext;
- };
-
- struct __GLXDRIdrawable {
-- __GLXdrawable base;
-+ __GLXdrawable base;
-
-- __DRIdrawable *driDrawable;
-+ __DRIdrawable *driDrawable;
- };
-
- /* History:
-@@ -594,8 +597,7 @@ static __DRIfuncPtr getProcAddress(const
-
- static __DRIscreen *findScreen(__DRInativeDisplay *dpy, int scrn)
- {
-- __GLXDRIscreen *screen =
-- (__GLXDRIscreen *) __glXgetActiveScreen(scrn);
-+ __GLXDRIscreen *screen = (__GLXDRIscreen *) __glXgetActiveScreen(scrn);
-
- return &screen->driScreen;
- }
-@@ -789,6 +791,30 @@ static const __DRIinterfaceMethods inter
-
- static const char dri_driver_path[] = DRI_DRIVER_PATH;
-
-+static Bool
-+glxDRIEnterVT (int index, int flags)
-+{
-+ __GLXDRIscreen *screen = (__GLXDRIscreen *) __glXgetActiveScreen(index);
-+
-+ LogMessage(X_INFO, "AIGLX: Resuming AIGLX clients after VT switch\n");
-+
-+ glxResumeClients();
-+
-+ return (*screen->enterVT) (index, flags);
-+}
-+
-+static void
-+glxDRILeaveVT (int index, int flags)
-+{
-+ __GLXDRIscreen *screen = (__GLXDRIscreen *) __glXgetActiveScreen(index);
-+
-+ LogMessage(X_INFO, "AIGLX: Suspending AIGLX clients for VT switch\n");
-+
-+ glxSuspendClients();
-+
-+ return (*screen->leaveVT) (index, flags);
-+}
-+
- static __GLXscreen *
- __glXDRIscreenProbe(ScreenPtr pScreen)
- {
-@@ -813,6 +839,7 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
- void *dev_priv = NULL;
- char filename[128];
- Bool isCapable;
-+ ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
-
- if (!xf86LoaderCheckSymbol("DRIQueryDirectRenderingCapable")) {
- LogMessage(X_ERROR, "AIGLX: DRI module not loaded\n");
-@@ -983,6 +1010,11 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
-
- __glXsetEnterLeaveServerFuncs(__glXDRIenterServer, __glXDRIleaveServer);
-
-+ screen->enterVT = pScrn->EnterVT;
-+ pScrn->EnterVT = glxDRIEnterVT;
-+ screen->leaveVT = pScrn->LeaveVT;
-+ pScrn->LeaveVT = glxDRILeaveVT;
-+
- LogMessage(X_INFO,
- "AIGLX: Loaded and initialized %s\n", filename);
-
-diff --git a/GL/glx/glxext.c b/GL/glx/glxext.c
-index 8bbb83f..edc257c 100644
---- a/GL/glx/glxext.c
-+++ b/GL/glx/glxext.c
-@@ -234,13 +231,11 @@ GLboolean __glXFreeContext(__GLXcontext
- * __glXDispatch() or as a callback from the resource manager. In
- * the latter case we need to lift the DRI lock manually. */
-
-- if (!inDispatch)
-- __glXleaveServer();
-+ __glXleaveServer();
-
- cx->destroy(cx);
-
-- if (!inDispatch)
-- __glXenterServer();
-+ __glXenterServer();
-
- return GL_TRUE;
- }
-@@ -336,7 +331,7 @@ void GlxExtensionInit(void)
- /*
- ** Initialize table of client state. There is never a client 0.
- */
-- for (i=1; i <= MAXCLIENTS; i++) {
-+ for (i = 1; i <= MAXCLIENTS; i++) {
- __glXClients[i] = 0;
- }
-
-@@ -407,11 +402,36 @@ __GLXcontext *__glXForceCurrent(__GLXcli
-
- /************************************************************************/
-
--/*
--** Top level dispatcher; all commands are executed from here down.
--*/
-+static int glxServerLeaveCount;
-+static int glxBlockClients;
-
--/* I cried when I wrote this. Damn you XAA! */
-+void glxSuspendClients(void)
-+{
-+ int i;
-+
-+ for (i = 1; i <= MAXCLIENTS; i++) {
-+ if (__glXClients[i] == NULL || !__glXClients[i]->inUse)
-+ continue;
-+
-+ IgnoreClient(__glXClients[i]->client);
-+ }
-+
-+ glxBlockClients = TRUE;
-+}
-+
-+void glxResumeClients(void)
-+{
-+ int i;
-+
-+ glxBlockClients = FALSE;
-+
-+ for (i = 1; i <= MAXCLIENTS; i++) {
-+ if (__glXClients[i] == NULL || !__glXClients[i]->inUse)
-+ continue;
-+
-+ AttendClient(__glXClients[i]->client);
-+ }
-+}
-
- static void
- __glXnopEnterServer(void)
-@@ -436,14 +456,19 @@ void __glXsetEnterLeaveServerFuncs(void
-
- void __glXenterServer(void)
- {
-- (*__glXenterServerFunc)();
-+ glxServerLeaveCount--;
-+
-+ if (glxServerLeaveCount == 0)
-+ (*__glXenterServerFunc)();
- }
-
- void __glXleaveServer(void)
- {
-- (*__glXleaveServerFunc)();
--}
-+ if (glxServerLeaveCount == 0)
-+ (*__glXleaveServerFunc)();
-
-+ glxServerLeaveCount++;
-+}
-
- /*
- ** Top level dispatcher; all commands are executed from here down.
-@@ -496,6 +521,15 @@ static int __glXDispatch(ClientPtr clien
- return __glXError(GLXBadLargeRequest);
- }
-
-+ /* If we're currently blocking GLX clients, just put this guy to
-+ * sleep, reset the request and return. */
-+ if (glxBlockClients) {
-+ ResetCurrentRequest(client);
-+ client->sequence--;
-+ IgnoreClient(client);
-+ return(client->noClientException);
-+ }
-+
- /*
- ** Use the opcode to index into the procedure table.
- */
-@@ -506,12 +540,8 @@ static int __glXDispatch(ClientPtr clien
-
- __glXleaveServer();
-
-- inDispatch = True;
--
- retval = proc(cl, (GLbyte *) stuff);
-
-- inDispatch = False;
--
- __glXenterServer();
-
- return retval;
-diff --git a/GL/glx/glxserver.h b/GL/glx/glxserver.h
-index 8ece1e2..9eed1bc 100644
---- a/GL/glx/glxserver.h
-+++ b/GL/glx/glxserver.h
-@@ -136,6 +136,9 @@ void __glXsetEnterLeaveServerFuncs(void
- void __glXenterServer(void);
- void __glXleaveServer(void);
-
-+void glxSuspendClients(void);
-+void glxResumeClients(void);
-+
- /*
- ** State kept per client.
- */
diff --git a/x11-base/xorg-server/files/1.1.1-dbe-render.diff b/x11-base/xorg-server/files/1.1.1-dbe-render.diff
deleted file mode 100644
index d2f27e5feb62..000000000000
--- a/x11-base/xorg-server/files/1.1.1-dbe-render.diff
+++ /dev/null
@@ -1,183 +0,0 @@
-diff --git a/dbe/dbe.c b/dbe/dbe.c
-index 5b43dd1..6a2ed6a 100644
---- a/dbe/dbe.c
-+++ b/dbe/dbe.c
-@@ -39,6 +39,11 @@
- #endif
-
- #include <string.h>
-+#if HAVE_STDINT_T
-+#include <stdint.h>
-+#elif !defined(UINT32_MAX)
-+#define UINT32_MAX 0xffffffffU
-+#endif
-
- #include <X11/X.h>
- #include <X11/Xproto.h>
-@@ -713,11 +718,14 @@ ProcDbeSwapBuffers(ClientPtr client)
- return(Success);
- }
-
-+ if (nStuff > UINT32_MAX / sizeof(DbeSwapInfoRec))
-+ return BadAlloc;
-+
- /* Get to the swap info appended to the end of the request. */
- dbeSwapInfo = (xDbeSwapInfo *)&stuff[1];
-
- /* Allocate array to record swap information. */
-- swapInfo = (DbeSwapInfoPtr)ALLOCATE_LOCAL(nStuff * sizeof(DbeSwapInfoRec));
-+ swapInfo = (DbeSwapInfoPtr)Xalloc(nStuff * sizeof(DbeSwapInfoRec));
- if (swapInfo == NULL)
- {
- return(BadAlloc);
-@@ -732,14 +740,14 @@ ProcDbeSwapBuffers(ClientPtr client)
- if (!(pWin = SecurityLookupWindow(dbeSwapInfo[i].window, client,
- SecurityWriteAccess)))
- {
-- DEALLOCATE_LOCAL(swapInfo);
-+ Xfree(swapInfo);
- return(BadWindow);
- }
-
- /* Each window must be double-buffered - BadMatch. */
- if (DBE_WINDOW_PRIV(pWin) == NULL)
- {
-- DEALLOCATE_LOCAL(swapInfo);
-+ Xfree(swapInfo);
- return(BadMatch);
- }
-
-@@ -748,7 +756,7 @@ ProcDbeSwapBuffers(ClientPtr client)
- {
- if (dbeSwapInfo[i].window == dbeSwapInfo[j].window)
- {
-- DEALLOCATE_LOCAL(swapInfo);
-+ Xfree(swapInfo);
- return(BadMatch);
- }
- }
-@@ -759,7 +767,7 @@ ProcDbeSwapBuffers(ClientPtr client)
- (dbeSwapInfo[i].swapAction != XdbeUntouched ) &&
- (dbeSwapInfo[i].swapAction != XdbeCopied ))
- {
-- DEALLOCATE_LOCAL(swapInfo);
-+ Xfree(swapInfo);
- return(BadValue);
- }
-
-@@ -789,12 +797,12 @@ ProcDbeSwapBuffers(ClientPtr client)
- error = (*pDbeScreenPriv->SwapBuffers)(client, &nStuff, swapInfo);
- if (error != Success)
- {
-- DEALLOCATE_LOCAL(swapInfo);
-+ Xfree(swapInfo);
- return(error);
- }
- }
-
-- DEALLOCATE_LOCAL(swapInfo);
-+ Xfree(swapInfo);
- return(Success);
-
- } /* ProcDbeSwapBuffers() */
-@@ -876,10 +884,12 @@ ProcDbeGetVisualInfo(ClientPtr client)
-
- REQUEST_AT_LEAST_SIZE(xDbeGetVisualInfoReq);
-
-+ if (stuff->n > UINT32_MAX / sizeof(DrawablePtr))
-+ return BadAlloc;
- /* Make sure any specified drawables are valid. */
- if (stuff->n != 0)
- {
-- if (!(pDrawables = (DrawablePtr *)ALLOCATE_LOCAL(stuff->n *
-+ if (!(pDrawables = (DrawablePtr *)Xalloc(stuff->n *
- sizeof(DrawablePtr))))
- {
- return(BadAlloc);
-@@ -892,7 +902,7 @@ ProcDbeGetVisualInfo(ClientPtr client)
- if (!(pDrawables[i] = (DrawablePtr)SecurityLookupDrawable(
- drawables[i], client, SecurityReadAccess)))
- {
-- DEALLOCATE_LOCAL(pDrawables);
-+ Xfree(pDrawables);
- return(BadDrawable);
- }
- }
-@@ -904,7 +914,7 @@ ProcDbeGetVisualInfo(ClientPtr client)
- {
- if (pDrawables)
- {
-- DEALLOCATE_LOCAL(pDrawables);
-+ Xfree(pDrawables);
- }
-
- return(BadAlloc);
-@@ -931,7 +941,7 @@ ProcDbeGetVisualInfo(ClientPtr client)
- /* Free pDrawables if we needed to allocate it above. */
- if (pDrawables)
- {
-- DEALLOCATE_LOCAL(pDrawables);
-+ Xfree(pDrawables);
- }
-
- return(BadAlloc);
-@@ -1012,7 +1022,7 @@ ProcDbeGetVisualInfo(ClientPtr client)
-
- if (pDrawables)
- {
-- DEALLOCATE_LOCAL(pDrawables);
-+ Xfree(pDrawables);
- }
-
- return(client->noClientException);
-diff --git a/render/render.c b/render/render.c
-index e4d8d6b..55f360a 100644
---- a/render/render.c
-+++ b/render/render.c
-@@ -47,6 +47,12 @@
- #include <X11/Xfuncproto.h>
- #include "cursorstr.h"
-
-+#if HAVE_STDINT_H
-+#include <stdint.h>
-+#elif !defined(UINT32_MAX)
-+#define UINT32_MAX 0xffffffffU
-+#endif
-+
- static int ProcRenderQueryVersion (ClientPtr pClient);
- static int ProcRenderQueryPictFormats (ClientPtr pClient);
- static int ProcRenderQueryPictIndexValues (ClientPtr pClient);
-@@ -1103,11 +1109,14 @@ ProcRenderAddGlyphs (ClientPtr client)
- }
-
- nglyphs = stuff->nglyphs;
-+ if (nglyphs > UINT32_MAX / sizeof(GlyphNewRec))
-+ return BadAlloc;
-+
- if (nglyphs <= NLOCALGLYPH)
- glyphsBase = glyphsLocal;
- else
- {
-- glyphsBase = (GlyphNewPtr) ALLOCATE_LOCAL (nglyphs * sizeof (GlyphNewRec));
-+ glyphsBase = (GlyphNewPtr) Xalloc (nglyphs * sizeof (GlyphNewRec));
- if (!glyphsBase)
- return BadAlloc;
- }
-@@ -1164,7 +1173,7 @@ ProcRenderAddGlyphs (ClientPtr client)
- }
-
- if (glyphsBase != glyphsLocal)
-- DEALLOCATE_LOCAL (glyphsBase);
-+ Xfree (glyphsBase);
- return client->noClientException;
- bail:
- while (glyphs != glyphsBase)
-@@ -1173,7 +1182,7 @@ bail:
- xfree (glyphs->glyph);
- }
- if (glyphsBase != glyphsLocal)
-- DEALLOCATE_LOCAL (glyphsBase);
-+ Xfree (glyphsBase);
- return err;
- }
-
diff --git a/x11-base/xorg-server/files/1.1.1-fix-xrandr-zoom-keys.patch b/x11-base/xorg-server/files/1.1.1-fix-xrandr-zoom-keys.patch
deleted file mode 100644
index fc9bd8db0dc8..000000000000
--- a/x11-base/xorg-server/files/1.1.1-fix-xrandr-zoom-keys.patch
+++ /dev/null
@@ -1,186 +0,0 @@
-diff --git a/dix/Makefile.am b/dix/Makefile.am
-index c9a19f7..414f125 100644
---- a/dix/Makefile.am
-+++ b/dix/Makefile.am
-@@ -29,7 +29,8 @@ libdix_la_SOURCES = \
- swaprep.c \
- swapreq.c \
- tables.c \
-- window.c
-+ window.c \
-+ strcasecmp.c
-
- libxpstubs_la_SOURCES = \
- xpstubs.c
-diff --git a/hw/xfree86/dixmods/Makefile.am b/hw/xfree86/dixmods/Makefile.am
-index d1b806a..9023a0c 100644
---- a/hw/xfree86/dixmods/Makefile.am
-+++ b/hw/xfree86/dixmods/Makefile.am
-@@ -95,6 +95,7 @@ libtype1_la_SOURCES = type1mod.c
- libdixmods_la_SOURCES = $(top_srcdir)/mi/miinitext.c
-
- libxorgxkb_la_SOURCES = xkbVT.c xkbPrivate.c xkbKillSrv.c
-+libxorgxkb_la_LIBADD = $(top_builddir)/dix/libdix.la
-
- libxtrap_la_LDFLAGS = -avoid-version
- libxtrap_la_LIBADD = $(top_builddir)/XTrap/libxtrap.la
-diff --git a/hw/xfree86/dixmods/xkbPrivate.c b/hw/xfree86/dixmods/xkbPrivate.c
-index 0479bca..b986432 100644
---- a/hw/xfree86/dixmods/xkbPrivate.c
-+++ b/hw/xfree86/dixmods/xkbPrivate.c
-@@ -26,13 +26,13 @@ XkbDDXPrivate(DeviceIntPtr dev,KeyCode k
- if (xf86act->type == XkbSA_XFree86Private) {
- memcpy(msgbuf, xf86act->data, XkbAnyActionDataSize);
- msgbuf[XkbAnyActionDataSize]= '\0';
-- if (strcmp(msgbuf, "-vmode")==0)
-+ if (strcasecmp(msgbuf, "-vmode")==0)
- xf86ProcessActionEvent(ACTION_PREV_MODE, NULL);
-- else if (strcmp(msgbuf, "+vmode")==0)
-+ else if (strcasecmp(msgbuf, "+vmode")==0)
- xf86ProcessActionEvent(ACTION_NEXT_MODE, NULL);
-- else if (strcmp(msgbuf, "ungrab")==0)
-+ else if (strcasecmp(msgbuf, "ungrab")==0)
- xf86ProcessActionEvent(ACTION_DISABLEGRAB, NULL);
-- else if (strcmp(msgbuf, "clsgrb")==0)
-+ else if (strcasecmp(msgbuf, "clsgrb")==0)
- xf86ProcessActionEvent(ACTION_CLOSECLIENT, NULL);
- else
- xf86ProcessActionEvent(ACTION_MESSAGE, (void *) msgbuf);
-diff --git a/include/dix.h b/include/dix.h
-index 0177721..84fc849 100644
---- a/include/dix.h
-+++ b/include/dix.h
-@@ -820,4 +820,10 @@ typedef struct {
- SelectionCallbackKind kind;
- } SelectionInfoRec;
-
-+/* strcasecmp.c */
-+#if NEED_STRCASECMP
-+#define strcasecmp xstrcasecmp
-+extern int xstrcasecmp(char *s1, char *s2);
-+#endif
-+
- #endif /* DIX_H */
-diff --git a/xkb/maprules.c b/xkb/maprules.c
-index d4e9829..eff02ad 100644
---- a/xkb/maprules.c
-+++ b/xkb/maprules.c
-@@ -62,12 +62,6 @@ #define PR_DEBUG1(s,a)
- #define PR_DEBUG2(s,a,b)
- #endif
-
--#ifdef NEED_STRCASECMP
--extern int _XkbStrCaseCmp(char *s1, char *s2);
--#else
--#define _XkbStrCaseCmp strcasecmp
--#endif
--
- /***====================================================================***/
-
- #define DFLT_LINE_SIZE 128
-@@ -1092,20 +1086,20 @@ int len,headingtype,extra_ndx = 0;
- for ( ; GetInputLine(file,&line,False); line.num_line= 0) {
- if (line.line[0]=='!') {
- tok = strtok(&(line.line[1]), " \t");
-- if (_XkbStrCaseCmp(tolower(tok),"model") == 0)
-+ if (strcasecmp(tok,"model") == 0)
- headingtype = HEAD_MODEL;
-- else if (_XkbStrCaseCmp(tok,"layout") == 0)
-+ else if (strcasecmp(tok,"layout") == 0)
- headingtype = HEAD_LAYOUT;
-- else if (_XkbStrCaseCmp(tok,"variant") == 0)
-+ else if (strcasecmp(tok,"variant") == 0)
- headingtype = HEAD_VARIANT;
-- else if (_XkbStrCaseCmp(tok,"option") == 0)
-+ else if (strcasecmp(tok,"option") == 0)
- headingtype = HEAD_OPTION;
- else {
- int i;
- headingtype = HEAD_EXTRA;
- extra_ndx= -1;
- for (i=0;(i<rules->num_extra)&&(extra_ndx<0);i++) {
-- if (!_XkbStrCaseCmp(tok,rules->extra_names[i]))
-+ if (!strcasecmp(tok,rules->extra_names[i]))
- extra_ndx= i;
- }
- if (extra_ndx<0) {
-diff --git a/xkb/xkbfmisc.c b/xkb/xkbfmisc.c
-index 3389ba8..3ed68c2 100644
---- a/xkb/xkbfmisc.c
-+++ b/xkb/xkbfmisc.c
-@@ -247,19 +247,3 @@ XkbNameMatchesPattern(char *name,char *p
- /* if we get here, the pattern is exhausted (-:just like me:-) */
- return (name[0]=='\0');
- }
--
--#ifdef NEED_STRCASECMP
--_X_HIDDEN int
--_XkbStrCaseCmp(char *str1,char *str2)
--{
-- const u_char *us1 = (const u_char *)str1, *us2 = (const u_char *)str2;
--
-- while (tolower(*us1) == tolower(*us2)) {
-- if (*us1++ == '\0')
-- return (0);
-- us2++;
-- }
--
-- return (tolower(*us1) - tolower(*us2));
--}
--#endif
-diff --git a/dix/strcasecmp.c b/dix/strcasecmp.c
-new file mode 100644
-index 0000000..bf3f008
---- /dev/null
-+++ b/dix/strcasecmp.c
-@@ -0,0 +1,50 @@
-+/* $Xorg: xkbmisc.c,v 1.4 2000/08/17 19:46:44 cpqbld Exp $ */
-+/************************************************************
-+ Copyright (c) 1995 by Silicon Graphics Computer Systems, Inc.
-+
-+ Permission to use, copy, modify, and distribute this
-+ software and its documentation for any purpose and without
-+ fee is hereby granted, provided that the above copyright
-+ notice appear in all copies and that both that copyright
-+ notice and this permission notice appear in supporting
-+ documentation, and that the name of Silicon Graphics not be
-+ used in advertising or publicity pertaining to distribution
-+ of the software without specific prior written permission.
-+ Silicon Graphics makes no representation about the suitability
-+ of this software for any purpose. It is provided "as is"
-+ without any express or implied warranty.
-+
-+ SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
-+ SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
-+ AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
-+ GRAPHICS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
-+ DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
-+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
-+ OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH
-+ THE USE OR PERFORMANCE OF THIS SOFTWARE.
-+
-+ ********************************************************/
-+/* $XFree86: xc/lib/xkbfile/xkbmisc.c,v 1.7 2003/07/16 02:31:10 dawes Exp $ */
-+
-+#ifdef HAVE_DIX_CONFIG_H
-+#include <dix-config.h>
-+#endif
-+
-+#include <ctype.h>
-+#include "dix.h"
-+
-+#ifdef NEED_STRCASECMP
-+int
-+xstrcasecmp(char *str1,char *str2)
-+{
-+ const u_char *us1 = (const u_char *)str1, *us2 = (const u_char *)str2;
-+
-+ while (tolower(*us1) == tolower(*us2)) {
-+ if (*us1++ == '\0')
-+ return (0);
-+ us2++;
-+ }
-+
-+ return (tolower(*us1) - tolower(*us2));
-+}
-+#endif
diff --git a/x11-base/xorg-server/files/1.1.1-fix_acpi_tokenize.patch b/x11-base/xorg-server/files/1.1.1-fix_acpi_tokenize.patch
deleted file mode 100644
index 407617f3c0f3..000000000000
--- a/x11-base/xorg-server/files/1.1.1-fix_acpi_tokenize.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-commit 0567a6337b84fa045b5732e98203f488274aa2a2
-Author: Bram Verweij <amverweij@gmail.com>
-Date: Wed Nov 8 18:00:52 2006 +0200
-
- xfree86/linux acpi: fix tokenising
- Split on a space, rather on the 'video' string, as strtok takes a char,
- not a string.
-
-diff --git a/hw/xfree86/os-support/linux/lnx_acpi.c b/hw/xfree86/os-support/linux/lnx_acpi.c
-index aa30e72..024e6ef 100644
---- a/hw/xfree86/os-support/linux/lnx_acpi.c
-+++ b/hw/xfree86/os-support/linux/lnx_acpi.c
-@@ -78,7 +78,7 @@ lnxACPIGetEventFromOs(int fd, pmEvent *e
- char *data = NULL; /* doesn't appear to be used in the kernel */
- unsigned long int notify_l, data_l;
-
-- video = strtok(ev, "video");
-+ video = strtok(ev, " ");
-
- GFX = strtok(NULL, " ");
- #if 0
diff --git a/x11-base/xorg-server/files/1.1.1-fix_big_endian_glx.patch b/x11-base/xorg-server/files/1.1.1-fix_big_endian_glx.patch
deleted file mode 100644
index 5bc902b5847b..000000000000
--- a/x11-base/xorg-server/files/1.1.1-fix_big_endian_glx.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-commit 3ad1642f1bbaa5f96558cdf3384b40f7122f8781
-Author: Michel Dänzer <michel@tungstengraphics.com>
-Date: Sun Oct 15 16:57:09 2006 +0200
-
- Fix __glXDRIbindTexImage() for 32 bpp on big endian platforms.
-
-diff --git a/GL/glx/glxdri.c b/GL/glx/glxdri.c
-index b572304..170662c 100644
---- a/GL/glx/glxdri.c
-+++ b/GL/glx/glxdri.c
-@@ -359,7 +359,12 @@ __glXDRIbindTexImage(__GLXcontext *baseC
- if (pixmap->drawable.depth >= 24) {
- bpp = 4;
- format = GL_BGRA;
-- type = GL_UNSIGNED_BYTE;
-+ type =
-+#if X_BYTE_ORDER == X_LITTLE_ENDIAN
-+ GL_UNSIGNED_BYTE;
-+#else
-+ GL_UNSIGNED_INT_8_8_8_8_REV;
-+#endif
- } else {
- bpp = 2;
- format = GL_RGB;
diff --git a/x11-base/xorg-server/files/1.1.1-fixdualhead.patch b/x11-base/xorg-server/files/1.1.1-fixdualhead.patch
deleted file mode 100644
index 7b0513d5d7bb..000000000000
--- a/x11-base/xorg-server/files/1.1.1-fixdualhead.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-https://bugs.gentoo.org/show_bug.cgi?id=159375
-
-diff --git a/GL/glx/glxdri.c b/GL/glx/glxdri.c
-index 4935b0a..9c3cac0 100644
---- a/GL/glx/glxdri.c
-+++ b/GL/glx/glxdri.c
-@@ -121,19 +121,13 @@ static const char CREATE_NEW_SCREEN_FUNC
- static void
- __glXDRIleaveServer(void)
- {
-- int i;
--
-- for (i = 0; i < screenInfo.numScreens; i++)
-- DRIDoBlockHandler(i, NULL, NULL, NULL);
-+ DRIBlockHandler(NULL, NULL, NULL);
- }
-
- static void
- __glXDRIenterServer(void)
- {
-- int i;
--
-- for (i = 0; i < screenInfo.numScreens; i++)
-- DRIDoWakeupHandler(i, NULL, 0, NULL);
-+ DRIWakeupHandler(NULL, 0, NULL);
- }
-
- static void
diff --git a/x11-base/xorg-server/files/1.1.1-sparc-includes.patch b/x11-base/xorg-server/files/1.1.1-sparc-includes.patch
deleted file mode 100644
index 3408d208646b..000000000000
--- a/x11-base/xorg-server/files/1.1.1-sparc-includes.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-diff -Nura xorg-server-1.1.1/hw/xfree86/os-support/linux/lnx_io.c xorg-server-1.1.1.sparc/hw/xfree86/os-support/linux/lnx_io.c
---- xorg-server-1.1.1/hw/xfree86/os-support/linux/lnx_io.c 2006-07-05 15:31:41.000000000 -0300
-+++ xorg-server-1.1.1.sparc/hw/xfree86/os-support/linux/lnx_io.c 2007-01-18 14:43:53.000000000 -0300
-@@ -72,10 +72,6 @@
-
- #include <linux/kd.h>
- #include <linux/version.h>
--#ifdef __sparc__
--#include <asm/param.h>
--#include <asm/kbio.h>
--#endif
-
- /* Deal with spurious kernel header change in struct kbd_repeat.
- We undo this define after the routine using that struct is over,
-diff -Nura xorg-server-1.1.1/hw/xfree86/os-support/linux/lnx_kbd.c xorg-server-1.1.1.sparc/hw/xfree86/os-support/linux/lnx_kbd.c
---- xorg-server-1.1.1/hw/xfree86/os-support/linux/lnx_kbd.c 2006-07-05 15:31:41.000000000 -0300
-+++ xorg-server-1.1.1.sparc/hw/xfree86/os-support/linux/lnx_kbd.c 2007-01-18 14:44:55.000000000 -0300
-@@ -102,10 +102,6 @@
-
- #include <linux/kd.h>
- #include <linux/version.h>
--#ifdef __sparc__
--#include <asm/param.h>
--#include <asm/kbio.h>
--#endif
-
- /* Deal with spurious kernel header change in struct kbd_repeat.
- We undo this define after the routine using that struct is over,
diff --git a/x11-base/xorg-server/files/1.1.1-sparc64-ati-lockups.patch b/x11-base/xorg-server/files/1.1.1-sparc64-ati-lockups.patch
deleted file mode 100644
index d44d9699b2d7..000000000000
--- a/x11-base/xorg-server/files/1.1.1-sparc64-ati-lockups.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/hw/xfree86/os-support/bus/linuxPci.c b/hw/xfree86/os-support/bus/linuxPci.c
-index a3c07f3..a97e6f0 100644
---- a/hw/xfree86/os-support/bus/linuxPci.c
-+++ b/hw/xfree86/os-support/bus/linuxPci.c
-@@ -83,7 +83,13 @@ #if defined(__powerpc__)
- /* pciAddrBusToHost */ linuxPpcBusAddrToHostAddr,
- #else
- /* pciAddrHostToBus */ pciAddrNOOP,
-+/* linuxTransAddrBusToHost is busted on sparc64 but the PCI rework tree
-+ * makes it all moot, so we kludge it for now */
-+#if defined(__sparc__)
-+/* pciAddrBusToHost */ pciAddrNOOP,
-+#else
- /* pciAddrBusToHost */ linuxTransAddrBusToHost,
-+#endif /* __sparc64__ */
- #endif
-
- /* pciControlBridge */ NULL,
diff --git a/x11-base/xorg-server/files/digest-xorg-server-1.1.1-r1 b/x11-base/xorg-server/files/digest-xorg-server-1.1.1-r1
deleted file mode 100644
index 1330edc82b0a..000000000000
--- a/x11-base/xorg-server/files/digest-xorg-server-1.1.1-r1
+++ /dev/null
@@ -1,6 +0,0 @@
-MD5 c46f2c6646a270911b791dd8e1c2d977 MesaLib-6.5.1.tar.bz2 3138257
-RMD160 23f8714787b053b2c41d020c7af211a02e5beab3 MesaLib-6.5.1.tar.bz2 3138257
-SHA256 e2669c9757e37f9073f539d75ced7f8f7a45b6bbb16081929ca2a306cde59df0 MesaLib-6.5.1.tar.bz2 3138257
-MD5 a8ed678677af8ebb2fba5624602f6b2e xorg-server-1.1.1.tar.bz2 6252103
-RMD160 17675c45b1e6ec8ed025f73efcf481c60ff42941 xorg-server-1.1.1.tar.bz2 6252103
-SHA256 9d2df9eaced491dfe14f3ebccb15035ff8f2bc2b12f1124974adea90642dfd6c xorg-server-1.1.1.tar.bz2 6252103
diff --git a/x11-base/xorg-server/files/digest-xorg-server-1.1.1-r5 b/x11-base/xorg-server/files/digest-xorg-server-1.1.1-r5
deleted file mode 100644
index 1330edc82b0a..000000000000
--- a/x11-base/xorg-server/files/digest-xorg-server-1.1.1-r5
+++ /dev/null
@@ -1,6 +0,0 @@
-MD5 c46f2c6646a270911b791dd8e1c2d977 MesaLib-6.5.1.tar.bz2 3138257
-RMD160 23f8714787b053b2c41d020c7af211a02e5beab3 MesaLib-6.5.1.tar.bz2 3138257
-SHA256 e2669c9757e37f9073f539d75ced7f8f7a45b6bbb16081929ca2a306cde59df0 MesaLib-6.5.1.tar.bz2 3138257
-MD5 a8ed678677af8ebb2fba5624602f6b2e xorg-server-1.1.1.tar.bz2 6252103
-RMD160 17675c45b1e6ec8ed025f73efcf481c60ff42941 xorg-server-1.1.1.tar.bz2 6252103
-SHA256 9d2df9eaced491dfe14f3ebccb15035ff8f2bc2b12f1124974adea90642dfd6c xorg-server-1.1.1.tar.bz2 6252103
diff --git a/x11-base/xorg-server/files/xorg-conf-example.patch b/x11-base/xorg-server/files/xorg-conf-example.patch
deleted file mode 100644
index 8ec7476e4111..000000000000
--- a/x11-base/xorg-server/files/xorg-conf-example.patch
+++ /dev/null
@@ -1,56 +0,0 @@
---- configure.ac.old 2006-09-24 11:30:40.000000000 -0600
-+++ configure.ac 2006-09-24 11:31:11.000000000 -0600
-@@ -806,6 +806,7 @@
-
- AC_DEFINE_DIR(COMPILEDDEFAULTFONTPATH, FONTPATH, [Default font path])
- AC_DEFINE_DIR(RGB_DB, RGBPATH, [Default RGB path])
-+AC_DEFINE_DIR(BASE_FONT_PATH, FONTDIR, [Default base font path])
- AC_DEFINE_DIR(DRI_DRIVER_PATH, DRI_DRIVER_PATH, [Default DRI driver path])
- AC_DEFINE_UNQUOTED(XVENDORNAME, ["$VENDOR_STRING"], [Vendor name])
- AC_DEFINE_UNQUOTED(XVENDORNAMESHORT, ["$VENDOR_STRING_SHORT"], [Short vendor name])
---- hw/xfree86/xorgconf.cpp.old 2006-09-29 19:02:00.000000000 -0600
-+++ hw/xfree86/xorgconf.cpp 2006-09-29 19:02:07.000000000 -0600
-@@ -54,10 +54,7 @@
-
- FontPath LOCALFONTPATH
- FontPath MISCFONTPATH
-- FontPath DPI75USFONTPATH
-- FontPath DPI100USFONTPATH
- FontPath T1FONTPATH
-- FontPath TRUETYPEFONTPATH
-+ FontPath TRUETYPEFONTPATH
- FontPath CIDFONTPATH
-- FontPath SPFONTPATH
- FontPath DPI75FONTPATH
---- hw/xfree86/Makefile.am.old 2006-09-24 11:59:57.000000000 -0600
-+++ hw/xfree86/Makefile.am 2006-09-24 11:59:51.000000000 -0600
-@@ -1,3 +1,5 @@
-+include $(top_srcdir)/cpprules.in
-+
- if DRI
- DRI_SUBDIR = dri
- endif
-@@ -75,7 +77,23 @@
- optionsdir = $(libdir)/X11
- dist_options_DATA = Options
-
-+BUILT_SOURCES = xorg.conf.example
-+CLEAN = xorg.conf.example xorg.conf.example.pre
- EXTRA_DIST = xorgconf.cpp
-
-+CPP_FILES_FLAGS = \
-+ -DRGBPATH=\"$(RGB_DB)\" \
-+ -DLOCALFONTPATH="\"$(BASE_FONT_PATH)/local\"" \
-+ -DMISCFONTPATH="\"$(BASE_FONT_PATH)/misc\"" \
-+ -DT1FONTPATH="\"$(BASE_FONT_PATH)/Type1\"" \
-+ -DTRUETYPEFONTPATH="\"$(BASE_FONT_PATH)/TTF\"" \
-+ -DCIDFONTPATH="\"$(BASE_FONT_PATH)/CID\"" \
-+ -DDPI75FONTPATH="\"$(BASE_FONT_PATH)/75dpi\"" \
-+ -DDPI100FONTPATH="\"$(BASE_FONT_PATH)/100dpi\"" \
-+ -DMODULEPATH=\"$(DEFAULT_MODULE_PATH)\"
-+
- relink:
- rm -f Xorg && $(MAKE) Xorg
-+
-+xorg.conf.example.pre: xorgconf.cpp
-+ cp $< $@
diff --git a/x11-base/xorg-server/files/xorg-server-1.1.1-install-libxf86config-headers.patch b/x11-base/xorg-server/files/xorg-server-1.1.1-install-libxf86config-headers.patch
deleted file mode 100644
index 07b5219bf2b4..000000000000
--- a/x11-base/xorg-server/files/xorg-server-1.1.1-install-libxf86config-headers.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff --git a/hw/xfree86/parser/Makefile.am b/hw/xfree86/parser/Makefile.am
-index acda83d..6b9b62a 100644
---- a/hw/xfree86/parser/Makefile.am
-+++ b/hw/xfree86/parser/Makefile.am
-@@ -25,10 +25,12 @@ libxf86config_a_SOURCES = \
-
- AM_CFLAGS = $(XORG_CFLAGS)
-
-+sdk_HEADERS = \
-+ xf86Optrec.h \
-+ xf86Parser.h
-+
- EXTRA_DIST = \
- Configint.h \
- configProcs.h \
-- xf86Optrec.h \
-- xf86Parser.h \
- xf86tokens.h \
- cpconfig.c
diff --git a/x11-base/xorg-server/files/xorg-x11-server-1.1.1-mesa-6.5.1.patch b/x11-base/xorg-server/files/xorg-x11-server-1.1.1-mesa-6.5.1.patch
deleted file mode 100644
index 48f4380c2b89..000000000000
--- a/x11-base/xorg-server/files/xorg-x11-server-1.1.1-mesa-6.5.1.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-diff --git a/GL/mesa/main/Makefile.am b/GL/mesa/main/Makefile.am
-index 867fe57..4d5b0cd 100644
---- a/GL/mesa/main/Makefile.am
-+++ b/GL/mesa/main/Makefile.am
-@@ -29,6 +27,7 @@ nodist_libmain_la_SOURCES = accum.c \
- api_loopback.c \
- api_noop.c \
- api_validate.c \
-+ arrayobj.c \
- attrib.c \
- blend.c \
- bufferobj.c \
-@@ -67,6 +66,7 @@ nodist_libmain_la_SOURCES = accum.c \
- points.c \
- polygon.c \
- rastpos.c \
-+ rbadaptors.c \
- renderbuffer.c \
- state.c \
- stencil.c \
-diff --git a/GL/symlink-mesa.sh b/GL/symlink-mesa.sh
-index ccaa2a9..32f839a 100755
---- a/GL/symlink-mesa.sh
-+++ b/GL/symlink-mesa.sh
-@@ -88,8 +88,11 @@ symlink_mesa_main() {
- action api_noop.h
- action api_validate.c
- action api_validate.h
-+ action arrayobj.c
-+ action arrayobj.h
- action attrib.c
- action attrib.h
-+ action bitset.h
- action blend.c
- action blend.h
- action bufferobj.c
-@@ -168,6 +171,8 @@ symlink_mesa_main() {
- action polygon.h
- action rastpos.c
- action rastpos.h
-+ action rbadaptors.c
-+ action rbadaptors.h
- action renderbuffer.c
- action renderbuffer.h
- action simple_list.h
-@@ -468,7 +468,7 @@ symlink_mesa_shader_slang_library() {
- action slang_core_gc.h
- action slang_fragment_builtin_gc.h
- action slang_shader_syn.h
-- action slang_version_syn.h
-+ action slang_pp_version_syn.h
- action slang_vertex_builtin_gc.h
- }
-