diff options
-rw-r--r-- | ninjabackend.py | 4 | ||||
-rw-r--r-- | test cases/vala/3 dep/gioprog.vala | 8 | ||||
-rw-r--r-- | test cases/vala/3 dep/meson.build | 9 |
3 files changed, 21 insertions, 0 deletions
diff --git a/ninjabackend.py b/ninjabackend.py index 6aff044..8269304 100644 --- a/ninjabackend.py +++ b/ninjabackend.py @@ -16,6 +16,7 @@ import backends import environment import build import mlog +import dependencies from meson_install import InstallData from build import InvalidArguments from coredata import MesonException @@ -455,6 +456,9 @@ class NinjaBackend(backends.Backend): relsc = os.path.join(self.get_target_dir(target), target.get_basename() + '.dir', sc) rel_s = os.path.join(self.build_to_src, s) flags += ['--deps', relsc + '.d'] + for d in target.external_deps: + if isinstance(d, dependencies.PkgConfigDependency): + flags += ['--pkg', d.name] generated_c += [relsc] element = NinjaBuildElement(relsc, valac.get_language() + '_COMPILER', rel_s) element.add_item('FLAGS', flags) diff --git a/test cases/vala/3 dep/gioprog.vala b/test cases/vala/3 dep/gioprog.vala new file mode 100644 index 0000000..969aa97 --- /dev/null +++ b/test cases/vala/3 dep/gioprog.vala @@ -0,0 +1,8 @@ +class GioProg { + + public static int main(string[] args) { + var homedir = File.new_for_path(Environment.get_home_dir()); + stdout.printf("Home directory as told by gio is " + homedir.get_path() + "\n"); + return 0; + } +} diff --git a/test cases/vala/3 dep/meson.build b/test cases/vala/3 dep/meson.build new file mode 100644 index 0000000..e6ffd07 --- /dev/null +++ b/test cases/vala/3 dep/meson.build @@ -0,0 +1,9 @@ +project('giotest', 'vala', 'c') + +glib = dependency('glib-2.0') +gobject = dependency('gobject-2.0') +gio = dependency('gio-2.0') + +e = executable('gioprog', 'gioprog.vala', +deps : [glib, gobject, gio]) +test('giotest', e) |