Add new attribute called static_dispatch to the <function> element. This
authorIan Romanick <idr@us.ibm.com>
Tue, 22 Aug 2006 16:34:38 +0000 (16:34 +0000)
committerIan Romanick <idr@us.ibm.com>
Tue, 22 Aug 2006 16:34:38 +0000 (16:34 +0000)
commit4e4b5f40081cb3e4cefe4dce30712d8d330c0774
tree65b722305bb81a0c014903d20cf7d3715fbde83f
parent6423ec914530a84ee16977d95b64116e63eca22c
Add new attribute called static_dispatch to the <function> element.  This
boolean attribute, which defaults to true, determines whether or not a
static dispatch function is available in libGL for applications to link
against.

Ideally, any new functions that are not part of the ABI should not have
directly accessable dispatch functions.  This forces applications to use
glXGetProcAddress to access these functions.  By doing this we can
gracefully remove functions from libGL without breaking the linkage of
applications.

Note that the static dispatch functions are still generated.  However, they
are given names like gl_dispatch_stub_820 and are marked with the "hidden"
linker attribute.

All extension functions added since the previous Mesa release (6.5) have
been marked as 'static_dispatch="false"'.
15 files changed:
src/mesa/glapi/APPLE_vertex_array_object.xml
src/mesa/glapi/gl_API.dtd
src/mesa/glapi/gl_API.xml
src/mesa/glapi/gl_SPARC_asm.py
src/mesa/glapi/gl_XML.py
src/mesa/glapi/gl_apitemp.py
src/mesa/glapi/gl_procs.py
src/mesa/glapi/gl_x86-64_asm.py
src/mesa/glapi/gl_x86_asm.py
src/mesa/glapi/glapi.c
src/mesa/glapi/glapitemp.h
src/mesa/glapi/glprocs.h
src/mesa/sparc/glapi_sparc.S
src/mesa/x86-64/glapi_x86-64.S
src/mesa/x86/glapi_x86.S