From 3f04a0d60fdc653bffd6919cb374a8d496771a8e Mon Sep 17 00:00:00 2001 From: Michael Catanzaro Date: Wed, 23 Sep 2020 17:25:10 -0500 Subject: Fix build with python3 Hello from 2020! Fixes taken from Bastien's Fedora patches. Thanks Bastien! --- tools/glib-ginterface-gen.py | 13 ++++--------- tools/libglibcodegen.py | 4 ++-- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/tools/glib-ginterface-gen.py b/tools/glib-ginterface-gen.py index 8fea5df..995d874 100644 --- a/tools/glib-ginterface-gen.py +++ b/tools/glib-ginterface-gen.py @@ -22,6 +22,7 @@ # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +import functools import sys import os.path import xml.dom.minidom @@ -85,18 +86,12 @@ class Generator(object): self.allow_havoc = allow_havoc def h(self, s): - if isinstance(s, unicode): - s = s.encode('utf-8') self.__header.append(s) def b(self, s): - if isinstance(s, unicode): - s = s.encode('utf-8') self.__body.append(s) def d(self, s): - if isinstance(s, unicode): - s = s.encode('utf-8') self.__docs.append(s) def do_node(self, node): @@ -733,7 +728,7 @@ class Generator(object): def __call__(self): nodes = self.dom.getElementsByTagName('node') - nodes.sort(cmp_by_name) + nodes.sort(key=functools.cmp_to_key(cmp_by_name)) self.h('#include ') self.h('#include ') @@ -768,7 +763,7 @@ class Generator(object): file_set_contents(self.basename + '-gtk-doc.h', '\n'.join(self.__docs)) def cmdline_error(): - print """\ + print ("""\ usage: gen-ginterface [OPTIONS] xmlfile Prefix_ options: @@ -788,7 +783,7 @@ options: void symbol (DBusGMethodInvocation *context) and return some sort of "not implemented" error via dbus_g_method_return_error (context, ...) -""" +""") sys.exit(1) diff --git a/tools/libglibcodegen.py b/tools/libglibcodegen.py index 6a9d214..2c9f164 100644 --- a/tools/libglibcodegen.py +++ b/tools/libglibcodegen.py @@ -154,7 +154,7 @@ def type_to_gtype(s): return ("GHashTable *", "DBUS_TYPE_G_STRING_STRING_HASHTABLE", "BOXED", False) elif s[:2] == 'a{': #some arbitrary hash tables if s[2] not in ('y', 'b', 'n', 'q', 'i', 'u', 's', 'o', 'g'): - raise Exception, "can't index a hashtable off non-basic type " + s + raise Exception("can't index a hashtable off non-basic type " + s) first = type_to_gtype(s[2]) second = type_to_gtype(s[3:-1]) return ("GHashTable *", "(dbus_g_type_get_map (\"GHashTable\", " + first[1] + ", " + second[1] + "))", "BOXED", False) @@ -169,4 +169,4 @@ def type_to_gtype(s): return ("GValueArray *", gtype, "BOXED", True) # we just don't know .. - raise Exception, "don't know the GType for " + s + raise(Exception, "don't know the GType for " + s) -- cgit v1.2.1