Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/giscanner
diff options
context:
space:
mode:
Diffstat (limited to 'giscanner')
-rw-r--r--giscanner/girwriter.py14
-rw-r--r--giscanner/scannermain.py3
-rw-r--r--giscanner/transformer.py3
3 files changed, 13 insertions, 7 deletions
diff --git a/giscanner/girwriter.py b/giscanner/girwriter.py
index e30bc6b..ddd562c 100644
--- a/giscanner/girwriter.py
+++ b/giscanner/girwriter.py
@@ -35,16 +35,17 @@ from .xmlwriter import XMLWriter
class GIRWriter(XMLWriter):
- def __init__(self, namespace, shlibs, includes, pkgs, c_includes):
+ def __init__(self, namespace, shlibs, includes, pkgs, c_includes, cprefix):
super(GIRWriter, self).__init__()
self.write_comment(
'''This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations. ''')
- self._write_repository(namespace, shlibs, includes, pkgs, c_includes)
+ self._write_repository(namespace, shlibs, includes, pkgs,
+ c_includes, cprefix)
def _write_repository(self, namespace, shlibs, includes=None,
- packages=None, c_includes=None):
+ packages=None, c_includes=None, cprefix=None):
if includes is None:
includes = frozenset()
if packages is None:
@@ -64,7 +65,7 @@ and/or use gtk-doc annotations. ''')
self._write_pkgconfig_pkg(pkg)
for c_include in sorted(set(c_includes)):
self._write_c_include(c_include)
- self._write_namespace(namespace, shlibs)
+ self._write_namespace(namespace, shlibs, cprefix)
def _write_include(self, include):
attrs = [('name', include.name), ('version', include.version)]
@@ -78,7 +79,7 @@ and/or use gtk-doc annotations. ''')
attrs = [('name', c_include)]
self.write_tag('c:include', attrs)
- def _write_namespace(self, namespace, shlibs):
+ def _write_namespace(self, namespace, shlibs, cprefix):
libraries = []
for l in shlibs:
found_libname = find_library(l)
@@ -88,7 +89,8 @@ and/or use gtk-doc annotations. ''')
attrs = [('name', namespace.name),
('version', namespace.version),
- ('shared-library', ','.join(libraries))]
+ ('shared-library', ','.join(libraries)),
+ ('c:prefix', cprefix)]
with self.tagcontext('namespace', attrs):
# We define a custom sorting function here because
# we want aliases to be first. They're a bit
diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py
index f7ac884..e280159 100644
--- a/giscanner/scannermain.py
+++ b/giscanner/scannermain.py
@@ -331,7 +331,8 @@ def scanner_main(args):
# Write out AST
writer = Writer(namespace, libraries, transformer.get_includes(),
- options.packages, options.c_includes)
+ options.packages, options.c_includes,
+ transformer.get_strip_prefix())
data = writer.get_xml()
if options.output:
fd = open(options.output, "w")
diff --git a/giscanner/transformer.py b/giscanner/transformer.py
index 2746b6e..c084606 100644
--- a/giscanner/transformer.py
+++ b/giscanner/transformer.py
@@ -83,6 +83,9 @@ class Transformer(object):
def set_strip_prefix(self, strip_prefix):
self._strip_prefix = strip_prefix
+ def get_strip_prefix(self):
+ return self._strip_prefix
+
def get_pkgconfig_packages(self):
return self._pkg_config_packages