mesa: Allow contexts of different APIs to coexist.
authorChia-I Wu <olv@lunarg.com>
Tue, 26 Oct 2010 03:31:37 +0000 (11:31 +0800)
committerChia-I Wu <olv@lunarg.com>
Tue, 2 Nov 2010 06:43:35 +0000 (14:43 +0800)
commit16ee7a55ae269612263468195f2af998cb9ef695
tree868970ddf003098218bb905309f6d592e6b271fc
parentfdede1efaae32d23caf3b351cc766df12e3c5f8d
mesa: Allow contexts of different APIs to coexist.

This effectively redoes 1741ddb747ca0be284315adb4b6fe67ddf292d03 in a
way that allows contexts of different APIs to coexist.

First, the changes to the remap table are reverted.  The remap table
(driDispatchRemapTable) is always initialized in the same way regardless
of the context API.

es_generator.py is updated to use a local remap table, whose sole
purpose is to help initialize its dispatch table.  The local remap table
and the global one are always different, as they use different
glapidispatch.h.  But the dispatch tables initialized by both remap
tables are always compatible with glapi (libGL.so).

Finally, the semantics of one_time_init are changed to per-api one-time
initialization.
src/mesa/main/api_exec.c
src/mesa/main/context.c
src/mesa/main/es_generator.py
src/mesa/main/remap.c
src/mesa/main/remap.h