Skip to content

meson: Fix race condition in GIR generation of internal components

Using the component name implies that the GIR is already available in the system. Instead, by using the GirTarget that Meson provides, Meson can let g-ir-scanner know that the module and its associated pkg-config files have not yet been installed to the system.

This fixes a race condition on Ninja 1.11+ where it would be possible to, given enough cores, run the GIR generation simultaneously on a module and its dependents.

See also !804 (comment 1545208)

See https://github.com/mesonbuild/meson/blob/master/mesonbuild/modules/gnome.py#L810, https://gitlab.freedesktop.org/gstreamer/cerbero/-/pipelines/1277369

cc @tpm

Merge request reports