From e7ef8df2bf95850e5a7bf591923f5199f398951c Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Fri, 6 Jan 2006 20:56:13 +0000 Subject: [PATCH] Make some dynamic X11 symbols option. _XData32 and _XRead32 are only available on 64-bit systems, and are chosen with macros in the X11 headers. So on 32-bit systems, it should fail to find these symbols and keep going anyhow. --- src/video/x11/SDL_x11dyn.c | 16 +-- src/video/x11/SDL_x11dyn.h | 2 +- src/video/x11/SDL_x11sym.h | 240 ++++++++++++++++++------------------- 3 files changed, 130 insertions(+), 128 deletions(-) diff --git a/src/video/x11/SDL_x11dyn.c b/src/video/x11/SDL_x11dyn.c index 347c7d19f..ea95f7d99 100644 --- a/src/video/x11/SDL_x11dyn.c +++ b/src/video/x11/SDL_x11dyn.c @@ -20,7 +20,9 @@ slouken@libsdl.org */ -/*#define DEBUG_DYNAMIC_X11 1*/ +#if 0 +#define DEBUG_DYNAMIC_X11 1 +#endif #define __SDL_NO_REDEFINE_X11_HEADER_SYMS 1 #include "SDL_x11dyn.h" @@ -38,7 +40,7 @@ static void *x11_handle = NULL; static const char *x11ext_library = X11EXT_DYNAMIC; static void *x11ext_handle = NULL; -static void *X11_GetSym(const char *fnname, int *rc) +static void *X11_GetSym(int required, const char *fnname, int *rc) { void *fn = NULL; if (*rc) { /* haven't already failed on a previous lookup? */ @@ -57,7 +59,7 @@ static void *X11_GetSym(const char *fnname, int *rc) printf("X11: Symbol '%s' NOT FOUND!\n", fnname); #endif } - *rc = (fn != NULL); + *rc = ((fn != NULL) || (!required)); } return fn; @@ -65,7 +67,7 @@ static void *X11_GetSym(const char *fnname, int *rc) #endif /* defined X11_DYNAMIC */ /* Define all the function pointers... */ -#define SDL_X11_SYM(ret,fn,params) ret (*p##fn) params = NULL; +#define SDL_X11_SYM(req,ret,fn,params) ret (*p##fn) params = NULL; #include "SDL_x11sym.h" #undef SDL_X11_SYM @@ -77,7 +79,7 @@ void SDL_X11_UnloadSymbols(void) if (x11_load_refcount > 0) { if (--x11_load_refcount == 0) { /* set all the function pointers to NULL. */ - #define SDL_X11_SYM(ret,fn,params) p##fn = NULL; + #define SDL_X11_SYM(req,ret,fn,params) p##fn = NULL; #include "SDL_x11sym.h" #undef SDL_X11_SYM @@ -106,7 +108,7 @@ int SDL_X11_LoadSymbols(void) x11_handle = SDL_LoadObject(x11_library); x11ext_handle = SDL_LoadObject(x11ext_library); rc = ((x11_handle != NULL) && (x11ext_handle != NULL)); - #define SDL_X11_SYM(r,fn,arg) p##fn = X11_GetSym(#fn, &rc); + #define SDL_X11_SYM(req,r,fn,arg) p##fn = X11_GetSym(req,#fn, &rc); #include "SDL_x11sym.h" #undef SDL_X11_SYM @@ -114,7 +116,7 @@ int SDL_X11_LoadSymbols(void) SDL_X11_UnloadSymbols(); /* in case one of these loaded... */ #else - #define SDL_X11_SYM(r,fn,arg) p##fn = fn; + #define SDL_X11_SYM(req,r,fn,arg) p##fn = fn; #include "SDL_x11sym.h" #undef SDL_X11_SYM #endif diff --git a/src/video/x11/SDL_x11dyn.h b/src/video/x11/SDL_x11dyn.h index 0b04b3474..9bf83498a 100644 --- a/src/video/x11/SDL_x11dyn.h +++ b/src/video/x11/SDL_x11dyn.h @@ -58,7 +58,7 @@ typedef Bool (*SDL_X11_XESetWireToEventRetType)(Display*,XEvent*,xEvent*); typedef int (*SDL_X11_XSynchronizeRetType)(Display*); typedef Status (*SDL_X11_XESetEventToWireRetType)(Display*,XEvent*,xEvent*); -#define SDL_X11_SYM(ret,fn,params) extern ret (*p##fn) params; +#define SDL_X11_SYM(req,ret,fn,params) extern ret (*p##fn) params; #include "SDL_x11sym.h" #undef SDL_X11_SYM diff --git a/src/video/x11/SDL_x11sym.h b/src/video/x11/SDL_x11sym.h index 46775aeac..0ad953ddb 100644 --- a/src/video/x11/SDL_x11sym.h +++ b/src/video/x11/SDL_x11sym.h @@ -20,136 +20,136 @@ slouken@libsdl.org */ -SDL_X11_SYM(XClassHint*,XAllocClassHint,(void)) -SDL_X11_SYM(Status,XAllocColor,(Display*,Colormap,XColor*)) -SDL_X11_SYM(XSizeHints*,XAllocSizeHints,(void)) -SDL_X11_SYM(XWMHints*,XAllocWMHints,(void)) -SDL_X11_SYM(int,XChangePointerControl,(Display*,Bool,Bool,int,int,int)) -SDL_X11_SYM(int,XChangeProperty,(Display*,Window,Atom,Atom,int,int,_Xconst unsigned char*,int)) -SDL_X11_SYM(int,XChangeWindowAttributes,(Display*,Window,unsigned long,XSetWindowAttributes*)) -SDL_X11_SYM(Bool,XCheckTypedEvent,(Display*,int,XEvent*)) -SDL_X11_SYM(int,XClearWindow,(Display*,Window)) -SDL_X11_SYM(int,XCloseDisplay,(Display*)) -SDL_X11_SYM(Colormap,XCreateColormap,(Display*,Window,Visual*,int)) -SDL_X11_SYM(Cursor,XCreatePixmapCursor,(Display*,Pixmap,Pixmap,XColor*,XColor*,unsigned int,unsigned int)) -SDL_X11_SYM(GC,XCreateGC,(Display*,Drawable,unsigned long,XGCValues*)) -SDL_X11_SYM(XImage*,XCreateImage,(Display*,Visual*,unsigned int,int,int,char*,unsigned int,unsigned int,int,int)) -SDL_X11_SYM(Pixmap,XCreatePixmap,(Display*,Drawable,unsigned int,unsigned int,unsigned int)) -SDL_X11_SYM(Pixmap,XCreatePixmapFromBitmapData,(Display*,Drawable,char*,unsigned int,unsigned int,unsigned long,unsigned long,unsigned int)) -SDL_X11_SYM(Window,XCreateSimpleWindow,(Display*,Window,int,int,unsigned int,unsigned int,unsigned int,unsigned long,unsigned long)) -SDL_X11_SYM(Window,XCreateWindow,(Display*,Window,int,int,unsigned int,unsigned int,unsigned int,int,unsigned int,Visual*,unsigned long,XSetWindowAttributes*)) -SDL_X11_SYM(int,XDefineCursor,(Display*,Window,Cursor)) -SDL_X11_SYM(int,XDeleteProperty,(Display*,Window,Atom)) -SDL_X11_SYM(int,XDestroyWindow,(Display*,Window)) -SDL_X11_SYM(char*,XDisplayName,(_Xconst char*)) -SDL_X11_SYM(int,XEventsQueued,(Display*,int)) -SDL_X11_SYM(int,XFlush,(Display*)) -SDL_X11_SYM(int,XFree,(void*)) -SDL_X11_SYM(int,XFreeColormap,(Display*,Colormap)) -SDL_X11_SYM(int,XFreeColors,(Display*,Colormap,unsigned long*,int,unsigned long)) -SDL_X11_SYM(int,XFreeCursor,(Display*,Cursor)) -SDL_X11_SYM(int,XFreeGC,(Display*,GC)) -SDL_X11_SYM(int,XFreeModifiermap,(XModifierKeymap*)) -SDL_X11_SYM(int,XFreePixmap,(Display*,Pixmap)) -SDL_X11_SYM(int,XGetErrorDatabaseText,(Display*,_Xconst char*,_Xconst char*,_Xconst char*,char*,int)) -SDL_X11_SYM(XModifierKeymap*,XGetModifierMapping,(Display*)) -SDL_X11_SYM(int,XGetPointerControl,(Display*,int*,int*,int*)) -SDL_X11_SYM(XVisualInfo*,XGetVisualInfo,(Display*,long,XVisualInfo*,int*)) -SDL_X11_SYM(XWMHints*,XGetWMHints,(Display*,Window)) -SDL_X11_SYM(Status,XGetWMIconName,(Display*,Window,XTextProperty*)) -SDL_X11_SYM(Status,XGetWMName,(Display*,Window,XTextProperty*)) -SDL_X11_SYM(Status,XGetWindowAttributes,(Display*,Window,XWindowAttributes*)) -SDL_X11_SYM(int,XGrabKeyboard,(Display*,Window,Bool,int,int,Time)) -SDL_X11_SYM(int,XGrabPointer,(Display*,Window,Bool,unsigned int,int,int,Window,Cursor,Time)) -SDL_X11_SYM(Status,XIconifyWindow,(Display*,Window,int)) -SDL_X11_SYM(int,XInstallColormap,(Display*,Colormap)) -SDL_X11_SYM(KeyCode,XKeysymToKeycode,(Display*,KeySym)) -SDL_X11_SYM(Atom,XInternAtom,(Display*,_Xconst char*,Bool)) -SDL_X11_SYM(XPixmapFormatValues*,XListPixmapFormats,(Display*,int*)) -SDL_X11_SYM(int,XLookupString,(XKeyEvent*,char*,int,KeySym*,XComposeStatus*)) -SDL_X11_SYM(int,XMapRaised,(Display*,Window)) -SDL_X11_SYM(int,XMapWindow,(Display*,Window)) -SDL_X11_SYM(int,XMaskEvent,(Display*,long,XEvent*)) -SDL_X11_SYM(Status,XMatchVisualInfo,(Display*,int,int,int,XVisualInfo*)) -SDL_X11_SYM(int,XMissingExtension,(Display*,_Xconst char*)) -SDL_X11_SYM(int,XMoveResizeWindow,(Display*,Window,int,int,unsigned int,unsigned int)) -SDL_X11_SYM(int,XMoveWindow,(Display*,Window,int,int)) -SDL_X11_SYM(int,XNextEvent,(Display*,XEvent*)) -SDL_X11_SYM(Display*,XOpenDisplay,(_Xconst char*)) -SDL_X11_SYM(int,XPeekEvent,(Display*,XEvent*)) -SDL_X11_SYM(int,XPending,(Display*)) -SDL_X11_SYM(int,XPutImage,(Display*,Drawable,GC,XImage*,int,int,int,int,unsigned int,unsigned int)) -SDL_X11_SYM(int,XQueryColors,(Display*,Colormap,XColor*,int)) -SDL_X11_SYM(int,XQueryKeymap,(Display*,char [32])) -SDL_X11_SYM(Bool,XQueryPointer,(Display*,Window,Window*,Window*,int*,int*,int*,int*,unsigned int*)) -SDL_X11_SYM(int,XRaiseWindow,(Display*,Window)) -SDL_X11_SYM(int,XReparentWindow,(Display*,Window,Window,int,int)) -SDL_X11_SYM(int,XResizeWindow,(Display*,Window,unsigned int,unsigned int)) -SDL_X11_SYM(int,XSelectInput,(Display*,Window,long)) -SDL_X11_SYM(Status,XSendEvent,(Display*,Window,Bool,long,XEvent*)) -SDL_X11_SYM(int,XSetClassHint,(Display*,Window,XClassHint*)) -SDL_X11_SYM(XErrorHandler,XSetErrorHandler,(XErrorHandler)) -SDL_X11_SYM(XIOErrorHandler,XSetIOErrorHandler,(XIOErrorHandler)) -SDL_X11_SYM(int,XSetTransientForHint,(Display*,Window,Window)) -SDL_X11_SYM(int,XSetWMHints,(Display*,Window,XWMHints*)) -SDL_X11_SYM(void,XSetWMIconName,(Display*,Window,XTextProperty*)) -SDL_X11_SYM(void,XSetWMName,(Display*,Window,XTextProperty*)) -SDL_X11_SYM(void,XSetWMNormalHints,(Display*,Window,XSizeHints*)) -SDL_X11_SYM(Status,XSetWMProtocols,(Display*,Window,Atom*,int)) -SDL_X11_SYM(int,XSetWindowBackground,(Display*,Window,unsigned long)) -SDL_X11_SYM(int,XSetWindowBackgroundPixmap,(Display*,Window,Pixmap)) -SDL_X11_SYM(int,XSetWindowColormap,(Display*,Window,Colormap)) -SDL_X11_SYM(int,XStoreColors,(Display*,Colormap,XColor*,int)) -SDL_X11_SYM(Status,XStringListToTextProperty,(char**,int,XTextProperty*)) -SDL_X11_SYM(int,XSync,(Display*,Bool)) -SDL_X11_SYM(int,XUngrabKeyboard,(Display*,Time)) -SDL_X11_SYM(int,XUngrabPointer,(Display*,Time)) -SDL_X11_SYM(int,XUnmapWindow,(Display*,Window)) -SDL_X11_SYM(int,XWarpPointer,(Display*,Window,Window,int,int,unsigned int,unsigned int,int,int)) -SDL_X11_SYM(VisualID,XVisualIDFromVisual,(Visual*)) -SDL_X11_SYM(XExtDisplayInfo*,XextAddDisplay,(XExtensionInfo*,Display*,char*,XExtensionHooks*,int,XPointer)) -SDL_X11_SYM(XExtensionInfo*,XextCreateExtension,(void)) -SDL_X11_SYM(void,XextDestroyExtension,(XExtensionInfo*)) -SDL_X11_SYM(XExtDisplayInfo*,XextFindDisplay,(XExtensionInfo*,Display*)) -SDL_X11_SYM(int,XextRemoveDisplay,(XExtensionInfo*,Display*)) +SDL_X11_SYM(1,XClassHint*,XAllocClassHint,(void)) +SDL_X11_SYM(1,Status,XAllocColor,(Display*,Colormap,XColor*)) +SDL_X11_SYM(1,XSizeHints*,XAllocSizeHints,(void)) +SDL_X11_SYM(1,XWMHints*,XAllocWMHints,(void)) +SDL_X11_SYM(1,int,XChangePointerControl,(Display*,Bool,Bool,int,int,int)) +SDL_X11_SYM(1,int,XChangeProperty,(Display*,Window,Atom,Atom,int,int,_Xconst unsigned char*,int)) +SDL_X11_SYM(1,int,XChangeWindowAttributes,(Display*,Window,unsigned long,XSetWindowAttributes*)) +SDL_X11_SYM(1,Bool,XCheckTypedEvent,(Display*,int,XEvent*)) +SDL_X11_SYM(1,int,XClearWindow,(Display*,Window)) +SDL_X11_SYM(1,int,XCloseDisplay,(Display*)) +SDL_X11_SYM(1,Colormap,XCreateColormap,(Display*,Window,Visual*,int)) +SDL_X11_SYM(1,Cursor,XCreatePixmapCursor,(Display*,Pixmap,Pixmap,XColor*,XColor*,unsigned int,unsigned int)) +SDL_X11_SYM(1,GC,XCreateGC,(Display*,Drawable,unsigned long,XGCValues*)) +SDL_X11_SYM(1,XImage*,XCreateImage,(Display*,Visual*,unsigned int,int,int,char*,unsigned int,unsigned int,int,int)) +SDL_X11_SYM(1,Pixmap,XCreatePixmap,(Display*,Drawable,unsigned int,unsigned int,unsigned int)) +SDL_X11_SYM(1,Pixmap,XCreatePixmapFromBitmapData,(Display*,Drawable,char*,unsigned int,unsigned int,unsigned long,unsigned long,unsigned int)) +SDL_X11_SYM(1,Window,XCreateSimpleWindow,(Display*,Window,int,int,unsigned int,unsigned int,unsigned int,unsigned long,unsigned long)) +SDL_X11_SYM(1,Window,XCreateWindow,(Display*,Window,int,int,unsigned int,unsigned int,unsigned int,int,unsigned int,Visual*,unsigned long,XSetWindowAttributes*)) +SDL_X11_SYM(1,int,XDefineCursor,(Display*,Window,Cursor)) +SDL_X11_SYM(1,int,XDeleteProperty,(Display*,Window,Atom)) +SDL_X11_SYM(1,int,XDestroyWindow,(Display*,Window)) +SDL_X11_SYM(1,char*,XDisplayName,(_Xconst char*)) +SDL_X11_SYM(1,int,XEventsQueued,(Display*,int)) +SDL_X11_SYM(1,int,XFlush,(Display*)) +SDL_X11_SYM(1,int,XFree,(void*)) +SDL_X11_SYM(1,int,XFreeColormap,(Display*,Colormap)) +SDL_X11_SYM(1,int,XFreeColors,(Display*,Colormap,unsigned long*,int,unsigned long)) +SDL_X11_SYM(1,int,XFreeCursor,(Display*,Cursor)) +SDL_X11_SYM(1,int,XFreeGC,(Display*,GC)) +SDL_X11_SYM(1,int,XFreeModifiermap,(XModifierKeymap*)) +SDL_X11_SYM(1,int,XFreePixmap,(Display*,Pixmap)) +SDL_X11_SYM(1,int,XGetErrorDatabaseText,(Display*,_Xconst char*,_Xconst char*,_Xconst char*,char*,int)) +SDL_X11_SYM(1,XModifierKeymap*,XGetModifierMapping,(Display*)) +SDL_X11_SYM(1,int,XGetPointerControl,(Display*,int*,int*,int*)) +SDL_X11_SYM(1,XVisualInfo*,XGetVisualInfo,(Display*,long,XVisualInfo*,int*)) +SDL_X11_SYM(1,XWMHints*,XGetWMHints,(Display*,Window)) +SDL_X11_SYM(1,Status,XGetWMIconName,(Display*,Window,XTextProperty*)) +SDL_X11_SYM(1,Status,XGetWMName,(Display*,Window,XTextProperty*)) +SDL_X11_SYM(1,Status,XGetWindowAttributes,(Display*,Window,XWindowAttributes*)) +SDL_X11_SYM(1,int,XGrabKeyboard,(Display*,Window,Bool,int,int,Time)) +SDL_X11_SYM(1,int,XGrabPointer,(Display*,Window,Bool,unsigned int,int,int,Window,Cursor,Time)) +SDL_X11_SYM(1,Status,XIconifyWindow,(Display*,Window,int)) +SDL_X11_SYM(1,int,XInstallColormap,(Display*,Colormap)) +SDL_X11_SYM(1,KeyCode,XKeysymToKeycode,(Display*,KeySym)) +SDL_X11_SYM(1,Atom,XInternAtom,(Display*,_Xconst char*,Bool)) +SDL_X11_SYM(1,XPixmapFormatValues*,XListPixmapFormats,(Display*,int*)) +SDL_X11_SYM(1,int,XLookupString,(XKeyEvent*,char*,int,KeySym*,XComposeStatus*)) +SDL_X11_SYM(1,int,XMapRaised,(Display*,Window)) +SDL_X11_SYM(1,int,XMapWindow,(Display*,Window)) +SDL_X11_SYM(1,int,XMaskEvent,(Display*,long,XEvent*)) +SDL_X11_SYM(1,Status,XMatchVisualInfo,(Display*,int,int,int,XVisualInfo*)) +SDL_X11_SYM(1,int,XMissingExtension,(Display*,_Xconst char*)) +SDL_X11_SYM(1,int,XMoveResizeWindow,(Display*,Window,int,int,unsigned int,unsigned int)) +SDL_X11_SYM(1,int,XMoveWindow,(Display*,Window,int,int)) +SDL_X11_SYM(1,int,XNextEvent,(Display*,XEvent*)) +SDL_X11_SYM(1,Display*,XOpenDisplay,(_Xconst char*)) +SDL_X11_SYM(1,int,XPeekEvent,(Display*,XEvent*)) +SDL_X11_SYM(1,int,XPending,(Display*)) +SDL_X11_SYM(1,int,XPutImage,(Display*,Drawable,GC,XImage*,int,int,int,int,unsigned int,unsigned int)) +SDL_X11_SYM(1,int,XQueryColors,(Display*,Colormap,XColor*,int)) +SDL_X11_SYM(1,int,XQueryKeymap,(Display*,char [32])) +SDL_X11_SYM(1,Bool,XQueryPointer,(Display*,Window,Window*,Window*,int*,int*,int*,int*,unsigned int*)) +SDL_X11_SYM(1,int,XRaiseWindow,(Display*,Window)) +SDL_X11_SYM(1,int,XReparentWindow,(Display*,Window,Window,int,int)) +SDL_X11_SYM(1,int,XResizeWindow,(Display*,Window,unsigned int,unsigned int)) +SDL_X11_SYM(1,int,XSelectInput,(Display*,Window,long)) +SDL_X11_SYM(1,Status,XSendEvent,(Display*,Window,Bool,long,XEvent*)) +SDL_X11_SYM(1,int,XSetClassHint,(Display*,Window,XClassHint*)) +SDL_X11_SYM(1,XErrorHandler,XSetErrorHandler,(XErrorHandler)) +SDL_X11_SYM(1,XIOErrorHandler,XSetIOErrorHandler,(XIOErrorHandler)) +SDL_X11_SYM(1,int,XSetTransientForHint,(Display*,Window,Window)) +SDL_X11_SYM(1,int,XSetWMHints,(Display*,Window,XWMHints*)) +SDL_X11_SYM(1,void,XSetWMIconName,(Display*,Window,XTextProperty*)) +SDL_X11_SYM(1,void,XSetWMName,(Display*,Window,XTextProperty*)) +SDL_X11_SYM(1,void,XSetWMNormalHints,(Display*,Window,XSizeHints*)) +SDL_X11_SYM(1,Status,XSetWMProtocols,(Display*,Window,Atom*,int)) +SDL_X11_SYM(1,int,XSetWindowBackground,(Display*,Window,unsigned long)) +SDL_X11_SYM(1,int,XSetWindowBackgroundPixmap,(Display*,Window,Pixmap)) +SDL_X11_SYM(1,int,XSetWindowColormap,(Display*,Window,Colormap)) +SDL_X11_SYM(1,int,XStoreColors,(Display*,Colormap,XColor*,int)) +SDL_X11_SYM(1,Status,XStringListToTextProperty,(char**,int,XTextProperty*)) +SDL_X11_SYM(1,int,XSync,(Display*,Bool)) +SDL_X11_SYM(1,int,XUngrabKeyboard,(Display*,Time)) +SDL_X11_SYM(1,int,XUngrabPointer,(Display*,Time)) +SDL_X11_SYM(1,int,XUnmapWindow,(Display*,Window)) +SDL_X11_SYM(1,int,XWarpPointer,(Display*,Window,Window,int,int,unsigned int,unsigned int,int,int)) +SDL_X11_SYM(1,VisualID,XVisualIDFromVisual,(Visual*)) +SDL_X11_SYM(1,XExtDisplayInfo*,XextAddDisplay,(XExtensionInfo*,Display*,char*,XExtensionHooks*,int,XPointer)) +SDL_X11_SYM(1,XExtensionInfo*,XextCreateExtension,(void)) +SDL_X11_SYM(1,void,XextDestroyExtension,(XExtensionInfo*)) +SDL_X11_SYM(1,XExtDisplayInfo*,XextFindDisplay,(XExtensionInfo*,Display*)) +SDL_X11_SYM(1,int,XextRemoveDisplay,(XExtensionInfo*,Display*)) #ifdef X_HAVE_UTF8_STRING -SDL_X11_SYM(int,Xutf8TextListToTextProperty,(Display*,char**,int,XICCEncodingStyle,XTextProperty*)) -SDL_X11_SYM(int,Xutf8LookupString,(XIC,XKeyPressedEvent*,char*,int,KeySym*,Status*)) -SDL_X11_SYM(XIC,XCreateIC,(XIM, ...)) -SDL_X11_SYM(void,XDestroyIC,(XIC)) -SDL_X11_SYM(void,XSetICFocus,(XIC)) -SDL_X11_SYM(void,XUnsetICFocus,(XIC)) -SDL_X11_SYM(XIM,XOpenIM,(Display*,struct _XrmHashBucketRec*,char*,char*)) -SDL_X11_SYM(Status,XCloseIM,(XIM)) +SDL_X11_SYM(1,int,Xutf8TextListToTextProperty,(Display*,char**,int,XICCEncodingStyle,XTextProperty*)) +SDL_X11_SYM(1,int,Xutf8LookupString,(XIC,XKeyPressedEvent*,char*,int,KeySym*,Status*)) +SDL_X11_SYM(1,XIC,XCreateIC,(XIM, ...)) +SDL_X11_SYM(1,void,XDestroyIC,(XIC)) +SDL_X11_SYM(1,void,XSetICFocus,(XIC)) +SDL_X11_SYM(1,void,XUnsetICFocus,(XIC)) +SDL_X11_SYM(1,XIM,XOpenIM,(Display*,struct _XrmHashBucketRec*,char*,char*)) +SDL_X11_SYM(1,Status,XCloseIM,(XIM)) #endif -SDL_X11_SYM(void,_XEatData,(Display*,unsigned long)) -SDL_X11_SYM(void,_XFlush,(Display*)) -SDL_X11_SYM(void,_XFlushGCCache,(Display*,GC)) -SDL_X11_SYM(int,_XRead,(Display*,char*,long)) -SDL_X11_SYM(void,_XReadPad,(Display*,char*,long)) -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)) +SDL_X11_SYM(1,void,_XEatData,(Display*,unsigned long)) +SDL_X11_SYM(1,void,_XFlush,(Display*)) +SDL_X11_SYM(1,void,_XFlushGCCache,(Display*,GC)) +SDL_X11_SYM(1,int,_XRead,(Display*,char*,long)) +SDL_X11_SYM(1,void,_XReadPad,(Display*,char*,long)) +SDL_X11_SYM(1,void,_XSend,(Display*,_Xconst char*,long)) +SDL_X11_SYM(1,Status,_XReply,(Display*,xReply*,int,Bool)) +SDL_X11_SYM(1,unsigned long,_XSetLastRequestRead,(Display*,xGenericReply*)) +SDL_X11_SYM(0,int,_XData32,(Display *dpy,register long *data,unsigned len)) +SDL_X11_SYM(0,void,_XRead32,(Display *dpy,register long *data,long len)) #if NeedWidePrototypes -SDL_X11_SYM(KeySym,XKeycodeToKeysym,(Display*,unsigned int,int)) +SDL_X11_SYM(1,KeySym,XKeycodeToKeysym,(Display*,unsigned int,int)) #else -SDL_X11_SYM(KeySym,XKeycodeToKeysym,(Display*,KeyCode,int)) +SDL_X11_SYM(1,KeySym,XKeycodeToKeysym,(Display*,KeyCode,int)) #endif #ifndef NO_SHARED_MEMORY -SDL_X11_SYM(Status,XShmAttach,(Display*,XShmSegmentInfo*)) -SDL_X11_SYM(Status,XShmDetach,(Display*,XShmSegmentInfo*)) -SDL_X11_SYM(Status,XShmPutImage,(Display*,Drawable,GC,XImage*,int,int,int,int,unsigned int,unsigned int,Bool)) -SDL_X11_SYM(XImage*,XShmCreateImage,(Display*,Visual*,unsigned int,int,char*,XShmSegmentInfo*,unsigned int,unsigned int)) -SDL_X11_SYM(Bool,XShmQueryExtension,(Display*)) +SDL_X11_SYM(1,Status,XShmAttach,(Display*,XShmSegmentInfo*)) +SDL_X11_SYM(1,Status,XShmDetach,(Display*,XShmSegmentInfo*)) +SDL_X11_SYM(1,Status,XShmPutImage,(Display*,Drawable,GC,XImage*,int,int,int,int,unsigned int,unsigned int,Bool)) +SDL_X11_SYM(1,XImage*,XShmCreateImage,(Display*,Visual*,unsigned int,int,char*,XShmSegmentInfo*,unsigned int,unsigned int)) +SDL_X11_SYM(1,Bool,XShmQueryExtension,(Display*)) #endif -SDL_X11_SYM(SDL_X11_XSynchronizeRetType,XSynchronize,(Display*,Bool)) -SDL_X11_SYM(SDL_X11_XESetWireToEventRetType,XESetWireToEvent,(Display*,int,SDL_X11_XESetWireToEventRetType)) -SDL_X11_SYM(SDL_X11_XESetEventToWireRetType,XESetEventToWire,(Display*,int,SDL_X11_XESetEventToWireRetType)) +SDL_X11_SYM(1,SDL_X11_XSynchronizeRetType,XSynchronize,(Display*,Bool)) +SDL_X11_SYM(1,SDL_X11_XESetWireToEventRetType,XESetWireToEvent,(Display*,int,SDL_X11_XESetWireToEventRetType)) +SDL_X11_SYM(1,SDL_X11_XESetEventToWireRetType,XESetEventToWire,(Display*,int,SDL_X11_XESetEventToWireRetType)) /* end of SDL_x11sym.h ... */