diff options
author | Ian Romanick <[email protected]> | 2005-06-30 16:00:48 +0000 |
---|---|---|
committer | Ian Romanick <[email protected]> | 2005-06-30 16:00:48 +0000 |
commit | c212abf99af494f024b0b981a83350f7ac9821ef (patch) | |
tree | cd96ba38b82a5ecaccb7a7f28fc65168688fc2ce /src/mesa/drivers/dri/unichrome | |
parent | 1ac8ae446af753ec1bdbb789d7b575a72ff56e8f (diff) |
Replace add_newer_entrypoints (src/mesa/main/context.c) with
device-specific code. A new Python script
(src/mesa/glapi/extension_helper.py) generates a list of all
entry-points for all known extensions. Each driver the selects only
the extensions that it needs and enables the via either
driInitExtensions or driInitSingleExtension.
This code has been compile-tested on a drivers, but has only been
run-tested on mga and i915 (on i830 hardware).
These changes were discussed at length on the mesa3d-dev mailing list.
http://marc.theaimsgroup.com/?t=111947074700001&r=1&w=2
Diffstat (limited to 'src/mesa/drivers/dri/unichrome')
-rw-r--r-- | src/mesa/drivers/dri/unichrome/via_context.c | 37 |
1 files changed, 22 insertions, 15 deletions
diff --git a/src/mesa/drivers/dri/unichrome/via_context.c b/src/mesa/drivers/dri/unichrome/via_context.c index ced27af8956..4d673286712 100644 --- a/src/mesa/drivers/dri/unichrome/via_context.c +++ b/src/mesa/drivers/dri/unichrome/via_context.c @@ -60,6 +60,12 @@ #include <stdio.h> #include "macros.h" +#define need_GL_ARB_multisample +#define need_GL_ARB_point_parameters +#define need_GL_EXT_fog_coord +#define need_GL_EXT_secondary_color +#include "extension_helper.h" + #define DRIVER_DATE "20050526" #include "vblank.h" @@ -245,22 +251,23 @@ static void viaBufferSize(GLframebuffer *buffer, GLuint *width, GLuint *height) /* Extension strings exported by the Unichrome driver. */ -static const char * const card_extensions[] = +static const struct dri_extension card_extensions[] = { - "GL_ARB_multitexture", - "GL_ARB_point_parameters", - "GL_ARB_texture_env_add", - "GL_ARB_texture_env_combine", -/* "GL_ARB_texture_env_dot3", */ - "GL_ARB_texture_mirrored_repeat", - "GL_EXT_stencil_wrap", - "GL_EXT_texture_env_combine", -/* "GL_EXT_texture_env_dot3", */ - "GL_EXT_texture_lod_bias", - "GL_EXT_secondary_color", - "GL_EXT_fog_coord", - "GL_NV_blend_square", - NULL + { "GL_ARB_multisample", GL_ARB_multisample_functions }, + { "GL_ARB_multitexture", NULL }, + { "GL_ARB_point_parameters", GL_ARB_point_parameters_functions }, + { "GL_ARB_texture_env_add", NULL }, + { "GL_ARB_texture_env_combine", NULL }, +/* { "GL_ARB_texture_env_dot3", NULL }, */ + { "GL_ARB_texture_mirrored_repeat", NULL }, + { "GL_EXT_fog_coord", GL_EXT_fog_coord_functions }, + { "GL_EXT_secondary_color", GL_EXT_secondary_color_functions }, + { "GL_EXT_stencil_wrap", NULL }, + { "GL_EXT_texture_env_combine", NULL }, +/* { "GL_EXT_texture_env_dot3", NULL }, */ + { "GL_EXT_texture_lod_bias", NULL }, + { "GL_NV_blend_square", NULL }, + { NULL, NULL } }; extern const struct tnl_pipeline_stage _via_fastrender_stage; |