From 67c303fff303f94b62f03a76de97116c6ebcfda9 Mon Sep 17 00:00:00 2001 From: Adam Jackson Date: Wed, 10 Jan 2018 13:05:46 -0500 Subject: [PATCH] miinitext: Load GLX on the mi path Add a stub for Xnest so it continues to link, but otherwise we support GLX on every server so there's no need to make every DDX add it. Signed-off-by: Adam Jackson --- hw/dmx/dmxinit.c | 3 --- hw/kdrive/ephyr/ephyrinit.c | 16 ---------------- hw/vfb/InitOutput.c | 15 --------------- hw/xfree86/dixmods/glxmodule.c | 6 ------ hw/xnest/Init.c | 7 +++++++ hw/xquartz/quartz.c | 21 --------------------- hw/xwayland/xwayland.c | 3 --- hw/xwin/InitOutput.c | 1 - include/extinit.h | 1 + include/glx_extinit.h | 3 +-- mi/miinitext.c | 3 +++ test/Makefile.am | 4 ++++ 12 files changed, 16 insertions(+), 67 deletions(-) diff --git a/hw/dmx/dmxinit.c b/hw/dmx/dmxinit.c index 8f17f4ddf..07154d648 100644 --- a/hw/dmx/dmxinit.c +++ b/hw/dmx/dmxinit.c @@ -536,9 +536,6 @@ static void dmxAddExtensions(void) { const ExtensionModule dmxExtensions[] = { { DMXExtensionInit, DMX_EXTENSION_NAME, NULL }, -#ifdef GLXEXT - { GlxExtensionInit, "GLX", &noGlxExtension }, -#endif }; LoadExtensionList(dmxExtensions, ARRAY_SIZE(dmxExtensions), TRUE); diff --git a/hw/kdrive/ephyr/ephyrinit.c b/hw/kdrive/ephyr/ephyrinit.c index 947a6e8ef..abc35dfca 100644 --- a/hw/kdrive/ephyr/ephyrinit.c +++ b/hw/kdrive/ephyr/ephyrinit.c @@ -58,25 +58,9 @@ InitCard(char *name) KdCardInfoAdd(&ephyrFuncs, 0); } -static const ExtensionModule ephyrExtensions[] = { -#ifdef GLXEXT - { GlxExtensionInit, "GLX", &noGlxExtension }, -#endif -}; - -static -void ephyrExtensionInit(void) -{ - LoadExtensionList(ephyrExtensions, ARRAY_SIZE(ephyrExtensions), TRUE); -} - - void InitOutput(ScreenInfo * pScreenInfo, int argc, char **argv) { - if (serverGeneration == 1) - ephyrExtensionInit(); - KdInitOutput(pScreenInfo, argc, argv); } diff --git a/hw/vfb/InitOutput.c b/hw/vfb/InitOutput.c index 2b7bca5fa..407f2afcd 100644 --- a/hw/vfb/InitOutput.c +++ b/hw/vfb/InitOutput.c @@ -957,27 +957,12 @@ vfbScreenInit(ScreenPtr pScreen, int argc, char **argv) } /* end vfbScreenInit */ -static const ExtensionModule vfbExtensions[] = { -#ifdef GLXEXT - { GlxExtensionInit, "GLX", &noGlxExtension }, -#endif -}; - -static -void vfbExtensionInit(void) -{ - LoadExtensionList(vfbExtensions, ARRAY_SIZE(vfbExtensions), TRUE); -} - void InitOutput(ScreenInfo * screen_info, int argc, char **argv) { int i; int NumFormats = 0; - if (serverGeneration == 1) - vfbExtensionInit(); - /* initialize pixmap formats */ /* must have a pixmap depth to match every screen depth */ diff --git a/hw/xfree86/dixmods/glxmodule.c b/hw/xfree86/dixmods/glxmodule.c index c3d92fa92..2215c8867 100644 --- a/hw/xfree86/dixmods/glxmodule.c +++ b/hw/xfree86/dixmods/glxmodule.c @@ -47,10 +47,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. static MODULESETUPPROTO(glxSetup); -static const ExtensionModule GLXExt[] = { - { GlxExtensionInit, "GLX", &noGlxExtension }, -}; - static XF86ModuleVersionInfo VersRec = { "glx", MODULEVENDORSTRING, @@ -85,7 +81,5 @@ glxSetup(void *module, void *opts, int *errmaj, int *errmin) GlxPushProvider(provider); xorgGlxCreateVendor(); - LoadExtensionList(GLXExt, ARRAY_SIZE(GLXExt), FALSE); - return module; } diff --git a/hw/xnest/Init.c b/hw/xnest/Init.c index e8a700e88..b45685216 100644 --- a/hw/xnest/Init.c +++ b/hw/xnest/Init.c @@ -47,6 +47,13 @@ is" without express or implied warranty. Bool xnestDoFullGeneration = True; +#ifdef GLXEXT +void +GlxExtensionInit(void) +{ +} +#endif + void InitOutput(ScreenInfo * screen_info, int argc, char *argv[]) { diff --git a/hw/xquartz/quartz.c b/hw/xquartz/quartz.c index c8ea3bf8b..980aa4a36 100644 --- a/hw/xquartz/quartz.c +++ b/hw/xquartz/quartz.c @@ -149,25 +149,6 @@ QuartzSetupScreen(int index, return TRUE; } -static const ExtensionModule quartzExtensions[] = { - /* PseudoramiX needs to be done before RandR, so - * it is in miinitext.c until it can be reordered. - * { PseudoramiXExtensionInit, "PseudoramiX", &noPseudoramiXExtension }, - */ -#ifdef GLXEXT - {GlxExtensionInit, "GLX", &noGlxExtension}, -#endif -}; - -/* - * QuartzExtensionInit - * Initialises XQuartz-specific extensions. - */ -static void QuartzExtensionInit(void) -{ - LoadExtensionList(quartzExtensions, ARRAY_SIZE(quartzExtensions), TRUE); -} - /* * QuartzInitOutput * Quartz display initialization. @@ -208,8 +189,6 @@ QuartzInitOutput(int argc, // Do display mode specific initialization quartzProcs->DisplayInit(); - - QuartzExtensionInit(); } /* diff --git a/hw/xwayland/xwayland.c b/hw/xwayland/xwayland.c index 7aba7bae2..73bc47a67 100644 --- a/hw/xwayland/xwayland.c +++ b/hw/xwayland/xwayland.c @@ -1067,9 +1067,6 @@ xwl_log_handler(const char *format, va_list args) } static const ExtensionModule xwayland_extensions[] = { -#ifdef GLXEXT - { GlxExtensionInit, "GLX", &noGlxExtension }, -#endif #ifdef XF86VIDMODE { xwlVidModeExtensionInit, XF86VIDMODENAME, &noXFree86VidModeExtension }, #endif diff --git a/hw/xwin/InitOutput.c b/hw/xwin/InitOutput.c index 95fc68bea..ef19f7941 100644 --- a/hw/xwin/InitOutput.c +++ b/hw/xwin/InitOutput.c @@ -113,7 +113,6 @@ static PixmapFormatRec g_PixmapFormats[] = { static const ExtensionModule xwinExtensions[] = { #ifdef GLXEXT - { GlxExtensionInit, "GLX", &noGlxExtension }, #ifdef XWIN_WINDOWS_DRI { WindowsDRIExtensionInit, "Windows-DRI", &noDriExtension }, #endif diff --git a/include/extinit.h b/include/extinit.h index 67e300d18..46081ad30 100644 --- a/include/extinit.h +++ b/include/extinit.h @@ -78,6 +78,7 @@ extern void GEExtensionInit(void); #ifdef GLXEXT extern _X_EXPORT Bool noGlxExtension; +extern void GlxExtensionInit(void); #endif #ifdef PANORAMIX diff --git a/include/glx_extinit.h b/include/glx_extinit.h index 32b8fcf72..07f3cc855 100644 --- a/include/glx_extinit.h +++ b/include/glx_extinit.h @@ -27,9 +27,8 @@ #define GLX_EXT_INIT_H /* this is separate due to sdksyms pulling in extinit.h */ +/* XXX this comment no longer makes sense i think */ #ifdef GLXEXT -extern void GlxExtensionInit(void); - typedef struct __GLXprovider __GLXprovider; typedef struct __GLXscreen __GLXscreen; struct __GLXprovider { diff --git a/mi/miinitext.c b/mi/miinitext.c index ce9325e29..c8162337c 100644 --- a/mi/miinitext.c +++ b/mi/miinitext.c @@ -298,6 +298,9 @@ static const ExtensionModule staticExtensions[] = { #ifdef XSELINUX {SELinuxExtensionInit, "SELinux", &noSELinuxExtension}, #endif +#ifdef GLXEXT + {GlxExtensionInit, "GLX", &noGlxExtension}, +#endif }; static ExtensionModule *ExtensionModuleList = NULL; diff --git a/test/Makefile.am b/test/Makefile.am index 2dbb2df03..12ac327a3 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -153,6 +153,10 @@ if !SPECIAL_DTRACE_OBJECTS tests_LDADD += $(top_builddir)/os/libos.la endif +if GLX +tests_LDADD += $(top_builddir)/glx/libglxvnd.la +endif + BUILT_SOURCES = sdksyms.c CLEANFILES += sdksyms.c