[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#1023591: libgstreamer-plugins-base1.0-dev: please return to Multi-Arch: same by moving GIR XML to ${libdir}



On Tue, 22 Oct 2024 at 11:33:17 +0100, Simon McVittie wrote:
On Wed, 15 Feb 2023 at 12:50:05 +0000, Simon McVittie wrote:
The reason why GstAudio-1.0.gir is not multi-arch co-installable is that
it includes constants like GST_AUDIO_FORMAT_S16 which is defined to be
an alias for either GST_AUDIO_FORMAT_S16LE or GST_AUDIO_FORMAT_S16BE,
whichever is the native endianness.

Similarly, Gst-1.0.gir in libgstreamer1.0-dev is not multi-arch co-installable because GstIdStr contains a different amount of padding on different word sizes.

the maintainers of libgstreamer-plugins-base1.0-dev could now make it
Multi-Arch: same again, by moving the one GIR XML file that is
architecture-dependent to [the $libdir]

This wouldn't be practically useful until the same change has been carried out in libgstreamer1.0-dev. I'm preparing MRs for both packages.

With a preliminary version of the changes that I'm going to propose, I can successfully build libportal (which Build-Depends on libgstreamer-plugins-base1.0-dev) for both amd64 and i386 on the same system, without needing to use a chroot or container. (I did build profiles to turn off its Qt features, but those are orthogonal to its use of GStreamer.)

The cost of this is that it
will probably break the bindings generators listed by this UDD query:
https://udd.debian.org/cgi-bin/bts-usertags.cgi?user=pkg-gnome-maintainers%40lists.alioth.debian.org&tag=gi-gir-path

As far as I can tell from codesearch, there are no bindings in Debian that would actually be broken by these changes. There are Rust bindings for GstAudio and Gst, but they don't currently regenerate the Rust code from GIR XML at build-time; and there is a D binding for Gst (only), but similarly it doesn't currently regenerate the D code from GIR XML at build-time.

    smcv


Reply to: