On Wed, 2018-11-21 at 12:04 +0000, Emil Velikov wrote: > From: Emil Velikov <emil.veli...@collabora.com> > > We haven't have one in years, so just drop the code. > > Signed-off-by: Emil Velikov <emil.veli...@collabora.com> > --- > src/mapi/mapi_abi.py | 80 ++++------------------------------------ > ---- > 1 file changed, 6 insertions(+), 74 deletions(-) > > diff --git a/src/mapi/mapi_abi.py b/src/mapi/mapi_abi.py > index 3cfede56880..846c69c8b70 100644 > --- a/src/mapi/mapi_abi.py > +++ b/src/mapi/mapi_abi.py > @@ -184,75 +184,6 @@ def abi_parse_xml(xml): > > return entries > > -def abi_parse_line(line): > - cols = [col.strip() for col in line.split(',')] > - > - attrs = { > - 'slot': -1, > - 'hidden': False, > - 'alias': None, > - 'handcode': None, > - } > - > - # extract attributes from the first column > - vals = cols[0].split(':') > - while len(vals) > 1: > - val = vals.pop(0) > - if val.startswith('slot='): > - attrs['slot'] = int(val[5:]) > - elif val == 'hidden': > - attrs['hidden'] = True > - elif val.startswith('alias='): > - attrs['alias'] = val[6:] > - elif val.startswith('handcode='): > - attrs['handcode'] = val[9:] > - elif not val: > - pass > - else: > - raise Exception('unknown attribute %s' % val) > - cols[0] = vals[0] > - > - return (attrs, cols) > - > -def abi_parse(filename): > - """Parse a CSV file for ABI entries.""" > - fp = open(filename) if filename != '-' else sys.stdin > - lines = [line.strip() for line in fp.readlines() > - if not line.startswith('#') and line.strip()] > - > - entry_dict = {} > - next_slot = 0 > - for line in lines: > - attrs, cols = abi_parse_line(line) > - > - # post-process attributes > - if attrs['alias']: > - try: > - alias = entry_dict[attrs['alias']] > - except KeyError: > - raise Exception('failed to alias %s' % > attrs['alias']) > - if alias.alias: > - raise Exception('recursive alias %s' % ent.name) > - slot = alias.slot > - attrs['alias'] = alias > - else: > - slot = next_slot > - next_slot += 1 > - > - if attrs['slot'] < 0: > - attrs['slot'] = slot > - elif attrs['slot'] != slot: > - raise Exception('invalid slot in %s' % (line)) > - > - ent = ABIEntry(cols, attrs) > - if ent.name in entry_dict: > - raise Exception('%s is duplicated' % (ent.name)) > - entry_dict[ent.name] = ent > - > - entries = sorted(entry_dict.values()) > - > - return entries > - > def abi_sanity_check(entries): > if not entries: > return > @@ -714,7 +645,7 @@ typedef int GLclampx; > def parse_args(): > printers = ['glapi', 'es1api', 'es2api', 'shared-glapi'] > > - parser = OptionParser(usage='usage: %prog [options] <filename>') > + parser = OptionParser(usage='usage: %prog [options] <xml_file>') > parser.add_option('-p', '--printer', dest='printer', > help='printer to use: %s' % (", ".join(printers))) > > @@ -723,6 +654,10 @@ def parse_args(): > parser.print_help() > sys.exit(1) > > + if not args[0].endswith('.xml'): > + parser.print_help() > + sys.exit(1) > +
These two last hunks feels a bit silly on their own, but I suppose the point is to catch any potential left-over cases of csv-files here early... So, yeah: Reviewed-by: Erik Faye-Lun <erik.faye-l...@collabora.com> > return (args[0], options) > > def main(): > @@ -733,10 +668,7 @@ def main(): > > filename, options = parse_args() > > - if filename.endswith('.xml'): > - entries = abi_parse_xml(filename) > - else: > - entries = abi_parse(filename) > + entries = abi_parse_xml(filename) > abi_sanity_check(entries) > > printer = printers[options.printer](entries) _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev