diff options
author | jpakkane <jpakkane@gmail.com> | 2015-06-07 23:58:19 +0300 |
---|---|---|
committer | jpakkane <jpakkane@gmail.com> | 2015-06-07 23:58:19 +0300 |
commit | 414c5f8c497bacaf2d70ec1b992c7e828b775eaf (patch) | |
tree | babcafc1d3c4a6fc3613ca7a2c826b941dd59e69 /modules/gnome.py | |
parent | 379a0bed137e6ac1b25d64033116f83817842aca (diff) | |
parent | fb401ed8d0fd9b4b6b09515ea815be7bd10b34e4 (diff) | |
download | meson-414c5f8c497bacaf2d70ec1b992c7e828b775eaf.zip meson-414c5f8c497bacaf2d70ec1b992c7e828b775eaf.tar.gz meson-414c5f8c497bacaf2d70ec1b992c7e828b775eaf.tar.bz2 |
Merge pull request #140 from MathieuDuponchelle/fix_library_introspection
Fix library introspection
Diffstat (limited to 'modules/gnome.py')
-rw-r--r-- | modules/gnome.py | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/modules/gnome.py b/modules/gnome.py index fdcf827..51bd941 100644 --- a/modules/gnome.py +++ b/modules/gnome.py @@ -95,6 +95,17 @@ class GnomeModule: scan_command += ['--pkg-export=%s' % pkg for pkg in pkgs] else: raise MesonException('Gir export packages must be str or list') + + deps = None + if 'dependencies' in kwargs: + deps = kwargs.pop('dependencies') + if not isinstance (deps, list): + deps = [deps] + for dep in deps: + girdir = dep.held_object.get_variable ("girdir") + if girdir: + scan_command += ["--add-include-path=%s" % girdir] + inc_dirs = None if kwargs.get('include_directories'): inc_dirs = kwargs.pop('include_directories') @@ -121,7 +132,14 @@ class GnomeModule: typelib_output = '%s-%s.typelib' % (ns, nsversion) typelib_cmd = ['g-ir-compiler', scan_target, '--output', '@OUTPUT@'] if inc_dirs: - typelib_cmd += ['--includedir=%s' % inc for inc in inc_dirs.held_object.get_incdirs()] + typelib_cmd += ['--includedir=%s' % inc for inc in + inc_dirs.held_object.get_incdirs()] + if deps: + for dep in deps: + girdir = dep.held_object.get_variable ("girdir") + if girdir: + typelib_cmd += ["--includedir=%s" % girdir] + kwargs['output'] = typelib_output kwargs['command'] = typelib_cmd # Note that this can't be libdir, because e.g. on Debian it points to |