diff options
| author | Eli Schwartz <eschwartz93@gmail.com> | 2025-01-07 16:06:50 -0500 |
|---|---|---|
| committer | Sam James <sam@gentoo.org> | 2025-10-29 05:13:19 +0000 |
| commit | d4c9536591165104e5ad98489d0e17cba82803cf (patch) | |
| tree | 94096d20cec9e1a1563dfb756306ab00cf0ac3b2 /ci/ciimage | |
| parent | 76cec64832d26f47a0e34fdb16b2d9e279c6c2a0 (diff) | |
| download | meson-d4c9536591165104e5ad98489d0e17cba82803cf.tar.gz | |
ci: gentoo: make vala tests actually run
Gentoo does a weirdo thing where you cannot detect vala without setting
an environment variable. It's usually only set in ebuild recipes, and
vala simply does not work on Gentoo at all, period, end of story,
outside of that.
Capitulate, and parse the output of portage to find the most recent vala
installed and export that directly into meson's binary table lookup. We
aren't interested in whether *Gentoo* works with Vala, we are interested
in finding out whether newly packaged vala versions in Gentoo are
compatible with meson.
Bug: https://bugs.gentoo.org/513658
Diffstat (limited to 'ci/ciimage')
| -rwxr-xr-x | ci/ciimage/gentoo/install.sh | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/ci/ciimage/gentoo/install.sh b/ci/ciimage/gentoo/install.sh index 68bcac11a..a48456df7 100755 --- a/ci/ciimage/gentoo/install.sh +++ b/ci/ciimage/gentoo/install.sh @@ -165,6 +165,15 @@ python3 -m pip install "${base_python_pkgs[@]}" echo "source /etc/profile" >> /ci/env_vars.sh +# For inexplicable reasons, Gentoo only packages valac as valac-$(version) so +# no software can locate it. Parse the installed version out of portage and +# export it to meson. +VALA_VER=$(portageq best_version / dev-lang/vala) +VALA_VER=${VALA_VER#dev-lang/vala-} +VALA_VER=${VALA_VER%.*} +echo "export VALAC=/usr/bin/valac-${VALA_VER}" >> /ci/env_vars.sh +echo "export VAPIGEN=/usr/bin/vapigen-${VALA_VER}" >> /ci/env_vars.sh + # Cleanup to avoid including large contents in the docker image. # We don't need cache files that are side artifacts of installing packages. # We also don't need the gentoo tree -- the official docker image doesn't |
