diff options
| author | Kristian Høgsberg <krh@redhat.com> | 2008-02-29 16:42:29 -0500 | 
|---|---|---|
| committer | Kristian Høgsberg <krh@redhat.com> | 2008-02-29 16:42:29 -0500 | 
| commit | 3c5a1e4c2d20da0e8581df22d82a45a4156e0894 (patch) | |
| tree | e180f9d3b9553be30b3adce29ae399e14a4aca40 /src | |
| parent | 51cd168da47bcc8d5453112745862bf9fbd03239 (diff) | |
Update libGL DRI loader to latest DRI interface changes.
Diffstat (limited to 'src')
| -rw-r--r-- | src/glx/x11/glxclient.h | 3 | ||||
| -rw-r--r-- | src/glx/x11/glxcmds.c | 48 | ||||
| -rw-r--r-- | src/glx/x11/glxext.c | 29 | 
3 files changed, 22 insertions, 58 deletions
diff --git a/src/glx/x11/glxclient.h b/src/glx/x11/glxclient.h index 7054f3cc31..002f7693a0 100644 --- a/src/glx/x11/glxclient.h +++ b/src/glx/x11/glxclient.h @@ -714,9 +714,6 @@ extern char *__glXstrdup(const char *str);  extern const char __glXGLClientVersion[];  extern const char __glXGLClientExtensions[]; -/* Determine the internal API version */ -extern int __glXGetInternalVersion(void); -  /* Get the unadjusted system time */  extern int __glXGetUST( int64_t * ust ); diff --git a/src/glx/x11/glxcmds.c b/src/glx/x11/glxcmds.c index 3b7b7b94c3..1bcfb94030 100644 --- a/src/glx/x11/glxcmds.c +++ b/src/glx/x11/glxcmds.c @@ -2894,54 +2894,6 @@ PUBLIC void (*glXGetProcAddress(const GLubyte *procName))( void )  #ifdef GLX_DIRECT_RENDERING  /** - * Retrieves the verion of the internal libGL API in YYYYMMDD format.  This - * might be used by the DRI drivers to determine how new libGL is at runtime. - * Drivers should not call this function directly.  They should instead use - * \c glXGetProcAddress to obtain a pointer to the function. - *  - * \returns An 8-digit decimal number representing the internal libGL API in - *          YYYYMMDD format. - *  - * \sa glXGetProcAddress, PFNGLXGETINTERNALVERSIONPROC - * - * \since Internal API version 20021121. - */ -int __glXGetInternalVersion(void) -{ -    /* History: -     * 20021121 - Initial version -     * 20021128 - Added __glXWindowExists() function -     * 20021207 - Added support for dynamic GLX extensions, -     *            GLX_SGI_swap_control, GLX_SGI_video_sync, -     *            GLX_OML_sync_control, and GLX_MESA_swap_control. -     *            Never officially released.  Do NOT test against -     *            this version.  Use 20030317 instead. -     * 20030317 - Added support GLX_SGIX_fbconfig, -     *            GLX_MESA_swap_frame_usage, GLX_OML_swap_method, -     *            GLX_{ARB,SGIS}_multisample, and -     *            GLX_SGIX_visual_select_group. -     * 20030606 - Added support for GLX_SGI_make_current_read. -     * 20030813 - Made support for dynamic extensions multi-head aware. -     * 20030818 - Added support for GLX_MESA_allocate_memory in place of the -     *            deprecated GLX_NV_vertex_array_range & GLX_MESA_agp_offset -     *            interfaces. -     * 20031201 - Added support for the first round of DRI interface changes. -     *            Do NOT test against this version!  It has binary -     *            compatibility bugs, use 20040317 instead. -     * 20040317 - Added the 'mode' field to __DRIcontextRec. -     * 20040415 - Added support for bindContext3 and unbindContext3. -     * 20040602 - Add __glXGetDrawableInfo.  I though that was there -     *            months ago. :( -     * 20050727 - Gut all the old interfaces.  This breaks compatability with -     *            any DRI driver built to any previous version. -     * 20060314 - Added support for GLX_MESA_copy_sub_buffer. -     * 20070105 - Added support for damage reporting. -     */ -    return 20070105; -} - - -/**   * Get the unadjusted system time (UST).  Currently, the UST is measured in   * microseconds since Epoc.  The actual resolution of the UST may vary from   * system to system, and the units may vary from release to release. diff --git a/src/glx/x11/glxext.c b/src/glx/x11/glxext.c index b98d48d22d..7eef38446b 100644 --- a/src/glx/x11/glxext.c +++ b/src/glx/x11/glxext.c @@ -781,18 +781,36 @@ __glXDRIGetDrawableInfo(__DRIdrawable *drawable,  /**   * Table of functions exported by the loader to the driver.   */ -static const __DRIinterfaceMethods interface_methods = { +static const __DRIcontextModesExtension contextModesExtension = { +    { __DRI_CONTEXT_MODES, __DRI_CONTEXT_MODES_VERSION },      _gl_context_modes_create,      _gl_context_modes_destroy, +}; -    __glXDRIGetDrawableInfo, - +static const __DRIsystemTimeExtension systemTimeExtension = { +    { __DRI_SYSTEM_TIME, __DRI_SYSTEM_TIME_VERSION },      __glXGetUST,      __driGetMscRateOML, +}; + +static const __DRIgetDrawableInfoExtension getDrawableInfoExtension = { +    { __DRI_GET_DRAWABLE_INFO, __DRI_GET_DRAWABLE_INFO_VERSION }, +    __glXDRIGetDrawableInfo +}; +static const __DRIdamageExtension damageExtension = { +    { __DRI_DAMAGE, __DRI_DAMAGE_VERSION },      __glXReportDamage,  }; +static const __DRIextension *loader_extensions[] = { +    &contextModesExtension.base, +    &systemTimeExtension.base, +    &getDrawableInfoExtension.base, +    &damageExtension.base, +    NULL +}; +  /** @@ -830,8 +848,6 @@ CallCreateNewScreen(Display *dpy, int scrn, __GLXscreenConfigs *psc,      int   status;      const char * err_msg;      const char * err_extra; -    int api_ver = __glXGetInternalVersion(); -      dri_version.major = driDpy->private->driMajor;      dri_version.minor = driDpy->private->driMinor; @@ -945,8 +961,7 @@ CallCreateNewScreen(Display *dpy, int scrn, __GLXscreenConfigs *psc,  							     & framebuffer,  							     pSAREA,  							     fd, -							     api_ver, -							     & interface_methods, +							     loader_extensions,  							     & driver_modes );  				    filter_modes(&psc->configs, driver_modes);  | 
