diff --git a/Xext/glx/extension_string.h b/Xext/glx/extension_string.h index 5c8f981d94..af846df6f5 100644 --- a/Xext/glx/extension_string.h +++ b/Xext/glx/extension_string.h @@ -34,6 +34,8 @@ #ifndef GLX_EXTENSION_STRING_H #define GLX_EXTENSION_STRING_H +#include + enum { /* GLX_ARB_get_proc_address is implemented on the client. */ ARB_context_flush_control_bit = 0, @@ -74,9 +76,16 @@ enum { #define __GLX_EXT_BYTES ((__NUM_GLX_EXTS + 7) / 8) +/* exported for glamor */ +_X_EXPORT extern int __glXGetExtensionString(const unsigned char *enable_bits, char *buffer); +/* exported for glamor */ +_X_EXPORT extern void __glXEnableExtension(unsigned char *enable_bits, const char *ext); + +/* exported for glamor */ +_X_EXPORT extern void __glXInitExtensionEnableBits(unsigned char *enable_bits); #endif /* GLX_EXTENSION_STRING_H */ diff --git a/Xext/glx/glxscreens.h b/Xext/glx/glxscreens.h index a5a98ec2f9..25db0c46b1 100644 --- a/Xext/glx/glxscreens.h +++ b/Xext/glx/glxscreens.h @@ -146,7 +146,10 @@ struct __GLXscreen { unsigned char glx_enable_bits[__GLX_EXT_BYTES]; }; -void __glXScreenInit(__GLXscreen * screen, ScreenPtr pScreen); -void __glXScreenDestroy(__GLXscreen * screen); +/* exported for glamor */ +_X_EXPORT void __glXScreenInit(__GLXscreen * screen, ScreenPtr pScreen); + +/* exported for glamor */ +_X_EXPORT void __glXScreenDestroy(__GLXscreen * screen); #endif /* !__GLX_screens_h__ */ diff --git a/Xext/glx/glxserver.h b/Xext/glx/glxserver.h index b7862f6762..c1db2b70bc 100644 --- a/Xext/glx/glxserver.h +++ b/Xext/glx/glxserver.h @@ -93,7 +93,9 @@ void glxResumeClients(void); typedef void (*glx_func_ptr)(void); typedef glx_func_ptr (*glx_gpa_proc)(const char *); -void __glXsetGetProcAddress(glx_gpa_proc get_proc_address); + +/* exported for glamor */ +_X_EXPORT void __glXsetGetProcAddress(glx_gpa_proc get_proc_address); void *__glGetProcAddress(const char *); void diff --git a/Xext/glx/glxutil.h b/Xext/glx/glxutil.h index 55f3a82b3b..32b4e7f9c1 100644 --- a/Xext/glx/glxutil.h +++ b/Xext/glx/glxutil.h @@ -33,6 +33,8 @@ #include "Xext/glx/glxserver.h" +/* exported for glamor */ +_X_EXPORT extern GLboolean __glXDrawableInit(__GLXdrawable * drawable, __GLXscreen * screen, DrawablePtr pDraw, int type, XID drawID, diff --git a/hw/xfree86/glamor_egl/meson.build b/hw/xfree86/glamor_egl/meson.build index da0a348961..4388a941e3 100644 --- a/hw/xfree86/glamor_egl/meson.build +++ b/hw/xfree86/glamor_egl/meson.build @@ -15,7 +15,7 @@ shared_module( libdrm_dep, gbm_dep, ], - link_with: [glamor, libxserver_glx], + link_with: [glamor ], install: true, install_dir: module_abi_dir, diff --git a/include/glx_extinit.h b/include/glx_extinit.h index 42895e1dcd..65e3b20637 100644 --- a/include/glx_extinit.h +++ b/include/glx_extinit.h @@ -41,6 +41,8 @@ struct __GLXprovider { }; extern __GLXprovider __glXDRISWRastProvider; +/* exported for glamor */ +_X_EXPORT void GlxPushProvider(__GLXprovider * provider); void xorgGlxCreateVendor(void);