summary refs log tree commit diff
path: root/gnu/packages/patches
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2014-12-27 12:03:04 -0500
committerMark H Weaver <mhw@netris.org>2014-12-27 12:03:04 -0500
commitf9930cfaabe631e2b90f4ee3d30b149f0e3aaae4 (patch)
tree8a901e6acebe892664e52d499c5c596a591dc178 /gnu/packages/patches
parentbf7688fe4d8624ed9bddc8f7f3887df5f1fc3957 (diff)
parent7f9b77dc465f35a3689036e12d0bf85ed7d81f52 (diff)
downloadguix-f9930cfaabe631e2b90f4ee3d30b149f0e3aaae4.tar.gz
Merge branch 'xorg-updates'
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r--gnu/packages/patches/inkscape-stray-comma.patch13
-rw-r--r--gnu/packages/patches/irrlicht-mesa-10.patch46
-rw-r--r--gnu/packages/patches/sdl-libx11-1.6.patch13
-rw-r--r--gnu/packages/patches/vtk-mesa-10.patch36
-rw-r--r--gnu/packages/patches/xf86-input-synaptics-glibc-2.20.patch63
-rw-r--r--gnu/packages/patches/xf86-video-ark-remove-mibstore.patch23
-rw-r--r--gnu/packages/patches/xf86-video-ast-remove-mibstore.patch90
-rw-r--r--gnu/packages/patches/xf86-video-geode-glibc-2.20.patch15
-rw-r--r--gnu/packages/patches/xf86-video-glint-remove-mibstore.patch24
-rw-r--r--gnu/packages/patches/xf86-video-i128-remove-mibstore.patch23
-rw-r--r--gnu/packages/patches/xf86-video-intel-compat-api.patch13
-rw-r--r--gnu/packages/patches/xf86-video-intel-glibc-2.20.patch15
-rw-r--r--gnu/packages/patches/xf86-video-mach64-glibc-2.20.patch17
-rw-r--r--gnu/packages/patches/xf86-video-mga-glibc-2.20.patch17
-rw-r--r--gnu/packages/patches/xf86-video-nv-remove-mibstore.patch72
-rw-r--r--gnu/packages/patches/xf86-video-openchrome-glibc-2.20.patch15
-rw-r--r--gnu/packages/patches/xf86-video-openchrome-includes.patch35
-rw-r--r--gnu/packages/patches/xf86-video-r128-glibc-2.20.patch17
-rw-r--r--gnu/packages/patches/xf86-video-siliconmotion-remove-mibstore.patch16
-rw-r--r--gnu/packages/patches/xf86-video-sis-update-api.patch128
-rw-r--r--gnu/packages/patches/xf86-video-tdfx-remove-mibstore.patch26
-rw-r--r--gnu/packages/patches/xf86-video-tga-remove-mibstore.patch34
-rw-r--r--gnu/packages/patches/xf86-video-trident-remove-mibstore.patch23
-rw-r--r--gnu/packages/patches/xf86-video-vmware-glibc-2.20.patch15
24 files changed, 678 insertions, 111 deletions
diff --git a/gnu/packages/patches/inkscape-stray-comma.patch b/gnu/packages/patches/inkscape-stray-comma.patch
deleted file mode 100644
index 0b000d9e30..0000000000
--- a/gnu/packages/patches/inkscape-stray-comma.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-This is verbatim from Upstream:        http://bazaar.launchpad.net/~inkscape.dev/inkscape/RELEASE_0_48_BRANCH/diff/9943
---- a/src/widgets/desktop-widget.h	2011-06-06 06:43:00 +0000
-+++ b/src/widgets/desktop-widget.h	2013-01-05 14:34:09 +0000
-@@ -239,7 +239,7 @@
- private:
-     GtkWidget *tool_toolbox;
-     GtkWidget *aux_toolbox;
--    GtkWidget *commands_toolbox,;
-+    GtkWidget *commands_toolbox;
-     GtkWidget *snap_toolbox;
- 
-     static void init(SPDesktopWidget *widget);
-
diff --git a/gnu/packages/patches/irrlicht-mesa-10.patch b/gnu/packages/patches/irrlicht-mesa-10.patch
new file mode 100644
index 0000000000..b567c384a3
--- /dev/null
+++ b/gnu/packages/patches/irrlicht-mesa-10.patch
@@ -0,0 +1,46 @@
+Patch to work around incompatibility between irrlicht-1.8.1 and mesa-10.x.
+Upstream bug (fixed in trunk): http://sourceforge.net/p/irrlicht/bugs/429/
+Upstream fix: http://sourceforge.net/p/irrlicht/code/4810
+This patch copied from:
+http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-games/irrlicht/files/irrlicht-1.8.1-mesa-10.x.patch?view=markup
+
+From 244d00280c1b082ca164f92337773e9e4e1a3898 Mon Sep 17 00:00:00 2001
+From: hiker <henrichsjoerg@mgail.com>
+Date: Wed, 26 Feb 2014 11:13:03 +1100
+Subject: [PATCH] Applied patch from jpirie for fixing mesa 10 compilation
+ problems.
+
+--- irrlicht-1.8.1/source/Irrlicht/COpenGLExtensionHandler.h
++++ irrlicht-1.8.1/source/Irrlicht/COpenGLExtensionHandler.h
+@@ -21,6 +21,7 @@
+ 	#endif

+ 	#include <GL/gl.h>

+ 	#if defined(_IRR_OPENGL_USE_EXTPOINTER_)

++		typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC) (GLenum mode);

+ 		#include "glext.h"

+ 	#endif

+ 	#include "wglext.h"

+@@ -35,6 +36,7 @@
+ 	#endif

+ 	#include <OpenGL/gl.h>

+ 	#if defined(_IRR_OPENGL_USE_EXTPOINTER_)

++		typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC) (GLenum mode);

+ 		#include "glext.h"

+ 	#endif

+ #elif defined(_IRR_COMPILE_WITH_SDL_DEVICE_) && !defined(_IRR_COMPILE_WITH_X11_DEVICE_)

+@@ -48,6 +50,7 @@
+ 	#define NO_SDL_GLEXT

+ 	#include <SDL/SDL_video.h>

+ 	#include <SDL/SDL_opengl.h>

++	typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC) (GLenum mode);

+ 	#include "glext.h"

+ #else

+ 	#if defined(_IRR_OPENGL_USE_EXTPOINTER_)

+@@ -60,6 +63,7 @@
+ 	#include <GL/gl.h>

+ 	#include <GL/glx.h>

+ 	#if defined(_IRR_OPENGL_USE_EXTPOINTER_)

++	typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC) (GLenum mode);

+ 	#include "glext.h"

+ 	#undef GLX_ARB_get_proc_address // avoid problems with local glxext.h

+ 	#include "glxext.h"

diff --git a/gnu/packages/patches/sdl-libx11-1.6.patch b/gnu/packages/patches/sdl-libx11-1.6.patch
new file mode 100644
index 0000000000..73ba9ac071
--- /dev/null
+++ b/gnu/packages/patches/sdl-libx11-1.6.patch
@@ -0,0 +1,13 @@
+Update _XData32 declaration in SDL_x11sym.h to match that of libx11 1.6.
+
+--- SDL-1.2.15/src/video/x11/SDL_x11sym.h.~1~	2012-01-19 01:30:06.000000000 -0500
++++ SDL-1.2.15/src/video/x11/SDL_x11sym.h	2014-12-26 00:22:36.445067694 -0500
+@@ -165,7 +165,7 @@
+  */
+ #ifdef LONG64
+ SDL_X11_MODULE(IO_32BIT)
+-SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
++SDL_X11_SYM(int,_XData32,(Display *dpy,register _Xconst long *data,unsigned len),(dpy,data,len),return)
+ SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len),(dpy,data,len),)
+ #endif
+ 
diff --git a/gnu/packages/patches/vtk-mesa-10.patch b/gnu/packages/patches/vtk-mesa-10.patch
new file mode 100644
index 0000000000..bc60af68c4
--- /dev/null
+++ b/gnu/packages/patches/vtk-mesa-10.patch
@@ -0,0 +1,36 @@
+Fix build against new mesa.  See:
+
+  https://bugs.freedesktop.org/show_bug.cgi?id=83631
+  https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=765938
+
+Description: fixes FTBFS against new libjpeg-turbo
+Author: Ondřej Surý <ondrej@debian.org>
+Bug-Debian: https://bugs.debian.org/765938
+Reviewed-By: Anton Gladky <gladk@debian.org>
+Last-Update: 2014-10-22
+
+Index: vtk6-6.1.0+dfsg2/Rendering/OpenGL/vtkOpenGL.h
+===================================================================
+--- vtk6-6.1.0+dfsg2.orig/Rendering/OpenGL/vtkOpenGL.h
++++ vtk6-6.1.0+dfsg2/Rendering/OpenGL/vtkOpenGL.h
+@@ -20,6 +20,7 @@
+ 
+ // To prevent gl.h to include glext.h provided by the system
+ #define GL_GLEXT_LEGACY
++#define GLX_GLEXT_LEGACY
+ #if defined(__APPLE__) && (defined(VTK_USE_CARBON) || defined(VTK_USE_COCOA))
+ # include <OpenGL/gl.h> // Include OpenGL API.
+ #else
+Index: vtk6-6.1.0+dfsg2/Rendering/OpenGL/vtkXOpenGLRenderWindow.cxx
+===================================================================
+--- vtk6-6.1.0+dfsg2.orig/Rendering/OpenGL/vtkXOpenGLRenderWindow.cxx
++++ vtk6-6.1.0+dfsg2/Rendering/OpenGL/vtkXOpenGLRenderWindow.cxx
+@@ -27,7 +27,7 @@
+ 
+ // define GLX_GLXEXT_LEGACY to prevent glx.h to include glxext.h provided by
+ // the system
+-//#define GLX_GLXEXT_LEGACY
++#define GLX_GLXEXT_LEGACY
+ #include "GL/glx.h"
+ 
+ #include "vtkgl.h"
diff --git a/gnu/packages/patches/xf86-input-synaptics-glibc-2.20.patch b/gnu/packages/patches/xf86-input-synaptics-glibc-2.20.patch
deleted file mode 100644
index 93263e1f19..0000000000
--- a/gnu/packages/patches/xf86-input-synaptics-glibc-2.20.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-Allow builds with libc 2.20.
-Patch from <https://raw.githubusercontent.com/openembedded/oe-core/master/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/always_include_xorg_server.h.patch>.
-
-From 96e60a4ea242d2decf109835981ae186cc36f642 Mon Sep 17 00:00:00 2001
-From: Peter Hutterer <peter.hutterer@who-t.net>
-Date: Fri, 29 Aug 2014 07:57:41 +1000
-Subject: Include xorg-server.h to fix build errors on newest glibc
-
-In file included from /usr/include/string.h:634:0,
-                 from /usr/include/xorg/os.h:53,
-                 from /usr/include/xorg/misc.h:115,
-                 from /usr/include/xorg/xf86str.h:37,
-                 from /usr/include/xorg/xf86Xinput.h:54,
-                 from synproto.h:36,
-                 from synproto.c:24:
-/usr/include/xorg/os.h:579:1: error: expected identifier or '(' before '__extension__'
- strndup(const char *str, size_t n);
-
-See http://lists.freedesktop.org/archives/xorg-devel/2014-July/043070.html
-
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
-Status: Backport
-
-Index: xf86-input-synaptics-1.8.0/src/eventcomm.h
-===================================================================
---- xf86-input-synaptics-1.8.0.orig/src/eventcomm.h	2014-08-28 18:40:28.628070587 -0700
-+++ xf86-input-synaptics-1.8.0/src/eventcomm.h	2014-08-28 18:40:28.620070587 -0700
-@@ -27,6 +27,8 @@
- #ifndef _EVENTCOMM_H_
- #define _EVENTCOMM_H_
- 
-+#include <xorg-server.h>
-+
- #include <linux/input.h>
- #include <linux/version.h>
- #include <xf86Xinput.h>
-Index: xf86-input-synaptics-1.8.0/src/ps2comm.h
-===================================================================
---- xf86-input-synaptics-1.8.0.orig/src/ps2comm.h	2014-08-28 18:40:28.628070587 -0700
-+++ xf86-input-synaptics-1.8.0/src/ps2comm.h	2014-08-28 18:40:28.620070587 -0700
-@@ -22,6 +22,8 @@
- #ifndef _PS2COMM_H_
- #define _PS2COMM_H_
- 
-+#include <xorg-server.h>
-+
- #include <unistd.h>
- #include <sys/ioctl.h>
- #include "xf86_OSproc.h"
-Index: xf86-input-synaptics-1.8.0/src/synproto.h
-===================================================================
---- xf86-input-synaptics-1.8.0.orig/src/synproto.h	2014-08-28 18:40:28.628070587 -0700
-+++ xf86-input-synaptics-1.8.0/src/synproto.h	2014-08-28 18:40:28.624070587 -0700
-@@ -31,6 +31,8 @@
- #include "config.h"
- #endif
- 
-+#include <xorg-server.h>
-+
- #include <unistd.h>
- #include <sys/ioctl.h>
- #include <xf86Xinput.h>
diff --git a/gnu/packages/patches/xf86-video-ark-remove-mibstore.patch b/gnu/packages/patches/xf86-video-ark-remove-mibstore.patch
new file mode 100644
index 0000000000..4a5b629b43
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-ark-remove-mibstore.patch
@@ -0,0 +1,23 @@
+Removes references to mibstore.h and miInitializeBackingStore, which
+have been removed from xorg-server.  Zack Rusin <zackr@vmware.com>
+wrote: "It was a noop for at least 5 years and it has been removed."
+See: http://patches.openembedded.org/patch/46133/
+
+--- xf86-video-ark-0.7.5/src/ark_driver.c.~1~	2012-07-17 00:51:36.000000000 -0400
++++ xf86-video-ark-0.7.5/src/ark_driver.c	2014-12-19 00:23:13.028931734 -0500
+@@ -39,7 +39,6 @@
+ #include "compiler.h"
+ #include "mipointer.h"
+ #include "micmap.h"
+-#include "mibstore.h"
+ #include "fb.h"
+ #include "ark.h"
+ 
+@@ -538,7 +537,6 @@
+ 
+ 	fbPictureInit (pScreen, 0, 0);
+ 
+-	miInitializeBackingStore(pScreen);
+ 	xf86SetBackingStore(pScreen);
+ 
+ 	if (!pARK->NoAccel) {
diff --git a/gnu/packages/patches/xf86-video-ast-remove-mibstore.patch b/gnu/packages/patches/xf86-video-ast-remove-mibstore.patch
new file mode 100644
index 0000000000..58a44ae260
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-ast-remove-mibstore.patch
@@ -0,0 +1,90 @@
+Removes references to mibstore.h and miInitializeBackingStore, which
+have been removed from xorg-server.  Zack Rusin <zackr@vmware.com>
+wrote: "It was a noop for at least 5 years and it has been removed."
+See: http://patches.openembedded.org/patch/46133/
+
+diff -ru xf86-video-ast-0.93.10.orig/src/ast_2dtool.c xf86-video-ast-0.93.10/src/ast_2dtool.c
+--- xf86-video-ast-0.93.10.orig/src/ast_2dtool.c	2012-03-23 21:40:56.000000000 -0400
++++ xf86-video-ast-0.93.10/src/ast_2dtool.c	2014-12-19 02:42:32.422383728 -0500
+@@ -27,7 +27,6 @@
+ #include "xf86_OSproc.h"
+ #include "xf86cmap.h"
+ #include "compiler.h"
+-#include "mibstore.h"
+ #include "vgaHW.h"
+ #include "mipointer.h"
+ #include "micmap.h"
+diff -ru xf86-video-ast-0.93.10.orig/src/ast_accel.c xf86-video-ast-0.93.10/src/ast_accel.c
+--- xf86-video-ast-0.93.10.orig/src/ast_accel.c	2012-03-23 21:40:56.000000000 -0400
++++ xf86-video-ast-0.93.10/src/ast_accel.c	2014-12-19 02:41:55.534200809 -0500
+@@ -27,7 +27,6 @@
+ #include "xf86_OSproc.h"
+ #include "xf86cmap.h"
+ #include "compiler.h"
+-#include "mibstore.h"
+ #include "vgaHW.h"
+ #include "mipointer.h"
+ #include "micmap.h"
+diff -ru xf86-video-ast-0.93.10.orig/src/ast_cursor.c xf86-video-ast-0.93.10/src/ast_cursor.c
+--- xf86-video-ast-0.93.10.orig/src/ast_cursor.c	2012-03-23 21:40:56.000000000 -0400
++++ xf86-video-ast-0.93.10/src/ast_cursor.c	2014-12-19 02:42:37.258407708 -0500
+@@ -27,7 +27,6 @@
+ #include "xf86_OSproc.h"
+ #include "xf86cmap.h"
+ #include "compiler.h"
+-#include "mibstore.h"
+ #include "vgaHW.h"
+ #include "mipointer.h"
+ #include "micmap.h"
+diff -ru xf86-video-ast-0.93.10.orig/src/ast_driver.c xf86-video-ast-0.93.10/src/ast_driver.c
+--- xf86-video-ast-0.93.10.orig/src/ast_driver.c	2012-03-23 21:40:56.000000000 -0400
++++ xf86-video-ast-0.93.10/src/ast_driver.c	2014-12-19 02:42:50.710474414 -0500
+@@ -31,7 +31,6 @@
+ #endif
+ #include "xf86cmap.h"
+ #include "compiler.h"
+-#include "mibstore.h"
+ #include "vgaHW.h"
+ #include "mipointer.h"
+ #include "micmap.h"
+@@ -865,7 +864,6 @@
+    }
+ #endif /* end of Accel_2D */
+      
+-   miInitializeBackingStore(pScreen);
+    xf86SetBackingStore(pScreen);
+    xf86SetSilkenMouse(pScreen);
+ 
+diff -ru xf86-video-ast-0.93.10.orig/src/ast_mode.c xf86-video-ast-0.93.10/src/ast_mode.c
+--- xf86-video-ast-0.93.10.orig/src/ast_mode.c	2012-03-23 21:40:56.000000000 -0400
++++ xf86-video-ast-0.93.10/src/ast_mode.c	2014-12-19 02:42:24.894346398 -0500
+@@ -27,7 +27,6 @@
+ #include "xf86_OSproc.h"
+ #include "xf86cmap.h"
+ #include "compiler.h"
+-#include "mibstore.h"
+ #include "vgaHW.h"
+ #include "mipointer.h"
+ #include "micmap.h"
+diff -ru xf86-video-ast-0.93.10.orig/src/ast_tool.c xf86-video-ast-0.93.10/src/ast_tool.c
+--- xf86-video-ast-0.93.10.orig/src/ast_tool.c	2012-03-23 21:40:56.000000000 -0400
++++ xf86-video-ast-0.93.10/src/ast_tool.c	2014-12-19 02:42:03.930242443 -0500
+@@ -27,7 +27,6 @@
+ #include "xf86_OSproc.h"
+ #include "xf86cmap.h"
+ #include "compiler.h"
+-#include "mibstore.h"
+ #include "vgaHW.h"
+ #include "mipointer.h"
+ #include "micmap.h"
+diff -ru xf86-video-ast-0.93.10.orig/src/ast_vgatool.c xf86-video-ast-0.93.10/src/ast_vgatool.c
+--- xf86-video-ast-0.93.10.orig/src/ast_vgatool.c	2012-03-23 21:40:56.000000000 -0400
++++ xf86-video-ast-0.93.10/src/ast_vgatool.c	2014-12-19 02:42:18.406314226 -0500
+@@ -27,7 +27,6 @@
+ #include "xf86_OSproc.h"
+ #include "xf86cmap.h"
+ #include "compiler.h"
+-#include "mibstore.h"
+ #include "vgaHW.h"
+ #include "mipointer.h"
+ #include "micmap.h"
diff --git a/gnu/packages/patches/xf86-video-geode-glibc-2.20.patch b/gnu/packages/patches/xf86-video-geode-glibc-2.20.patch
new file mode 100644
index 0000000000..4dc69e3611
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-geode-glibc-2.20.patch
@@ -0,0 +1,15 @@
+Allow builds with glibc 2.20.
+Based on a patch by Peter Hutterer <peter.hutterer@who-t.net>.
+See <https://raw.githubusercontent.com/openembedded/oe-core/master/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/always_include_xorg_server.h.patch>.
+
+--- xf86-video-geode-2.11.16/src/lx_memory.c.~1~	2014-07-16 16:59:37.000000000 -0400
++++ xf86-video-geode-2.11.16/src/lx_memory.c	2014-12-19 00:38:11.753388268 -0500
+@@ -23,6 +23,8 @@
+  * software without specific prior written permission.
+  */
+ 
++#include <xorg-server.h>
++
+ #include "xf86.h"
+ #include "geode.h"
+ #include "cim/cim_regs.h"
diff --git a/gnu/packages/patches/xf86-video-glint-remove-mibstore.patch b/gnu/packages/patches/xf86-video-glint-remove-mibstore.patch
new file mode 100644
index 0000000000..969ed7e41e
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-glint-remove-mibstore.patch
@@ -0,0 +1,24 @@
+Removes references to mibstore.h and miInitializeBackingStore, which
+have been removed from xorg-server.  Zack Rusin <zackr@vmware.com>
+wrote: "It was a noop for at least 5 years and it has been removed."
+See: http://patches.openembedded.org/patch/46133/
+
+--- xf86-video-glint-1.2.8/src/glint_driver.c.~1~	2012-07-15 22:50:47.000000000 -0400
++++ xf86-video-glint-1.2.8/src/glint_driver.c	2014-12-19 00:42:39.162714279 -0500
+@@ -52,8 +52,6 @@
+ #include "compiler.h"
+ #include "mipointer.h"
+ 
+-#include "mibstore.h"
+-
+ #include "pm3_regs.h"
+ #include "glint_regs.h"
+ #include "IBM.h"
+@@ -2904,7 +2902,6 @@
+         }
+     }
+ 
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+ 
diff --git a/gnu/packages/patches/xf86-video-i128-remove-mibstore.patch b/gnu/packages/patches/xf86-video-i128-remove-mibstore.patch
new file mode 100644
index 0000000000..b269d63473
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-i128-remove-mibstore.patch
@@ -0,0 +1,23 @@
+Removes references to mibstore.h and miInitializeBackingStore, which
+have been removed from xorg-server.  Zack Rusin <zackr@vmware.com>
+wrote: "It was a noop for at least 5 years and it has been removed."
+See: http://patches.openembedded.org/patch/46133/
+
+--- xf86-video-i128-1.3.6/src/i128_driver.c.~1~	2012-07-17 01:21:15.000000000 -0400
++++ xf86-video-i128-1.3.6/src/i128_driver.c	2014-12-19 00:47:16.140087736 -0500
+@@ -51,7 +51,6 @@
+ #include "mipointer.h"
+ 
+ /* All drivers implementing backing store need this */
+-#include "mibstore.h"
+ #include "micmap.h"
+ 
+ #include "xf86DDC.h"
+@@ -1557,7 +1556,6 @@
+         return FALSE;
+     }
+     
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+ 
diff --git a/gnu/packages/patches/xf86-video-intel-compat-api.patch b/gnu/packages/patches/xf86-video-intel-compat-api.patch
new file mode 100644
index 0000000000..786de5c45d
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-intel-compat-api.patch
@@ -0,0 +1,13 @@
+This patch was copied from Debian.
+
+--- xserver-xorg-video-intel-2.21.15.orig/src/compat-api.h
++++ xserver-xorg-video-intel-2.21.15/src/compat-api.h
+@@ -158,4 +158,8 @@
+ 	if ((d)->pScreen->SourceValidate) (d)->pScreen->SourceValidate(d, x, y, w, h)
+ #endif
+ 
++#if XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(1,14,99,2,0)
++#define DamageUnregister(d, dd) DamageUnregister(dd)
++#endif
++
+ #endif
diff --git a/gnu/packages/patches/xf86-video-intel-glibc-2.20.patch b/gnu/packages/patches/xf86-video-intel-glibc-2.20.patch
new file mode 100644
index 0000000000..aeebfacdcd
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-intel-glibc-2.20.patch
@@ -0,0 +1,15 @@
+Allow builds with glibc 2.20.
+Based on a patch by Peter Hutterer <peter.hutterer@who-t.net>.
+See <https://raw.githubusercontent.com/openembedded/oe-core/master/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/always_include_xorg_server.h.patch>.
+
+--- xf86-video-intel-2.21.15/src/intel_device.c.~1~	2013-08-09 16:58:48.000000000 -0400
++++ xf86-video-intel-2.21.15/src/intel_device.c	2014-12-18 00:03:54.700759577 -0500
+@@ -33,6 +33,8 @@
+ 
+ #include <sys/ioctl.h>
+ 
++#include <xorg-server.h>
++
+ #include <pciaccess.h>
+ #include <xf86.h>
+ #include <xf86drm.h>
diff --git a/gnu/packages/patches/xf86-video-mach64-glibc-2.20.patch b/gnu/packages/patches/xf86-video-mach64-glibc-2.20.patch
new file mode 100644
index 0000000000..7fb1452c20
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-mach64-glibc-2.20.patch
@@ -0,0 +1,17 @@
+Fix test compilation with exa.h in configure when using glibc 2.20.
+Inspired by a patch by Peter Hutterer <peter.hutterer@who-t.net>.
+See <https://raw.githubusercontent.com/openembedded/oe-core/master/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/always_include_xorg_server.h.patch>.
+
+--- xf86-video-mach64-6.9.4/configure.~1~	2012-12-20 01:16:10.000000000 -0500
++++ xf86-video-mach64-6.9.4/configure	2014-12-19 02:48:18.040097554 -0500
+@@ -18370,7 +18370,9 @@
+ 
+         SAVE_CPPFLAGS="$CPPFLAGS"
+         CPPFLAGS="$CPPFLAGS $XORG_CFLAGS"
+-        ac_fn_c_check_header_mongrel "$LINENO" "exa.h" "ac_cv_header_exa_h" "$ac_includes_default"
++        ac_fn_c_check_header_mongrel "$LINENO" "exa.h" "ac_cv_header_exa_h" "$ac_includes_default
++#include <xorg-server.h>
++"
+ if test "x$ac_cv_header_exa_h" = xyes; then :
+   have_exa_h="yes"
+ else
diff --git a/gnu/packages/patches/xf86-video-mga-glibc-2.20.patch b/gnu/packages/patches/xf86-video-mga-glibc-2.20.patch
new file mode 100644
index 0000000000..3b8277df80
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-mga-glibc-2.20.patch
@@ -0,0 +1,17 @@
+Fix test compilation with exa.h in configure when using glibc 2.20.
+Inspired by a patch by Peter Hutterer <peter.hutterer@who-t.net>.
+See <https://raw.githubusercontent.com/openembedded/oe-core/master/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/always_include_xorg_server.h.patch>.
+
+--- xf86-video-mga-1.6.3/configure.~1~	2013-12-04 21:10:25.000000000 -0500
++++ xf86-video-mga-1.6.3/configure	2014-12-19 01:06:23.005774736 -0500
+@@ -18464,7 +18464,9 @@
+ 
+     SAVE_CPPFLAGS="$CPPFLAGS"
+     CPPFLAGS="$CPPFLAGS $XORG_CFLAGS"
+-    ac_fn_c_check_header_mongrel "$LINENO" "exa.h" "ac_cv_header_exa_h" "$ac_includes_default"
++    ac_fn_c_check_header_mongrel "$LINENO" "exa.h" "ac_cv_header_exa_h" "$ac_includes_default
++#include <xorg-server.h>
++"
+ if test "x$ac_cv_header_exa_h" = xyes; then :
+   have_exa_h="yes"
+ else
diff --git a/gnu/packages/patches/xf86-video-nv-remove-mibstore.patch b/gnu/packages/patches/xf86-video-nv-remove-mibstore.patch
new file mode 100644
index 0000000000..48588ed0e4
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-nv-remove-mibstore.patch
@@ -0,0 +1,72 @@
+Removes references to mibstore.h and miInitializeBackingStore, which
+have been removed from xorg-server.  Zack Rusin <zackr@vmware.com>
+wrote: "It was a noop for at least 5 years and it has been removed."
+See: http://patches.openembedded.org/patch/46133/
+
+diff -ru xf86-video-nv-2.1.20.orig/src/g80_driver.c xf86-video-nv-2.1.20/src/g80_driver.c
+--- xf86-video-nv-2.1.20.orig/src/g80_driver.c	2012-07-17 02:47:02.000000000 -0400
++++ xf86-video-nv-2.1.20/src/g80_driver.c	2014-12-17 10:11:42.197579082 -0500
+@@ -34,7 +34,6 @@
+ #include <xf86Resources.h>
+ #endif
+ #include <mipointer.h>
+-#include <mibstore.h>
+ #include <micmap.h>
+ #include <xf86cmap.h>
+ #include <fb.h>
+@@ -833,7 +832,6 @@
+         }
+     }
+ 
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+ 
+diff -ru xf86-video-nv-2.1.20.orig/src/nv_driver.c xf86-video-nv-2.1.20/src/nv_driver.c
+--- xf86-video-nv-2.1.20.orig/src/nv_driver.c	2012-07-17 02:47:02.000000000 -0400
++++ xf86-video-nv-2.1.20/src/nv_driver.c	2014-12-17 10:11:39.037563413 -0500
+@@ -2550,7 +2550,6 @@
+     if (!pNv->NoAccel)
+ 	NVAccelInit(pScreen);
+     
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+ 
+diff -ru xf86-video-nv-2.1.20.orig/src/nv_include.h xf86-video-nv-2.1.20/src/nv_include.h
+--- xf86-video-nv-2.1.20.orig/src/nv_include.h	2012-07-17 02:48:19.000000000 -0400
++++ xf86-video-nv-2.1.20/src/nv_include.h	2014-12-17 10:11:22.089479372 -0500
+@@ -24,9 +24,6 @@
+ /* All drivers initialising the SW cursor need this */
+ #include "mipointer.h"
+ 
+-/* All drivers implementing backing store need this */
+-#include "mibstore.h"
+-
+ #include "micmap.h"
+ 
+ #include "xf86DDC.h"
+diff -ru xf86-video-nv-2.1.20.orig/src/riva_driver.c xf86-video-nv-2.1.20/src/riva_driver.c
+--- xf86-video-nv-2.1.20.orig/src/riva_driver.c	2012-07-17 02:47:02.000000000 -0400
++++ xf86-video-nv-2.1.20/src/riva_driver.c	2014-12-17 10:11:31.101524060 -0500
+@@ -1168,7 +1168,6 @@
+     if (!pRiva->NoAccel)
+ 	RivaAccelInit(pScreen);
+     
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+ 
+diff -ru xf86-video-nv-2.1.20.orig/src/riva_include.h xf86-video-nv-2.1.20/src/riva_include.h
+--- xf86-video-nv-2.1.20.orig/src/riva_include.h	2012-07-17 02:48:45.000000000 -0400
++++ xf86-video-nv-2.1.20/src/riva_include.h	2014-12-17 10:11:12.229430478 -0500
+@@ -22,9 +22,6 @@
+ /* All drivers initialising the SW cursor need this */
+ #include "mipointer.h"
+ 
+-/* All drivers implementing backing store need this */
+-#include "mibstore.h"
+-
+ #include "micmap.h"
+ 
+ #include "xf86DDC.h"
diff --git a/gnu/packages/patches/xf86-video-openchrome-glibc-2.20.patch b/gnu/packages/patches/xf86-video-openchrome-glibc-2.20.patch
new file mode 100644
index 0000000000..4ed7ab00bf
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-openchrome-glibc-2.20.patch
@@ -0,0 +1,15 @@
+Allow builds with glibc 2.20.
+Based on a patch by Peter Hutterer <peter.hutterer@who-t.net>.
+See <https://raw.githubusercontent.com/openembedded/oe-core/master/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/always_include_xorg_server.h.patch>.
+
+--- xf86-video-openchrome-0.3.3/src/via_3d.h.~1~	2013-05-23 11:11:28.000000000 -0400
++++ xf86-video-openchrome-0.3.3/src/via_3d.h	2014-12-19 01:17:04.000953259 -0500
+@@ -24,6 +24,8 @@
+ #ifndef VIA_3D_H
+ #define VIA_3D_H
+ 
++#include <xorg-server.h>
++
+ #include "xf86.h"
+ #include "via_dmabuffer.h"
+ 
diff --git a/gnu/packages/patches/xf86-video-openchrome-includes.patch b/gnu/packages/patches/xf86-video-openchrome-includes.patch
deleted file mode 100644
index 3c79596387..0000000000
--- a/gnu/packages/patches/xf86-video-openchrome-includes.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-This follows the same rationale as xf86-input-synaptics-glibc-2.20.patch
-to allow building with glibc-2.20.
-diff -u -r xf86-video-openchrome-0.2.906.old/src/via_3d.h xf86-video-openchrome-0.2.906/src/via_3d.h
---- xf86-video-openchrome-0.2.906.old/src/via_3d.h	2014-11-23 14:04:58.000000000 +0100
-+++ xf86-video-openchrome-0.2.906/src/via_3d.h	2014-11-23 14:18:37.000000000 +0100
-@@ -24,6 +24,7 @@
- #ifndef VIA_3D_H
- #define VIA_3D_H
- 
-+#include "xorg-server.h"
- #include "xf86.h"
- #include "via_dmabuffer.h"
- 
-diff -u -r xf86-video-openchrome-0.2.906.old/src/via_driver.h xf86-video-openchrome-0.2.906/src/via_driver.h
---- xf86-video-openchrome-0.2.906.old/src/via_driver.h	2014-11-23 14:04:58.000000000 +0100
-+++ xf86-video-openchrome-0.2.906/src/via_driver.h	2014-11-23 14:21:43.000000000 +0100
-@@ -35,6 +35,7 @@
- #endif
- 
- #include "vgaHW.h"
-+#include "xorg-server.h"
- #include "xf86.h"
- 
- #if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 6 
-diff -u -r xf86-video-openchrome-0.2.906.old/src/via_timing.h xf86-video-openchrome-0.2.906/src/via_timing.h
---- xf86-video-openchrome-0.2.906.old/src/via_timing.h	2014-11-23 14:04:58.000000000 +0100
-+++ xf86-video-openchrome-0.2.906/src/via_timing.h	2014-11-23 14:20:50.000000000 +0100
-@@ -25,6 +25,7 @@
- #ifndef _TIMING_H_
- #define _TIMING_H_
- 
-+#include "xorg-server.h"
- #include "xf86.h"
- 
- /* Aspect ratio not CVT standard */
diff --git a/gnu/packages/patches/xf86-video-r128-glibc-2.20.patch b/gnu/packages/patches/xf86-video-r128-glibc-2.20.patch
new file mode 100644
index 0000000000..21a430ebc6
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-r128-glibc-2.20.patch
@@ -0,0 +1,17 @@
+Fix test compilation with exa.h in configure when using glibc 2.20.
+Inspired by a patch by Peter Hutterer <peter.hutterer@who-t.net>.
+See <https://raw.githubusercontent.com/openembedded/oe-core/master/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/always_include_xorg_server.h.patch>.
+
+--- xf86-video-r128-6.9.2/configure.~1~	2013-10-02 14:38:15.000000000 -0400
++++ xf86-video-r128-6.9.2/configure	2014-12-19 01:23:03.346735159 -0500
+@@ -18400,7 +18400,9 @@
+ 
+         SAVE_CPPFLAGS="$CPPFLAGS"
+         CPPFLAGS="$CPPFLAGS $XORG_CFLAGS"
+-        ac_fn_c_check_header_mongrel "$LINENO" "exa.h" "ac_cv_header_exa_h" "$ac_includes_default"
++        ac_fn_c_check_header_mongrel "$LINENO" "exa.h" "ac_cv_header_exa_h" "$ac_includes_default
++#include <xorg-server.h>
++"
+ if test "x$ac_cv_header_exa_h" = xyes; then :
+   have_exa_h="yes"
+ else
diff --git a/gnu/packages/patches/xf86-video-siliconmotion-remove-mibstore.patch b/gnu/packages/patches/xf86-video-siliconmotion-remove-mibstore.patch
new file mode 100644
index 0000000000..5fd9100609
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-siliconmotion-remove-mibstore.patch
@@ -0,0 +1,16 @@
+Removes references to mibstore.h and miInitializeBackingStore, which
+have been removed from xorg-server.  Zack Rusin <zackr@vmware.com>
+wrote: "It was a noop for at least 5 years and it has been removed."
+See: http://patches.openembedded.org/patch/46133/
+
+--- xf86-video-siliconmotion-1.7.7/src/smi_driver.c.~1~	2012-07-17 00:53:21.000000000 -0400
++++ xf86-video-siliconmotion-1.7.7/src/smi_driver.c	2014-12-19 01:30:16.708884086 -0500
+@@ -1750,8 +1750,6 @@
+ 		   "Done writing mode.  Register dump:\n");
+     SMI_PrintRegs(pScrn);
+ 
+-    miInitializeBackingStore(pScreen);
+-
+ #ifdef HAVE_XMODES
+     xf86DiDGAInit(pScreen, (unsigned long)(pSmi->FBBase + pScrn->fbOffset));
+ #endif
diff --git a/gnu/packages/patches/xf86-video-sis-update-api.patch b/gnu/packages/patches/xf86-video-sis-update-api.patch
new file mode 100644
index 0000000000..d8c5c07273
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-sis-update-api.patch
@@ -0,0 +1,128 @@
+Update xf86-video-sis to the current xorg-server API.
+
+Copied from: http://pkgs.fedoraproject.org/cgit/xorg-x11-drv-sis.git/tree/sis-0.10.7-git.patch?id=2705859f0ddc7ee7a3b07f21b442ebeab5df1276
+Commit log: http://pkgs.fedoraproject.org/cgit/xorg-x11-drv-sis.git/log/sis-0.10.7-git.patch
+
+Patch by Adam Jackson <ajax@redhat.com>
+
+diff --git a/src/sis.h b/src/sis.h
+index 46fca2a..20e6134 100644
+--- a/src/sis.h
++++ b/src/sis.h
+@@ -75,7 +75,6 @@
+ 
+ #include "compiler.h"
+ #include "xf86Pci.h"
+-#include "xf86Priv.h"
+ #include "xf86_OSproc.h"
+ #if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 6
+ #include "xf86Resources.h"
+diff --git a/src/sis_driver.c b/src/sis_driver.c
+index 61e8075..0fd83d7 100644
+--- a/src/sis_driver.c
++++ b/src/sis_driver.c
+@@ -57,7 +57,6 @@
+ #include "fb.h"
+ #include "micmap.h"
+ #include "mipointer.h"
+-#include "mibstore.h"
+ #include "edid.h"
+ 
+ #define SIS_NEED_inSISREG
+@@ -94,6 +93,10 @@
+ #include "dri.h"
+ #endif
+ 
++#ifndef DEFAULT_DPI
++#define DEFAULT_DPI 96
++#endif
++
+ /*
+  * LookupWindow was removed with video abi 11.
+  */
+@@ -7344,7 +7347,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
+         if(pSiSEnt->MapCountIOBase) {
+ 	    pSiSEnt->MapCountIOBase--;
+ 	    if((pSiSEnt->MapCountIOBase == 0) || (pSiSEnt->forceUnmapIOBase)) {
++#ifndef XSERVER_LIBPCIACCESS
+ 		xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->IOBase, (pSiS->mmioSize * 1024));
++#else
++	        pci_device_unmap_range(pSiS->PciInfo, pSiSEnt->IOBase, (pSiS->mmioSize * 1024));
++#endif
+ 		pSiSEnt->IOBase = NULL;
+ 		pSiSEnt->MapCountIOBase = 0;
+ 		pSiSEnt->forceUnmapIOBase = FALSE;
+@@ -7355,7 +7362,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
+ 	if(pSiSEnt->MapCountIOBaseDense) {
+ 	    pSiSEnt->MapCountIOBaseDense--;
+ 	    if((pSiSEnt->MapCountIOBaseDense == 0) || (pSiSEnt->forceUnmapIOBaseDense)) {
++#ifndef XSERVER_LIBPCIACCESS
+ 		xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->IOBaseDense, (pSiS->mmioSize * 1024));
++#else
++		pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiSEnt->IOBaseDense, (pSiS->mmioSize * 1024));
++#endif
+ 		pSiSEnt->IOBaseDense = NULL;
+ 		pSiSEnt->MapCountIOBaseDense = 0;
+ 		pSiSEnt->forceUnmapIOBaseDense = FALSE;
+@@ -7366,7 +7377,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
+ 	if(pSiSEnt->MapCountFbBase) {
+ 	    pSiSEnt->MapCountFbBase--;
+ 	    if((pSiSEnt->MapCountFbBase == 0) || (pSiSEnt->forceUnmapFbBase)) {
++#ifndef XSERVER_LIBPCIACCESS
+ 		xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->RealFbBase, pSiS->FbMapSize);
++#else
++		pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiSEnt->RealFbBase, pSiS->FbMapSize);
++#endif
+ 		pSiSEnt->FbBase = pSiSEnt->RealFbBase = NULL;
+ 		pSiSEnt->MapCountFbBase = 0;
+ 		pSiSEnt->forceUnmapFbBase = FALSE;
+@@ -7376,13 +7391,25 @@ SISUnmapMem(ScrnInfoPtr pScrn)
+ 	}
+     } else {
+ #endif
++#ifndef XSERVER_LIBPCIACCESS
+ 	xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->IOBase, (pSiS->mmioSize * 1024));
++#else
++	pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->IOBase, (pSiS->mmioSize * 1024));
++#endif
+ 	pSiS->IOBase = NULL;
+ #ifdef __alpha__
++#ifndef XSERVER_LIBPCIACCESS
+ 	xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->IOBaseDense, (pSiS->mmioSize * 1024));
++#else
++	pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->IOBaseDense, (pSiS->mmioSize * 1024));
++#endif
+ 	pSiS->IOBaseDense = NULL;
+ #endif
++#ifndef XSERVER_LIBPCIACCESS
+ 	xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->RealFbBase, pSiS->FbMapSize);
++#else
++	pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->RealFbBase, pSiS->FbMapSize);
++#endif
+ 	pSiS->FbBase = pSiS->RealFbBase = NULL;
+ #ifdef SISDUALHEAD
+     }
+@@ -8859,7 +8886,6 @@ SISScreenInit(SCREEN_INIT_ARGS_DECL)
+     }
+     pSiS->SiSFastVidCopyDone = TRUE;
+ 
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+ 
+@@ -9352,7 +9378,14 @@ SISMergedPointerMoved(SCRN_ARG_TYPE arg, int x, int y)
+      }
+      if(doit) {
+ 	sigstate = xf86BlockSIGIO();
+-#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 15
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 18
++        {
++            double dx = x, dy = y;
++            miPointerSetPosition(inputInfo.pointer, Absolute, &dx, &dy, NULL, NULL);
++            x = (int)dx;
++            y = (int)dy;
++        }
++#elif GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 15
+         {
+             double dx = x, dy = y;
+             miPointerSetPosition(inputInfo.pointer, Absolute, &dx, &dy);
diff --git a/gnu/packages/patches/xf86-video-tdfx-remove-mibstore.patch b/gnu/packages/patches/xf86-video-tdfx-remove-mibstore.patch
new file mode 100644
index 0000000000..05e2154433
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-tdfx-remove-mibstore.patch
@@ -0,0 +1,26 @@
+Removes references to mibstore.h and miInitializeBackingStore, which
+have been removed from xorg-server.  Zack Rusin <zackr@vmware.com>
+wrote: "It was a noop for at least 5 years and it has been removed."
+See: http://patches.openembedded.org/patch/46133/
+
+--- xf86-video-tdfx-1.4.5/src/tdfx_driver.c.~1~	2012-07-17 01:21:16.000000000 -0400
++++ xf86-video-tdfx-1.4.5/src/tdfx_driver.c	2014-12-19 01:36:42.762798424 -0500
+@@ -62,10 +62,6 @@
+ 
+ #include "compiler.h"
+ 
+-/* Drivers using the mi implementation of backing store need: */
+-
+-#include "mibstore.h"
+-
+ /* All drivers using the vgahw module need this */
+ /* This driver needs to be modified to not use vgaHW for multihead operation */
+ #include "vgaHW.h"
+@@ -2373,7 +2369,6 @@
+     }
+   }
+ 
+-  miInitializeBackingStore(pScreen);
+   xf86SetBackingStore(pScreen);
+   xf86SetSilkenMouse(pScreen);
+ 
diff --git a/gnu/packages/patches/xf86-video-tga-remove-mibstore.patch b/gnu/packages/patches/xf86-video-tga-remove-mibstore.patch
new file mode 100644
index 0000000000..b1a96c3f10
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-tga-remove-mibstore.patch
@@ -0,0 +1,34 @@
+Removes references to mibstore.h and miInitializeBackingStore, which
+have been removed from xorg-server.  Zack Rusin <zackr@vmware.com>
+wrote: "It was a noop for at least 5 years and it has been removed."
+See: http://patches.openembedded.org/patch/46133/
+
+--- xf86-video-tga-1.2.2/src/tga_accel.c.~1~	2012-07-15 23:54:04.000000000 -0400
++++ xf86-video-tga-1.2.2/src/tga_accel.c	2014-12-19 01:40:27.535913013 -0500
+@@ -37,7 +37,6 @@
+ #include "xf86cmap.h"
+ #include "mipointer.h"
+ 
+-#include "mibstore.h"
+ #include "miline.h"
+ 
+ #include "tga_regs.h"
+--- xf86-video-tga-1.2.2/src/tga_driver.c.~1~	2012-07-15 23:54:28.000000000 -0400
++++ xf86-video-tga-1.2.2/src/tga_driver.c	2014-12-19 01:40:48.756018238 -0500
+@@ -46,8 +46,6 @@
+ 
+ /* software cursor */
+ #include "mipointer.h"
+-/* backing store */
+-#include "mibstore.h"
+ 
+ /*  #include "mibank.h" */
+ /* colormap manipulation */
+@@ -1451,7 +1449,6 @@
+     
+     fbPictureInit (pScreen, 0, 0);
+     
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+ 
diff --git a/gnu/packages/patches/xf86-video-trident-remove-mibstore.patch b/gnu/packages/patches/xf86-video-trident-remove-mibstore.patch
new file mode 100644
index 0000000000..74c89878e7
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-trident-remove-mibstore.patch
@@ -0,0 +1,23 @@
+Removes references to mibstore.h and miInitializeBackingStore, which
+have been removed from xorg-server.  Zack Rusin <zackr@vmware.com>
+wrote: "It was a noop for at least 5 years and it has been removed."
+See: http://patches.openembedded.org/patch/46133/
+
+--- xf86-video-trident-1.3.6/src/trident_driver.c.~1~	2012-07-15 22:16:00.000000000 -0400
++++ xf86-video-trident-1.3.6/src/trident_driver.c	2014-12-19 01:45:29.529410518 -0500
+@@ -56,7 +56,6 @@
+ 
+ #include "mipointer.h"
+ 
+-#include "mibstore.h"
+ #include "shadow.h"
+ #include "trident.h"
+ #include "trident_regs.h"
+@@ -3037,7 +3036,6 @@
+     	TridentAccelInit(pScreen);
+     }
+ 
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+ 
+     /* Initialise cursor functions */
diff --git a/gnu/packages/patches/xf86-video-vmware-glibc-2.20.patch b/gnu/packages/patches/xf86-video-vmware-glibc-2.20.patch
new file mode 100644
index 0000000000..43d21d13ab
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-vmware-glibc-2.20.patch
@@ -0,0 +1,15 @@
+Allow builds with glibc 2.20.
+Based on a patch by Peter Hutterer <peter.hutterer@who-t.net>.
+See <https://raw.githubusercontent.com/openembedded/oe-core/master/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/always_include_xorg_server.h.patch>.
+
+--- xf86-video-vmware-13.0.2/vmwgfx/vmwgfx_overlay.c.~1~	2014-03-20 09:15:03.000000000 -0400
++++ xf86-video-vmware-13.0.2/vmwgfx/vmwgfx_overlay.c	2014-12-19 02:31:34.759122552 -0500
+@@ -35,6 +35,8 @@
+  */
+ 
+ 
++#include <xorg-server.h>
++
+ #include "xf86xv.h"
+ #include "fourcc.h"
+ #define debug_printf(...)