summaryrefslogtreecommitdiff
path: root/src/mesa/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/drivers')
-rw-r--r--src/mesa/drivers/common/driverfuncs.c6
-rw-r--r--src/mesa/drivers/dri/common/extension_helper.h38
2 files changed, 44 insertions, 0 deletions
diff --git a/src/mesa/drivers/common/driverfuncs.c b/src/mesa/drivers/common/driverfuncs.c
index 9838e0b5ec..3ccbe54817 100644
--- a/src/mesa/drivers/common/driverfuncs.c
+++ b/src/mesa/drivers/common/driverfuncs.c
@@ -43,6 +43,7 @@
#include "fbobject.h"
#include "texrender.h"
#endif
+#include "arrayobj.h"
#include "driverfuncs.h"
#include "tnl/tnl.h"
@@ -220,6 +221,11 @@ _mesa_init_driver_functions(struct dd_function_table *driver)
driver->BeginQuery = NULL;
driver->EndQuery = NULL;
+ /* APPLE_vertex_array_object */
+ driver->NewArrayObject = _mesa_new_array_object;
+ driver->DeleteArrayObject = _mesa_delete_array_object;
+ driver->BindArrayObject = NULL;
+
/* T&L stuff */
driver->NeedValidate = GL_FALSE;
driver->ValidateTnlModule = NULL;
diff --git a/src/mesa/drivers/dri/common/extension_helper.h b/src/mesa/drivers/dri/common/extension_helper.h
index c21607c6be..6c8f71d66a 100644
--- a/src/mesa/drivers/dri/common/extension_helper.h
+++ b/src/mesa/drivers/dri/common/extension_helper.h
@@ -397,6 +397,13 @@ static const char UniformMatrix4fvARB_names[] =
"";
#endif
+#if defined(need_GL_APPLE_vertex_array_object)
+static const char DeleteVertexArraysAPPLE_names[] =
+ "ip\0" /* Parameter signature */
+ "glDeleteVertexArraysAPPLE\0"
+ "";
+#endif
+
#if defined(need_GL_SGIX_instruments)
static const char ReadInstrumentsSGIX_names[] =
"i\0" /* Parameter signature */
@@ -2472,6 +2479,13 @@ static const char ReplacementCodeuivSUN_names[] =
"";
#endif
+#if defined(need_GL_APPLE_vertex_array_object)
+static const char GenVertexArraysAPPLE_names[] =
+ "ip\0" /* Parameter signature */
+ "glGenVertexArraysAPPLE\0"
+ "";
+#endif
+
#if defined(need_GL_VERSION_1_4) || defined(need_GL_ARB_window_pos) || defined(need_GL_MESA_window_pos)
static const char WindowPos2iMESA_names[] =
"ii\0" /* Parameter signature */
@@ -3775,6 +3789,13 @@ static const char TexCoord4fVertex4fSUN_names[] =
"";
#endif
+#if defined(need_GL_APPLE_vertex_array_object)
+static const char BindVertexArrayAPPLE_names[] =
+ "i\0" /* Parameter signature */
+ "glBindVertexArrayAPPLE\0"
+ "";
+#endif
+
#if defined(need_GL_ARB_vertex_program)
static const char GetProgramLocalParameterdvARB_names[] =
"iip\0" /* Parameter signature */
@@ -3806,6 +3827,13 @@ static const char BlendFuncSeparateEXT_names[] =
"";
#endif
+#if defined(need_GL_APPLE_vertex_array_object)
+static const char IsVertexArrayAPPLE_names[] =
+ "i\0" /* Parameter signature */
+ "glIsVertexArrayAPPLE\0"
+ "";
+#endif
+
#if defined(need_GL_NV_vertex_program)
static const char ProgramParameters4dvNV_names[] =
"iiip\0" /* Parameter signature */
@@ -4606,6 +4634,16 @@ static const struct dri_extension_function GL_3DFX_tbuffer_functions[] = {
};
#endif
+#if defined(need_GL_APPLE_vertex_array_object)
+static const struct dri_extension_function GL_APPLE_vertex_array_object_functions[] = {
+ { DeleteVertexArraysAPPLE_names, DeleteVertexArraysAPPLE_remap_index, 820 },
+ { GenVertexArraysAPPLE_names, GenVertexArraysAPPLE_remap_index, 821 },
+ { BindVertexArrayAPPLE_names, BindVertexArrayAPPLE_remap_index, 819 },
+ { IsVertexArrayAPPLE_names, IsVertexArrayAPPLE_remap_index, 822 },
+ { NULL, 0, 0 }
+};
+#endif
+
#if defined(need_GL_ARB_draw_buffers)
static const struct dri_extension_function GL_ARB_draw_buffers_functions[] = {
{ DrawBuffersARB_names, DrawBuffersARB_remap_index, 413 },