Remove the "If only executable code is distributed..." paragraph from
the license text. Everything now uses a normal MIT license.
The only code from Khronos that's included in libglvnd is the EGL/GL
header and XML files, which do not contain that paragraph.
Fixes https://gitlab.freedesktop.org/glvnd/libglvnd/-/issues/221
Change the glXMakeCurrentTestResults function so that it returns the function
counts in a caller-allocated struct instead of calling malloc internally.
Also removed the GLmakeCurrentTestRequest enum, since there's only one request
anymore.
Aside from simplifying things, this also fixes a memory leak in
testglxmakecurrent, which wasn't freeing the buffer that
glXMakeCurrentTestResults allocated. Now, it can just use a stack-allocated
GLContextCounts struct.
Change glMakeCurrentTestResults to a GLX function instead of a GL function, so
that it can be dispatched using a vendor-provided stub instead of having to
generate one.
Remove the testglxmclate test, and the --late option in testglxmakecurrent,
since that only makes sense when MakeCurrentTestResults was a GL function.
Added a separate test program testglxgetprocaddress_genentry to test the GLX
entrypoint generation by itself instead of lumping that in with
testglxgetprocaddress.
Added a glXCreateContextVendorDUMMY extension function to GLX_dummy to test
using a vendor-provided extension function to create a context. We can't use
glXCreateContextAttribsARB for that now, because it has a dispatch stub in
libGLX itself.
glXCreateContextVendorDUMMY takes the same arguments as
glXCreateContextAttribsARB, so it can also serve as an example for implementing
a dispatch stub for glXCreateContextAttribsARB in a real vendor library.