On Friday, 2018-03-02 11:41:00 +0100, Stefan Dirsch wrote: > Patch by "Tomas Chvatal" <tchva...@suse.com> with modifications > by "Michal Srb" <m...@suse.com> to not break python 2. > > https://bugzilla.suse.com/show_bug.cgi?id=1082303 > > v2: > - no longer try to encode a unicode > - make use of 'from __future__ import print_function', so semantics > of print statements in python2 are closer to print functions in python3 > > https://lists.freedesktop.org/archives/mesa-dev/2018-February/187056.html > > Signed-off-by: Stefan Dirsch <sndir...@suse.de> > Reviewed-by: Tomas Chvatal <tchva...@suse.com> > --- > src/gallium/drivers/r600/egd_tables.py | 53 > +++++++++++++++++----------------- > 1 file changed, 27 insertions(+), 26 deletions(-) > > diff --git a/src/gallium/drivers/r600/egd_tables.py > b/src/gallium/drivers/r600/egd_tables.py > index d7b78c7fb1..4796456330 100644 > --- a/src/gallium/drivers/r600/egd_tables.py > +++ b/src/gallium/drivers/r600/egd_tables.py > @@ -1,3 +1,4 @@ > +from __future__ import print_function > > CopyRight = ''' > /* > @@ -60,7 +61,7 @@ class StringTable: > """ > fragments = [ > '"%s\\0" /* %s */' % ( > - te[0].encode('string_escape'), > + te[0],
I think you still need to escape the string here. The rest of the patch looks good to me :) > ', '.join(str(idx) for idx in te[2]) > ) > for te in self.table > @@ -217,10 +218,10 @@ def write_tables(regs, packets): > strings = StringTable() > strings_offsets = IntTable("int") > > - print '/* This file is autogenerated by egd_tables.py from evergreend.h. > Do not edit directly. */' > - print > - print CopyRight.strip() > - print ''' > + print('/* This file is autogenerated by egd_tables.py from evergreend.h. > Do not edit directly. */') > + print('') > + print(CopyRight.strip()) > + print(''' > #ifndef EG_TABLES_H > #define EG_TABLES_H > > @@ -242,20 +243,20 @@ struct eg_packet3 { > unsigned name_offset; > unsigned op; > }; > -''' > +''') > > - print 'static const struct eg_packet3 packet3_table[] = {' > + print('static const struct eg_packet3 packet3_table[] = {') > for pkt in packets: > - print '\t{%s, %s},' % (strings.add(pkt[5:]), pkt) > - print '};' > - print > + print('\t{%s, %s},' % (strings.add(pkt[5:]), pkt)) > + print('};') > + print('') > > - print 'static const struct eg_field egd_fields_table[] = {' > + print('static const struct eg_field egd_fields_table[] = {') > > fields_idx = 0 > for reg in regs: > if len(reg.fields) and reg.own_fields: > - print '\t/* %s */' % (fields_idx) > + print('\t/* %s */' % (fields_idx)) > > reg.fields_idx = fields_idx > > @@ -266,34 +267,34 @@ struct eg_packet3 { > while value[1] >= len(values_offsets): > values_offsets.append(-1) > values_offsets[value[1]] = > strings.add(strip_prefix(value[0])) > - print '\t{%s, %s(~0u), %s, %s},' % ( > + print('\t{%s, %s(~0u), %s, %s},' % ( > strings.add(field.name), field.s_name, > - len(values_offsets), > strings_offsets.add(values_offsets)) > + len(values_offsets), > strings_offsets.add(values_offsets))) > else: > - print '\t{%s, %s(~0u)},' % (strings.add(field.name), > field.s_name) > + print('\t{%s, %s(~0u)},' % (strings.add(field.name), > field.s_name)) > fields_idx += 1 > > - print '};' > - print > + print('};') > + print('') > > - print 'static const struct eg_reg egd_reg_table[] = {' > + print('static const struct eg_reg egd_reg_table[] = {') > for reg in regs: > if len(reg.fields): > - print '\t{%s, %s, %s, %s},' % (strings.add(reg.name), reg.r_name, > - len(reg.fields), reg.fields_idx if reg.own_fields else > reg.fields_owner.fields_idx) > + print('\t{%s, %s, %s, %s},' % (strings.add(reg.name), reg.r_name, > + len(reg.fields), reg.fields_idx if reg.own_fields else > reg.fields_owner.fields_idx)) > else: > - print '\t{%s, %s},' % (strings.add(reg.name), reg.r_name) > - print '};' > - print > + print('\t{%s, %s},' % (strings.add(reg.name), reg.r_name)) > + print('};') > + print('') > > strings.emit(sys.stdout, "egd_strings") > > - print > + print('') > > strings_offsets.emit(sys.stdout, "egd_strings_offsets") > > - print > - print '#endif' > + print('') > + print('#endif') > > > def main(): > -- > 2.13.6 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev