diff options
author | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2012-09-17 16:26:43 +0800 |
---|---|---|
committer | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2012-09-17 16:44:06 +0800 |
commit | 8750c21d6838bd83065f735470fb96de867ed31f (patch) | |
tree | 3ff8457567480e3fc6dbca285c3559b19acec2c4 /tools/glib-interfaces-gen.py | |
parent | f9a38137925ff6f712afe21961614a1efb3b35ea (diff) | |
download | gsoc2013-empathy-8750c21d6838bd83065f735470fb96de867ed31f.tar.gz gsoc2013-empathy-8750c21d6838bd83065f735470fb96de867ed31f.tar.zst gsoc2013-empathy-8750c21d6838bd83065f735470fb96de867ed31f.zip |
sync tools/* with tp-glib master
Fix extensions/Makefile.am to build with the new tools.
Diffstat (limited to 'tools/glib-interfaces-gen.py')
-rw-r--r-- | tools/glib-interfaces-gen.py | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/tools/glib-interfaces-gen.py b/tools/glib-interfaces-gen.py index 69c721be3..410762cde 100644 --- a/tools/glib-interfaces-gen.py +++ b/tools/glib-interfaces-gen.py @@ -3,6 +3,7 @@ from sys import argv, stdout, stderr import xml.dom.minidom +from libtpcodegen import file_set_contents from libglibcodegen import NS_TP, get_docstring, \ get_descendant_text, get_by_path @@ -13,25 +14,33 @@ class Generator(object): assert declfile.endswith('.h') docfile = declfile[:-2] + '-gtk-doc.h' - self.impls = open(implfile, 'w') - self.decls = open(declfile, 'w') - self.docs = open(docfile, 'w') + self.implfile = implfile + self.declfile = declfile + self.docfile = docfile + + self.impls = [] + self.decls = [] + self.docs = [] self.spec = get_by_path(dom, "spec")[0] def h(self, code): - self.decls.write(code.encode('utf-8')) + self.decls.append(code.encode('utf-8')) def c(self, code): - self.impls.write(code.encode('utf-8')) + self.impls.append(code.encode('utf-8')) def d(self, code): - self.docs.write(code.encode('utf-8')) + self.docs.append(code.encode('utf-8')) def __call__(self): for f in self.h, self.c: self.do_header(f) self.do_body() + file_set_contents(self.implfile, ''.join(self.impls)) + file_set_contents(self.declfile, ''.join(self.decls)) + file_set_contents(self.docfile, ''.join(self.docs)) + # Header def do_header(self, f): f('/* Generated from: ') @@ -49,6 +58,7 @@ class Generator(object): f(""" */ +#include <glib.h> """) # Body |