Re: [Dri-devel] Moving the configs pointer in __GLXscreenConfigsRec (was Re: CVS Update: xc (branch: trunk))
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))
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
[Dri-devel] Moving the configs pointer in __GLXscreenConfigsRec (was Re: CVS Update: xc (branch: trunk))
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. When we start building DRI drivers in the Mesa tree, we'll need to break glxclient.h into two files. One that defines the interfaces that DRI drivers need and one that contains structures and functions internal to libGL. Right now glxclient.h has a bit of both. --- 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