mesa/src/glx
Jon Turney 533b3530c1 direct-to-native-GL for GLX clients on Cygwin ("Windows-DRI")
Structurally, this is very similar to the existing Apple-DRI code, except I
have chosen to implement this using the __GLXDRIdisplay, etc. vtables (as
suggested originally in [1]), rather than a maze of ifdefs.  This also means
that LIBGL_ALWAYS_SOFTWARE and LIBGL_ALWAYS_INDIRECT work as expected.

[1] https://lists.freedesktop.org/archives/mesa-dev/2010-May/000756.html

This adds:

* the Windows-DRI extension protocol headers and the windowsdriproto.pc
file, for use in building the Windows-DRI extension for the X server

* a Windows-DRI extension helper client library

* a Windows-specific DRI implementation for GLX clients

The server is queried for Windows-DRI extension support on the screen before
using it (to detect the case where WGL is disabled or can't be activated).

The server is queried for fbconfigID to pixelformatindex mapping, which is
used to augment glx_config.

The server is queried for a native handle for the drawable (which is of a
different type for windows, pixmaps and pbuffers), which is used to augment
__GLXDRIdrawable.

Various GLX extensions are enabled depending on if the equivalent WGL
extension is available.
2016-09-15 13:14:43 +01:00
..
apple glx: apple specific occurences of dummyContext check 2016-08-15 09:24:10 +03:00
tests glx: fix error code when there is no context bound 2016-08-15 09:24:10 +03:00
windows direct-to-native-GL for GLX clients on Cygwin ("Windows-DRI") 2016-09-15 13:14:43 +01:00
.gitignore Clean up .gitignore files 2013-01-10 22:01:31 +01:00
applegl_glx.c Fix build of appleglx 2014-05-23 15:24:07 +01:00
clientattrib.c glx: Check malloc return value before accessing memory in glx/clientattrib.c 2013-12-03 14:35:41 -07:00
clientinfo.c glx: Add missing null check in __glX_send_client_info() 2014-02-07 08:14:05 -07:00
compsize.c glx: Fix image size computation for EXT_texture_integer (v2) 2015-07-31 12:32:16 -04:00
create_context.c glx: Store the RENDER_TYPE in indirect rendering 2013-07-18 16:03:42 -07:00
dri2.c glx: do not leak the dri2 extension information 2015-02-18 11:02:25 +00:00
dri2.h glx: Fix build since 679c2ef "glx/drisw: add support for DRI2rendererQueryExtension", when only building drisw renderer 2014-08-21 16:59:48 +01:00
dri2_glx.c dri2: Check for dummyContext to see if the glx_context is valid 2016-04-27 13:03:11 +01:00
dri2_priv.h mesa_glinterop: remove mesa_glinterop typedefs 2016-05-30 17:53:44 +01:00
dri3_glx.c dri3: Check for dummyContext to see if the glx_context is valid 2016-04-27 13:03:34 +01:00
dri3_priv.h mesa_glinterop: remove mesa_glinterop typedefs 2016-05-30 17:53:44 +01:00
dri_common.c glx: update to updated version of EXT_create_context_es2_profile 2016-02-03 15:44:51 -05:00
dri_common.h glx: Include util/macros.h instead of redefining PRINTFLIKE. 2015-04-13 12:03:33 +01:00
dri_common_interop.c mesa_glinterop: remove mesa_glinterop typedefs 2016-05-30 17:53:44 +01:00
dri_common_query_renderer.c mesa/glx: Resolve GCC sign-compare warning. 2015-08-18 11:34:43 -07:00
dri_glx.c glx: Implement the libglvnd interface. 2016-05-30 16:29:49 +01:00
dri_sarea.h include: move sarea.h next to it's only user 2014-08-21 21:47:37 +01:00
drisw_glx.c glx: update to updated version of EXT_create_context_es2_profile 2016-02-03 15:44:51 -05:00
drisw_priv.h glx/drisw: add support for DRI2rendererQueryExtension 2014-08-15 17:35:37 +01:00
driwindows_glx.c direct-to-native-GL for GLX clients on Cygwin ("Windows-DRI") 2016-09-15 13:14:43 +01:00
eval.c Retire miniglx and move the actual glx code up to src/glx 2010-02-09 09:58:36 -05:00
g_glxglvnddispatchfuncs.c glx/glvnd: remove the final if defined($extension) guards 2016-05-30 17:53:44 +01:00
g_glxglvnddispatchindices.h glx: Implement the libglvnd interface. 2016-05-30 16:29:49 +01:00
glx_error.c glx: Don't use current context in __glXSendError 2016-08-17 17:16:34 +09:00
glx_error.h glx: Don't enclose includes inside extern "C" { }. 2016-04-26 21:28:34 +01:00
glx_pbuffer.c glx: fix error code when there is no context bound 2016-08-15 09:24:10 +03:00
glx_query.c glx: Unifdef USE_XCB. 2012-10-09 14:32:02 -07:00
glxclient.h direct-to-native-GL for GLX clients on Cygwin ("Windows-DRI") 2016-09-15 13:14:43 +01:00
glxcmds.c glx: apple specific occurences of dummyContext check 2016-08-15 09:24:10 +03:00
glxconfig.c Don't cast the return value of malloc/realloc 2012-09-05 22:28:50 -07:00
glxconfig.h glx/dri: add initial dri interface for GLX_EXT_framebuffer_sRGB. 2011-03-06 20:06:42 +10:00
glxcurrent.c glx: Call __glXInitVertexArrayState() with a usable gc. 2016-07-08 14:02:56 -07:00
glxext.c direct-to-native-GL for GLX clients on Cygwin ("Windows-DRI") 2016-09-15 13:14:43 +01:00
glxextensions.c glx: update to updated version of EXT_create_context_es2_profile 2016-02-03 15:44:51 -05:00
glxextensions.h glx: Don't enclose includes inside extern "C" { }. 2016-04-26 21:28:34 +01:00
glxglvnd.c glx/glvnd: list the strcmp arguments in correct order 2016-09-05 11:59:07 +01:00
glxglvnd.h glx: Implement the libglvnd interface. 2016-05-30 16:29:49 +01:00
glxglvnddispatchfuncs.h glx: Implement the libglvnd interface. 2016-05-30 16:29:49 +01:00
glxhash.c Retire miniglx and move the actual glx code up to src/glx 2010-02-09 09:58:36 -05:00
glxhash.h Retire miniglx and move the actual glx code up to src/glx 2010-02-09 09:58:36 -05:00
indirect_glx.c glx: Call __glXInitVertexArrayState() with a usable gc. 2016-07-08 14:02:56 -07:00
indirect_init.h Fix invalid extern "C" around header inclusion. 2015-03-05 10:21:40 -08:00
indirect_texture_compression.c mesa: Standardize names of OpenGL functions. 2012-11-12 10:53:57 -08:00
indirect_transpose_matrix.c mesa: Standardize names of OpenGL functions. 2012-11-12 10:53:57 -08:00
indirect_vertex_array.c glx: Fix for commit 2c86668694. 2016-07-08 16:46:17 -07:00
indirect_vertex_array.h Retire miniglx and move the actual glx code up to src/glx 2010-02-09 09:58:36 -05:00
indirect_vertex_array_priv.h glx: Fix indirect multi-texture GL_DOUBLE coordinate arrays. 2016-07-08 14:03:16 -07:00
indirect_vertex_program.c mesa: Standardize names of OpenGL functions. 2012-11-12 10:53:57 -08:00
indirect_window_pos.c mesa: Standardize names of OpenGL functions. 2012-11-12 10:53:57 -08:00
Makefile.am direct-to-native-GL for GLX clients on Cygwin ("Windows-DRI") 2016-09-15 13:14:43 +01:00
packrender.h glx: Avoid aliasing violations. 2016-07-26 12:12:27 -07:00
packsingle.h glx: Avoid aliasing violations. 2016-07-26 12:12:27 -07:00
pixel.c glx: Rename __GLXcontext and __GLXdisplayPrivate to struct types. 2010-07-28 16:45:25 -04:00
pixelstore.c glx: Use _mesa_lroundevenf() in glPixelStoref(). 2015-08-04 10:33:16 -07:00
query_renderer.c glx: fix error code when there is no context bound 2016-08-15 09:24:10 +03:00
render2.c Fix build of appleglx 2014-05-23 15:24:07 +01:00
renderpix.c Don't cast the return value of malloc/realloc 2012-09-05 22:28:50 -07:00
SConscript scons: whitespace cleanup 2016-05-25 12:23:12 -06:00
single2.c Fix a few typos 2015-04-27 17:28:29 +03:00
singlepix.c mesa: remove empty glthread.h file 2014-03-03 13:08:59 -07:00
vertarr.c Fix build of appleglx 2014-05-23 15:24:07 +01:00
XF86dri.c Fix a few typos 2015-04-27 17:28:29 +03:00
xf86dri.h s/Tungsten Graphics/VMware/ 2014-01-17 20:00:32 +00:00
xf86dristr.h s/Tungsten Graphics/VMware/ 2014-01-17 20:00:32 +00:00
xfont.c darwin: build fix 2015-02-10 22:22:33 -08:00