mapi: Hack around glGetInternalformativ not being hidden in GLES
authorIan Romanick <ian.d.romanick@intel.com>
Wed, 26 Mar 2014 23:24:54 +0000 (16:24 -0700)
committerIan Romanick <ian.d.romanick@intel.com>
Mon, 31 Mar 2014 21:46:48 +0000 (14:46 -0700)
This is hella ugly.  The same-named function in desktop OpenGL is
hidden, but it needs to be exposed by libGLESv2 for OpenGL ES 3.0.
There's no way to express in the XML that a function should be be hidden
in one API but exposed in another.

This won't affect any change now, but it will prevent a regression in a
later patch.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
src/mapi/mapi_abi.py

index f5ff8d8..48050e8 100644 (file)
@@ -769,6 +769,14 @@ class ES2APIPrinter(GLAPIPrinter):
             raise Exception('ES2 API printer requires XML input')
         ent.hidden = ent.name not in \
             ent.xml_data.entry_points_for_api_version('es2')
+
+        # This is hella ugly.  The same-named function in desktop OpenGL is
+        # hidden, but it needs to be exposed by libGLESv2 for OpenGL ES 3.0.
+        # There's no way to express in the XML that a function should be be
+        # hidden in one API but exposed in another.
+        if ent.name == 'GetInternalformativ':
+            ent.hidden = False
+
         ent.handcode = False
 
     def _get_c_header(self):