[Mesa-dev] [PATCH 2/4] mesa: drop APPLE_vertex_array_object support

Ian Romanick idr at freedesktop.org
Tue May 16 00:51:39 UTC 2017


On 05/15/2017 04:06 PM, Timothy Arceri wrote:
> On 16/05/17 08:13, Ian Romanick wrote:
>> On 04/23/2017 10:28 PM, Timothy Arceri wrote:
>>
>>> diff --git a/src/mapi/glapi/gen/APPLE_vertex_array_object.xml
>>> b/src/mapi/glapi/gen/APPLE_vertex_array_object.xml
>>> deleted file mode 100644
>>> index 7312f9b..0000000
>>> --- a/src/mapi/glapi/gen/APPLE_vertex_array_object.xml
>>> +++ /dev/null
>>> @@ -1,27 +0,0 @@
>>
>>
>> So... I'm fairly sure this is going to break loading a _dri.so built
>> without this patch by a libGL built with this patch.
> 
> I recall something like this coming up a few year ago, can you remind me
> again why this is a problem? Shouldn't these be updated in sync?

There's a negotiation between libGL and the driver for where functions
go in the dispatch table.  My recollection is that on platforms other
than IA-32, if the driver asks about a function that libGL doesn't know,
libGL will return an error... and the driver will fail.

There are *lots* of functions in the XML that have never been supported
by any DRI driver.  Leaving the functions here so that libGL will have
the dispatch stubs (and dispatch table entries) has negligible cost.

>>> -<?xml version="1.0"?>
>>> -<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
>>> -
>>> -<OpenGLAPI>
>>> -<category name="GL_APPLE_vertex_array_object" number="273">
>>> -    <enum name="VERTEX_ARRAY_BINDING_APPLE"              
>>> value="0x85B5"/>
>>> -
>>> -    <function name="BindVertexArrayAPPLE" deprecated="3.1">
>>> -        <param name="array" type="GLuint"/>
>>> -    </function>
>>> -
>>> -    <function name="DeleteVertexArraysAPPLE"
>>> alias="DeleteVertexArrays">
>>> -        <param name="n" type="GLsizei"/>
>>> -    <param name="arrays" type="const GLuint *"/>
>>> -    </function>
>>> -
>>> -    <function name="GenVertexArraysAPPLE" deprecated="3.1">
>>> -        <param name="n" type="GLsizei"/>
>>> -    <param name="arrays" type="GLuint *" count="n" output="true"/>
>>> -    </function>
>>> -
>>> -    <function name="IsVertexArrayAPPLE" alias="IsVertexArray">
>>> -        <param name="array" type="GLuint"/>
>>> -    <return type="GLboolean"/>
>>> -    </function>
>>> -</category>
>>> -</OpenGLAPI>



More information about the mesa-dev mailing list