From 2e63336bf3e58eb3364bd8f7eedddbbc40ee6f69 Mon Sep 17 00:00:00 2001 From: Dylan Baker Date: Mon, 16 Jun 2025 08:46:52 -0700 Subject: vala: Add method to get generated GIR from a build_target Fixes: #2296 Fixes: #4481 Fixes: #5968 --- mesonbuild/interpreter/interpreterobjects.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'mesonbuild') diff --git a/mesonbuild/interpreter/interpreterobjects.py b/mesonbuild/interpreter/interpreterobjects.py index ab8e130d9..86e8957bc 100644 --- a/mesonbuild/interpreter/interpreterobjects.py +++ b/mesonbuild/interpreter/interpreterobjects.py @@ -1012,6 +1012,18 @@ class BuildTargetHolder(ObjectHolder[_BuildTarget]): return mesonlib.File.from_built_file( self.interpreter.backend.get_target_dir(self._target_object), self._target_object.vala_vapi) + @FeatureNew('vala_gir', '1.10.0') + @noPosargs + @noKwargs + @InterpreterObject.method('vala_gir') + def vala_gir_method(self, args: T.List[TYPE_var], kwargs: TYPE_kwargs) -> mesonlib.File: + if not hasattr(self._target_object, 'vala_gir'): + raise mesonlib.MesonException("Attempted to get a Vala GIR from a target that doesn't generate one") + + assert self.interpreter.backend is not None, 'for mypy' + return mesonlib.File.from_built_file( + self.interpreter.backend.get_target_dir(self._target_object), self._target_object.vala_gir) + class ExecutableHolder(BuildTargetHolder[build.Executable]): pass -- cgit v1.2.3