trans.append((key, value, desc, [t])) continue valTable = [] offsetTable = {} trans = stringprep.sort_merge_trans(trans) for x in trans: if x[0] == 0xad: print "fooresult %s" % ",".join(x[3]) for x in trans: (key, value, description, table) = x v = value.split() i = util.subList(valTable, v) if i: offsetTable[key] = i else: offsetTable[key] = len(valTable) valTable.extend(v) for x in trans: (key, value, description, tables) = x symbols = stringprep.symbols(map_list, tables) if len(symbols) == 0: print "no symbol for %s %s (%s)" % (key, description, tables) sys.exit(1) v = value.split() map_c.file.write(" {0x%x, %u, %u, %s}, /* %s: %s */\n" % (key, len(v), offsetTable[key], symbols, ",".join(tables), description))
''' % maxLength) normalize_c.file.write(''' #include <stdlib.h> #include "normalize_table.h" const struct translation _wind_normalize_table[] = { ''') normalizeValTable = [] for k in sortedKeys(trans): v = trans[k] (key, value, description) = k, v[0], v[1] vec = [int(x, 0x10) for x in value.split()] offset = util.subList(normalizeValTable, vec) if not offset: offset = len(normalizeValTable) normalizeValTable.extend(vec) # [("0x%s" % i) for i in vec]) normalize_c.file.write(" {0x%x, %u, %u}, /* %s */\n" % (key, len(vec), offset, description)) normalize_c.file.write('''}; ''') normalize_c.file.write("const size_t _wind_normalize_table_size = %u;\n\n" % len(trans)) normalize_c.file.write("const uint32_t _wind_normalize_val_table[] = {\n")
normalize_c.file.write( ''' #include <stdlib.h> #include "normalize_table.h" const struct translation _wind_normalize_table[] = { ''') normalizeValTable = [] for k in sortedKeys(trans) : v = trans[k] (key, value, description) = k, v[0], v[1] vec = [int(x, 0x10) for x in value.split()]; offset = util.subList(normalizeValTable, vec) if not offset: offset = len(normalizeValTable) normalizeValTable.extend(vec) # [("0x%s" % i) for i in vec]) normalize_c.file.write(" {0x%x, %u, %u}, /* %s */\n" % (key, len(vec), offset, description)) normalize_c.file.write( '''}; ''') normalize_c.file.write( "const size_t _wind_normalize_table_size = %u;\n\n" % len(trans)) normalize_c.file.write("const uint32_t _wind_normalize_val_table[] = {\n")