diff mbox series

gstreamer1.0: add mulitlib scripts Gst-1.0.gir

Message ID 20251210080209.2158502-1-hongxu.jia@windriver.com
State New
Headers show
Series gstreamer1.0: add mulitlib scripts Gst-1.0.gir | expand

Commit Message

Hongxu Jia Dec. 10, 2025, 8:02 a.m. UTC
Due to upstream commit [1], the padding differs between 32 bit arch and 64 bit arch
...
|typedef struct {
|  /* < private > */
|  gpointer pointer;
|#if GLIB_SIZEOF_VOID_P == 8
|  guint8 padding[8];
|#elif GLIB_SIZEOF_VOID_P == 4
|  guint8 padding[12];
|#else
|  #error "Only 32 bit and 64 bit pointers supported currently"
|#endif
|} GstIdStr;
...

It made the generated Gst-1.0.gir be changed for multilib packages,
and caused conflicts in rootfs while installing gstreamer1.0-dev and
lib32-gstreamer1.0-dev:

|Error: Transaction test error:
|  file /usr/share/gir-1.0/Gst-1.0.gir conflicts between attempted installs of
gstreamer1.0-dev-1.26.7-r0.wr2500.corei7_64 and lib32-gstreamer1.0-dev-1.26.7-r0.wr2500.corei7_32

Add mulitlib scripts Gst-1.0.gir to fix the confliction

[1] https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/0ee18781f9b210129da23a85236266bf84bafa83#f9880c83c8bdc4d61ac7d51a4a212f602cad5d86_0_39

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
 meta/recipes-multimedia/gstreamer/gstreamer1.0_1.26.7.bb | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Alexander Kanavin Dec. 10, 2025, 9:19 a.m. UTC | #1
On Wed, 10 Dec 2025 at 09:02, hongxu via lists.openembedded.org
<hongxu.jia=windriver.com@lists.openembedded.org> wrote:

> +MULTILIB_SCRIPTS = "${PN}-dev:${datadir}/gir-1.0/Gst-1.0.gir"

This is not an executable script, so please do not misuse MULTILIB_SCRIPTS.

In this case, the file should be installed in libdir/gir-1.0 instead
of datadir, which probably needs a patch, that should be submitted
upstream.

Alex
diff mbox series

Patch

diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.26.7.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.26.7.bb
index 444165a869..ee3d3075d8 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.26.7.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.26.7.bb
@@ -8,7 +8,7 @@  LICENSE = "LGPL-2.1-or-later"
 
 DEPENDS = "glib-2.0 glib-2.0-native libxml2 bison-native flex-native"
 
-inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection ptest-gnome
+inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection ptest-gnome multilib_script
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770 \
                     file://gst/gst.h;beginline=1;endline=21;md5=e059138481205ee2c6fc1c079c016d0d"
@@ -61,6 +61,8 @@  GIR_MESON_DISABLE_FLAG = "disabled"
 
 PACKAGES += "${PN}-bash-completion"
 
+MULTILIB_SCRIPTS = "${PN}-dev:${datadir}/gir-1.0/Gst-1.0.gir"
+
 # Add the core element plugins to the main package
 FILES:${PN} += "${libdir}/gstreamer-1.0/*.so"
 FILES:${PN}-dev += "${libdir}/gstreamer-1.0/*.a ${libdir}/gstreamer-1.0/include"