More dynamic X11 fixes...catches some code in Xlib headers that caused
dependencies...
--- a/src/video/Xext/Xinerama/Xinerama.c Wed Jan 04 21:01:49 2006 +0000
+++ b/src/video/Xext/Xinerama/Xinerama.c Wed Jan 04 22:57:50 2006 +0000
@@ -37,12 +37,6 @@
#include "../../x11/SDL_x11dyn.h"
-/* Workaround code in headers... */
-#define _XFlush p_XFlush
-#define _XFlushGCCache p_XFlushGCCache
-#define _XReply p_XReply
-#define _XSend p_XSend
-
static XExtensionInfo _panoramiX_ext_info_data;
static XExtensionInfo *panoramiX_ext_info = &_panoramiX_ext_info_data;
static /* const */ char *panoramiX_extension_name = PANORAMIX_PROTOCOL_NAME;
--- a/src/video/Xext/Xv/Xv.c Wed Jan 04 21:01:49 2006 +0000
+++ b/src/video/Xext/Xv/Xv.c Wed Jan 04 22:57:50 2006 +0000
@@ -58,12 +58,6 @@
#include "../../x11/SDL_x11dyn.h"
-/* Workaround code in headers... */
-#define _XFlush p_XFlush
-#define _XFlushGCCache p_XFlushGCCache
-#define _XReply p_XReply
-#define _XSend p_XSend
-
static XExtensionInfo _xv_info_data;
static XExtensionInfo *xv_info = &_xv_info_data;
static char *xv_extension_name = XvName;
--- a/src/video/Xext/Xxf86dga/XF86DGA.c Wed Jan 04 21:01:49 2006 +0000
+++ b/src/video/Xext/Xxf86dga/XF86DGA.c Wed Jan 04 22:57:50 2006 +0000
@@ -66,12 +66,6 @@
#include "../../x11/SDL_x11dyn.h"
-/* Workaround code in headers... */
-#define _XFlush p_XFlush
-#define _XFlushGCCache p_XFlushGCCache
-#define _XReply p_XReply
-#define _XSend p_XSend
-
extern XExtDisplayInfo* SDL_NAME(xdga_find_display)(Display*);
extern char *SDL_NAME(xdga_extension_name);
--- a/src/video/Xext/Xxf86dga/XF86DGA2.c Wed Jan 04 21:01:49 2006 +0000
+++ b/src/video/Xext/Xxf86dga/XF86DGA2.c Wed Jan 04 22:57:50 2006 +0000
@@ -30,12 +30,6 @@
#include "../../x11/SDL_x11dyn.h"
-/* Workaround code in headers... */
-#define _XFlush p_XFlush
-#define _XFlushGCCache p_XFlushGCCache
-#define _XReply p_XReply
-#define _XSend p_XSend
-
/* If you change this, change the Bases[] array below as well */
#define MAX_HEADS 16
--- a/src/video/Xext/Xxf86vm/XF86VMode.c Wed Jan 04 21:01:49 2006 +0000
+++ b/src/video/Xext/Xxf86vm/XF86VMode.c Wed Jan 04 22:57:50 2006 +0000
@@ -49,12 +49,6 @@
#include "../../x11/SDL_x11dyn.h"
-/* Workaround code in headers... */
-#define _XFlush p_XFlush
-#define _XFlushGCCache p_XFlushGCCache
-#define _XReply p_XReply
-#define _XSend p_XSend
-
#ifdef DEBUG
#include <stdio.h>
#endif
--- a/src/video/x11/SDL_x11dyn.c Wed Jan 04 21:01:49 2006 +0000
+++ b/src/video/x11/SDL_x11dyn.c Wed Jan 04 22:57:50 2006 +0000
@@ -22,6 +22,7 @@
/*#define DEBUG_DYNAMIC_X11 1*/
+#define __SDL_NO_REDEFINE_X11_HEADER_SYMS 1
#include "SDL_x11dyn.h"
#ifdef DEBUG_DYNAMIC_X11
--- a/src/video/x11/SDL_x11dyn.h Wed Jan 04 21:01:49 2006 +0000
+++ b/src/video/x11/SDL_x11dyn.h Wed Jan 04 22:57:50 2006 +0000
@@ -65,6 +65,15 @@
/* Macro in the xlib headers, not an actual symbol... */
#define pXDestroyImage XDestroyImage
+/* Workaround code in headers... */
+#if !__SDL_NO_REDEFINE_X11_HEADER_SYMS
+#define _XFlush p_XFlush
+#define _XFlushGCCache p_XFlushGCCache
+#define _XReply p_XReply
+#define _XSend p_XSend
+#define _XData32 p_XData32
+#endif
+
int SDL_X11_LoadSymbols(void);
void SDL_X11_UnloadSymbols(void);
--- a/src/video/x11/SDL_x11sym.h Wed Jan 04 21:01:49 2006 +0000
+++ b/src/video/x11/SDL_x11sym.h Wed Jan 04 22:57:50 2006 +0000
@@ -130,6 +130,8 @@
SDL_X11_SYM(void,_XSend,(Display*,_Xconst char*,long))
SDL_X11_SYM(Status,_XReply,(Display*,xReply*,int,Bool))
SDL_X11_SYM(unsigned long,_XSetLastRequestRead,(Display*,xGenericReply*))
+SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len))
+SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len))
#if NeedWidePrototypes
SDL_X11_SYM(KeySym,XKeycodeToKeysym,(Display*,unsigned int,int))