Re: [Dri-devel] Moving the configs pointer in __GLXscreenConfigsRec (was Re: CVS Update: xc (branch: trunk))

2004-01-31 Thread Alan Hourihane
On Wed, Jan 28, 2004 at 03:05:35PM -0800, Ian Romanick wrote:
 Alan Hourihane wrote:
 
 Log message:
   restore backwards compatibility
 
 Modified files:
   xc/xc/lib/GL/glx/:
 glxclient.h 
 
 Was there an actual breakage?  The __GLXscreenConfigsRec isn't supposed 
 to be used by anything outside libGL.  The location of driScreen 
 shouldn't matter as the driver is given a pointer to that field by libGL.

Forgot to mention. That the call to __driUtilCreateScreen() in all
of the 3D drivers then pull in a bunch of code from lib/GL/dri and just
happens to pull in the code that does the visual matching. So in XFree86
4.3.0 the radeon_dri.so contained the function __driFindGlxConfig() and
referenced GLXscreenConfigs directly. libGL hardly references any code
in the lib/GL/dri directory at all.

The same goes for current versions of the 3D drivers and that they
still pull in a lot of the dri_util.c code and reference it inside
itself rather than leaving it to libGL to sort out.

To sort this mess out, there'll probably need to be function tables passed 
between the 3D driver and libGL. Obviously libGL wants the __DriverAPIRec and
the 3D driver wants a list of dri* functions (probably with versioning).
This way libGL should contain the dri* functions and the 3D driver wouldn't.

Alan.


---
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse activity. February 3-5 in Anaheim, CA.
http://www.eclipsecon.org/osdn
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] Moving the configs pointer in __GLXscreenConfigsRec (was Re: CVS Update: xc (branch: trunk))

2004-01-30 Thread Alan Hourihane
On Wed, Jan 28, 2004 at 03:05:35PM -0800, Ian Romanick wrote:
 Alan Hourihane wrote:
 
 Log message:
   restore backwards compatibility
 
 Modified files:
   xc/xc/lib/GL/glx/:
 glxclient.h 
 
 Was there an actual breakage?  The __GLXscreenConfigsRec isn't supposed 
 to be used by anything outside libGL.  The location of driScreen 
 shouldn't matter as the driver is given a pointer to that field by libGL.
 
Yes, there was an actual breakage. 

The fact is that __driFindGlxConfig() when comparing visuals
got completely bogus information to the requested visual because of
this structure change. This function is in XFree86 4.3.0's libGL and 
references GLXscreenConfigs directly.

Alan.


---
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse activity. February 3-5 in Anaheim, CA.
http://www.eclipsecon.org/osdn
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel