diff options
author | Guillaume Poirier-Morency <guillaumepoiriermorency@gmail.com> | 2016-10-07 10:28:07 -0400 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2016-11-12 18:03:24 -0500 |
commit | b2a39dd06ee139152d5522c961e6ba04acdec791 (patch) | |
tree | 82d6f16f33f9aeb5211051909615de436158c788 /mesonbuild | |
parent | 59a414283c5caf006745aefff44489e689223050 (diff) | |
download | meson-b2a39dd06ee139152d5522c961e6ba04acdec791.zip meson-b2a39dd06ee139152d5522c961e6ba04acdec791.tar.gz meson-b2a39dd06ee139152d5522c961e6ba04acdec791.tar.bz2 |
vala: Generate GIR into the build directory (fix #185)
Add a Vala test generating GIR and typelib files.
Diffstat (limited to 'mesonbuild')
-rw-r--r-- | mesonbuild/backend/ninjabackend.py | 6 | ||||
-rw-r--r-- | mesonbuild/build.py | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py index fb1280b..fa4d5cf 100644 --- a/mesonbuild/backend/ninjabackend.py +++ b/mesonbuild/backend/ninjabackend.py @@ -1034,10 +1034,14 @@ int dummy; valac_outputs.append(hname) # Outputted vapi file vapiname = os.path.join(self.get_target_dir(target), target.vala_vapi) - # Force valac to write the vapi file in the target build dir. + # Force valac to write the vapi and gir files in the target build dir. # Without this, it will write it inside c_out_dir args += ['--vapi', os.path.join('..', target.vala_vapi)] valac_outputs.append(vapiname) + if isinstance(target.vala_gir, str): + girname = os.path.join(self.get_target_dir(target), target.vala_gir) + args += ['--gir', os.path.join('..', target.vala_gir)] + valac_outputs.append(girname) if self.environment.coredata.get_builtin_option('werror'): args += valac.get_werror_args() for d in target.get_external_deps(): diff --git a/mesonbuild/build.py b/mesonbuild/build.py index d1746f1..42cdc57 100644 --- a/mesonbuild/build.py +++ b/mesonbuild/build.py @@ -57,6 +57,7 @@ known_lib_kwargs.update({'version' : True, # Only for shared libs 'vs_module_defs' : True, # Only for shared libs 'vala_header': True, 'vala_vapi': True, + 'vala_gir' : True, 'pic' : True, # Only for static libs }) @@ -513,6 +514,7 @@ class BuildTarget(): if not isinstance(self, Executable): self.vala_header = kwargs.get('vala_header', self.name + '.h') self.vala_vapi = kwargs.get('vala_vapi', self.name + '.vapi') + self.vala_gir = kwargs.get('vala_gir', None) dlist = stringlistify(kwargs.get('d_args', [])) self.add_compiler_args('d', dlist) self.link_args = kwargs.get('link_args', []) |