[PATCH v2 08/42] Move extension initialisation prototypes into extinit.h
Peter Hutterer
peter.hutterer at who-t.net
Tue Dec 6 15:44:23 PST 2011
On Fri, Dec 02, 2011 at 11:27:16AM +0000, Daniel Stone wrote:
> Create extinit.h (and xf86Extensions.h, for Xorg-specific extensions) to
> hold all our extension initialisation prototypes, rather than
> duplicating them everywhere.
>
> Signed-off-by: Daniel Stone <daniel at fooishbar.org>
Reviewed-by: Peter Hutterer <peter.hutterer at who-t.net>
any specific reason that DRIExtensionInit() gets special treatment?
the "#if 1" could be removed as well, or alternatively should be added to
all built-in ones (Render, GE, Shape, ...)
Cheers,
Peter
> ---
>
> v2: New.
>
> Xext/bigreq.c | 4 +-
> Xext/dpms.c | 2 +-
> Xext/geext.c | 1 +
> Xext/geext.h | 2 -
> Xext/panoramiX.c | 2 +-
> Xext/saver.c | 2 +-
> Xext/security.c | 2 +-
> Xext/shape.c | 2 +-
> Xext/shm.c | 2 +-
> Xext/sync.c | 2 +-
> Xext/syncsrv.h | 1 -
> Xext/xcmisc.c | 2 +-
> Xext/xf86bigfont.c | 1 +
> Xext/xf86bigfontsrv.h | 1 -
> Xext/xres.c | 2 +-
> Xext/xselinux_ext.c | 2 +-
> Xext/xtest.c | 2 +-
> Xext/xvdix.h | 1 -
> Xext/xvmain.c | 1 +
> Xext/xvmc.c | 1 +
> Xext/xvmcext.h | 2 -
> composite/compext.c | 1 +
> composite/compint.h | 7 --
> damageext/Makefile.am | 1 -
> damageext/damageext.c | 1 +
> damageext/damageext.h | 33 -------
> damageext/damageextint.h | 3 +-
> dbe/dbe.c | 1 +
> dbe/dbestruct.h | 2 -
> glx/glxext.c | 1 +
> glx/glxext.h | 2 -
> glx/glxserver.h | 2 -
> hw/dmx/dmx.c | 3 +-
> hw/dmx/glxProxy/glxext.c | 4 +-
> hw/dmx/glxProxy/glxext.h | 2 -
> hw/xfree86/common/vidmodeproc.h | 2 +-
> hw/xfree86/common/xf86.h | 4 -
> hw/xfree86/common/xf86Extensions.h | 54 +++++++++++
> hw/xfree86/dixmods/dbemodule.c | 3 +-
> hw/xfree86/dixmods/extmod/Makefile.am | 1 -
> hw/xfree86/dixmods/extmod/modinit.c | 3 +-
> hw/xfree86/dixmods/extmod/modinit.h | 82 ----------------
> hw/xfree86/dixmods/extmod/xf86dga2.c | 3 +-
> hw/xfree86/dixmods/extmod/xf86vmode.c | 1 +
> hw/xfree86/dixmods/glxmodule.c | 1 +
> hw/xfree86/dixmods/recordmod.c | 3 +-
> hw/xfree86/dri/dri.c | 1 +
> hw/xfree86/dri/dri.h | 3 +-
> hw/xfree86/dri/drimodule.c | 2 +-
> hw/xfree86/dri/xf86dri.c | 4 +-
> hw/xfree86/sdksyms.sh | 1 -
> hw/xquartz/pseudoramiX.c | 1 +
> hw/xquartz/pseudoramiX.h | 1 -
> hw/xquartz/xpr/dri.c | 1 +
> hw/xquartz/xpr/dri.h | 2 -
> include/extinit.h | 166 ++++++++++++++++++++++++++++++---
> include/window.h | 2 -
> mi/miinitext.c | 165 +--------------------------------
> randr/randr.c | 1 +
> randr/randrstr.h | 4 -
> record/record.c | 3 +-
> render/picturestr.h | 2 -
> render/render.c | 1 +
> xfixes/xfixes.c | 1 +
> xfixes/xfixesint.h | 5 -
> xkb/xkb.c | 1 +
> xkb/xkb.h | 2 -
> 67 files changed, 255 insertions(+), 371 deletions(-)
> delete mode 100644 damageext/damageext.h
> create mode 100644 hw/xfree86/common/xf86Extensions.h
> delete mode 100644 hw/xfree86/dixmods/extmod/modinit.h
>
> diff --git a/Xext/bigreq.c b/Xext/bigreq.c
> index b797897..0f644d6 100644
> --- a/Xext/bigreq.c
> +++ b/Xext/bigreq.c
> @@ -38,9 +38,7 @@ from The Open Group.
> #include "extnsionst.h"
> #include <X11/extensions/bigreqsproto.h>
> #include "opaque.h"
> -#include "modinit.h"
> -
> -void BigReqExtensionInit(void);
> +#include "extinit.h"
>
> static int
> ProcBigReqDispatch (ClientPtr client)
> diff --git a/Xext/dpms.c b/Xext/dpms.c
> index 37afc39..c8ba904 100644
> --- a/Xext/dpms.c
> +++ b/Xext/dpms.c
> @@ -39,7 +39,7 @@ Equipment Corporation.
> #include "opaque.h"
> #include <X11/extensions/dpmsproto.h>
> #include "dpmsproc.h"
> -#include "modinit.h"
> +#include "extinit.h"
>
> static int
> ProcDPMSGetVersion(ClientPtr client)
> diff --git a/Xext/geext.c b/Xext/geext.c
> index a8718cc..608dc8b 100644
> --- a/Xext/geext.c
> +++ b/Xext/geext.c
> @@ -32,6 +32,7 @@
> #include "geint.h"
> #include "geext.h"
> #include "protocol-versions.h"
> +#include "extinit.h"
>
> DevPrivateKeyRec GEClientPrivateKeyRec;
>
> diff --git a/Xext/geext.h b/Xext/geext.h
> index 8e6dbeb..dfcec5a 100644
> --- a/Xext/geext.h
> +++ b/Xext/geext.h
> @@ -78,6 +78,4 @@ extern _X_EXPORT void GERegisterExtension(
>
> extern _X_EXPORT void GEInitEvent(xGenericEvent* ev, int extension);
>
> -extern _X_EXPORT void GEExtensionInit(void);
> -
> #endif /* _GEEXT_H_ */
> diff --git a/Xext/panoramiX.c b/Xext/panoramiX.c
> index 7c2f04d..63130cc 100644
> --- a/Xext/panoramiX.c
> +++ b/Xext/panoramiX.c
> @@ -59,7 +59,7 @@ Equipment Corporation.
> #ifdef COMPOSITE
> #include "compint.h"
> #endif
> -#include "modinit.h"
> +#include "extinit.h"
> #include "protocol-versions.h"
>
> #ifdef GLXPROXY
> diff --git a/Xext/saver.c b/Xext/saver.c
> index 6cd900f..0a4c4fa 100644
> --- a/Xext/saver.c
> +++ b/Xext/saver.c
> @@ -58,7 +58,7 @@ in this Software without prior written authorization from the X Consortium.
>
> #include <stdio.h>
>
> -#include "modinit.h"
> +#include "extinit.h"
>
> static int ScreenSaverEventBase = 0;
>
> diff --git a/Xext/security.c b/Xext/security.c
> index 6365cc7..6f28e14 100644
> --- a/Xext/security.c
> +++ b/Xext/security.c
> @@ -38,7 +38,7 @@ in this Software without prior written authorization from The Open Group.
> #include "xacestr.h"
> #include "securitysrv.h"
> #include <X11/extensions/securproto.h>
> -#include "modinit.h"
> +#include "extinit.h"
> #include "protocol-versions.h"
>
> /* Extension stuff */
> diff --git a/Xext/shape.c b/Xext/shape.c
> index cb2a0e0..624c686 100644
> --- a/Xext/shape.c
> +++ b/Xext/shape.c
> @@ -44,7 +44,7 @@ in this Software without prior written authorization from The Open Group.
> #include <X11/extensions/shapeproto.h>
> #include "regionstr.h"
> #include "gcstruct.h"
> -#include "modinit.h"
> +#include "extinit.h"
> #include "protocol-versions.h"
>
> typedef RegionPtr (*CreateDftPtr)(
> diff --git a/Xext/shm.c b/Xext/shm.c
> index 06de6c4..885d10e 100644
> --- a/Xext/shm.c
> +++ b/Xext/shm.c
> @@ -88,7 +88,7 @@ in this Software without prior written authorization from The Open Group.
> #include "panoramiXsrv.h"
> #endif
>
> -#include "modinit.h"
> +#include "extinit.h"
>
> typedef struct _ShmDesc {
> struct _ShmDesc *next;
> diff --git a/Xext/sync.c b/Xext/sync.c
> index 23360f0..766e421 100644
> --- a/Xext/sync.c
> +++ b/Xext/sync.c
> @@ -76,7 +76,7 @@ PERFORMANCE OF THIS SOFTWARE.
> #include <sys/time.h>
> #endif
>
> -#include "modinit.h"
> +#include "extinit.h"
>
> /*
> * Local Global Variables
> diff --git a/Xext/syncsrv.h b/Xext/syncsrv.h
> index 2b70773..30d05cc 100644
> --- a/Xext/syncsrv.h
> +++ b/Xext/syncsrv.h
> @@ -142,5 +142,4 @@ extern void SyncDestroySystemCounter(
>
> extern void InitServertime(void);
>
> -extern void SyncExtensionInit(void);
> #endif /* _SYNCSRV_H_ */
> diff --git a/Xext/xcmisc.c b/Xext/xcmisc.c
> index 90c183c..8eff40e 100644
> --- a/Xext/xcmisc.c
> +++ b/Xext/xcmisc.c
> @@ -38,7 +38,7 @@ from The Open Group.
> #include "extnsionst.h"
> #include "swaprep.h"
> #include <X11/extensions/xcmiscproto.h>
> -#include "modinit.h"
> +#include "extinit.h"
>
> #include <stdint.h>
>
> diff --git a/Xext/xf86bigfont.c b/Xext/xf86bigfont.c
> index 4b63a13..544d57a 100644
> --- a/Xext/xf86bigfont.c
> +++ b/Xext/xf86bigfont.c
> @@ -71,6 +71,7 @@
> #include "gcstruct.h"
> #include "dixfontstr.h"
> #include "extnsionst.h"
> +#include "extinit.h"
> #include "protocol-versions.h"
>
> #include <X11/extensions/xf86bigfproto.h>
> diff --git a/Xext/xf86bigfontsrv.h b/Xext/xf86bigfontsrv.h
> index 2c78dc4..eab5287 100644
> --- a/Xext/xf86bigfontsrv.h
> +++ b/Xext/xf86bigfontsrv.h
> @@ -27,7 +27,6 @@
>
> #include <X11/fonts/font.h>
>
> -extern void XFree86BigfontExtensionInit(void);
> extern void XF86BigfontFreeFontShm(FontPtr);
> extern void XF86BigfontCleanup(void);
>
> diff --git a/Xext/xres.c b/Xext/xres.c
> index a8105a2..707e02d 100644
> --- a/Xext/xres.c
> +++ b/Xext/xres.c
> @@ -20,7 +20,7 @@
> #include "pixmapstr.h"
> #include "windowstr.h"
> #include "gcstruct.h"
> -#include "modinit.h"
> +#include "extinit.h"
> #include "protocol-versions.h"
>
> static int
> diff --git a/Xext/xselinux_ext.c b/Xext/xselinux_ext.c
> index c4e2fa0..6a55a64 100644
> --- a/Xext/xselinux_ext.c
> +++ b/Xext/xselinux_ext.c
> @@ -26,7 +26,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> #include "windowstr.h"
> #include "propertyst.h"
> #include "extnsionst.h"
> -#include "modinit.h"
> +#include "extinit.h"
> #include "xselinuxint.h"
>
> #define CTX_DEV offsetof(SELinuxSubjectRec, dev_create_sid)
> diff --git a/Xext/xtest.c b/Xext/xtest.c
> index 813259f..ce6b440 100644
> --- a/Xext/xtest.c
> +++ b/Xext/xtest.c
> @@ -55,7 +55,7 @@
> #include "eventstr.h"
> #include "inpututils.h"
>
> -#include "modinit.h"
> +#include "extinit.h"
>
> extern int DeviceValuator;
>
> diff --git a/Xext/xvdix.h b/Xext/xvdix.h
> index e9c22bf..62a50f9 100644
> --- a/Xext/xvdix.h
> +++ b/Xext/xvdix.h
> @@ -236,7 +236,6 @@ typedef struct {
> extern _X_EXPORT int ProcXvDispatch(ClientPtr);
> extern _X_EXPORT int SProcXvDispatch(ClientPtr);
>
> -extern _X_EXPORT void XvExtensionInit(void);
> extern _X_EXPORT int XvScreenInit(ScreenPtr);
> extern _X_EXPORT DevPrivateKey XvGetScreenKey(void);
> extern _X_EXPORT unsigned long XvGetRTPort(void);
> diff --git a/Xext/xvmain.c b/Xext/xvmain.c
> index d21a56c..d397ba6 100644
> --- a/Xext/xvmain.c
> +++ b/Xext/xvmain.c
> @@ -88,6 +88,7 @@ SOFTWARE.
> #include "pixmapstr.h"
> #include "gc.h"
> #include "extnsionst.h"
> +#include "extinit.h"
> #include "dixstruct.h"
> #include "resource.h"
> #include "opaque.h"
> diff --git a/Xext/xvmc.c b/Xext/xvmc.c
> index 47b9f47..7bb5507 100644
> --- a/Xext/xvmc.c
> +++ b/Xext/xvmc.c
> @@ -13,6 +13,7 @@
> #include "resource.h"
> #include "scrnintstr.h"
> #include "extnsionst.h"
> +#include "extinit.h"
> #include "servermd.h"
> #include <X11/Xfuncproto.h>
> #include "xvdix.h"
> diff --git a/Xext/xvmcext.h b/Xext/xvmcext.h
> index 5b43126..cc956d3 100644
> --- a/Xext/xvmcext.h
> +++ b/Xext/xvmcext.h
> @@ -102,8 +102,6 @@ typedef struct {
> } XvMCAdaptorRec, *XvMCAdaptorPtr;
>
> #ifndef XorgLoader
> -extern _X_EXPORT void XvMCExtensionInit(void);
> -
> extern _X_EXPORT int XvMCScreenInit(ScreenPtr pScreen,
> int num,
> XvMCAdaptorPtr adapt);
> diff --git a/composite/compext.c b/composite/compext.c
> index 722587a..bba3605 100644
> --- a/composite/compext.c
> +++ b/composite/compext.c
> @@ -48,6 +48,7 @@
> #include "compint.h"
> #include "xace.h"
> #include "protocol-versions.h"
> +#include "extinit.h"
>
> static CARD8 CompositeReqCode;
> static DevPrivateKeyRec CompositeClientPrivateKeyRec;
> diff --git a/composite/compint.h b/composite/compint.h
> index bb5335d..952f536 100644
> --- a/composite/compint.h
> +++ b/composite/compint.h
> @@ -225,13 +225,6 @@ compReallocPixmap (WindowPtr pWin, int x, int y,
> unsigned int w, unsigned int h, int bw);
>
> /*
> - * compext.c
> - */
> -
> -void
> -CompositeExtensionInit (void);
> -
> -/*
> * compinit.c
> */
>
> diff --git a/damageext/Makefile.am b/damageext/Makefile.am
> index 35f7620..4d4cf44 100644
> --- a/damageext/Makefile.am
> +++ b/damageext/Makefile.am
> @@ -4,5 +4,4 @@ AM_CFLAGS = $(DIX_CFLAGS)
>
> libdamageext_la_SOURCES = \
> damageext.c \
> - damageext.h \
> damageextint.h
> diff --git a/damageext/damageext.c b/damageext/damageext.c
> index 86f880c..b18785b 100644
> --- a/damageext/damageext.c
> +++ b/damageext/damageext.c
> @@ -26,6 +26,7 @@
>
> #include "damageextint.h"
> #include "protocol-versions.h"
> +#include "extinit.h"
>
> static unsigned char DamageReqCode;
> static int DamageEventBase;
> diff --git a/damageext/damageext.h b/damageext/damageext.h
> deleted file mode 100644
> index 642800b..0000000
> --- a/damageext/damageext.h
> +++ /dev/null
> @@ -1,33 +0,0 @@
> -/*
> - * Copyright © 2002 Keith Packard
> - *
> - * 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 Keith Packard not be used in
> - * advertising or publicity pertaining to distribution of the software without
> - * specific, written prior permission. Keith Packard makes no
> - * representations about the suitability of this software for any purpose. It
> - * is provided "as is" without express or implied warranty.
> - *
> - * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
> - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
> - * EVENT SHALL KEITH PACKARD 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.
> - */
> -
> -#ifdef HAVE_DIX_CONFIG_H
> -#include <dix-config.h>
> -#endif
> -
> -#ifndef _DAMAGEEXT_H_
> -#define _DAMAGEEXT_H_
> -
> -void
> -DamageExtensionInit(void);
> -
> -#endif /* _DAMAGEEXT_H_ */
> diff --git a/damageext/damageextint.h b/damageext/damageextint.h
> index a235cb9..c944c4f 100644
> --- a/damageext/damageextint.h
> +++ b/damageext/damageextint.h
> @@ -37,8 +37,7 @@
> #include "windowstr.h"
> #include "selection.h"
> #include "scrnintstr.h"
> -#include "damageext.h"
> -#include "damage.h"
> +#include "damage.h"
> #include "xfixes.h"
>
> typedef struct _DamageClient {
> diff --git a/dbe/dbe.c b/dbe/dbe.c
> index a468676..7e1791f 100644
> --- a/dbe/dbe.c
> +++ b/dbe/dbe.c
> @@ -43,6 +43,7 @@
> #include <X11/Xproto.h>
> #include "scrnintstr.h"
> #include "extnsionst.h"
> +#include "extinit.h"
> #include "gcstruct.h"
> #include "dixstruct.h"
> #define NEED_DBE_PROTOCOL
> diff --git a/dbe/dbestruct.h b/dbe/dbestruct.h
> index 9c383ce..53c3e6b 100644
> --- a/dbe/dbestruct.h
> +++ b/dbe/dbestruct.h
> @@ -88,8 +88,6 @@ XdbeScreenVisualInfo;
> /* Marker for free elements in the buffer ID array. */
> #define DBE_FREE_ID_ELEMENT 0
>
> -extern _X_EXPORT void DbeExtensionInit (void);
> -
> /* TYPEDEFS */
>
> /* Record used to pass swap information between DIX and DDX swapping
> diff --git a/glx/glxext.c b/glx/glxext.c
> index 9cfc096..f3b054e 100644
> --- a/glx/glxext.c
> +++ b/glx/glxext.c
> @@ -39,6 +39,7 @@
> #include <registry.h>
> #include "privates.h"
> #include <os.h>
> +#include "extinit.h"
> #include "unpack.h"
> #include "glxutil.h"
> #include "glxext.h"
> diff --git a/glx/glxext.h b/glx/glxext.h
> index 7008c47..58cf054 100644
> --- a/glx/glxext.h
> +++ b/glx/glxext.h
> @@ -44,8 +44,6 @@ extern void __glXClearErrorOccured(void);
> extern GLboolean __glXErrorOccured(void);
> extern void __glXResetLargeCommandStatus(__GLXclientState*);
>
> -extern void GlxExtensionInit(void);
> -
> extern const char GLServerVersion[];
> extern int DoGetString(__GLXclientState *cl, GLbyte *pc, GLboolean need_swap);
>
> diff --git a/glx/glxserver.h b/glx/glxserver.h
> index 6bcf7d3..8330419 100644
> --- a/glx/glxserver.h
> +++ b/glx/glxserver.h
> @@ -77,8 +77,6 @@ extern __GLXclientState *glxGetClient(ClientPtr pClient);
>
> /************************************************************************/
>
> -void GlxExtensionInit(void);
> -
> void GlxSetVisualConfigs(int nconfigs,
> void *configs, void **privates);
>
> diff --git a/hw/dmx/dmx.c b/hw/dmx/dmx.c
> index 01a7448..16bf068 100644
> --- a/hw/dmx/dmx.c
> +++ b/hw/dmx/dmx.c
> @@ -52,6 +52,7 @@
> #include "os.h"
> #include "dixstruct.h"
> #include "extnsionst.h"
> +#include "extinit.h"
> #include "opaque.h"
>
> #include "dmxextension.h"
> @@ -65,8 +66,6 @@ extern unsigned long XRT_WINDOW;
> extern int PanoramiXNumScreens;
> #endif
>
> -extern void DMXExtensionInit(void);
> -
> static unsigned char DMXCode;
>
>
> diff --git a/hw/dmx/glxProxy/glxext.c b/hw/dmx/glxProxy/glxext.c
> index 7f63b6b..fddd58e 100644
> --- a/hw/dmx/glxProxy/glxext.c
> +++ b/hw/dmx/glxProxy/glxext.c
> @@ -44,11 +44,13 @@
> #include "glxvisuals.h"
> #include "micmap.h"
> #include "glxswap.h"
> +#include "extinit.h"
>
> /*
> ** Stubs to satisfy miinitext.c references.
> */
> -typedef int __GLXprovider;
> +struct __GLXprovider {
> +};
> __GLXprovider __glXDRISWRastProvider;
> void GlxPushProvider(__GLXprovider *provider) { }
>
> diff --git a/hw/dmx/glxProxy/glxext.h b/hw/dmx/glxProxy/glxext.h
> index 361bcac..c748493 100644
> --- a/hw/dmx/glxProxy/glxext.h
> +++ b/hw/dmx/glxProxy/glxext.h
> @@ -70,8 +70,6 @@ extern void __glXResetLargeCommandStatus(__GLXclientState*);
> extern int __glXQueryContextInfoEXT(__GLXclientState *cl, GLbyte *pc);
> extern int __glXSwapQueryContextInfoEXT(__GLXclientState *cl, char *pc);
>
> -extern void GlxExtensionInit(void);
> -
> extern Bool __glXCoreType(void);
>
> #endif /* _glxext_h_ */
> diff --git a/hw/xfree86/common/vidmodeproc.h b/hw/xfree86/common/vidmodeproc.h
> index da4d05e..35e9d8b 100644
> --- a/hw/xfree86/common/vidmodeproc.h
> +++ b/hw/xfree86/common/vidmodeproc.h
> @@ -40,7 +40,7 @@ typedef union {
> float f;
> } vidMonitorValue;
>
> -extern _X_EXPORT void XFree86VidModeExtensionInit(void);
> +extern Bool VidModeExtensionInit(ScreenPtr pScreen);
>
> extern _X_EXPORT Bool VidModeAvailable(int scrnIndex);
> extern _X_EXPORT Bool VidModeGetCurrentModeline(int scrnIndex, pointer *mode, int *dotClock);
> diff --git a/hw/xfree86/common/xf86.h b/hw/xfree86/common/xf86.h
> index f216d5e..6781083 100644
> --- a/hw/xfree86/common/xf86.h
> +++ b/hw/xfree86/common/xf86.h
> @@ -346,10 +346,6 @@ extern _X_EXPORT Bool xf86RandRSetNewVirtualAndDimensions(ScreenPtr pScreen,
> int newmmWidth, int newmmHeight, Bool resetMode);
> #endif
>
> -/* xf86VidModeExtentionInit.c */
> -
> -extern _X_EXPORT Bool VidModeExtensionInit(ScreenPtr pScreen);
> -
> #endif /* _NO_XF86_PROTOTYPES */
>
> #endif /* _XF86_H */
> diff --git a/hw/xfree86/common/xf86Extensions.h b/hw/xfree86/common/xf86Extensions.h
> new file mode 100644
> index 0000000..f86a421
> --- /dev/null
> +++ b/hw/xfree86/common/xf86Extensions.h
> @@ -0,0 +1,54 @@
> +/*
> + * Copyright © 2011 Daniel Stone
> + *
> + * 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 (including the next
> + * paragraph) 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 AUTHORS OR COPYRIGHT HOLDERS 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.
> + *
> + * Author: Daniel Stone <daniel at fooishbar.org>
> + */
> +
> +#ifndef XF86EXTENSIONS_H
> +#define XF86EXTENSIONS_H
> +
> +#include "extnsionst.h"
> +
> +#ifdef XF86DRI
> +extern Bool noXFree86DRIExtension;
> +extern void XFree86DRIExtensionInit(void);
> +#endif
> +
> +#ifdef DRI2
> +#include <X11/extensions/dri2proto.h>
> +extern void DRI2ExtensionInit(void);
> +#endif
> +
> +#ifdef XF86VIDMODE
> +#include <X11/extensions/xf86vmproto.h>
> +extern Bool noXFree86VidModeExtension;
> +extern void XFree86VidModeExtensionInit(void);
> +#endif
> +
> +#ifdef XFreeXDGA
> +#include <X11/extensions/xf86dgaproto.h>
> +extern Bool noXFree86DGAExtension;
> +extern void XFree86DGAExtensionInit(void);
> +extern void XFree86DGARegister(void);
> +#endif
> +
> +#endif
> diff --git a/hw/xfree86/dixmods/dbemodule.c b/hw/xfree86/dixmods/dbemodule.c
> index 436a7b1..4cf1577 100644
> --- a/hw/xfree86/dixmods/dbemodule.c
> +++ b/hw/xfree86/dixmods/dbemodule.c
> @@ -4,11 +4,10 @@
>
> #include "xf86Module.h"
> #include "globals.h"
> +#include "extinit.h"
>
> static MODULESETUPPROTO(dbeSetup);
>
> -extern void DbeExtensionInit(void);
> -
> static ExtensionModule dbeExt = {
> DbeExtensionInit,
> "DOUBLE-BUFFER",
> diff --git a/hw/xfree86/dixmods/extmod/Makefile.am b/hw/xfree86/dixmods/extmod/Makefile.am
> index 87c28a4..99e9c8d 100644
> --- a/hw/xfree86/dixmods/extmod/Makefile.am
> +++ b/hw/xfree86/dixmods/extmod/Makefile.am
> @@ -23,7 +23,6 @@ INCLUDES = @XORG_INCS@ \
>
> libextmod_la_LDFLAGS = -module -avoid-version
> libextmod_la_SOURCES = modinit.c \
> - modinit.h \
> $(DGA_SRCS) \
> $(XF86VMODE_SRCS) \
> $(XV_SRCS)
> diff --git a/hw/xfree86/dixmods/extmod/modinit.c b/hw/xfree86/dixmods/extmod/modinit.c
> index a415e5f..688661e 100644
> --- a/hw/xfree86/dixmods/extmod/modinit.c
> +++ b/hw/xfree86/dixmods/extmod/modinit.c
> @@ -29,7 +29,8 @@
>
> #include <X11/Xproto.h>
>
> -#include "modinit.h"
> +#include "extinit.h"
> +#include "xf86Extensions.h"
> #include "globals.h"
>
> static MODULESETUPPROTO(extmodSetup);
> diff --git a/hw/xfree86/dixmods/extmod/modinit.h b/hw/xfree86/dixmods/extmod/modinit.h
> deleted file mode 100644
> index 22e6ce1..0000000
> --- a/hw/xfree86/dixmods/extmod/modinit.h
> +++ /dev/null
> @@ -1,82 +0,0 @@
> -
> -#ifdef HAVE_DIX_CONFIG_H
> -#include <dix-config.h>
> -#endif
> -
> -#include <X11/extensions/shapeproto.h>
> -
> -#ifdef XTEST
> -extern void XTestExtensionInit(void);
> -#include <X11/extensions/xtestproto.h>
> -#endif
> -
> -#if 1
> -extern void XTestExtension1Init(void);
> -#endif
> -
> -#if 1
> -extern void XCMiscExtensionInit(void);
> -#endif
> -
> -#ifdef SCREENSAVER
> -extern void ScreenSaverExtensionInit (void);
> -#include <X11/extensions/saver.h>
> -#endif
> -
> -#ifdef XF86VIDMODE
> -extern void XFree86VidModeExtensionInit(void);
> -#include <X11/extensions/xf86vmproto.h>
> -#endif
> -
> -#ifdef XFreeXDGA
> -extern void XFree86DGAExtensionInit(void);
> -extern void XFree86DGARegister(void);
> -#include <X11/extensions/xf86dgaproto.h>
> -#endif
> -
> -#ifdef DPMSExtension
> -extern void DPMSExtensionInit(void);
> -#include <X11/extensions/dpmsconst.h>
> -#endif
> -
> -#ifdef XV
> -extern void XvExtensionInit(void);
> -extern void XvMCExtensionInit(void);
> -extern void XvRegister(void);
> -#include <X11/extensions/Xv.h>
> -#include <X11/extensions/XvMC.h>
> -#endif
> -
> -#ifdef RES
> -extern void ResExtensionInit(void);
> -#include <X11/extensions/XResproto.h>
> -#endif
> -
> -#ifdef SHM
> -extern void ShmExtensionInit(void);
> -#include <X11/extensions/shmproto.h>
> -extern void ShmRegisterFuncs(
> - ScreenPtr pScreen,
> - ShmFuncsPtr funcs);
> -#endif
> -
> -#ifdef XSELINUX
> -extern void SELinuxExtensionInit(void);
> -#include "xselinux.h"
> -#endif
> -
> -#ifdef XEVIE
> -extern void XevieExtensionInit(void);
> -#endif
> -
> -#if 1
> -extern void SecurityExtensionInit(void);
> -#endif
> -
> -#if 1
> -extern void PanoramiXExtensionInit(void);
> -#endif
> -
> -#if 1
> -extern void XkbExtensionInit(void);
> -#endif
> diff --git a/hw/xfree86/dixmods/extmod/xf86dga2.c b/hw/xfree86/dixmods/extmod/xf86dga2.c
> index e24dda0..4583171 100644
> --- a/hw/xfree86/dixmods/extmod/xf86dga2.c
> +++ b/hw/xfree86/dixmods/extmod/xf86dga2.c
> @@ -18,6 +18,7 @@
> #include "dixevents.h"
> #include "pixmapstr.h"
> #include "extnsionst.h"
> +#include "xf86Extensions.h"
> #include "colormapst.h"
> #include "cursorstr.h"
> #include "scrnintstr.h"
> @@ -29,7 +30,7 @@
>
> #include <string.h>
>
> -#include "modinit.h"
> +#include "extinit.h"
>
> #define DGA_PROTOCOL_OLD_SUPPORT 1
>
> diff --git a/hw/xfree86/dixmods/extmod/xf86vmode.c b/hw/xfree86/dixmods/extmod/xf86vmode.c
> index 6d3d5fc..6ae6472 100644
> --- a/hw/xfree86/dixmods/extmod/xf86vmode.c
> +++ b/hw/xfree86/dixmods/extmod/xf86vmode.c
> @@ -39,6 +39,7 @@ from Kaleb S. KEITHLEY
> #include "misc.h"
> #include "dixstruct.h"
> #include "extnsionst.h"
> +#include "xf86Extensions.h"
> #include "scrnintstr.h"
> #include "servermd.h"
> #include <X11/extensions/xf86vmproto.h>
> diff --git a/hw/xfree86/dixmods/glxmodule.c b/hw/xfree86/dixmods/glxmodule.c
> index 62a047e..79d4b16 100644
> --- a/hw/xfree86/dixmods/glxmodule.c
> +++ b/hw/xfree86/dixmods/glxmodule.c
> @@ -42,6 +42,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> #include "micmap.h"
> #include "globals.h"
> #include "glxserver.h"
> +#include "extinit.h"
>
> static MODULESETUPPROTO(glxSetup);
>
> diff --git a/hw/xfree86/dixmods/recordmod.c b/hw/xfree86/dixmods/recordmod.c
> index cb265de..fdedec4 100644
> --- a/hw/xfree86/dixmods/recordmod.c
> +++ b/hw/xfree86/dixmods/recordmod.c
> @@ -3,13 +3,12 @@
> #endif
>
> #include "xf86Module.h"
> +#include "extinit.h"
>
> extern Bool noTestExtensions;
>
> static MODULESETUPPROTO(recordSetup);
>
> -extern void RecordExtensionInit(void);
> -
> static ExtensionModule recordExt = {
> RecordExtensionInit,
> "RECORD",
> diff --git a/hw/xfree86/dri/dri.c b/hw/xfree86/dri/dri.c
> index 1726960..ad54ed2 100644
> --- a/hw/xfree86/dri/dri.c
> +++ b/hw/xfree86/dri/dri.c
> @@ -51,6 +51,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> #include "misc.h"
> #include "dixstruct.h"
> #include "extnsionst.h"
> +#include "extinit.h"
> #include "colormapst.h"
> #include "cursorstr.h"
> #include "scrnintstr.h"
> diff --git a/hw/xfree86/dri/dri.h b/hw/xfree86/dri/dri.h
> index f690e23..84d23ac 100644
> --- a/hw/xfree86/dri/dri.h
> +++ b/hw/xfree86/dri/dri.h
> @@ -197,6 +197,7 @@ typedef struct {
>
> } DRIInfoRec, *DRIInfoPtr;
>
> +extern Bool DRIExtensionInit(void);
>
> extern _X_EXPORT Bool DRIOpenDRMMaster(ScrnInfoPtr pScrn, unsigned long sAreaSize,
> const char *busID,
> @@ -208,8 +209,6 @@ extern _X_EXPORT Bool DRIScreenInit(ScreenPtr pScreen,
>
> extern _X_EXPORT void DRICloseScreen(ScreenPtr pScreen);
>
> -extern _X_EXPORT Bool DRIExtensionInit(void);
> -
> extern _X_EXPORT void DRIReset(void);
>
> extern _X_EXPORT Bool DRIQueryDirectRenderingCapable(ScreenPtr pScreen,
> diff --git a/hw/xfree86/dri/drimodule.c b/hw/xfree86/dri/drimodule.c
> index 40e3aca..d2acafd 100644
> --- a/hw/xfree86/dri/drimodule.c
> +++ b/hw/xfree86/dri/drimodule.c
> @@ -37,6 +37,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> #endif
>
> #include "xf86Module.h"
> +#include "xf86Extensions.h"
> #include "globals.h"
>
> #include "xf86drm.h"
> @@ -58,7 +59,6 @@ static XF86ModuleVersionInfo VersRec =
> {0,0,0,0}
> };
>
> -extern void XFree86DRIExtensionInit(void);
> #define _XF86DRI_SERVER_
> #include <X11/dri/xf86driproto.h>
>
> diff --git a/hw/xfree86/dri/xf86dri.c b/hw/xfree86/dri/xf86dri.c
> index c35ba2f..58492ce 100644
> --- a/hw/xfree86/dri/xf86dri.c
> +++ b/hw/xfree86/dri/xf86dri.c
> @@ -47,6 +47,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> #include "misc.h"
> #include "dixstruct.h"
> #include "extnsionst.h"
> +#include "extinit.h"
> #include "colormapst.h"
> #include "cursorstr.h"
> #include "scrnintstr.h"
> @@ -60,6 +61,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> #include "dristruct.h"
> #include "xf86drm.h"
> #include "protocol-versions.h"
> +#include "xf86Extensions.h"
>
> static int DRIErrorBase;
>
> @@ -69,8 +71,6 @@ static void XF86DRIResetProc(ExtensionEntry* extEntry);
>
> static unsigned char DRIReqCode = 0;
>
> -extern void XFree86DRIExtensionInit(void);
> -
> /*ARGSUSED*/
> static void
> XF86DRIResetProc (
> diff --git a/hw/xfree86/sdksyms.sh b/hw/xfree86/sdksyms.sh
> index 4a4e1f6..944f039 100755
> --- a/hw/xfree86/sdksyms.sh
> +++ b/hw/xfree86/sdksyms.sh
> @@ -276,7 +276,6 @@ cat > sdksyms.c << EOF
> #include "dixstruct.h"
> #include "exevents.h"
> #include "extension.h"
> -#include "extinit.h"
> #include "extnsionst.h"
> #include "gc.h"
> #include "gcstruct.h"
> diff --git a/hw/xquartz/pseudoramiX.c b/hw/xquartz/pseudoramiX.c
> index 89ad94f..a4797e0 100644
> --- a/hw/xquartz/pseudoramiX.c
> +++ b/hw/xquartz/pseudoramiX.c
> @@ -40,6 +40,7 @@ Equipment Corporation.
> #include "darwin.h"
> #include "pseudoramiX.h"
> #include "extnsionst.h"
> +#include "extinit.h"
> #include "dixstruct.h"
> #include "window.h"
> #include <X11/extensions/panoramiXproto.h>
> diff --git a/hw/xquartz/pseudoramiX.h b/hw/xquartz/pseudoramiX.h
> index 2ffa4cf..665af4b 100644
> --- a/hw/xquartz/pseudoramiX.h
> +++ b/hw/xquartz/pseudoramiX.h
> @@ -5,5 +5,4 @@
> extern int noPseudoramiXExtension;
>
> void PseudoramiXAddScreen(int x, int y, int w, int h);
> -void PseudoramiXExtensionInit(void);
> void PseudoramiXResetScreens(void);
> diff --git a/hw/xquartz/xpr/dri.c b/hw/xquartz/xpr/dri.c
> index a58f2c7..1cdbb8d 100644
> --- a/hw/xquartz/xpr/dri.c
> +++ b/hw/xquartz/xpr/dri.c
> @@ -55,6 +55,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> #include "misc.h"
> #include "dixstruct.h"
> #include "extnsionst.h"
> +#include "extinit.h"
> #include "colormapst.h"
> #include "cursorstr.h"
> #include "scrnintstr.h"
> diff --git a/hw/xquartz/xpr/dri.h b/hw/xquartz/xpr/dri.h
> index 48fea36..9f6e0d1 100644
> --- a/hw/xquartz/xpr/dri.h
> +++ b/hw/xquartz/xpr/dri.h
> @@ -70,8 +70,6 @@ extern Bool DRIFinishScreenInit(ScreenPtr pScreen);
>
> extern void DRICloseScreen(ScreenPtr pScreen);
>
> -extern Bool DRIExtensionInit(void);
> -
> extern void DRIReset(void);
>
> extern Bool DRIQueryDirectRenderingCapable(ScreenPtr pScreen,
> diff --git a/include/extinit.h b/include/extinit.h
> index 8e47beb..5be45ac 100644
> --- a/include/extinit.h
> +++ b/include/extinit.h
> @@ -23,8 +23,29 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
>
> ********************************************************/
>
> -/********************************************************************
> - * Interface of extinit.c
> +/*
> + * Copyright (C) 1994-2003 The XFree86 Project, Inc. All Rights Reserved.
> + *
> + * 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, FIT-
> + * NESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> + * XFREE86 PROJECT 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 XFree86 Project 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 XFree86 Project.
> */
>
> #ifndef EXTINIT_H
> @@ -32,16 +53,135 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
>
> #include "extnsionst.h"
>
> -extern void
> -XInputExtensionInit(
> - void
> - );
> +#ifdef COMPOSITE
> +extern Bool noCompositeExtension;
> +extern void CompositeExtensionInit(void);
> +#endif
>
> -extern _X_EXPORT void
> -AssignTypeAndName (
> - DeviceIntPtr /* dev */,
> - Atom /* type */,
> - const char * /* name */
> - );
> +#ifdef DAMAGE
> +extern void DamageExtensionInit(void);
> +#endif
>
> -#endif /* EXTINIT_H */
> +#ifdef DBE
> +extern Bool noDbeExtension;
> +extern void DbeExtensionInit(void);
> +#endif
> +
> +#ifdef DMXEXT
> +extern void DMXExtensionInit(void);
> +#endif
> +
> +#ifdef DPMSExtension
> +#include <X11/extensions/dpmsconst.h>
> +extern Bool noDPMSExtension;
> +extern void DPMSExtensionInit(void);
> +#endif
> +
> +extern Bool noGEExtension;
> +extern void GEExtensionInit(void);
> +
> +#ifdef GLXEXT
> +extern Bool noGlxExtension;
> +typedef struct __GLXprovider __GLXprovider;
> +extern __GLXprovider __glXDRISWRastProvider;
> +extern void GlxPushProvider(__GLXprovider *impl);
> +extern void GlxExtensionInit(void);
> +#endif
> +
> +#ifdef PANORAMIX
> +#include <X11/extensions/panoramiXproto.h>
> +extern Bool noPanoramiXExtension;
> +extern void PanoramiXExtensionInit(void);
> +#endif
> +
> +#ifdef RANDR
> +extern Bool noRRExtension;
> +extern void RRExtensionInit(void);
> +#endif
> +
> +#ifdef XRECORD
> +extern void RecordExtensionInit(void);
> +#endif
> +
> +extern Bool noRenderExtension;
> +extern void RenderExtensionInit(void);
> +
> +#ifdef RES
> +#include <X11/extensions/XResproto.h>
> +extern Bool noResExtension;
> +extern void ResExtensionInit(void);
> +#endif
> +
> +#ifdef SCREENSAVER
> +#include <X11/extensions/saver.h>
> +extern Bool noScreenSaverExtension;
> +extern void ScreenSaverExtensionInit(void);
> +#endif
> +
> +#include <X11/extensions/shapeproto.h>
> +extern void ShapeExtensionInit(void);
> +
> +#ifdef MITSHM
> +#include <X11/extensions/shm.h>
> +#include <X11/extensions/shmproto.h>
> +extern Bool noMITShmExtension;
> +extern void ShmExtensionInit(void);
> +#endif
> +
> +extern void SyncExtensionInit(void);
> +
> +extern void XCMiscExtensionInit(void);
> +
> +#ifdef XCSECURITY
> +#include <X11/extensions/secur.h>
> +#include "securitysrv.h"
> +extern Bool noSecurityExtension;
> +extern void SecurityExtensionInit(void);
> +#endif
> +
> +#ifdef XF86BIGFONT
> +#include <X11/extensions/xf86bigfproto.h>
> +extern Bool noXFree86BigfontExtension;
> +extern void XFree86BigfontExtensionInit(void);
> +#endif
> +
> +extern void BigReqExtensionInit(void);
> +
> +#ifdef XFIXES
> +extern Bool noXFixesExtension;
> +extern void XFixesExtensionInit(void);
> +#endif
> +
> +extern void XInputExtensionInit(void);
> +extern _X_EXPORT void AssignTypeAndName(DeviceIntPtr dev, Atom type, const char *name);
> +
> +#include <X11/extensions/XKB.h>
> +extern void XkbExtensionInit(void);
> +
> +#ifdef XSELINUX
> +#include "xselinux.h"
> +extern Bool noSELinuxExtension;
> +extern void SELinuxExtensionInit(void);
> +#endif
> +
> +#ifdef XTEST
> +#include <X11/extensions/xtestconst.h>
> +#include <X11/extensions/xtestproto.h>
> +extern void XTestExtensionInit(void);
> +#endif
> +
> +#ifdef INXQUARTZ
> +extern Bool noPseudoramiXExtension;
> +extern void PseudoramiXExtensionInit(void);
> +#endif
> +
> +#ifdef XV
> +#include <X11/extensions/Xv.h>
> +#include <X11/extensions/XvMC.h>
> +extern Bool noXvExtension;
> +extern void XvExtensionInit(void);
> +extern void XvMCExtensionInit(void);
> +extern void XvRegister(void);
> +#endif
> +
> +#endif
> diff --git a/include/window.h b/include/window.h
> index e13598b..fea317c 100644
> --- a/include/window.h
> +++ b/include/window.h
> @@ -249,8 +249,6 @@ extern _X_EXPORT void ResizeChildrenWinSize(
> int /*dw*/,
> int /*dh*/);
>
> -extern _X_EXPORT void ShapeExtensionInit(void);
> -
> extern _X_EXPORT void SendShapeNotify(
> WindowPtr /* pWin */,
> int /* which */ );
> diff --git a/mi/miinitext.c b/mi/miinitext.c
> index 16fd2da..b3d3504 100644
> --- a/mi/miinitext.c
> +++ b/mi/miinitext.c
> @@ -91,178 +91,17 @@ SOFTWARE.
>
> #include "misc.h"
> #include "extension.h"
> +#include "extinit.h"
> #include "micmap.h"
> #include "globals.h"
>
> -
> -extern Bool noTestExtensions;
> -
> -#ifdef COMPOSITE
> -extern Bool noCompositeExtension;
> -#endif
> -#ifdef DBE
> -extern Bool noDbeExtension;
> -#endif
> -#ifdef DPMSExtension
> -extern Bool noDPMSExtension;
> -#endif
> -#ifdef GLXEXT
> -extern Bool noGlxExtension;
> -#endif
> -#ifdef SCREENSAVER
> -extern Bool noScreenSaverExtension;
> -#endif
> -#ifdef MITSHM
> -extern Bool noMITShmExtension;
> -#endif
> -#ifdef RANDR
> -extern Bool noRRExtension;
> -#endif
> -extern Bool noRenderExtension;
> -#ifdef XCSECURITY
> -extern Bool noSecurityExtension;
> -#endif
> -#ifdef RES
> -extern Bool noResExtension;
> -#endif
> -#ifdef XF86BIGFONT
> -extern Bool noXFree86BigfontExtension;
> -#endif
> -#ifdef XFreeXDGA
> -extern Bool noXFree86DGAExtension;
> -#endif
> -#ifdef XF86DRI
> -extern Bool noXFree86DRIExtension;
> -#endif
> -#ifdef XF86VIDMODE
> -extern Bool noXFree86VidModeExtension;
> -#endif
> -#ifdef XFIXES
> -extern Bool noXFixesExtension;
> -#endif
> -#ifdef PANORAMIX
> -extern Bool noPanoramiXExtension;
> -#endif
> -#ifdef INXQUARTZ
> -extern Bool noPseudoramiXExtension;
> -#endif
> -#ifdef XSELINUX
> -extern Bool noSELinuxExtension;
> -#endif
> -#ifdef XV
> -extern Bool noXvExtension;
> -#endif
> -extern Bool noGEExtension;
> -
> #ifndef XFree86LOADER
> typedef void (*InitExtension)(void);
> #else /* XFree86Loader */
> #include "loaderProcs.h"
> +#include "xf86Extensions.h"
> #endif
>
> -#ifdef MITSHM
> -#include <X11/extensions/shm.h>
> -#endif
> -#ifdef XTEST
> -#include <X11/extensions/xtestconst.h>
> -#endif
> -#include <X11/extensions/XKB.h>
> -#ifdef XCSECURITY
> -#include "securitysrv.h"
> -#include <X11/extensions/secur.h>
> -#endif
> -#ifdef XSELINUX
> -#include "xselinux.h"
> -#endif
> -#ifdef PANORAMIX
> -#include <X11/extensions/panoramiXproto.h>
> -#endif
> -#ifdef XF86BIGFONT
> -#include <X11/extensions/xf86bigfproto.h>
> -#endif
> -#ifdef RES
> -#include <X11/extensions/XResproto.h>
> -#endif
> -
> -/* FIXME: this whole block of externs should be from the appropriate headers */
> -#ifdef MITSHM
> -extern void ShmExtensionInit(void);
> -#endif
> -#ifdef PANORAMIX
> -extern void PanoramiXExtensionInit(void);
> -#endif
> -#ifdef INXQUARTZ
> -extern void PseudoramiXExtensionInit(void);
> -#endif
> -extern void XInputExtensionInit(void);
> -#ifdef XTEST
> -extern void XTestExtensionInit(void);
> -#endif
> -extern void BigReqExtensionInit(void);
> -#ifdef SCREENSAVER
> -extern void ScreenSaverExtensionInit (void);
> -#endif
> -#ifdef XV
> -extern void XvExtensionInit(void);
> -extern void XvMCExtensionInit(void);
> -#endif
> -extern void SyncExtensionInit(void);
> -extern void XkbExtensionInit(void);
> -extern void XCMiscExtensionInit(void);
> -#ifdef XRECORD
> -extern void RecordExtensionInit(void);
> -#endif
> -#ifdef DBE
> -extern void DbeExtensionInit(void);
> -#endif
> -#ifdef XCSECURITY
> -extern void SecurityExtensionInit(void);
> -#endif
> -#ifdef XSELINUX
> -extern void SELinuxExtensionInit(void);
> -#endif
> -#ifdef XF86BIGFONT
> -extern void XFree86BigfontExtensionInit(void);
> -#endif
> -#ifdef XF86VIDMODE
> -extern void XFree86VidModeExtensionInit(void);
> -#endif
> -#ifdef XFreeXDGA
> -extern void XFree86DGAExtensionInit(void);
> -#endif
> -#ifdef GLXEXT
> -typedef struct __GLXprovider __GLXprovider;
> -extern __GLXprovider __glXDRISWRastProvider;
> -extern void GlxPushProvider(__GLXprovider *impl);
> -extern void GlxExtensionInit(void);
> -#endif
> -#ifdef XF86DRI
> -extern void XFree86DRIExtensionInit(void);
> -#endif
> -#ifdef DPMSExtension
> -extern void DPMSExtensionInit(void);
> -#endif
> -extern void RenderExtensionInit(void);
> -#ifdef RANDR
> -extern void RRExtensionInit(void);
> -#endif
> -#ifdef RES
> -extern void ResExtensionInit(void);
> -#endif
> -#ifdef DMXEXT
> -extern void DMXExtensionInit(void);
> -#endif
> -#ifdef XFIXES
> -extern void XFixesExtensionInit(void);
> -#endif
> -#ifdef DAMAGE
> -extern void DamageExtensionInit(void);
> -#endif
> -#ifdef COMPOSITE
> -extern void CompositeExtensionInit(void);
> -#endif
> -extern void GEExtensionInit(void);
> -
> /* The following is only a small first step towards run-time
> * configurable extensions.
> */
> diff --git a/randr/randr.c b/randr/randr.c
> index d337129..7f0ce67 100644
> --- a/randr/randr.c
> +++ b/randr/randr.c
> @@ -30,6 +30,7 @@
> #endif
>
> #include "randrstr.h"
> +#include "extinit.h"
>
> /* From render.h */
> #ifndef SubPixelUnknown
> diff --git a/randr/randrstr.h b/randr/randrstr.h
> index 842e0e0..7e93dd6 100644
> --- a/randr/randrstr.h
> +++ b/randr/randrstr.h
> @@ -374,10 +374,6 @@ extern _X_EXPORT RESTYPE RRCrtcType, RRModeType, RROutputType;
> #define GetRRClient(pClient) ((RRClientPtr)dixLookupPrivate(&(pClient)->devPrivates, RRClientPrivateKey))
> #define rrClientPriv(pClient) RRClientPtr pRRClient = GetRRClient(pClient)
>
> -/* Initialize the extension */
> -extern _X_EXPORT void
> -RRExtensionInit (void);
> -
> #ifdef RANDR_12_INTERFACE
> /*
> * Set the range of sizes for the screen
> diff --git a/record/record.c b/record/record.c
> index b956b4a..7cad2dd 100644
> --- a/record/record.c
> +++ b/record/record.c
> @@ -38,6 +38,7 @@ and Jim Haggerty of Metheus.
>
> #include "dixstruct.h"
> #include "extnsionst.h"
> +#include "extinit.h"
> #include <X11/extensions/recordproto.h>
> #include "set.h"
> #include "swaprep.h"
> @@ -142,8 +143,6 @@ static int RecordDeleteContext(
> XID /*id*/
> );
>
> -void RecordExtensionInit(void);
> -
> /***************************************************************************/
>
> /* client private stuff */
> diff --git a/render/picturestr.h b/render/picturestr.h
> index 9b37671..fc5068a 100644
> --- a/render/picturestr.h
> +++ b/render/picturestr.h
> @@ -592,8 +592,6 @@ CompositeTriFan (CARD8 op,
> int npoints,
> xPointFixed *points);
>
> -extern _X_EXPORT void RenderExtensionInit (void);
> -
> Bool
> AnimCurInit (ScreenPtr pScreen);
>
> diff --git a/render/render.c b/render/render.c
> index d82e099..f8aadf9 100644
> --- a/render/render.c
> +++ b/render/render.c
> @@ -37,6 +37,7 @@
> #include "pixmapstr.h"
> #include "colormapst.h"
> #include "extnsionst.h"
> +#include "extinit.h"
> #include "servermd.h"
> #include <X11/extensions/render.h>
> #include <X11/extensions/renderproto.h>
> diff --git a/xfixes/xfixes.c b/xfixes/xfixes.c
> index 96d33c0..1420684 100644
> --- a/xfixes/xfixes.c
> +++ b/xfixes/xfixes.c
> @@ -48,6 +48,7 @@
>
> #include "xfixesint.h"
> #include "protocol-versions.h"
> +#include "extinit.h"
>
> static unsigned char XFixesReqCode;
> int XFixesEventBase;
> diff --git a/xfixes/xfixesint.h b/xfixes/xfixesint.h
> index 6ba276e..2b469f0 100644
> --- a/xfixes/xfixesint.h
> +++ b/xfixes/xfixesint.h
> @@ -71,11 +71,6 @@ typedef struct _XFixesClient {
>
> extern int (*ProcXFixesVector[XFixesNumberRequests])(ClientPtr);
>
> -/* Initialize extension at server startup time */
> -
> -void
> -XFixesExtensionInit(void);
> -
> /* Save set */
> int
> ProcXFixesChangeSaveSet(ClientPtr client);
> diff --git a/xkb/xkb.c b/xkb/xkb.c
> index ac0b427..e3ab3d7 100644
> --- a/xkb/xkb.c
> +++ b/xkb/xkb.c
> @@ -36,6 +36,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
> #define XKBSRV_NEED_FILE_FUNCS
> #include <xkbsrv.h>
> #include "extnsionst.h"
> +#include "extinit.h"
> #include "xace.h"
> #include "xkb.h"
> #include "protocol-versions.h"
> diff --git a/xkb/xkb.h b/xkb/xkb.h
> index a526356..f3a60af 100644
> --- a/xkb/xkb.h
> +++ b/xkb/xkb.h
> @@ -27,6 +27,4 @@ extern int ProcXkbGetKbdByName(ClientPtr client);
> extern int ProcXkbGetDeviceInfo(ClientPtr client);
> extern int ProcXkbSetDeviceInfo(ClientPtr client);
> extern int ProcXkbSetDebuggingFlags(ClientPtr client);
> -
> -extern void XkbExtensionInit(void);
> #endif
> --
> 1.7.7.3
>
> _______________________________________________
> xorg-devel at lists.x.org: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: http://lists.x.org/mailman/listinfo/xorg-devel
>
More information about the xorg-devel
mailing list