xserver: Branch 'master'

Paulo Cesar Pereira de Andrade pcpa at kemper.freedesktop.org
Sat Dec 6 20:40:59 PST 2008


 .gitignore                          |    2 
 Xext/xvdix.h                        |    4 
 Xext/xvmcext.h                      |    3 
 config/Makefile.am                  |   10 
 configure.ac                        |    2 
 fb/fb.h                             |    2 
 hw/xfree86/Makefile.am              |   51 -
 hw/xfree86/common/Makefile.am       |   11 
 hw/xfree86/common/xf86Module.h      |    1 
 hw/xfree86/common/xf86Priv.h        |    4 
 hw/xfree86/common/xf86sbusBus.h     |    2 
 hw/xfree86/ddc/Makefile.am          |    4 
 hw/xfree86/i2c/Makefile.am          |    4 
 hw/xfree86/loader/Makefile.am       |   14 
 hw/xfree86/loader/loader.c          |    6 
 hw/xfree86/loader/sdksyms.sh        |  392 +++++++++++
 hw/xfree86/loader/xorgsym.c         | 1210 ------------------------------------
 hw/xfree86/modes/Makefile.am        |    4 
 hw/xfree86/modes/xf86Crtc.h         |    7 
 hw/xfree86/os-support/xf86_OSproc.h |    2 
 hw/xfree86/parser/Makefile.am       |    7 
 hw/xfree86/ramdac/Makefile.am       |    4 
 include/os.h                        |    4 
 include/window.h                    |    2 
 include/xkbfile.h                   |    2 
 mi/mispans.h                        |    3 
 render/picture.h                    |    2 
 27 files changed, 476 insertions(+), 1283 deletions(-)

New commits:
commit b1dac41fb3853ca8182048ea57b88b6e84ecceb3
Author: Paulo Cesar Pereira de Andrade <pcpa at mandriva.com.br>
Date:   Sun Dec 7 02:22:19 2008 -0200

    Use libtool convenience libraries and better "symbol" table.
    
      All .a libraries were converted to .la, and instead of linking the
    Xorg binary with a mix of .a and .la, and adding some libraries more
    then once in the command line, etc, now it generates a single libxorg.la
    from all the required convenience libraries, and links with a dummy
    xorg.c (that should usually be the file with the main function...).
    This removes the requirement of some things like libosandcommon and
    libinit, that existed to circumvent problems when linking multiple
    .a and .la in the final Xorg binary.
    
      The "symbol table" is now generated dynamically, by a shell script,
    with an embedded gawk parser that parses cpp output. The new file
    sdksyms.sh is generated by hand by analyzing all Makefile.am's and
    making it create a sdksyms.c file, that includes all sdk headers that
    will add symbols for the Xorg binary. Module headers aren't read, and
    a in 2 files it was required to add a "<hash>ifndef XorgLoader" around
    declarations shared between the Xorg binary and libextmod. A few
    other changes were added to other sdk headers, like preventing
    multiple inclusion, or including other headers to satisfy dependencies.
    
      This should be a lot more portable, and better (hopefully properly)
    using libtool to generate convenience libraries.

diff --git a/.gitignore b/.gitignore
index c5634d9..7a8a511 100644
--- a/.gitignore
+++ b/.gitignore
@@ -124,6 +124,8 @@ hw/xfree86/xaa/mf3-xaaStipple.c
 hw/xfree86/xaa/s-xaaDashLine.c
 hw/xfree86/xaa/s-xaaLine.c
 hw/xfree86/xorg.c
+hw/xfree86/libxorg.c
+hw/xfree86/loader/sdksyms.c
 hw/xfree86/xorg.conf.example
 hw/xfree86/xorg.conf.example.pre
 hw/xnest/Xnest
diff --git a/Xext/xvdix.h b/Xext/xvdix.h
index ee0bf7e..15bfaf7 100644
--- a/Xext/xvdix.h
+++ b/Xext/xvdix.h
@@ -55,6 +55,7 @@ SOFTWARE.
 #include "scrnintstr.h"
 #include <X11/extensions/Xvproto.h>
 
+#ifndef XorgLoader
 extern _X_EXPORT unsigned long XvExtensionGeneration;
 extern _X_EXPORT unsigned long XvScreenGeneration;
 extern _X_EXPORT unsigned long XvResourceGeneration;
@@ -69,6 +70,7 @@ extern _X_EXPORT unsigned long XvRTGrab;
 extern _X_EXPORT unsigned long XvRTVideoNotify;
 extern _X_EXPORT unsigned long XvRTVideoNotifyList;
 extern _X_EXPORT unsigned long XvRTPortNotify;
+#endif
 
 typedef struct {
   int numerator;
@@ -234,6 +236,7 @@ typedef struct {
 #define _XvBadPort (XvBadPort+XvErrorBase)
 #define _XvBadEncoding (XvBadEncoding+XvErrorBase)
 
+#ifndef XorgLoader
 extern _X_EXPORT int ProcXvDispatch(ClientPtr);
 extern _X_EXPORT int SProcXvDispatch(ClientPtr);
 
@@ -270,6 +273,7 @@ extern _X_EXPORT int XvdiPreemptVideo(ClientPtr, XvPortPtr, DrawablePtr);
 extern _X_EXPORT int XvdiMatchPort(XvPortPtr, DrawablePtr);
 extern _X_EXPORT int XvdiGrabPort(ClientPtr, XvPortPtr, Time, int *);
 extern _X_EXPORT int XvdiUngrabPort( ClientPtr, XvPortPtr, Time);
+#endif /* XorgLoader */
 
 
 #if !defined(UNIXCPP)
diff --git a/Xext/xvmcext.h b/Xext/xvmcext.h
index 0051ebd..5b43126 100644
--- a/Xext/xvmcext.h
+++ b/Xext/xvmcext.h
@@ -101,6 +101,7 @@ typedef struct {
   XvMCDestroySubpictureProcPtr      DestroySubpicture;
 } XvMCAdaptorRec, *XvMCAdaptorPtr;
 
+#ifndef XorgLoader
 extern _X_EXPORT void XvMCExtensionInit(void);
 
 extern _X_EXPORT int XvMCScreenInit(ScreenPtr pScreen,
@@ -112,6 +113,6 @@ extern _X_EXPORT XvImagePtr XvMCFindXvImage(XvPortPtr pPort, CARD32 id);
 extern _X_EXPORT int xf86XvMCRegisterDRInfo(ScreenPtr pScreen, char *name,
 			   char *busID, int major, int minor, 
 			   int patchLevel);
-
+#endif
 
 #endif /* _XVMC_H */
diff --git a/config/Makefile.am b/config/Makefile.am
index 1e7c501..7fa2df8 100644
--- a/config/Makefile.am
+++ b/config/Makefile.am
@@ -1,22 +1,22 @@
 AM_CFLAGS = @DIX_CFLAGS@
 
-noinst_LIBRARIES = libconfig.a
-libconfig_a_SOURCES = config.c config-backends.h
+noinst_LTLIBRARIES = libconfig.la
+libconfig_la_SOURCES = config.c config-backends.h
 
 if CONFIG_NEED_DBUS
 AM_CFLAGS += @DBUS_CFLAGS@
-libconfig_a_SOURCES += dbus-core.c
+libconfig_la_SOURCES += dbus-core.c
 endif
 
 if CONFIG_DBUS_API
 dbusconfigdir = $(sysconfdir)/dbus-1/system.d
 dbusconfig_DATA = xorg-server.conf
 
-libconfig_a_SOURCES += dbus.c
+libconfig_la_SOURCES += dbus.c
 endif
 
 if CONFIG_HAL
-libconfig_a_SOURCES += hal.c
+libconfig_la_SOURCES += hal.c
 endif
 
 EXTRA_DIST = xorg-server.conf x11-input.fdi
diff --git a/configure.ac b/configure.ac
index 81c8e38..9e65680 100644
--- a/configure.ac
+++ b/configure.ac
@@ -708,7 +708,7 @@ if test "x$CONFIG_NEED_DBUS" = xyes; then
         AC_DEFINE(CONFIG_NEED_DBUS, 1, [Use D-Bus for input hotplug])
 fi
 AM_CONDITIONAL(CONFIG_NEED_DBUS, [test "x$CONFIG_NEED_DBUS" = xyes])
-CONFIG_LIB='$(top_builddir)/config/libconfig.a'
+CONFIG_LIB='$(top_builddir)/config/libconfig.la'
 
 AC_MSG_CHECKING([for glibc...])
 AC_PREPROC_IFELSE([
diff --git a/fb/fb.h b/fb/fb.h
index 292dc42..8384315 100644
--- a/fb/fb.h
+++ b/fb/fb.h
@@ -819,6 +819,8 @@ fb24_32ModifyPixmapHeader (PixmapPtr   pPixmap,
 /*
  * fballpriv.c
  */
+extern _X_EXPORT DevPrivateKey fbGetWinPrivateKey(void);
+
 extern _X_EXPORT Bool
 fbAllocatePrivates(ScreenPtr pScreen, DevPrivateKey *pGCIndex);
     
diff --git a/hw/xfree86/Makefile.am b/hw/xfree86/Makefile.am
index 115d829..03c228c 100644
--- a/hw/xfree86/Makefile.am
+++ b/hw/xfree86/Makefile.am
@@ -25,43 +25,36 @@ DIST_SUBDIRS = common ddc i2c x86emu int10 fbdevhw os-support \
 	       utils doc
 
 bin_PROGRAMS = Xorg
+Xorg_SOURCES = xorg.c
 
 AM_CFLAGS = $(DIX_CFLAGS) @XORG_CFLAGS@
 INCLUDES = @XORG_INCS@ 
 
-Xorg_SOURCES = xorg.c
-
-# libxorgos and libcommon need symbols from each other
-noinst_LTLIBRARIES = libosandcommon.la
-libosandcommon_la_SOURCES = osandcommon.c
-libosandcommon_la_LIBADD = \
+noinst_LTLIBRARIES = libxorg.la
+libxorg_la_SOURCES = libxorg.c
+libxorg_la_LIBADD = \
+            $(XSERVER_LIBS) \
+            loader/libloader.la \
             os-support/libxorgos.la \
-            common/libcommon.la
-
-osandcommon.c xorg.c:
+            common/libcommon.la \
+            parser/libxf86config.la \
+            dixmods/libdixmods.la \
+            modes/libxf86modes.la \
+            ramdac/libramdac.la \
+            ddc/libddc.la \
+            i2c/libi2c.la \
+            dixmods/libxorgxkb.la \
+            $(top_builddir)/mi/libmi.la \
+            $(top_builddir)/os/libos.la \
+            @XORG_LIBS@
+
+libxorg.c xorg.c:
 	touch $@
 
-DISTCLEANFILES = osandcommon.c xorg.c
+DISTCLEANFILES = libxorg.c xorg.c
 
-XORG_LIBS = \
-            $(XSERVER_LIBS) \
-            common/libinit.a \
-            loader/libloader.a \
-            libosandcommon.la \
-            parser/libxf86config.a \
-	    dixmods/libdixmods.la \
-	    modes/libxf86modes.a \
-	    ramdac/libramdac.a \
-	    ddc/libddc.a \
-	    i2c/libi2c.a \
-	    dixmods/libxorgxkb.la \
-	    $(top_builddir)/mi/libmi.la \
-	    $(top_builddir)/os/libos.la \
-	    @XORG_LIBS@ \
-	    dixmods/libxorgxkb.la
-
-Xorg_DEPENDENCIES = $(XORG_LIBS)
-Xorg_LDADD = $(XORG_LIBS) $(XORG_SYS_LIBS) $(XSERVER_SYS_LIBS)
+Xorg_DEPENDENCIES = libxorg.la
+Xorg_LDADD = libxorg.la $(XORG_SYS_LIBS) $(XSERVER_SYS_LIBS)
 
 Xorg_LDFLAGS = $(LD_EXPORT_SYMBOLS_FLAG)
 
diff --git a/hw/xfree86/common/Makefile.am b/hw/xfree86/common/Makefile.am
index ca452c6..01b9cf3 100644
--- a/hw/xfree86/common/Makefile.am
+++ b/hw/xfree86/common/Makefile.am
@@ -1,4 +1,3 @@
-noinst_LIBRARIES = libinit.a
 noinst_LTLIBRARIES = libcommon.la
 
 if XORG_BUS_SPARC
@@ -7,7 +6,7 @@ endif
 
 if XV
 XVSOURCES = xf86xv.c xf86xvmc.c
-XVSDKINCS = xf86xv.h xf86xvmc.h
+XVSDKINCS = xf86xv.h xf86xvmc.h xf86xvpriv.h
 endif
 
 if XF86VIDMODE
@@ -32,14 +31,12 @@ AM_LDFLAGS = -r
 libcommon_la_SOURCES = xf86Configure.c xf86ShowOpts.c xf86Bus.c xf86Config.c \
                       xf86Cursor.c xf86DGA.c xf86DPMS.c \
                       xf86Events.c xf86Globals.c xf86AutoConfig.c \
-                      xf86Option.c \
+                      xf86Option.c xf86Init.c \
                       xf86VidMode.c xf86fbman.c xf86cmap.c \
                       xf86Helper.c xf86PM.c xf86RAC.c xf86Xinput.c xisb.c \
                       xf86Mode.c xorgHelper.c \
                       $(XVSOURCES) $(BUSSOURCES) $(RANDRSOURCES)
-nodist_libcommon_la_SOURCES = xf86DefModeSet.c
-libinit_a_SOURCES = xf86Init.c
-nodist_libinit_a_SOURCES = xf86Build.h
+nodist_libcommon_la_SOURCES = xf86DefModeSet.c xf86Build.h
 
 INCLUDES = $(XORG_INCS) -I$(srcdir)/../ddc -I$(srcdir)/../i2c \
 	   -I$(srcdir)/../loader -I$(srcdir)/../rac -I$(srcdir)/../parser \
@@ -51,7 +48,7 @@ sdk_HEADERS = compiler.h fourcc.h xf86.h xf86Module.h xf86Opt.h \
               xf86PciInfo.h xf86Priv.h xf86Privstr.h xf86Resources.h \
               xf86cmap.h xf86fbman.h xf86str.h xf86RAC.h xf86Xinput.h xisb.h \
               $(XVSDKINCS) $(XF86VMODE_SDK) xorgVersion.h \
-              xf86sbusBus.h xf86xv.h xf86xvmc.h xf86xvpriv.h
+              xf86sbusBus.h
 
 DISTCLEANFILES = xf86Build.h
 CLEANFILES = $(BUILT_SOURCES)
diff --git a/hw/xfree86/common/xf86Module.h b/hw/xfree86/common/xf86Module.h
index 7557bc5..e6960c8 100644
--- a/hw/xfree86/common/xf86Module.h
+++ b/hw/xfree86/common/xf86Module.h
@@ -190,7 +190,6 @@ extern _X_EXPORT pointer LoadSubModule(pointer, const char *, const char **,
 extern _X_EXPORT void UnloadSubModule(pointer);
 extern _X_EXPORT void UnloadModule (pointer);
 extern _X_EXPORT pointer LoaderSymbol(const char *);
-extern _X_EXPORT pointer LoaderSymbolLocal(pointer module, const char *);
 extern _X_EXPORT char **LoaderListDirs(const char **, const char **);
 extern _X_EXPORT void LoaderFreeDirList(char **);
 extern _X_EXPORT void LoaderErrorMsg(const char *, const char *, int, int);
diff --git a/hw/xfree86/common/xf86Priv.h b/hw/xfree86/common/xf86Priv.h
index 50f5f7c..1196064 100644
--- a/hw/xfree86/common/xf86Priv.h
+++ b/hw/xfree86/common/xf86Priv.h
@@ -41,10 +41,6 @@
 #include "propertyst.h"
 #include "input.h"
 
-#ifdef XF86VIDMODE
-# include "vidmodeproc.h"
-#endif
-
 /*
  * Parameters set ONLY from the command line options
  * The global state of these things is held in xf86InfoRec (when appropriate).
diff --git a/hw/xfree86/common/xf86sbusBus.h b/hw/xfree86/common/xf86sbusBus.h
index 1e7e033..e83592d 100644
--- a/hw/xfree86/common/xf86sbusBus.h
+++ b/hw/xfree86/common/xf86sbusBus.h
@@ -56,7 +56,7 @@ typedef struct sbus_device {
     char		*device;
 } sbusDevice, *sbusDevicePtr;
 
-extern struct sbus_devtable {
+extern _X_EXPORT struct sbus_devtable {
     int devId;
     int fbType;
     char *promName;
diff --git a/hw/xfree86/ddc/Makefile.am b/hw/xfree86/ddc/Makefile.am
index cd146c5..d32e2f4 100644
--- a/hw/xfree86/ddc/Makefile.am
+++ b/hw/xfree86/ddc/Makefile.am
@@ -1,8 +1,8 @@
 sdk_HEADERS = edid.h xf86DDC.h
 
-noinst_LIBRARIES = libddc.a
+noinst_LTLIBRARIES = libddc.la
 
-libddc_a_SOURCES = xf86DDC.c edid.c interpret_edid.c print_edid.c \
+libddc_la_SOURCES = xf86DDC.c edid.c interpret_edid.c print_edid.c \
                    ddcProperty.c
 
 INCLUDES = $(XORG_INCS) -I$(srcdir)/../i2c
diff --git a/hw/xfree86/i2c/Makefile.am b/hw/xfree86/i2c/Makefile.am
index a16d880..0b80cc8 100644
--- a/hw/xfree86/i2c/Makefile.am
+++ b/hw/xfree86/i2c/Makefile.am
@@ -1,4 +1,4 @@
-noinst_LIBRARIES = libi2c.a
+noinst_LTLIBRARIES = libi2c.la
 
 multimediadir = $(moduledir)/multimedia
 multimedia_LTLIBRARIES =	\
@@ -10,7 +10,7 @@ multimedia_LTLIBRARIES =	\
 	tda9885_drv.la		\
 	uda1380_drv.la
 
-libi2c_a_SOURCES = xf86i2c.c
+libi2c_la_SOURCES = xf86i2c.c
 
 INCLUDES = $(XORG_INCS)
 
diff --git a/hw/xfree86/loader/Makefile.am b/hw/xfree86/loader/Makefile.am
index 37af4d6..d67d8ba 100644
--- a/hw/xfree86/loader/Makefile.am
+++ b/hw/xfree86/loader/Makefile.am
@@ -1,7 +1,6 @@
-noinst_LIBRARIES = libloader.a
+noinst_LTLIBRARIES = libloader.la
 
-INCLUDES = $(XORG_INCS) -I$(srcdir)/../parser -I$(srcdir)/../dixmods/extmod \
-	   -I$(srcdir)/../vbe -I$(top_srcdir)/miext/cw -I$(srcdir)/../int10 \
+INCLUDES = $(XORG_INCS) -I$(srcdir)/../parser -I$(top_srcdir)/miext/cw \
 	   -I$(srcdir)/../ddc -I$(srcdir)/../i2c -I$(srcdir)/../modes \
 	   -I$(srcdir)/../ramdac
 
@@ -13,11 +12,16 @@ EXTRA_DIST = \
 	loader.h \
 	loaderProcs.h
 
-libloader_a_SOURCES = \
+libloader_la_SOURCES = \
 	loader.c \
 	loaderProcs.h \
 	loadext.c \
         loadmod.c \
         dlloader.c \
 	os.c \
-	xorgsym.c
+	sdksyms.c
+
+CLEANFILES = sdksyms.c
+
+sdksyms.c:
+	./sdksyms.sh $(AM_CFLAGS) $(CFLAGS) $(INCLUDES)
diff --git a/hw/xfree86/loader/loader.c b/hw/xfree86/loader/loader.c
index e5d9e5b..231daf8 100644
--- a/hw/xfree86/loader/loader.c
+++ b/hw/xfree86/loader/loader.c
@@ -75,7 +75,7 @@
 #include "xf86Priv.h"
 #include "compiler.h"
 
-extern void *xorgLookupTab[];
+extern void *xorg_symbols[];
 
 /*
  * handles are used to identify files that are loaded. Even archives
@@ -108,8 +108,8 @@ LoaderInit(void)
     }
 
     xf86MsgVerb(X_INFO, 2, "Loader magic: %p\n", (void *)
-		((long)xorgLookupTab[0] ^ (long)xorgLookupTab[1]
-		 ^ (long)xorgLookupTab[2] ^ (long)xorgLookupTab[3]));
+		((long)xorg_symbols[0] ^ (long)xorg_symbols[1]
+		 ^ (long)xorg_symbols[2] ^ (long)xorg_symbols[3]));
     xf86MsgVerb(X_INFO, 2, "Module ABI versions:\n");
     xf86ErrorFVerb(2, "\t%s: %d.%d\n", ABI_CLASS_ANSIC,
 		   GET_ABI_MAJOR(LoaderVersionInfo.ansicVersion),
diff --git a/hw/xfree86/loader/sdksyms.sh b/hw/xfree86/loader/sdksyms.sh
new file mode 100755
index 0000000..5b95cf4
--- /dev/null
+++ b/hw/xfree86/loader/sdksyms.sh
@@ -0,0 +1,392 @@
+#!/bin/sh
+
+cat > sdksyms.c << EOF
+#ifdef HAVE_XORG_CONFIG_H
+#include <xorg-config.h>
+#endif
+
+
+/* These must be included first */
+#include "misc.h"
+#include "miscstruct.h"
+
+
+/* render/Makefile.am */
+#include "picture.h"
+#include "mipict.h"
+#include "glyphstr.h"
+#include "picturestr.h"
+#include "renderedge.h"
+
+
+/* fb/Makefile.am -- module */
+/*
+#include "fb.h"
+#include "fbrop.h"
+#include "fboverlay.h"
+#include "wfbrename.h"
+#include "fbpict.h"
+ */
+
+
+/* miext/shadow/Makefile.am -- module */
+/*
+#include "shadow.h"
+ */
+
+
+/* miext/damage/Makefile.am */
+#include "damage.h"
+#include "damagestr.h"
+
+
+/* Xext/Makefile.am -- half is module, half is builtin */
+/*
+#include "xvdix.h"
+#include "xvmcext.h"
+ */
+#include "geext.h"
+#include "geint.h"
+#include "shmint.h"
+#if XINERAMA
+# include "panoramiXsrv.h"
+# include "panoramiX.h"
+#endif
+
+
+/* hw/xfree86/int10/Makefile.am -- module */
+/*
+#include "xf86int10.h"
+ */
+
+
+/* hw/xfree86/i2c/Makefile.am -- "mostly" modules */
+#include "xf86i2c.h"
+/*
+#include "bt829.h"
+#include "fi1236.h"
+#include "msp3430.h"
+#include "tda8425.h"
+#include "tda9850.h"
+#include "tda9885.h"
+#include "uda1380.h"
+#include "i2c_def.h"
+ */
+
+
+/* hw/xfree86/modes/Makefile.am */
+#include "xf86Crtc.h"
+#include "xf86Modes.h"
+#include "xf86RandR12.h"
+/* #include "xf86Rename.h" */
+
+
+/* hw/xfree86/ddc/Makefile.am */
+#include "edid.h"
+#include "xf86DDC.h"
+
+
+/* hw/xfree86/dri2/Makefile.am -- module */
+/*
+#if DRI2
+# include "dri2.h"
+#endif
+ */
+
+
+/* hw/xfree86/vgahw/Makefile.am -- module */
+/*
+#include "vgaHW.h"
+ */
+
+
+/* hw/xfree86/fbdevhw/Makefile.am -- module */
+/*
+#include "fbdevhw.h"
+ */
+
+
+/* hw/xfree86/common/Makefile.am */
+#include "compiler.h"
+#include "fourcc.h"
+#include "xf86.h"
+#include "xf86Module.h"
+#include "xf86Opt.h"
+#include "xf86PciInfo.h"
+#include "xf86Priv.h"
+#include "xf86Privstr.h"
+#include "xf86Resources.h"
+#include "xf86cmap.h"
+#include "xf86fbman.h"
+#include "xf86str.h"
+#include "xf86RAC.h"
+#include "xf86Xinput.h"
+#include "xisb.h"
+#if XV
+# include "xf86xv.h"
+# include "xf86xvmc.h"
+# include "xf86xvpriv.h"
+#endif
+/* XF86VidMode code is in libextmod module */
+/*
+#if XF86VIDMODE
+# include "vidmodeproc.h"
+#endif
+ */
+#include "xorgVersion.h"
+#if defined(__sparc__) || defined(__sparc)
+# include "xf86sbusBus.h"
+#endif
+
+
+/* hw/xfree86/ramdac/Makefile.am */
+#include "BT.h"
+#include "IBM.h"
+#include "TI.h"
+#include "xf86Cursor.h"
+#include "xf86RamDac.h"
+
+
+/* hw/xfree86/shadowfb/Makefile.am -- module */
+/*
+#include "shadowfb.h"
+ */
+
+
+/* hw/xfree86/os-support/solaris/Makefile.am */
+#if defined(sun386)
+# include "agpgart.h"
+#endif
+
+
+/* hw/xfree86/os-support/Makefile.am */
+#include "xf86_OSproc.h"
+#include "xf86_OSlib.h"
+
+
+/* hw/xfree86/os-support/bus/Makefile.am */
+#include "xf86Pci.h"
+#if defined(__sparc__) || defined(__sparc)
+# include "xf86Sbus.h"
+#endif
+
+
+/* hw/xfree86/xaa/Makefile.am -- module */
+/*
+#include "xaa.h"
+#include "xaalocal.h"
+#include "xaarop.h"
+#include "xaaWrapper.h"
+ */
+
+
+/* hw/xfree86/dixmods/extmod/Makefile.am -- module */
+/*
+#include "dgaproc.h"
+ */
+
+
+/* hw/xfree86/parser/Makefile.am */
+#include "xf86Parser.h"
+#include "xf86Optrec.h"
+
+
+/* hw/xfree86/vbe/Makefile.am -- module */
+/*
+#include "vbe.h"
+#include "vbeModes.h"
+ */
+
+
+/* hw/xfree86/dri/Makefile.am -- module */
+/*
+#if XF86DRI
+# include "dri.h"
+# include "sarea.h"
+# include "dristruct.h"
+#endif
+ */
+
+
+/* hw/xfree86/xf8_16bpp/Makefile.am -- module */
+/*
+#include "cfb8_16.h"
+ */
+
+
+/* mi/Makefile.am */
+#include "mibank.h"
+#include "micmap.h"
+#include "miline.h"
+#include "mipointer.h"
+#include "mi.h"
+#include "mibstore.h"
+#include "migc.h"
+#include "mipointrst.h"
+#include "mizerarc.h"
+#include "micoord.h"
+#include "mifillarc.h"
+#include "mispans.h"
+#include "miwideline.h"
+#include "mistruct.h"
+#include "mifpoly.h"
+#include "mioverlay.h"
+
+
+/* randr/Makefile.am */
+#include "randrstr.h"
+#include "rrtransform.h"
+
+
+/* dbe/Makefile.am -- module */
+/*
+#include "dbestruct.h"
+ */
+
+
+/* exa/Makefile.am -- module */
+/*
+#include "exa.h"
+ */
+
+
+/* xfixes/Makefile.am */
+#include "xfixes.h"
+
+
+/* include/Makefile.am */
+#include "XIstubs.h"
+#include "bstore.h"
+#include "bstorestr.h"
+#include "closestr.h"
+#include "closure.h"
+#include "colormap.h"
+#include "colormapst.h"
+#include "hotplug.h"
+#include "cursor.h"
+#include "cursorstr.h"
+#include "dix.h"
+#include "dixaccess.h"
+#include "dixevents.h"
+#include "dixfont.h"
+#include "dixfontstr.h"
+#include "dixgrabs.h"
+#include "dixstruct.h"
+#include "exevents.h"
+#include "extension.h"
+#include "extinit.h"
+#include "extnsionst.h"
+#include "gc.h"
+#include "gcstruct.h"
+#include "globals.h"
+#include "input.h"
+#include "inputstr.h"
+/* already included */
+/*
+#include "misc.h"
+#include "miscstruct.h"
+ */
+#include "opaque.h"
+#include "os.h"
+#include "pixmap.h"
+#include "pixmapstr.h"
+#include "privates.h"
+#include "property.h"
+#include "propertyst.h"
+#include "ptrveloc.h"
+#include "region.h"
+#include "regionstr.h"
+#include "registry.h"
+#include "resource.h"
+#include "rgb.h"
+#include "screenint.h"
+#include "scrnintstr.h"
+#include "selection.h"
+#include "servermd.h"
+#include "site.h"
+#include "swaprep.h"
+#include "swapreq.h"
+#include "validate.h"
+#include "window.h"
+#include "windowstr.h"
+#include "xkbfile.h"
+#include "xkbsrv.h"
+#include "xkbstr.h"
+#include "xkbrules.h"
+#include "xserver-properties.h"
+
+EOF
+
+cpp -DXorgLoader $@ sdksyms.c | awk '
+BEGIN {
+    sdk = 0;
+    print("_X_HIDDEN void *xorg_symbols[] = {");
+}
+/^# [0-9]+/ {
+    # only process text after a include in a relative path
+    sdk = $3 !~ /^"\//;
+}
+
+/^extern[[:space:]]/  {
+    if (sdk) {
+	n = 3;
+
+	# skip attribute, if any
+	while ($n ~ /^(__attribute__|__global)/ ||
+	    # skip modifiers, if any
+	    $n ~ /^\*?(unsigned|const|volatile|struct)$/ ||
+	    # skip pointer
+	    $n ~ /\*$/)
+	    n++;
+
+	# type specifier may not be set, as in
+	#   extern _X_EXPORT unsigned name(...)
+	if ($n !~ /\W/)
+	    n++;
+
+	# match
+	#    extern _X_EXPORT struct name {
+	if ($n == "{")
+	    n--;
+	#    extern _X_EXPORT type (* name[])(...)
+	else if ($n ~ /^\W+$/)
+	    n++;
+
+	# match
+	#	extern _X_EXPORT const name *const ...
+	if ($n ~ /^(\W+)?const$/)
+	    n++;
+
+	# actual name may be in the next line, as in
+	#   extern _X_EXPORT type
+	# possibly ending with a *
+	#   name(...)
+	if ($n == "" || $n ~ /^\*+$/) {
+	    getline;
+	    n = 1;
+	}
+
+	# dont modify $0 or $n
+	symbol = $n;
+
+	# remove starting non word chars
+	sub(/^\W+/, "",symbol);
+
+	# remove from first non word to end of line
+	sub(/\W.*/, "", symbol);
+
+	#print;
+	printf("    &%s,\n", symbol);
+    }
+}
+
+END {
+    print("};");
+}' > _sdksyms.c
+
+STATUS=$?
+
+cat _sdksyms.c >> sdksyms.c
+rm _sdksyms.c
+
+exit $STATUS
diff --git a/hw/xfree86/loader/xorgsym.c b/hw/xfree86/loader/xorgsym.c
deleted file mode 100644
index 595e9d3..0000000
--- a/hw/xfree86/loader/xorgsym.c
+++ /dev/null
@@ -1,1210 +0,0 @@
-/*
- * Copyright 1995-1998 by Metro Link, Inc.
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, 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 Metro Link, Inc. not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission.  Metro Link, Inc. makes no
- * representations about the suitability of this software for any purpose.
- *  It is provided "as is" without express or implied warranty.
- *
- * METRO LINK, INC. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL METRO LINK, INC. 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.
- */
-/*
- * Copyright (c) 1997-2003 by The XFree86 Project, Inc.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
- * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
- * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- * OTHER DEALINGS IN THE SOFTWARE.
- *
- * Except as contained in this notice, the name of the copyright holder(s),
- * and author(s) shall not be used in advertising or otherwise to promote
- * the sale, use or other dealings in this Software without prior written
- * authorization from the copyright holder(s) and author(s).
- */
-
-#ifdef HAVE_XORG_CONFIG_H
-#include <xorg-config.h>
-#endif
-
-#include "colormap.h"
-#include "cursor.h"
-#include "cursorstr.h"
-#include "dix.h"
-#include "dixevents.h"
-#include "dixstruct.h"
-#include "misc.h"
-#include "globals.h"
-#include "os.h"
-#include "osdep.h"
-#include "privates.h"
-#include "resource.h"
-#include "registry.h"
-#include "servermd.h"
-#include "scrnintstr.h"
-#include "windowstr.h"
-#include "extension.h"
-#define EXTENSION_PROC_ARGS void *
-#include "extnsionst.h"
-#include "swaprep.h"
-#include "swapreq.h"
-#include "inputstr.h"
-#include <X11/extensions/XIproto.h>
-#include "exevents.h"
-#include "extinit.h"
-#ifdef XV
-#include "xvmodproc.h"
-#endif
-#include "dgaproc.h"
-#ifdef RENDER
-#include "mipict.h"
-#include "renderedge.h"
-#endif
-#include "selection.h"
-#ifdef XKB
-#include <xkbsrv.h>
-#endif
-#ifdef PANORAMIX
-#include "panoramiX.h"
-#include "panoramiXsrv.h"
-#endif
-#include "sleepuntil.h"
-
-#include "misc.h"
-#include "mi.h"
-#include "mibank.h"
-#include "miwideline.h"
-#include "mibstore.h"
-#include "mipointer.h"
-#include "migc.h"
-#include "miline.h"
-#include "mizerarc.h"
-#include "mifillarc.h"
-#include "micmap.h"
-#include "mioverlay.h"
-#ifdef COMPOSITE
-#include "cw.h"
-#endif
-#ifdef DAMAGE
-#include "damage.h"
-#endif
-
-#ifdef HAS_SHM
-# include "shmint.h"
-#endif
-
-#include "loaderProcs.h"
-#include "xf86Pci.h"
-#include "xf86.h"
-#include "xf86Resources.h"
-#include "xf86_OSproc.h"
-#include "xf86Parser.h"
-#include "xf86Config.h"
-#include "xf86Xinput.h"
-#ifdef XV
-#include "xf86xv.h"
-#include "xf86xvmc.h"
-#endif
-#include "xf86cmap.h"
-#include "xf86fbman.h"
-#include "dgaproc.h"
-
-#ifdef DPMSExtension
-#include "dpmsproc.h"
-#endif
-#include "vidmodeproc.h"
-#include "loader.h"
-#include "xisb.h"
-#include "vbe.h"
-#ifndef __OpenBSD__
-#include "xf86sbusBus.h"
-#endif
-#include "compiler.h"
-#include "xf86Crtc.h"
-#include "xf86Modes.h"
-
-#ifdef RANDR
-#include "xf86RandR12.h"
-#endif
-#include "xf86DDC.h"
-#include "edid.h"
-#include "xf86Cursor.h"
-#include "xf86RamDac.h"
-#include "BT.h"
-#include "IBM.h"
-#include "TI.h"
-
-#include "xf86RamDac.h"
-
-#define SYMBOL(symbol)			&symbol
-
-_X_HIDDEN void *xorgLookupTab[] = {
-    SYMBOL(MakeAtom),
-    SYMBOL(NameForAtom),
-    SYMBOL(ValidAtom),
-    SYMBOL(AllocColor),
-    SYMBOL(CreateColormap),
-    SYMBOL(FakeAllocColor),
-    SYMBOL(FakeFreeColor),
-    SYMBOL(FreeColors),
-    SYMBOL(StoreColors),
-    SYMBOL(TellLostMap),
-    SYMBOL(TellGainedMap),
-    SYMBOL(QueryColors),
-    SYMBOL(FreeCursor),
-    SYMBOL(LookupClient),
-    SYMBOL(LookupDrawable),
-    SYMBOL(LookupWindow),
-    SYMBOL(SecurityLookupDrawable),
-    SYMBOL(SecurityLookupWindow),
-    SYMBOL(LookupIDByType),
-    SYMBOL(LookupIDByClass),
-    SYMBOL(SecurityLookupIDByClass),
-    SYMBOL(SecurityLookupIDByType),
-    SYMBOL(Ones),
-    SYMBOL(InitButtonClassDeviceStruct),
-    SYMBOL(InitFocusClassDeviceStruct),
-    SYMBOL(InitLedFeedbackClassDeviceStruct),
-    SYMBOL(InitPtrFeedbackClassDeviceStruct),
-    SYMBOL(InitKbdFeedbackClassDeviceStruct),
-    SYMBOL(InitIntegerFeedbackClassDeviceStruct),
-    SYMBOL(InitStringFeedbackClassDeviceStruct),
-    SYMBOL(InitBellFeedbackClassDeviceStruct),
-    SYMBOL(InitValuatorClassDeviceStruct),
-    SYMBOL(InitKeyClassDeviceStruct),
-    SYMBOL(InitKeyboardDeviceStruct),
-    SYMBOL(SendMappingNotify),
-    SYMBOL(InitPointerDeviceStruct),
-    SYMBOL(SendErrorToClient),
-    SYMBOL(UpdateCurrentTime),
-    SYMBOL(UpdateCurrentTimeIf),
-    SYMBOL(ProcBadRequest),
-    SYMBOL(dispatchException),
-    SYMBOL(isItTimeToYield),
-    SYMBOL(ClientStateCallback),
-    SYMBOL(ServerGrabCallback),
-    SYMBOL(AddCallback),
-    SYMBOL(ClientSleep),
-    SYMBOL(ClientTimeToServerTime),
-    SYMBOL(ClientWakeup),
-    SYMBOL(CompareTimeStamps),
-    SYMBOL(CopyISOLatin1Lowered),
-    SYMBOL(DeleteCallback),
-    SYMBOL(dixLookupDrawable),
-    SYMBOL(dixLookupWindow),
-    SYMBOL(dixLookupClient),
-    SYMBOL(dixLookupGC),
-    SYMBOL(NoopDDA),
-    SYMBOL(QueueWorkProc),
-    SYMBOL(RegisterBlockAndWakeupHandlers),
-    SYMBOL(RemoveBlockAndWakeupHandlers),
-    SYMBOL(CheckCursorConfinement),
-    SYMBOL(DeliverEvents),
-    SYMBOL(NewCurrentScreen),
-    SYMBOL(PointerConfinedToScreen),
-    SYMBOL(TryClientEvents),
-    SYMBOL(WriteEventsToClient),
-    SYMBOL(GetCurrentRootWindow),
-    SYMBOL(GetSpritePosition),
-    SYMBOL(GetSpriteWindow),
-    SYMBOL(GetSpriteCursor),
-    SYMBOL(DeviceEventCallback),
-    SYMBOL(EventCallback),
-    SYMBOL(inputInfo),
-    SYMBOL(SetCriticalEvent),
-#ifdef PANORAMIX
-    SYMBOL(XineramaGetCursorScreen),
-#endif
-    SYMBOL(dixLookupProperty),
-    SYMBOL(ChangeWindowProperty),
-    SYMBOL(dixChangeWindowProperty),
-    SYMBOL(dixLookupSelection),
-    SYMBOL(CurrentSelections),
-    SYMBOL(AddExtension),
-    SYMBOL(AddExtensionAlias),
-    SYMBOL(CheckExtension),
-    SYMBOL(MinorOpcodeOfRequest),
-    SYMBOL(StandardMinorOpcode),
-    SYMBOL(CopyGC),
-    SYMBOL(CreateGC),
-    SYMBOL(CreateScratchGC),
-    SYMBOL(ChangeGC),
-    SYMBOL(dixChangeGC),
-    SYMBOL(DoChangeGC),
-    SYMBOL(FreeGC),
-    SYMBOL(FreeScratchGC),
-    SYMBOL(GetScratchGC),
-    SYMBOL(ValidateGC),
-    SYMBOL(VerifyRectOrder),
-    SYMBOL(ScreenSaverTime),
-#ifdef DPMSExtension
-    SYMBOL(DPMSEnabled),
-    SYMBOL(DPMSCapableFlag),
-    SYMBOL(DPMSOffTime),
-    SYMBOL(DPMSPowerLevel),
-    SYMBOL(DPMSStandbyTime),
-    SYMBOL(DPMSSuspendTime),
-    SYMBOL(DPMSEnabledSwitch),
-    SYMBOL(DPMSDisabledSwitch),
-#endif
-#ifdef XV
-    SYMBOL(XvScreenInitProc),
-    SYMBOL(XvGetScreenKeyProc),
-    SYMBOL(XvGetRTPortProc),
-    SYMBOL(XvMCScreenInitProc),
-#endif
-    SYMBOL(ScreenSaverBlanking),
-    SYMBOL(WindowTable),
-    SYMBOL(clients),
-    SYMBOL(currentMaxClients),
-    SYMBOL(currentTime),
-    SYMBOL(defaultColorVisualClass),
-    SYMBOL(display),
-    SYMBOL(globalSerialNumber),
-    SYMBOL(lastDeviceEventTime),
-    SYMBOL(monitorResolution),
-    SYMBOL(screenInfo),
-    SYMBOL(serverClient),
-    SYMBOL(serverGeneration),
-    SYMBOL(NotImplemented),
-    SYMBOL(PixmapWidthPaddingInfo),
-    SYMBOL(AllocatePixmap),
-    SYMBOL(GetScratchPixmapHeader),
-    SYMBOL(FreeScratchPixmapHeader),
-    SYMBOL(dixRequestPrivate),
-    SYMBOL(dixRegisterPrivateInitFunc),
-    SYMBOL(dixRegisterPrivateDeleteFunc),
-    SYMBOL(dixAllocatePrivate),
-    SYMBOL(dixLookupPrivate),
-    SYMBOL(dixLookupPrivateAddr),
-    SYMBOL(dixSetPrivate),
-    SYMBOL(dixFreePrivates),
-    SYMBOL(dixRegisterPrivateOffset),
-    SYMBOL(dixLookupPrivateOffset),
-    SYMBOL(AddResource),
-    SYMBOL(ChangeResourceValue),
-    SYMBOL(CreateNewResourceClass),
-    SYMBOL(CreateNewResourceType),
-    SYMBOL(dixLookupResource),
-    SYMBOL(FakeClientID),
-    SYMBOL(FreeResource),
-    SYMBOL(FreeResourceByType),
-    SYMBOL(LegalNewID),
-    SYMBOL(FindClientResourcesByType),
-    SYMBOL(FindAllClientResources),
-    SYMBOL(lastResourceType),
-    SYMBOL(TypeMask),
-    SYMBOL(ResourceStateCallback),
-#ifdef XREGISTRY
-    SYMBOL(RegisterResourceName),
-    SYMBOL(LookupMajorName),
-    SYMBOL(LookupRequestName),
-    SYMBOL(LookupEventName),
-    SYMBOL(LookupErrorName),
-    SYMBOL(LookupResourceName),
-#endif
-    SYMBOL(CopySwap32Write),
-    SYMBOL(Swap32Write),
-    SYMBOL(SwapConnSetupInfo),
-    SYMBOL(SwapConnSetupPrefix),
-    SYMBOL(SwapShorts),
-    SYMBOL(SwapLongs),
-    SYMBOL(SwapColorItem),
-    SYMBOL(EventSwapVector),
-    SYMBOL(ChangeWindowAttributes),
-    SYMBOL(CheckWindowOptionalNeed),
-    SYMBOL(CreateUnclippedWinSize),
-    SYMBOL(CreateWindow),
-    SYMBOL(FindWindowWithOptional),
-    SYMBOL(GravityTranslate),
-    SYMBOL(MakeWindowOptional),
-    SYMBOL(MapWindow),
-    SYMBOL(NotClippedByChildren),
-    SYMBOL(SaveScreens),
-    SYMBOL(dixSaveScreens),
-    SYMBOL(TraverseTree),
-    SYMBOL(UnmapWindow),
-    SYMBOL(WalkTree),
-    SYMBOL(savedScreenInfo),
-    SYMBOL(screenIsSaved),
-    SYMBOL(LocalClient),
-    SYMBOL(Xstrdup),
-    SYMBOL(XNFstrdup),
-    SYMBOL(AdjustWaitForDelay),
-    SYMBOL(noTestExtensions),
-    SYMBOL(GiveUp),
-#ifdef COMPOSITE
-    SYMBOL(noCompositeExtension),
-#endif
-#ifdef DAMAGE
-    SYMBOL(noDamageExtension),
-#endif
-#ifdef DBE
-    SYMBOL(noDbeExtension),
-#endif
-#ifdef DPMSExtension
-    SYMBOL(noDPMSExtension),
-#endif
-#ifdef GLXEXT
-    SYMBOL(noGlxExtension),
-#endif
-#ifdef SCREENSAVER
-    SYMBOL(noScreenSaverExtension),
-#endif
-#ifdef MITSHM
-    SYMBOL(noMITShmExtension),
-#endif
-#ifdef MULTIBUFFER
-    SYMBOL(noMultibufferExtension),
-#endif
-#ifdef RANDR
-    SYMBOL(noRRExtension),
-#endif
-#ifdef RENDER
-    SYMBOL(noRenderExtension),
-#endif
-#ifdef XCSECURITY
-    SYMBOL(noSecurityExtension),
-#endif
-#ifdef RES
-    SYMBOL(noResExtension),
-#endif
-#ifdef XF86BIGFONT
-    SYMBOL(noXFree86BigfontExtension),
-#endif
-#ifdef XFreeXDGA
-    SYMBOL(noXFree86DGAExtension),
-#endif
-#ifdef XF86DRI
-    SYMBOL(noXFree86DRIExtension),
-#endif
-#ifdef XF86VIDMODE
-    SYMBOL(noXFree86VidModeExtension),
-#endif
-#ifdef XFIXES
-    SYMBOL(noXFixesExtension),
-#endif
-#ifdef XKB
-    SYMBOL(noXkbExtension),
-#endif
-#ifdef PANORAMIX
-    SYMBOL(noPanoramiXExtension),
-#endif
-#ifdef XSELINUX
-    SYMBOL(noSELinuxExtension),
-#endif
-#ifdef XV
-    SYMBOL(noXvExtension),
-#endif
-    SYMBOL(LogVWrite),
-    SYMBOL(LogWrite),
-    SYMBOL(LogVMessageVerb),
-    SYMBOL(LogMessageVerb),
-    SYMBOL(LogMessage),
-    SYMBOL(FatalError),
-    SYMBOL(VErrorF),
-    SYMBOL(ErrorF),
-    SYMBOL(Error),
-    SYMBOL(XNFalloc),
-    SYMBOL(XNFcalloc),
-    SYMBOL(XNFrealloc),
-    SYMBOL(Xalloc),
-    SYMBOL(Xcalloc),
-    SYMBOL(Xfree),
-    SYMBOL(Xrealloc),
-    SYMBOL(TimerFree),
-    SYMBOL(TimerSet),
-    SYMBOL(TimerCancel),
-    SYMBOL(WriteToClient),
-    SYMBOL(SetCriticalOutputPending),
-    SYMBOL(FlushCallback),
-    SYMBOL(ReplyCallback),
-    SYMBOL(ResetCurrentRequest),
-    SYMBOL(IgnoreClient),
-    SYMBOL(AttendClient),
-    SYMBOL(AddEnabledDevice),
-    SYMBOL(RemoveEnabledDevice),
-    SYMBOL(GrabInProgress),
-#ifdef XKB
-    SYMBOL(XkbInitKeyboardDeviceStruct),
-    SYMBOL(XkbSetRulesDflts),
-    SYMBOL(XkbDfltRepeatDelay),
-    SYMBOL(XkbDfltRepeatInterval),
-#endif
-    SYMBOL(InitValuatorAxisStruct),
-    SYMBOL(InitProximityClassDeviceStruct),
-    SYMBOL(XDGAEventBase),
-#ifdef RENDER
-    SYMBOL(PictureInit),
-    SYMBOL(PictureTransformPoint),
-    SYMBOL(PictureTransformPoint3d),
-    SYMBOL(PictureGetSubpixelOrder),
-    SYMBOL(PictureSetSubpixelOrder),
-    SYMBOL(PictureScreenPrivateKey),
-    SYMBOL(miPictureInit),
-    SYMBOL(miComputeCompositeRegion),
-    SYMBOL(miGlyphs),
-    SYMBOL(miCompositeRects),
-    SYMBOL(PictureAddFilter),
-    SYMBOL(PictureSetFilterAlias),
-    SYMBOL(RenderSampleCeilY),
-    SYMBOL(RenderSampleFloorY),
-    SYMBOL(RenderEdgeStep),
-    SYMBOL(RenderEdgeInit),
-    SYMBOL(RenderLineFixedEdgeInit),
-#endif
-    SYMBOL(ClientSleepUntil),
-#ifdef HAS_SHM
-    SYMBOL(ShmCompletionCode),
-    SYMBOL(BadShmSegCode),
-    SYMBOL(ShmSegType),
-#endif
-#ifdef PANORAMIX
-    SYMBOL(XineramaRegisterConnectionBlockCallback),
-    SYMBOL(XineramaDeleteResource),
-    SYMBOL(PanoramiXNumScreens),
-    SYMBOL(panoramiXdataPtr),
-    SYMBOL(XRT_WINDOW),
-    SYMBOL(XRT_PIXMAP),
-    SYMBOL(XRT_GC),
-    SYMBOL(XRT_COLORMAP),
-    SYMBOL(XRC_DRAWABLE),
-#endif
-    SYMBOL(miChangeClip),
-    SYMBOL(miChangeGC),
-    SYMBOL(miClearDrawable),
-    SYMBOL(miClearToBackground),
-    SYMBOL(miClearVisualTypes),
-    SYMBOL(miClipSpans),
-    SYMBOL(miComputeCompositeClip),
-    SYMBOL(miCopyClip),
-    SYMBOL(miCopyGC),
-    SYMBOL(miCreateDefColormap),
-    SYMBOL(miCreateScreenResources),
-    SYMBOL(miDCInitialize),
-    SYMBOL(miDestroyClip),
-    SYMBOL(miDestroyGC),
-    SYMBOL(miExpandDirectColors),
-    SYMBOL(miFillArcSetup),
-    SYMBOL(miFillArcSliceSetup),
-    SYMBOL(miFillPolygon),
-    SYMBOL(miGetDefaultVisualMask),
-    SYMBOL(miHandleExposures),
-    SYMBOL(miImageGlyphBlt),
-    SYMBOL(miImageText16),
-    SYMBOL(miImageText8),
-    SYMBOL(miInitOverlay),
-    SYMBOL(miInitVisuals),
-    SYMBOL(miInitializeBackingStore),
-    SYMBOL(miInitializeBanking),
-    SYMBOL(miInitializeColormap),
-    SYMBOL(miInstallColormap),
-    SYMBOL(miIntersect),
-    SYMBOL(miInverse),
-    SYMBOL(miListInstalledColormaps),
-    SYMBOL(miModifyPixmapHeader),
-    SYMBOL(miOverlayCollectUnderlayRegions),
-    SYMBOL(miOverlayComputeCompositeClip),
-    SYMBOL(miOverlayCopyUnderlay),
-    SYMBOL(miOverlayGetPrivateClips),
-    SYMBOL(miOverlaySetRootClip),
-    SYMBOL(miOverlaySetTransFunction),
-    SYMBOL(miPointInRegion),
-    SYMBOL(miPointerAbsoluteCursor),
-    SYMBOL(miPointerCurrentScreen),
-    SYMBOL(miPointerInitialize),
-    SYMBOL(miPointerWarpCursor),
-    SYMBOL(miPolyArc),
-    SYMBOL(miPolyBuildEdge),
-    SYMBOL(miPolyBuildPoly),
-    SYMBOL(miPolyFillArc),
-    SYMBOL(miPolyFillRect),
-    SYMBOL(miPolyGlyphBlt),
-    SYMBOL(miPolyPoint),
-    SYMBOL(miPolyRectangle),
-    SYMBOL(miPolySegment),
-    SYMBOL(miPolyText16),
-    SYMBOL(miPolyText8),
-    SYMBOL(miRectAlloc),
-    SYMBOL(miRectIn),
-    SYMBOL(miRectsToRegion),
-    SYMBOL(miRegionAppend),
-    SYMBOL(miRegionCopy),
-    SYMBOL(miRegionCreate),
-    SYMBOL(miRegionDestroy),
-    SYMBOL(miRegionEmpty),
-    SYMBOL(miRegionEqual),
-    SYMBOL(miRegionExtents),
-    SYMBOL(miRegionInit),
-    SYMBOL(miRegionNotEmpty),
-    SYMBOL(miRegionReset),
-    SYMBOL(miRegionUninit),
-    SYMBOL(miRegionValidate),
-    SYMBOL(miResolveColor),
-    SYMBOL(miRoundCapClip),
-    SYMBOL(miRoundJoinClip),
-    SYMBOL(miScreenInit),
-    SYMBOL(miSegregateChildren),
-    SYMBOL(miSetPixmapDepths),
-    SYMBOL(miSetVisualTypes),
-    SYMBOL(miSetVisualTypesAndMasks),
-    SYMBOL(miSetZeroLineBias),
-    SYMBOL(miSubtract),
-    SYMBOL(miTranslateRegion),
-    SYMBOL(miUninstallColormap),
-    SYMBOL(miUnion),
-    SYMBOL(miWideDash),
-    SYMBOL(miWideLine),
-    SYMBOL(miWindowExposures),
-    SYMBOL(miZeroArcSetup),
-    SYMBOL(miZeroClipLine),
-    SYMBOL(miZeroLine),
-    SYMBOL(miZeroPolyArc),
-    SYMBOL(miEmptyBox),
-    SYMBOL(miEmptyData),
-    SYMBOL(miInstalledMaps),
-    SYMBOL(miPointerScreenKey),
-    SYMBOL(miZeroLineScreenKey),
-#ifdef DAMAGE
-    SYMBOL(DamageDamageRegion),
-#endif
-    SYMBOL(xf86ReadBIOS),
-    SYMBOL(xf86EnableIO),
-    SYMBOL(xf86DisableIO),
-    SYMBOL(xf86LinearVidMem),
-    SYMBOL(xf86CheckMTRR),
-    SYMBOL(xf86MapVidMem),
-    SYMBOL(xf86UnMapVidMem),
-    SYMBOL(xf86MapReadSideEffects),
-    SYMBOL(xf86MapDomainMemory),
-    SYMBOL(xf86UDelay),
-    SYMBOL(xf86SlowBcopy),
-    SYMBOL(xf86SetReallySlowBcopy),
-#ifdef __alpha__
-    SYMBOL(xf86SlowBCopyToBus),
-    SYMBOL(xf86SlowBCopyFromBus),
-#endif
-    SYMBOL(xf86BusToMem),
-    SYMBOL(xf86MemToBus),
-    SYMBOL(xf86OpenSerial),
-    SYMBOL(xf86SetSerial),
-    SYMBOL(xf86SetSerialSpeed),
-    SYMBOL(xf86ReadSerial),
-    SYMBOL(xf86WriteSerial),
-    SYMBOL(xf86CloseSerial),
-    SYMBOL(xf86WaitForInput),
-    SYMBOL(xf86SerialSendBreak),
-    SYMBOL(xf86FlushInput),
-    SYMBOL(xf86SetSerialModemState),
-    SYMBOL(xf86GetSerialModemState),
-    SYMBOL(xf86SerialModemSetBits),
-    SYMBOL(xf86SerialModemClearBits),
-    SYMBOL(xf86LoadKernelModule),
-    SYMBOL(xf86AgpGARTSupported),
-    SYMBOL(xf86GetAGPInfo),
-    SYMBOL(xf86AcquireGART),
-    SYMBOL(xf86ReleaseGART),
-    SYMBOL(xf86AllocateGARTMemory),
-    SYMBOL(xf86DeallocateGARTMemory),
-    SYMBOL(xf86BindGARTMemory),
-    SYMBOL(xf86UnbindGARTMemory),
-    SYMBOL(xf86EnableAGP),
-    SYMBOL(xf86GARTCloseScreen),
-    SYMBOL(XisbNew),
-    SYMBOL(XisbFree),
-    SYMBOL(XisbRead),
-    SYMBOL(XisbWrite),
-    SYMBOL(XisbTrace),
-    SYMBOL(XisbBlockDuration),
-    SYMBOL(xf86CheckPciSlot),
-    SYMBOL(xf86ClaimPciSlot),
-    SYMBOL(xf86ClaimFbSlot),
-    SYMBOL(xf86ClaimNoSlot),
-    SYMBOL(xf86ParsePciBusString),
-    SYMBOL(xf86ComparePciBusString),
-    SYMBOL(xf86FormatPciBusNumber),
-    SYMBOL(xf86EnableAccess),
-    SYMBOL(xf86SetCurrentAccess),
-    SYMBOL(xf86IsPrimaryPci),
-    SYMBOL(xf86FreeResList),
-    SYMBOL(xf86ClaimFixedResources),
-    SYMBOL(xf86AddEntityToScreen),
-    SYMBOL(xf86SetEntityInstanceForScreen),
-    SYMBOL(xf86RemoveEntityFromScreen),
-    SYMBOL(xf86GetEntityInfo),
-    SYMBOL(xf86GetNumEntityInstances),
-    SYMBOL(xf86GetDevFromEntity),
-    SYMBOL(xf86GetPciInfoForEntity),
-    SYMBOL(xf86RegisterResources),
-    SYMBOL(xf86CheckPciMemBase),
-    SYMBOL(xf86SetAccessFuncs),
-    SYMBOL(xf86IsEntityPrimary),
-    SYMBOL(xf86SetOperatingState),
-    SYMBOL(xf86FindScreenForEntity),
-    SYMBOL(xf86RegisterStateChangeNotificationCallback),
-    SYMBOL(xf86DeregisterStateChangeNotificationCallback),
-    SYMBOL(xf86GetLastScrnFlag),
-    SYMBOL(xf86SetLastScrnFlag),
-    SYMBOL(xf86IsEntityShared),
-    SYMBOL(xf86SetEntityShared),
-    SYMBOL(xf86IsEntitySharable),
-    SYMBOL(xf86SetEntitySharable),
-    SYMBOL(xf86IsPrimInitDone),
-    SYMBOL(xf86SetPrimInitDone),
-    SYMBOL(xf86ClearPrimInitDone),
-    SYMBOL(xf86AllocateEntityPrivateIndex),
-    SYMBOL(xf86GetEntityPrivate),
-    SYMBOL(xf86GetPointerScreenFuncs),
-    SYMBOL(DGAInit),
-    SYMBOL(DGAReInitModes),
-    SYMBOL(DGAAvailable),
-    SYMBOL(DGAActive),
-    SYMBOL(DGASetMode),
-    SYMBOL(DGASetInputMode),
-    SYMBOL(DGASelectInput),
-    SYMBOL(DGAGetViewportStatus),
-    SYMBOL(DGASetViewport),
-    SYMBOL(DGAInstallCmap),
-    SYMBOL(DGASync),
-    SYMBOL(DGAFillRect),
-    SYMBOL(DGABlitRect),
-    SYMBOL(DGABlitTransRect),
-    SYMBOL(DGAGetModes),
-    SYMBOL(DGAGetOldDGAMode),
-    SYMBOL(DGAGetModeInfo),
-    SYMBOL(DGAChangePixmapMode),
-    SYMBOL(DGACreateColormap),
-    SYMBOL(DGAOpenFramebuffer),
-    SYMBOL(DGACloseFramebuffer),
-    SYMBOL(xf86DPMSInit),
-    SYMBOL(SetTimeSinceLastInputEvent),
-    SYMBOL(xf86AddInputHandler),
-    SYMBOL(xf86RemoveInputHandler),
-    SYMBOL(xf86DisableInputHandler),
-    SYMBOL(xf86EnableInputHandler),
-    SYMBOL(xf86AddEnabledDevice),
-    SYMBOL(xf86RemoveEnabledDevice),
-    SYMBOL(xf86InterceptSignals),
-    SYMBOL(xf86InterceptSigIll),
-    SYMBOL(xf86EnableVTSwitch),
-    SYMBOL(xf86AddDriver),
-    SYMBOL(xf86AddInputDriver),
-    SYMBOL(xf86DeleteDriver),
-    SYMBOL(xf86DeleteInput),
-    SYMBOL(xf86AllocateInput),
-    SYMBOL(xf86AllocateScreen),
-    SYMBOL(xf86DeleteScreen),
-    SYMBOL(xf86AllocateScrnInfoPrivateIndex),
-    SYMBOL(xf86AddPixFormat),
-    SYMBOL(xf86SetDepthBpp),
-    SYMBOL(xf86PrintDepthBpp),
-    SYMBOL(xf86SetWeight),
-    SYMBOL(xf86SetDefaultVisual),
-    SYMBOL(xf86SetGamma),
-    SYMBOL(xf86SetDpi),
-    SYMBOL(xf86SetBlackWhitePixels),
-    SYMBOL(xf86EnableDisableFBAccess),
-    SYMBOL(xf86VDrvMsgVerb),
-    SYMBOL(xf86DrvMsgVerb),
-    SYMBOL(xf86DrvMsg),
-    SYMBOL(xf86MsgVerb),
-    SYMBOL(xf86Msg),
-    SYMBOL(xf86ErrorFVerb),
-    SYMBOL(xf86ErrorF),
-    SYMBOL(xf86TokenToString),
-    SYMBOL(xf86StringToToken),
-    SYMBOL(xf86ShowClocks),
-    SYMBOL(xf86PrintChipsets),
-    SYMBOL(xf86MatchDevice),
-    SYMBOL(xf86MatchPciInstances),
-    SYMBOL(xf86GetVerbosity),
-    SYMBOL(xf86GetVisualName),
-    SYMBOL(xf86GetPix24),
-    SYMBOL(xf86GetDepth),
-    SYMBOL(xf86GetWeight),
-    SYMBOL(xf86GetGamma),
-    SYMBOL(xf86GetFlipPixels),
-    SYMBOL(xf86GetServerName),
-    SYMBOL(xf86ServerIsExiting),
-    SYMBOL(xf86ServerIsOnlyDetecting),
-    SYMBOL(xf86ServerIsOnlyProbing),
-    SYMBOL(xf86ServerIsResetting),
-    SYMBOL(xf86CaughtSignal),
-    SYMBOL(xf86GetVidModeAllowNonLocal),
-    SYMBOL(xf86GetVidModeEnabled),
-    SYMBOL(xf86GetModInDevAllowNonLocal),
-    SYMBOL(xf86GetModInDevEnabled),
-    SYMBOL(xf86GetAllowMouseOpenFail),
-    SYMBOL(xf86IsPc98),
-    SYMBOL(xf86DisableRandR),
-    SYMBOL(xf86GetRotation),
-    SYMBOL(xf86GetModuleVersion),
-    SYMBOL(xf86GetClocks),
-    SYMBOL(xf86SetPriority),
-    SYMBOL(xf86LoadDrvSubModule),
-    SYMBOL(xf86LoadSubModule),
-    SYMBOL(xf86LoadOneModule),
-    SYMBOL(xf86UnloadSubModule),
-    SYMBOL(xf86LoaderCheckSymbol),
-    SYMBOL(xf86LoaderRefSymLists),
-    SYMBOL(xf86LoaderRefSymbols),
-    SYMBOL(xf86LoaderReqSymLists),
-    SYMBOL(xf86LoaderReqSymbols),
-    SYMBOL(xf86SetBackingStore),
-    SYMBOL(xf86SetSilkenMouse),
-    SYMBOL(xf86FindXvOptions),
-    SYMBOL(xf86GetOS),
-    SYMBOL(xf86ConfigPciEntity),
-    SYMBOL(xf86ConfigFbEntity),
-    SYMBOL(xf86ConfigActivePciEntity),
-    SYMBOL(xf86ConfigPciEntityInactive),
-    SYMBOL(xf86IsScreenPrimary),
-    SYMBOL(xf86RegisterRootWindowProperty),
-    SYMBOL(xf86IsUnblank),
-#if (defined(__sparc__) || defined(__sparc)) && !defined(__OpenBSD__)
-    SYMBOL(xf86MatchSbusInstances),
-    SYMBOL(xf86GetSbusInfoForEntity),
-    SYMBOL(xf86GetEntityForSbusInfo),
-    SYMBOL(xf86SbusUseBuiltinMode),
-    SYMBOL(xf86MapSbusMem),
-    SYMBOL(xf86UnmapSbusMem),
-    SYMBOL(xf86SbusHideOsHwCursor),
-    SYMBOL(xf86SbusSetOsHwCursorCmap),
-    SYMBOL(xf86SbusHandleColormaps),
-    SYMBOL(sparcPromInit),
-    SYMBOL(sparcPromClose),
-    SYMBOL(sparcPromGetProperty),
-    SYMBOL(sparcPromGetBool),
-#endif
-    SYMBOL(xf86GetPixFormat),
-    SYMBOL(xf86GetBppFromDepth),
-    SYMBOL(xf86GetNearestClock),
-    SYMBOL(xf86ModeStatusToString),
-    SYMBOL(xf86LookupMode),
-    SYMBOL(xf86CheckModeForMonitor),
-    SYMBOL(xf86InitialCheckModeForDriver),
-    SYMBOL(xf86CheckModeForDriver),
-    SYMBOL(xf86ValidateModes),
-    SYMBOL(xf86DeleteMode),
-    SYMBOL(xf86PruneDriverModes),
-    SYMBOL(xf86SetCrtcForModes),
-    SYMBOL(xf86PrintModes),
-    SYMBOL(xf86ShowClockRanges),
-    SYMBOL(xf86CollectOptions),
-    SYMBOL(xf86CollectInputOptions),
-    SYMBOL(xf86AddNewOption),
-    SYMBOL(xf86NewOption),
-    SYMBOL(xf86NextOption),
-    SYMBOL(xf86OptionListCreate),
-    SYMBOL(xf86OptionListMerge),
-    SYMBOL(xf86OptionListFree),
-    SYMBOL(xf86OptionName),
-    SYMBOL(xf86OptionValue),
-    SYMBOL(xf86OptionListReport),
-    SYMBOL(xf86SetIntOption),
-    SYMBOL(xf86SetRealOption),
-    SYMBOL(xf86SetStrOption),
-    SYMBOL(xf86SetBoolOption),
-    SYMBOL(xf86CheckIntOption),
-    SYMBOL(xf86CheckRealOption),
-    SYMBOL(xf86CheckStrOption),
-    SYMBOL(xf86CheckBoolOption),
-    SYMBOL(xf86ReplaceIntOption),
-    SYMBOL(xf86ReplaceRealOption),
-    SYMBOL(xf86ReplaceStrOption),
-    SYMBOL(xf86ReplaceBoolOption),
-    SYMBOL(xf86FindOption),
-    SYMBOL(xf86FindOptionValue),
-    SYMBOL(xf86MarkOptionUsed),
-    SYMBOL(xf86MarkOptionUsedByName),
-    SYMBOL(xf86CheckIfOptionUsed),
-    SYMBOL(xf86CheckIfOptionUsedByName),
-    SYMBOL(xf86ShowUnusedOptions),
-    SYMBOL(xf86ProcessOptions),
-    SYMBOL(xf86TokenToOptinfo),
-    SYMBOL(xf86TokenToOptName),
-    SYMBOL(xf86IsOptionSet),
-    SYMBOL(xf86GetOptValString),
-    SYMBOL(xf86GetOptValInteger),
-    SYMBOL(xf86GetOptValULong),
-    SYMBOL(xf86GetOptValReal),
-    SYMBOL(xf86GetOptValFreq),
-    SYMBOL(xf86GetOptValBool),
-    SYMBOL(xf86ReturnOptValBool),
-    SYMBOL(xf86NameCmp),
-    SYMBOL(xf86InitValuatorAxisStruct),
-    SYMBOL(xf86InitValuatorDefaults),
-    SYMBOL(xf86InitFBManager),
-    SYMBOL(xf86InitFBManagerArea),
-    SYMBOL(xf86InitFBManagerRegion),
-    SYMBOL(xf86InitFBManagerLinear),
-    SYMBOL(xf86RegisterFreeBoxCallback),
-    SYMBOL(xf86FreeOffscreenArea),
-    SYMBOL(xf86AllocateOffscreenArea),
-    SYMBOL(xf86AllocateLinearOffscreenArea),
-    SYMBOL(xf86ResizeOffscreenArea),
-    SYMBOL(xf86FBManagerRunning),
-    SYMBOL(xf86QueryLargestOffscreenArea),
-    SYMBOL(xf86PurgeUnlockedOffscreenAreas),
-    SYMBOL(xf86RegisterOffscreenManager),
-    SYMBOL(xf86AllocateOffscreenLinear),
-    SYMBOL(xf86ResizeOffscreenLinear),
-    SYMBOL(xf86QueryLargestOffscreenLinear),
-    SYMBOL(xf86FreeOffscreenLinear),
-    SYMBOL(xf86HandleColormaps),
-    SYMBOL(xf86GetGammaRampSize),
-    SYMBOL(xf86GetGammaRamp),
-    SYMBOL(xf86ChangeGammaRamp),
-#ifdef RANDR
-    SYMBOL(xf86RandRSetNewVirtualAndDimensions),
-#endif
-#ifdef XV
-    SYMBOL(xf86XVScreenInit),
-    SYMBOL(xf86XVRegisterGenericAdaptorDriver),
-    SYMBOL(xf86XVListGenericAdaptors),
-    SYMBOL(xf86XVRegisterOffscreenImages),
-    SYMBOL(xf86XVQueryOffscreenImages),
-    SYMBOL(xf86XVAllocateVideoAdaptorRec),
-    SYMBOL(xf86XVFreeVideoAdaptorRec),
-    SYMBOL(xf86XVFillKeyHelper),
-    SYMBOL(xf86XVFillKeyHelperDrawable),
-    SYMBOL(xf86XVClipVideoHelper),
-    SYMBOL(xf86XVCopyYUV12ToPacked),
-    SYMBOL(xf86XVCopyPacked),
-    SYMBOL(xf86XvMCScreenInit),
-    SYMBOL(xf86XvMCCreateAdaptorRec),
-    SYMBOL(xf86XvMCDestroyAdaptorRec),
-#endif
-    SYMBOL(VidModeExtensionInit),
-#ifdef XF86VIDMODE
-    SYMBOL(VidModeGetCurrentModeline),
-    SYMBOL(VidModeGetFirstModeline),
-    SYMBOL(VidModeGetNextModeline),
-    SYMBOL(VidModeDeleteModeline),
-    SYMBOL(VidModeZoomViewport),
-    SYMBOL(VidModeGetViewPort),
-    SYMBOL(VidModeSetViewPort),
-    SYMBOL(VidModeSwitchMode),
-    SYMBOL(VidModeLockZoom),
-    SYMBOL(VidModeGetMonitor),
-    SYMBOL(VidModeGetNumOfClocks),
-    SYMBOL(VidModeGetClocks),
-    SYMBOL(VidModeCheckModeForMonitor),
-    SYMBOL(VidModeCheckModeForDriver),
-    SYMBOL(VidModeSetCrtcForMode),
-    SYMBOL(VidModeAddModeline),
-    SYMBOL(VidModeGetDotClock),
-    SYMBOL(VidModeGetNumOfModes),
-    SYMBOL(VidModeSetGamma),
-    SYMBOL(VidModeGetGamma),
-    SYMBOL(VidModeCreateMode),
-    SYMBOL(VidModeCopyMode),
-    SYMBOL(VidModeGetModeValue),
-    SYMBOL(VidModeSetModeValue),
-    SYMBOL(VidModeGetMonitorValue),
-    SYMBOL(VidModeSetGammaRamp),
-    SYMBOL(VidModeGetGammaRamp),
-    SYMBOL(VidModeGetGammaRampSize),
-#endif
-    SYMBOL(GetTimeInMillis),
-    SYMBOL(xf86ProcessCommonOptions),
-    SYMBOL(xf86PostMotionEvent),
-    SYMBOL(xf86PostProximityEvent),
-    SYMBOL(xf86PostButtonEvent),
-    SYMBOL(xf86PostKeyEvent),
-    SYMBOL(xf86PostKeyboardEvent),
-    SYMBOL(xf86FirstLocalDevice),
-    SYMBOL(xf86ActivateDevice),
-    SYMBOL(xf86XInputSetScreen),
-    SYMBOL(xf86ScaleAxis),
-    SYMBOL(NewInputDeviceRequest),
-    SYMBOL(DeleteInputDeviceRequest),
-#ifdef DPMSExtension
-    SYMBOL(DPMSGet),
-    SYMBOL(DPMSSet),
-    SYMBOL(DPMSSupported),
-#endif
-    SYMBOL(pciTag),
-    SYMBOL(pciBusAddrToHostAddr),
-    SYMBOL(xf86scanpci),
-    SYMBOL(LoadSubModule),
-    SYMBOL(DuplicateModule),
-    SYMBOL(LoaderErrorMsg),
-    SYMBOL(LoaderCheckUnresolved),
-    SYMBOL(LoadExtension),
-    SYMBOL(LoaderReqSymbols),
-    SYMBOL(LoaderReqSymLists),
-    SYMBOL(LoaderRefSymbols),
-    SYMBOL(LoaderRefSymLists),
-    SYMBOL(UnloadSubModule),
-    SYMBOL(LoaderSymbol),
-    SYMBOL(LoaderListDirs),
-    SYMBOL(LoaderFreeDirList),
-    SYMBOL(LoaderGetOS),
-    SYMBOL(LoaderShouldIgnoreABI),
-    SYMBOL(LoaderGetABIVersion),
-#ifdef XF86DRI
-    SYMBOL(xf86InstallSIGIOHandler),
-    SYMBOL(xf86RemoveSIGIOHandler),
-# if defined(__alpha__) && defined(linux)
-    SYMBOL(_bus_base),
-# endif
-#endif
-    SYMBOL(xf86BlockSIGIO),
-    SYMBOL(xf86UnblockSIGIO),
-#if defined(__alpha__)
-    SYMBOL(__divl),
-    SYMBOL(__reml),
-    SYMBOL(__divlu),
-    SYMBOL(__remlu),
-    SYMBOL(__divq),
-    SYMBOL(__divqu),
-    SYMBOL(__remq),
-    SYMBOL(__remqu),
-# ifdef linux
-    SYMBOL(_outw),
-    SYMBOL(_outb),
-    SYMBOL(_outl),
-    SYMBOL(_inb),
-    SYMBOL(_inw),
-    SYMBOL(_inl),
-    SYMBOL(_alpha_outw),
-    SYMBOL(_alpha_outb),
-    SYMBOL(_alpha_outl),
-    SYMBOL(_alpha_inb),
-    SYMBOL(_alpha_inw),
-    SYMBOL(_alpha_inl),
-# else
-    SYMBOL(outw),
-    SYMBOL(outb),
-    SYMBOL(outl),
-    SYMBOL(inb),
-    SYMBOL(inw),
-    SYMBOL(inl),
-# endif
-    SYMBOL(xf86ReadMmio32),
-    SYMBOL(xf86ReadMmio16),
-    SYMBOL(xf86ReadMmio8),
-    SYMBOL(xf86WriteMmio32),
-    SYMBOL(xf86WriteMmio16),
-    SYMBOL(xf86WriteMmio8),
-    SYMBOL(xf86WriteMmioNB32),
-    SYMBOL(xf86WriteMmioNB16),
-    SYMBOL(xf86WriteMmioNB8),
-#endif
-#if defined(sun) && defined(SVR4)
-    SYMBOL(inb),
-    SYMBOL(inw),
-    SYMBOL(inl),
-    SYMBOL(outb),
-    SYMBOL(outw),
-    SYMBOL(outl),
-#endif
-#if defined(__powerpc__) && !defined(__OpenBSD__)
-    SYMBOL(inb),
-    SYMBOL(inw),
-    SYMBOL(inl),
-    SYMBOL(outb),
-    SYMBOL(outw),
-    SYMBOL(outl),
-# if defined(NO_INLINE)
-    SYMBOL(mem_barrier),
-    SYMBOL(ldl_u),
-    SYMBOL(eieio),
-    SYMBOL(ldl_brx),
-    SYMBOL(ldw_brx),
-    SYMBOL(stl_brx),
-    SYMBOL(stw_brx),
-    SYMBOL(ldq_u),
-    SYMBOL(ldw_u),
-    SYMBOL(stl_u),
-    SYMBOL(stq_u),
-    SYMBOL(stw_u),
-    SYMBOL(write_mem_barrier),
-# endif
-#endif
-#if defined(__ia64__) || defined(__arm__)
-    SYMBOL(outw),
-    SYMBOL(outb),
-    SYMBOL(outl),
-    SYMBOL(inb),
-    SYMBOL(inw),
-    SYMBOL(inl),
-#endif
-    SYMBOL(xf86ScreenKey),
-    SYMBOL(xf86PixmapKey),
-    SYMBOL(xf86Screens),
-    SYMBOL(byte_reversed),
-    SYMBOL(xf86inSuspend),
-    SYMBOL(resVgaExclusive),
-    SYMBOL(resVgaShared),
-    SYMBOL(resVgaMemShared),
-    SYMBOL(resVgaIoShared),
-    SYMBOL(resVgaUnusedExclusive),
-    SYMBOL(resVgaUnusedShared),
-    SYMBOL(resVgaSparseExclusive),
-    SYMBOL(resVgaSparseShared),
-    SYMBOL(res8514Exclusive),
-    SYMBOL(res8514Shared),
-#if defined(__powerpc__) && !defined(NO_INLINE)
-    SYMBOL(ioBase),
-#endif
-    SYMBOL(xf86ConfigDRI),
-    SYMBOL(ConfiguredMonitor),
-    SYMBOL(xf86CrtcConfigPrivateIndex),
-    SYMBOL(xf86CrtcConfigInit),
-    SYMBOL(xf86CrtcConfigPrivateIndex),
-    SYMBOL(xf86CrtcCreate),
-    SYMBOL(xf86CrtcDestroy),
-    SYMBOL(xf86CrtcInUse),
-    SYMBOL(xf86CrtcSetScreenSubpixelOrder),
-    SYMBOL(xf86RotateFreeShadow),
-    SYMBOL(xf86RotateCloseScreen),
-    SYMBOL(xf86CrtcRotate),
-    SYMBOL(xf86CrtcSetMode),
-    SYMBOL(xf86CrtcSetSizeRange),
-    SYMBOL(xf86CrtcScreenInit),
-    SYMBOL(xf86CVTMode),
-    SYMBOL(xf86GTFMode),
-    SYMBOL(xf86DisableUnusedFunctions),
-    SYMBOL(xf86DPMSSet),
-    SYMBOL(xf86DuplicateMode),
-    SYMBOL(xf86DuplicateModes),
-    SYMBOL(xf86GetDefaultModes),
-    SYMBOL(xf86GetMonitorModes),
-    SYMBOL(xf86InitialConfiguration),
-    SYMBOL(xf86ModeHSync),
-    SYMBOL(xf86ModesAdd),
-    SYMBOL(xf86ModesEqual),
-    SYMBOL(xf86ModeVRefresh),
-    SYMBOL(xf86ModeWidth),
-    SYMBOL(xf86ModeHeight),
-    SYMBOL(xf86OutputCreate),
-    SYMBOL(xf86OutputDestroy),
-    SYMBOL(xf86OutputGetEDID),
-    SYMBOL(xf86ConnectorGetName),
-    SYMBOL(xf86OutputGetEDIDModes),
-    SYMBOL(xf86OutputRename),
-    SYMBOL(xf86OutputUseScreenMonitor),
-    SYMBOL(xf86OutputSetEDID),
-    SYMBOL(xf86OutputFindClosestMode),
-    SYMBOL(xf86PrintModeline),
-    SYMBOL(xf86ProbeOutputModes),
-    SYMBOL(xf86PruneInvalidModes),
-    SYMBOL(xf86SetModeCrtc),
-    SYMBOL(xf86SetModeDefaultName),
-    SYMBOL(xf86SetScrnInfoModes),
-    SYMBOL(xf86SetDesiredModes),
-    SYMBOL(xf86SetSingleMode),
-    SYMBOL(xf86ValidateModesClocks),
-    SYMBOL(xf86ValidateModesFlags),
-    SYMBOL(xf86ValidateModesSize),
-    SYMBOL(xf86ValidateModesSync),
-    SYMBOL(xf86ValidateModesUserConfig),
-    SYMBOL(xf86DiDGAInit),
-    SYMBOL(xf86DiDGAReInit),
-    SYMBOL(xf86DDCGetModes),
-    SYMBOL(xf86SaveScreen),
-#ifdef RANDR
-    SYMBOL(xf86RandR12CreateScreenResources),
-    SYMBOL(xf86RandR12GetOriginalVirtualSize),
-    SYMBOL(xf86RandR12GetRotation),
-    SYMBOL(xf86RandR12Init),
-    SYMBOL(xf86RandR12PreInit),
-    SYMBOL(xf86RandR12SetConfig),
-    SYMBOL(xf86RandR12SetRotations),
-    SYMBOL(xf86RandR12TellChanged),
-#endif
-    SYMBOL(xf86_cursors_init),
-    SYMBOL(xf86_reload_cursors),
-    SYMBOL(xf86_show_cursors),
-    SYMBOL(xf86_hide_cursors),
-    SYMBOL(xf86_cursors_fini),
-    SYMBOL(xf86_crtc_clip_video_helper),
-    SYMBOL(xf86DoEDID_DDC1),
-    SYMBOL(xf86DoEDID_DDC2),
-    SYMBOL(xf86InterpretEDID),
-    SYMBOL(xf86PrintEDID),
-    SYMBOL(xf86DoEEDID),
-    SYMBOL(xf86DDCMonitorSet),
-    SYMBOL(xf86SetDDCproperties),
-    SYMBOL(xf86MonitorIsHDMI),
-    SYMBOL(xf86CreateI2CBusRec),
-    SYMBOL(xf86CreateI2CDevRec),
-    SYMBOL(xf86DestroyI2CBusRec),
-    SYMBOL(xf86DestroyI2CDevRec),
-    SYMBOL(xf86I2CBusInit),
-    SYMBOL(xf86I2CDevInit),
-    SYMBOL(xf86I2CFindBus),
-    SYMBOL(xf86I2CFindDev),
-    SYMBOL(xf86I2CGetScreenBuses),
-    SYMBOL(xf86I2CProbeAddress),
-    SYMBOL(xf86I2CReadByte),
-    SYMBOL(xf86I2CReadBytes),
-    SYMBOL(xf86I2CReadStatus),
-    SYMBOL(xf86I2CReadWord),
-    SYMBOL(xf86I2CWriteByte),
-    SYMBOL(xf86I2CWriteBytes),
-    SYMBOL(xf86I2CWriteRead),
-    SYMBOL(xf86I2CWriteVec),
-    SYMBOL(xf86I2CWriteWord),
-    SYMBOL(RamDacCreateInfoRec),
-    SYMBOL(RamDacHelperCreateInfoRec),
-    SYMBOL(RamDacDestroyInfoRec),
-    SYMBOL(RamDacHelperDestroyInfoRec),
-    SYMBOL(RamDacInit),
-    SYMBOL(RamDacHandleColormaps),
-    SYMBOL(RamDacFreeRec),
-    SYMBOL(RamDacGetHWIndex),
-    SYMBOL(RamDacHWPrivateIndex),
-    SYMBOL(RamDacScreenPrivateIndex),
-    SYMBOL(xf86InitCursor),
-    SYMBOL(xf86CreateCursorInfoRec),
-    SYMBOL(xf86DestroyCursorInfoRec),
-    SYMBOL(xf86ForceHWCursor),
-    SYMBOL(BTramdacProbe),
-    SYMBOL(BTramdacSave),
-    SYMBOL(BTramdacRestore),
-    SYMBOL(BTramdacSetBpp),
-    SYMBOL(IBMramdacProbe),
-    SYMBOL(IBMramdacSave),
-    SYMBOL(IBMramdacRestore),
-    SYMBOL(IBMramdac526SetBpp),
-    SYMBOL(IBMramdac640SetBpp),
-    SYMBOL(IBMramdac526CalculateMNPCForClock),
-    SYMBOL(IBMramdac640CalculateMNPCForClock),
-    SYMBOL(IBMramdac526HWCursorInit),
-    SYMBOL(IBMramdac640HWCursorInit),
-    SYMBOL(IBMramdac526SetBppWeak),
-    SYMBOL(TIramdacCalculateMNPForClock),
-    SYMBOL(TIramdacProbe),
-    SYMBOL(TIramdacSave),
-    SYMBOL(TIramdacRestore),
-    SYMBOL(TIramdac3026SetBpp),
-    SYMBOL(TIramdac3030SetBpp),
-    SYMBOL(TIramdacHWCursorInit),
-    SYMBOL(TIramdacLoadPalette),
-};
diff --git a/hw/xfree86/modes/Makefile.am b/hw/xfree86/modes/Makefile.am
index 331e406..5cd926f 100644
--- a/hw/xfree86/modes/Makefile.am
+++ b/hw/xfree86/modes/Makefile.am
@@ -1,6 +1,6 @@
-noinst_LIBRARIES = libxf86modes.a
+noinst_LTLIBRARIES = libxf86modes.la
 
-libxf86modes_a_SOURCES = \
+libxf86modes_la_SOURCES = \
 	xf86Crtc.c \
 	xf86Crtc.h \
 	xf86Cursors.c \
diff --git a/hw/xfree86/modes/xf86Crtc.h b/hw/xfree86/modes/xf86Crtc.h
index 1236742..21038aa 100644
--- a/hw/xfree86/modes/xf86Crtc.h
+++ b/hw/xfree86/modes/xf86Crtc.h
@@ -744,12 +744,13 @@ xf86ProbeOutputModes (ScrnInfoPtr pScrn, int maxX, int maxY);
 extern _X_EXPORT void
 xf86SetScrnInfoModes (ScrnInfoPtr pScrn);
 
-extern _X_EXPORT
 #ifdef RANDR_13_INTERFACE
-int
+# define ScreenInitRetType	int
 #else
-Bool
+# define ScreenInitRetType	Bool
 #endif
+
+extern _X_EXPORT ScreenInitRetType
 xf86CrtcScreenInit (ScreenPtr pScreen);
 
 extern _X_EXPORT Bool
diff --git a/hw/xfree86/os-support/xf86_OSproc.h b/hw/xfree86/os-support/xf86_OSproc.h
index 01f2715..cd2394e 100644
--- a/hw/xfree86/os-support/xf86_OSproc.h
+++ b/hw/xfree86/os-support/xf86_OSproc.h
@@ -142,8 +142,10 @@ extern _X_EXPORT void xf86MapReadSideEffects(int, int, pointer, unsigned long);
 extern _X_EXPORT int xf86ReadBIOS(unsigned long, unsigned long, unsigned char *, int);
 extern _X_EXPORT Bool xf86EnableIO(void);
 extern _X_EXPORT void xf86DisableIO(void);
+#ifdef __NetBSD__
 extern _X_EXPORT void xf86SetTVOut(int);
 extern _X_EXPORT void xf86SetRGBOut(void);
+#endif
 extern _X_EXPORT void xf86OSRingBell(int, int, int);
 extern _X_EXPORT void xf86BusToMem(unsigned char *, unsigned char *, int);
 extern _X_EXPORT void xf86MemToBus(unsigned char *, unsigned char *, int);
diff --git a/hw/xfree86/parser/Makefile.am b/hw/xfree86/parser/Makefile.am
index 7f599f9..c062209 100644
--- a/hw/xfree86/parser/Makefile.am
+++ b/hw/xfree86/parser/Makefile.am
@@ -1,13 +1,13 @@
 if INSTALL_LIBXF86CONFIG
-lib_LIBRARIES = libxf86config.a
+lib_LTLIBRARIES = libxf86config.la
 LIBHEADERS = \
 	xf86Optrec.h \
 	xf86Parser.h
 else
-noinst_LIBRARIES = libxf86config.a
+noinst_LTLIBRARIES = libxf86config.la
 endif
 
-libxf86config_a_SOURCES = \
+libxf86config_la_SOURCES = \
 	Device.c \
 	Files.c \
 	Flags.c \
@@ -35,6 +35,5 @@ EXTRA_DIST = \
 	xf86tokens.h
 
 sdk_HEADERS = \
-	$(LIBHEADERS) \
 	xf86Parser.h \
 	xf86Optrec.h
diff --git a/hw/xfree86/ramdac/Makefile.am b/hw/xfree86/ramdac/Makefile.am
index 2b84cb4..98e367c 100644
--- a/hw/xfree86/ramdac/Makefile.am
+++ b/hw/xfree86/ramdac/Makefile.am
@@ -1,6 +1,6 @@
-noinst_LIBRARIES = libramdac.a
+noinst_LTLIBRARIES = libramdac.la
 
-libramdac_a_SOURCES = xf86RamDac.c xf86RamDacCmap.c \
+libramdac_la_SOURCES = xf86RamDac.c xf86RamDacCmap.c \
                       xf86Cursor.c xf86HWCurs.c IBM.c BT.c TI.c \
 		      xf86BitOrder.c
 
diff --git a/include/os.h b/include/os.h
index b1f6922..417263a 100644
--- a/include/os.h
+++ b/include/os.h
@@ -93,7 +93,9 @@ typedef struct _NewClientRec *NewClientPtr;
 #define SIGVAL void
 #endif
 
+#ifdef DDXOSVERRORF
 extern _X_EXPORT void (*OsVendorVErrorFProc)(const char *, va_list args);
+#endif
 
 extern _X_EXPORT int WaitForSomething(
     int* /*pClientsReady*/
@@ -388,6 +390,7 @@ extern _X_EXPORT int AddAuthorization(
     unsigned int	/*data_length*/,
     char *		/*data*/);
 
+#ifdef XCSECURITY
 extern _X_EXPORT XID GenerateAuthorization(
     unsigned int   /* name_length */,
     char	*  /* name */,
@@ -395,6 +398,7 @@ extern _X_EXPORT XID GenerateAuthorization(
     char	*  /* data */,
     unsigned int * /* data_length_return */,
     char	** /* data_return */);
+#endif
 
 extern _X_EXPORT int ddxProcessArgument(int /*argc*/, char * /*argv*/ [], int /*i*/);
 
diff --git a/include/window.h b/include/window.h
index 038e639..4353adf 100644
--- a/include/window.h
+++ b/include/window.h
@@ -95,7 +95,7 @@ extern _X_EXPORT void InitRootWindow(
 
 typedef WindowPtr (* RealChildHeadProc) (WindowPtr pWin);
 
-extern void _X_EXPORT RegisterRealChildHeadProc (RealChildHeadProc proc);
+extern _X_EXPORT void RegisterRealChildHeadProc (RealChildHeadProc proc);
 
 extern _X_EXPORT WindowPtr RealChildHead(
     WindowPtr /*pWin*/);
diff --git a/include/xkbfile.h b/include/xkbfile.h
index 40197c0..346f213 100644
--- a/include/xkbfile.h
+++ b/include/xkbfile.h
@@ -27,6 +27,8 @@
 #ifndef _XKBFILE_H_
 #define	_XKBFILE_H_ 1
 
+#include "xkbstr.h"
+
 /***====================================================================***/
 
 #define	XkbXKMFile	0
diff --git a/mi/mispans.h b/mi/mispans.h
index e3f033b..8151415 100644
--- a/mi/mispans.h
+++ b/mi/mispans.h
@@ -45,6 +45,8 @@ SOFTWARE.
 
 ******************************************************************/
 
+#ifndef MISPANS_H
+#define MISPANS_H
 
 typedef struct {
     int         count;		/* number of spans		    */
@@ -97,3 +99,4 @@ extern _X_EXPORT int miClipSpans(
 #define miSpansCarefulRop(rop)	(((rop) & 0xc) == 0x8 || ((rop) & 0x3) == 0x2)
 #define miSpansEasyRop(rop)	(!miSpansCarefulRop(rop))
 
+#endif /* MISPANS_H */
diff --git a/render/picture.h b/render/picture.h
index 8f67b84..1f90f43 100644
--- a/render/picture.h
+++ b/render/picture.h
@@ -25,6 +25,8 @@
 #ifndef _PICTURE_H_
 #define _PICTURE_H_
 
+#include "privates.h"
+
 #include <pixman.h>
 
 typedef struct _DirectFormat	*DirectFormatPtr;


More information about the xorg-commit mailing list