Skip to content

Pull core GL dispatch management out of libglxabi.h

Kyle Brenneman requested to merge github/fork/bnguyen0/master into master

Created by: bnguyen0

Move the relevant function exports into a separate file, GLdispatchABI.h, which is included by libglxabi.h. This file uses native GLdispatch types, and defines a separate __GLdispatchExports struct which is added as a field to __GLXapiexports. This allows us to do some additional cleanup:

  • In libglxgldispatch.c, remove wrapper functions and make remaining wrapper functions static. Now glxgldispatch.h defines a single __GLdispatchExports table.
  • In libglxmappings.c, replace static initialization of glxExportsTable with one-time runtime initialization of the table. This copies the table defined in glxgldispatch.h to glxExportsTable at the appropriate time.
  • In libglxmappings.c, use __glDispatchCreateTable() directly to create the initial dispatch table.
  • In libglxnoopdefs.h, remove unnecessary includes of libglxabipriv.h and libglxnoop.h.

Signed-Off-By: Brian Nguyen brnguyen@nvidia.com

Merge request reports