Skip to content
  • Jon Turney's avatar
    direct-to-native-GL for GLX clients on Cygwin ("Windows-DRI") · 533b3530
    Jon Turney authored
    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.
    533b3530