aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/modules/gnome.py
diff options
context:
space:
mode:
authorElliott Sales de Andrade <quantum.analyst@gmail.com>2016-08-31 19:28:33 -0400
committerElliott Sales de Andrade <quantum.analyst@gmail.com>2016-09-14 16:57:40 -0400
commit7a6534e05440faa686098f21bbfdf31a1459817b (patch)
tree67c73b2046875ca043319e8b1722606cd19abff6 /mesonbuild/modules/gnome.py
parent68a2e5c9c905ee4415efa9f8801330fcc5c49e3b (diff)
downloadmeson-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.py19
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