diff --git xorg-server-devel-1.20.3/include/glx_extinit.h.old xorg-server-devel-1.20.3/include/glx_extinit.h
index 07f3cc8..56a66e7 100644
--- xorg-server-devel-1.20.3/include/glx_extinit.h.old
+++ xorg-server-devel-1.20.3/include/glx_extinit.h
@@ -30,7 +30,13 @@
 /* XXX this comment no longer makes sense i think */
 #ifdef GLXEXT
 typedef struct __GLXprovider __GLXprovider;
+
+#ifndef _GLX_screens_h_
+/* this identical struct is also defined in glx/glxscreens.h and this causes */
+/* redefinition errors on compilers that don't support C11 */
 typedef struct __GLXscreen __GLXscreen;
+#endif
+
 struct __GLXprovider {
     __GLXscreen *(*screenProbe) (ScreenPtr pScreen);
     const char *name;
