glapi: Mark GLX extensions as window_system="glX".

We were already doing this for some GLX extensions, but not others.
This patch makes our use of window_system="glX" consistent.
glapi: annotate XML with deprecated="3.1" for deprecated functions.

Future patches will use this annotation when code generating
_mesa_create_exec_table(), to determine which functions should be
skipped in core contexts.
glapi: annotate XML with exec="skip" for unimplemented functions.

Future patches will use this annotation when code generating
_mesa_create_exec_table(), to determine which functions should be
skipped because they aren't implemented by Mesa.
glapi: annotate XML with exec="dynamic" for dynamic functions.

Future patches will use this annotation when code generating
_mesa_create_exec_table(), to determine which functions should be
skipped because Mesa dispatches them differently depending on GL
state.
glapi: annotate XML with exec="loopback" for loopback functions.

Future patches will use this annotation when code generating
_mesa_create_exec_table(), to determine which functions should be
dispatched to functions in api_loopback.c.
glapi: annotate XML with exec="{es,check}" for special GLES1 functions.

Future patches will use this annotation when code generating
_mesa_create_exec_table(), to determine which functions should be
dispatched to ES-specific implementations.  exec="es" indicates that
the ES-specific implementation has a name beginning with "_es_"
(e.g. _es_QueryMatrixxOES), and exec="check" indicates that the
ES-specific implementation has a name beginning with "_check_"
(e.g. _check_GetTexGenxvOES).
glapi: annotate XML with desktop="false" for GLES-only functions.

Future patches will use this annotation when code generating
_mesa_create_exec_table(), to determine which functions should be
skipped when the API is desktop GL.
glapi: Annotate XML with function name suffix anomalies.

When the XML lists one or more GL api functions as aliases for another
GL function, the mesa function that implements the functionality is
usually named after the canonical version of the function (the one
that is the target of the aliases).  For example, FogCoordd is listed
as an alias of FogCoorddEXT, and the Mesa function implementing the
functionality is called loopback_FogCoorddEXT.

However, there are exceptions.  For example, Enablei is listed as an
alias of EnableIndexedEXT, but the Mesa function implementing the
functionality is called _mesa_EnableIndexed.

To account for these anomalies, this patch annotates the XML with
"mesa_name" attributes, which describe how to adjust the function name
to find the corresponding Mesa function.

For example:

  <function name="EnableIndexedEXT" mesa_name="-EXT">...</function>
  <function name="IsProgramNV" mesa_name="-NV+ARB">...</function>

means that EnableIndexedEXT is implemented by a Mesa function called
_mesa_EnableIndexed, and IsProgramNV is implemented by a Mesa function
called _mesa_IsProgramARB.

Future patches will use this annotation when code generating
_mesa_create_exec_table(), to determine the name of the Mesa function
that should be stored in each dispatch table entry.
dispatch: De-static loopback functions.

This patch removes the "static" modifier from the functions defined in
api_loopback.c, and adds them to the api_loopback.h header, so that
api_exec.c will be able to refer to them directly.
dispatch: De-static other dispatch functions.

This patch removes the "static" modifier from the API functions
declared in src/mesa/main/*.c files, and adds them to the
corresponding headers, so that api_exec will be able to refer to them
directly.
WIP: gl_genexec.py first attempt
Get conditions right.  TODO: disentangle.
Fix loopback flavor
Handle mesa_name
WIP: really build it!