Added a variation of testglxgetprocaddress that doesn't pre-load the vendor
library. This forces it to generate a GLX entrypoint at runtime for
glXExampleExtensionFunction.
In testglxgetprocaddress.c, added a call to glXGetClientString so that it will
load the vendor library without having to pre-load it.
Rewrite testglxgetprocaddress to remove the PROC_DEFINES and CHECK_PROC macros.
Aside from being easier to deal with in the debugger, breaking up the
CHECK_PROC macro will be necessary to add test coverage for the GLX stub
generation.
The test function in testglxgetprocaddress uses a display and screen number to
figure out which vendor to dispatch to, so it needs a real, valid display
connection.
Fixes issue #32.
This subtest verifies that glXGetProcAddress() works for the various
classifications of "GetProcAddress-able" functions:
- GLX 1.4 functions with dispatchers implemented directly by the API
library
- GLX 1.4 extension functions with dispatchers implemented by a vendor
loaded by the API library
- Core OpenGL functions with static dispatch stubs in libGLdispatch
- Core OpenGL functions with dynamic dispatch stubs generated by
libGLdispatch
This also tests some assertions about these dispatch stubs; namely that
the core GL dispatch stubs are no-ops if no context is current.