Package: valac Version: 0.56.14-1 Severity: wishlist X-Debbugs-Cc: debian-cr...@lists.debian.org
Now that we can cross-compile GObject-Introspection data, many GNOME packages that could not not previously be cross-compiled become available for cross-compiling. However, some of the libraries we would like to be able to cross-compile (for example ibus and libportal) have Vala bindings, generated from the library's own GIR XML via the vapigen tool. At the moment, during a cross-build, vapigen will generally be a host-architecture binary which cannot always be run on the build architecture, causing builds to fail. Ideally, during a cross-build, we would like to run a build-architecture vapigen binary, but configure it (perhaps via command-line options or environment variables) so that it will find host-architecture GIR XML in /usr/lib/${DEB_HOST_MULTIARCH}/gir-1.0. The search paths need to be architecture-specific in order to find GLib-2.0.gir without having libgirepository1.0-dev installed, because libgirepository1.0-dev is not cross-compile-friendly. I don't think there are any other architecture-dependent paths involved, but the Vala maintainers would know what this tool does better than I do. As a proof-of-concept, I was able to work around this in libportal by generating some local wrappers and overrides; but ideally this would be something that could be done centrally, with most of the work in the vala package. I'll follow up with more concrete suggestions, but I wanted to open the bug with a relatively solution-neutral problem statement rather than jumping directly to a solution. This is related to #1060904, but perhaps more of a downstream issue; some solutions to it would benefit from #1060904, but that isn't a mandatory dependency. Thanks, smcv