[Mesa-dev] Vendor-neutral OpenGL dispatching library

Brian Nguyen brnguyen at nvidia.com
Wed Aug 28 08:46:13 PDT 2013


Last September, Andy Ritger proposed updating the Linux OpenGL ABI to allow for
multiple vendors to co-exist within a single process and OpenGL applications to
dispatch commands to different vendors with per-context granularity. The current
proposal [1] calls for a vendor-neutral "API library" which acts as an
intermediate layer between the application and OpenGL vendor implementations
that manages this dispatching.

I have written a work-in-progress library based on this proposal which
implements this API library for GLX. This library leverages some code from
Mesa's glapi module to handle TLS and core OpenGL dispatching, as well as the
BSD-licensed uthash library [2] and the X.org Xserver's list.h [3]. The library
source can be found at this location:

http://github.com/NVIDIA/libglvnd

In this repository, the file README.md describes the library's code organization
and architecture as well as remaining open issues and implementation TODOs.
What do people think about this?  We are hoping to gather feedback to help
facilitate discussion of the implementation of the new ABI during XDC 2013.
Any concerns, suggestions, or other comments would be much appreciated.

Thanks,
Brian

[1] https://github.com/aritger/linux-opengl-abi-proposal/blob/master/linux-opengl-abi-proposal.txt
[2] http://troydhanson.github.io/uthash/
[3] http://cgit.freedesktop.org/xorg/xserver/tree/include/list.h?id=74469895e39fa38337f59edd64c4031ab9bb51d8





-----------------------------------------------------------------------------------
This email message is for the sole use of the intended recipient(s) and may contain
confidential information.  Any unauthorized review, use, disclosure or distribution
is prohibited.  If you are not the intended recipient, please contact the sender by
reply email and destroy all copies of the original message.
-----------------------------------------------------------------------------------


More information about the mesa-dev mailing list