summaryrefslogtreecommitdiff
path: root/mesonbuild
diff options
context:
space:
mode:
authorCorentin Noël <corentin.noel@collabora.com>2025-05-06 12:09:56 +0200
committerEli Schwartz <eschwartz93@gmail.com>2025-06-05 16:36:41 -0400
commitf4f64280c36f738b2bfde82d33c375cf9263dec0 (patch)
tree1471cf7ebac8180b4e51ec31768c6301205fecc5 /mesonbuild
parenta7a228fa74d27328575863b295fff1773e96abdb (diff)
downloadmeson-f4f64280c36f738b2bfde82d33c375cf9263dec0.tar.gz
vala: Pass --shared-library to valac when generating a .gir file
This is required to make sure that the generated .gir file actually contains all the information to be used dynamically. Valac supports this argument since 0.29.3 released in 2015.
Diffstat (limited to 'mesonbuild')
-rw-r--r--mesonbuild/backend/ninjabackend.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py
index 92432401b..b783417ca 100644
--- a/mesonbuild/backend/ninjabackend.py
+++ b/mesonbuild/backend/ninjabackend.py
@@ -1767,6 +1767,9 @@ class NinjaBackend(backends.Backend):
girname = os.path.join(self.get_target_dir(target), target.vala_gir)
args += ['--gir', os.path.join('..', target.vala_gir)]
valac_outputs.append(girname)
+ shared_target = target.get('shared')
+ if isinstance(shared_target, build.SharedLibrary):
+ args += ['--shared-library', self.get_target_filename_for_linking(shared_target)]
# Install GIR to default location if requested by user
if len(target.install_dir) > 3 and target.install_dir[3] is True:
target.install_dir[3] = os.path.join(self.environment.get_datadir(), 'gir-1.0')