diff options
author | Elliott Sales de Andrade <quantum.analyst@gmail.com> | 2016-08-31 19:28:33 -0400 |
---|---|---|
committer | Elliott Sales de Andrade <quantum.analyst@gmail.com> | 2016-09-14 16:57:40 -0400 |
commit | 7a6534e05440faa686098f21bbfdf31a1459817b (patch) | |
tree | 67c73b2046875ca043319e8b1722606cd19abff6 /mesonbuild/modules/gnome.py | |
parent | 68a2e5c9c905ee4415efa9f8801330fcc5c49e3b (diff) | |
download | meson-7a6534e05440faa686098f21bbfdf31a1459817b.zip meson-7a6534e05440faa686098f21bbfdf31a1459817b.tar.gz meson-7a6534e05440faa686098f21bbfdf31a1459817b.tar.bz2 |
GIR: Handle all dependencies and internal libraries.
Diffstat (limited to 'mesonbuild/modules/gnome.py')
-rw-r--r-- | mesonbuild/modules/gnome.py | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py index f82c5c5..8da9035 100644 --- a/mesonbuild/modules/gnome.py +++ b/mesonbuild/modules/gnome.py @@ -236,10 +236,13 @@ class GnomeModule: source.held_object.get_subdir()), ) ] - elif isinstance(dep, dependencies.PkgConfigDependency): + # This should be any dependency other than an internal one. + elif isinstance(dep, dependencies.Dependency): scan_command += dep.get_compile_args() - for lib in dep.libs: - if os.path.isabs(lib) and dep.is_libtool: + for lib in dep.get_link_args(): + if (os.path.isabs(lib) and + # For PkgConfigDependency only: + getattr(dep, 'is_libtool', False)): scan_command += ["-L%s" % os.path.dirname(lib)] libname = os.path.basename(lib) if libname.startswith("lib"): @@ -251,9 +254,13 @@ class GnomeModule: continue scan_command += [lib] - girdir = dep.get_variable("girdir") - if girdir: - scan_command += ["--add-include-path=%s" % (girdir, )] + if isinstance(dep, dependencies.PkgConfigDependency): + girdir = dep.get_variable("girdir") + if girdir: + scan_command += ["--add-include-path=%s" % (girdir, )] + elif isinstance(dep, (build.StaticLibrary, build.SharedLibrary)): + for incd in dep.get_include_dirs(): + scan_command += incd.get_incdirs() else: mlog.log('dependency %s not handled to build gir files' % dep) continue |