[Mesa-dev] [PATCH 1/3] glapi: Remove dead extension_helper.py.
Ilia Mirkin
imirkin at alum.mit.edu
Fri Nov 21 10:40:00 PST 2014
On Fri, Nov 21, 2014 at 1:35 PM, Matt Turner <mattst88 at gmail.com> wrote:
> Dead since commit 3d16088f.
> ---
> src/mapi/glapi/gen/Makefile.am | 2 -
> src/mapi/glapi/gen/extension_helper.py | 324 ---------------------------------
> 2 files changed, 326 deletions(-)
> delete mode 100644 src/mapi/glapi/gen/extension_helper.py
>
> diff --git a/src/mapi/glapi/gen/Makefile.am b/src/mapi/glapi/gen/Makefile.am
> index 72e5095..9c70b26 100644
> --- a/src/mapi/glapi/gen/Makefile.am
> +++ b/src/mapi/glapi/gen/Makefile.am
> @@ -61,12 +61,10 @@ EXTRA_DIST= \
> $(MESA_GLAPI_DIR)/glapi_x86-64.S \
> $(MESA_GLAPI_DIR)/glapi_sparc.S \
> $(COMMON_GLX) \
> - extension_helper.py \
> gl_apitemp.py \
> gl_enums.py \
> gl_genexec.py \
> gl_gentable.py \
> - gl_offsets.py \
In an ideal world, this would be part of the next commit...
> gl_procs.py \
> gl_SPARC_asm.py \
> gl_table.py \
> diff --git a/src/mapi/glapi/gen/extension_helper.py b/src/mapi/glapi/gen/extension_helper.py
> deleted file mode 100644
> index da633dc..0000000
> --- a/src/mapi/glapi/gen/extension_helper.py
> +++ /dev/null
> @@ -1,324 +0,0 @@
> -#!/usr/bin/env python
> -
> -# (C) Copyright IBM Corporation 2005
> -# All Rights Reserved.
> -#
> -# Permission is hereby granted, free of charge, to any person obtaining a
> -# copy of this software and associated documentation files (the "Software"),
> -# to deal in the Software without restriction, including without limitation
> -# on the rights to use, copy, modify, merge, publish, distribute, sub
> -# license, and/or sell copies of the Software, and to permit persons to whom
> -# the Software is furnished to do so, subject to the following conditions:
> -#
> -# The above copyright notice and this permission notice (including the next
> -# paragraph) shall be included in all copies or substantial portions of the
> -# Software.
> -#
> -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> -# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
> -# IBM AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> -# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
> -# IN THE SOFTWARE.
> -#
> -# Authors:
> -# Ian Romanick <idr at us.ibm.com>
> -
> -import gl_XML
> -import license
> -import sys, getopt, string
> -
> -vtxfmt = [
> - "ArrayElement", \
> - "Color3f", \
> - "Color3fv", \
> - "Color4f", \
> - "Color4fv", \
> - "EdgeFlag", \
> - "EdgeFlagv", \
> - "EvalCoord1f", \
> - "EvalCoord1fv", \
> - "EvalCoord2f", \
> - "EvalCoord2fv", \
> - "EvalPoint1", \
> - "EvalPoint2", \
> - "FogCoordfEXT", \
> - "FogCoordfvEXT", \
> - "Indexf", \
> - "Indexfv", \
> - "Materialfv", \
> - "MultiTexCoord1fARB", \
> - "MultiTexCoord1fvARB", \
> - "MultiTexCoord2fARB", \
> - "MultiTexCoord2fvARB", \
> - "MultiTexCoord3fARB", \
> - "MultiTexCoord3fvARB", \
> - "MultiTexCoord4fARB", \
> - "MultiTexCoord4fvARB", \
> - "Normal3f", \
> - "Normal3fv", \
> - "SecondaryColor3fEXT", \
> - "SecondaryColor3fvEXT", \
> - "TexCoord1f", \
> - "TexCoord1fv", \
> - "TexCoord2f", \
> - "TexCoord2fv", \
> - "TexCoord3f", \
> - "TexCoord3fv", \
> - "TexCoord4f", \
> - "TexCoord4fv", \
> - "Vertex2f", \
> - "Vertex2fv", \
> - "Vertex3f", \
> - "Vertex3fv", \
> - "Vertex4f", \
> - "Vertex4fv", \
> - "CallList", \
> - "CallLists", \
> - "Begin", \
> - "End", \
> - "VertexAttrib1fNV", \
> - "VertexAttrib1fvNV", \
> - "VertexAttrib2fNV", \
> - "VertexAttrib2fvNV", \
> - "VertexAttrib3fNV", \
> - "VertexAttrib3fvNV", \
> - "VertexAttrib4fNV", \
> - "VertexAttrib4fvNV", \
> - "VertexAttrib1fARB", \
> - "VertexAttrib1fvARB", \
> - "VertexAttrib2fARB", \
> - "VertexAttrib2fvARB", \
> - "VertexAttrib3fARB", \
> - "VertexAttrib3fvARB", \
> - "VertexAttrib4fARB", \
> - "VertexAttrib4fvARB", \
> - "Rectf", \
> - "DrawArrays", \
> - "DrawElements", \
> - "DrawRangeElements", \
> - "EvalMesh1", \
> - "EvalMesh2", \
> -]
> -
> -def all_entrypoints_in_abi(f, abi, api):
> - for n in f.entry_points:
> - [category, num] = api.get_category_for_name( n )
> - if category not in abi:
> - return 0
> -
> - return 1
> -
> -
> -def any_entrypoints_in_abi(f, abi, api):
> - for n in f.entry_points:
> - [category, num] = api.get_category_for_name( n )
> - if category in abi:
> - return 1
> -
> - return 0
> -
> -
> -def condition_for_function(f, abi, all_not_in_ABI):
> - """Create a C-preprocessor condition for the function.
> -
> - There are two modes of operation. If all_not_in_ABI is set, a
> - condition is only created is all of the entry-point names for f are
> - not in the selected ABI. If all_not_in_ABI is not set, a condition
> - is created if any entryp-point name is not in the selected ABI.
> - """
> -
> - condition = []
> - for n in f.entry_points:
> - [category, num] = api.get_category_for_name( n )
> - if category not in abi:
> - condition.append( 'defined(need_%s)' % (gl_XML.real_category_name( category )) )
> - elif all_not_in_ABI:
> - return []
> -
> - return condition
> -
> -
> -class PrintGlExtensionGlue(gl_XML.gl_print_base):
> - def __init__(self):
> - gl_XML.gl_print_base.__init__(self)
> -
> - self.name = "extension_helper.py (from Mesa)"
> - self.license = license.bsd_license_template % ("(C) Copyright IBM Corporation 2005", "IBM")
> - return
> -
> -
> - def printRealHeader(self):
> - print '#include "utils.h"'
> - print '#include "main/dispatch.h"'
> - print ''
> - return
> -
> -
> - def printBody(self, api):
> - abi = [ "1.0", "1.1", "1.2", "GL_ARB_multitexture" ]
> -
> - category_list = {}
> -
> - print '#ifndef NULL'
> - print '# define NULL 0'
> - print '#endif'
> - print ''
> -
> - for f in api.functionIterateAll():
> - condition = condition_for_function(f, abi, 0)
> - if len(condition):
> - print '#if %s' % (string.join(condition, " || "))
> - print 'static const char %s_names[] =' % (f.name)
> -
> - parameter_signature = ''
> - for p in f.parameterIterator():
> - if p.is_padding:
> - continue
> -
> - # FIXME: This is a *really* ugly hack. :(
> -
> - tn = p.type_expr.get_base_type_node()
> - if p.is_pointer():
> - parameter_signature += 'p'
> - elif tn.integer:
> - parameter_signature += 'i'
> - elif tn.size == 4:
> - parameter_signature += 'f'
> - else:
> - parameter_signature += 'd'
> -
> - print ' "%s\\0" /* Parameter signature */' % (parameter_signature)
> -
> - for n in f.entry_points:
> - print ' "gl%s\\0"' % (n)
> -
> - [category, num] = api.get_category_for_name( n )
> - if category not in abi:
> - c = gl_XML.real_category_name(category)
> - if not category_list.has_key(c):
> - category_list[ c ] = []
> -
> - category_list[ c ].append( f )
> -
> - print ' "";'
> - print '#endif'
> - print ''
> -
> - keys = category_list.keys()
> - keys.sort()
> -
> - for category in keys:
> - print '#if defined(need_%s)' % (category)
> - print 'static const struct dri_extension_function %s_functions[] = {' % (category)
> -
> - for f in category_list[ category ]:
> - # A function either has an offset that is
> - # assigned by the ABI, or it has a remap
> - # index.
> - if any_entrypoints_in_abi(f, abi, api):
> - index_name = "-1"
> - offset = f.offset
> - else:
> - index_name = "%s_remap_index" % (f.name)
> - offset = -1
> -
> - print ' { %s_names, %s, %d },' % (f.name, index_name, offset)
> -
> -
> - print ' { NULL, 0, 0 }'
> - print '};'
> - print '#endif'
> - print ''
> -
> - return
> -
> -
> -class PrintInitDispatch(gl_XML.gl_print_base):
> - def __init__(self):
> - gl_XML.gl_print_base.__init__(self)
> -
> - self.name = "extension_helper.py (from Mesa)"
> - self.license = license.bsd_license_template % ("(C) Copyright IBM Corporation 2005", "IBM")
> - return
> -
> -
> - def do_function_body(self, api, abi, vtxfmt_only):
> - last_condition_string = None
> - for f in api.functionIterateByOffset():
> - if (f.name in vtxfmt) and not vtxfmt_only:
> - continue
> -
> - if (f.name not in vtxfmt) and vtxfmt_only:
> - continue
> -
> - condition = condition_for_function(f, abi, 1)
> - condition_string = string.join(condition, " || ")
> -
> - if condition_string != last_condition_string:
> - if last_condition_string:
> - print '#endif /* %s */' % (last_condition_string)
> -
> - if condition_string:
> - print '#if %s' % (condition_string)
> -
> - if vtxfmt_only:
> - print ' disp->%s = vfmt->%s;' % (f.name, f.name)
> - else:
> - print ' disp->%s = _mesa_%s;' % (f.name, f.name)
> -
> - last_condition_string = condition_string
> -
> - if last_condition_string:
> - print '#endif /* %s */' % (last_condition_string)
> -
> -
> -
> - def printBody(self, api):
> - abi = [ "1.0", "1.1", "1.2", "GL_ARB_multitexture" ]
> -
> - print 'void driver_init_exec_table(struct _glapi_table *disp)'
> - print '{'
> - self.do_function_body(api, abi, 0)
> - print '}'
> - print ''
> - print 'void driver_install_vtxfmt(struct _glapi_table *disp, const GLvertexformat *vfmt)'
> - print '{'
> - self.do_function_body(api, abi, 1)
> - print '}'
> -
> - return
> -
> -
> -def show_usage():
> - print "Usage: %s [-f input_file_name] [-m output_mode]" % sys.argv[0]
> - print " -m output_mode Output mode can be one of 'extensions' or 'exec_init'."
> - sys.exit(1)
> -
> -if __name__ == '__main__':
> - file_name = "gl_API.xml"
> -
> - try:
> - (args, trail) = getopt.getopt(sys.argv[1:], "f:m:")
> - except Exception,e:
> - show_usage()
> -
> - mode = "extensions"
> - for (arg,val) in args:
> - if arg == "-f":
> - file_name = val
> - if arg == '-m':
> - mode = val
> -
> -
> - api = gl_XML.parse_GL_API( file_name )
> -
> - if mode == "extensions":
> - printer = PrintGlExtensionGlue()
> - elif mode == "exec_init":
> - printer = PrintInitDispatch()
> - else:
> - show_usage()
> -
> - printer.Print( api )
> --
> 2.0.4
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list