Your message dated Fri, 15 Mar 2024 22:24:56 +0000
with message-id <e1rlfyy-001y9r...@fasolo.debian.org>
and subject line Bug#1066900: fixed in gobject-introspection 1.80.0-1
has caused the Debian Bug report #1066900,
regarding g-ir-compiler: generates incorrect typelib when cross-compiling with 
different type sizes
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
1066900: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1066900
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: gobject-introspection
Version: 1.78.1-16
Severity: serious
Justification: results in misbuilt packages
X-Debbugs-Cc: debian-cr...@lists.debian.org

When it converts GIR XML to binary typelib files, g-ir-compiler replaces
abstract types such as int and gsize (size_t) with concrete types such as
gint32 (int32_t) and guint64 (uint32_t). The way in which it does this
depends on the type sizes discovered at configure time when compiling
g-ir-compiler.

This means that cross-compiling for an arm64 or riscv64 host on an amd64
build machine should be OK, but cross-compiling for armhf or i386 on amd64
will produce invalid typelibs. I am sorry that I didn't notice this sooner.

A crude solution to this would be to revert gobject-introspection and
gobject-introspection-bin to be Multi-Arch: no, so that building typelibs
is no longer possible in cross-builds. [1]

A more refined version of that would be to change the relationship between
gobject-introspection and gobject-introspection-bin so that instead of the
current arrangement where the dependency is on a virtual package
gobject-introspection-linux-little-endian, it would be on a virtual package
that also reflects the word size in use:
gobject-introspection-linux-lp64-little-endian or similar. This would
preserve the ability to cross-compile in only those situations where it
would be correct. [2]

A workaround to enable cross-compiling between word sizes would be to use
the host architecture g-ir-compiler, and run it via qemu-user.
Unfortunately this will greatly increase the amount of host-architecture
code that needs to be run via emulation.

In the short term, I'm going to do [1] or [2] as a matter of urgency,
to ensure that Ubuntu 24.04 doesn't ship with faulty cross-tools that
claim to work but actually do not. Any further improvement can be in-scope
for #1030223 "gobject-introspection: make cross-compilation possible".

If we do [2] then we will have to be extra-careful to distinguish between
dissimilar ILP32 ABIs, because gobject-introspection currently hard-codes
that it thinks time_t is long and off_t is size_t, both of which happen
to be correct on LP64 and on i386, but neither of which is correct on
an ILP32 architecture that has transitioned to large file support and
64-bit time_t (such as armel and armhf in 2024) or an ILP32 architecture
that always had 64-bit off_t and time_t (such as x32).

I apologise for having been insufficiently careful when enabling this
feature.

    smcv

--- End Message ---
--- Begin Message ---
Source: gobject-introspection
Source-Version: 1.80.0-1
Done: Simon McVittie <s...@debian.org>

We believe that the bug you reported is fixed in the latest version of
gobject-introspection, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1066...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Simon McVittie <s...@debian.org> (supplier of updated gobject-introspection 
package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Fri, 15 Mar 2024 15:32:45 +0000
Source: gobject-introspection
Architecture: source
Version: 1.80.0-1
Distribution: experimental
Urgency: medium
Maintainer: Debian GNOME Maintainers 
<pkg-gnome-maintain...@lists.alioth.debian.org>
Changed-By: Simon McVittie <s...@debian.org>
Closes: 1065332 1066900
Changes:
 gobject-introspection (1.80.0-1) experimental; urgency=medium
 .
   * New upstream stable release
   * Merge packaging changes from unstable
     - dh_girepository: Avoid generating a dependency on
       libgirepository1.0-dev (Closes: #1065332)
     - Use host g-ir-compiler (possibly wrapped with qemu-user) when
       cross-compiling, since the build architecture g-ir-compiler has
       built-in knowledge of type sizes which is not necessarily correct
       for the host architecture (Closes: #1066900)
     - d/control: Make g-i explicitly depend on g-i-bin, not just via a
       virtual package, as requested by Matthias Klose on #1064369.
       This might possibly help autopkgtest to provide better pinning.
     - d/rules: Base the choice of -Dbuild_introspection_data on
       whether we are building gir1.2-*, not the nogir build profile
       specifically
   * Refresh patch series
Checksums-Sha1:
 a0fef417480c7fac979d473f036c8828e922e783 4145 
gobject-introspection_1.80.0-1.dsc
 a86f8979d6e2cba0ff9122a6f699025b2d81bab6 5475296 
gobject-introspection_1.80.0.orig-glib.tar.xz
 527fd43734574f2afdc10e10045ae2f937c15bca 1039112 
gobject-introspection_1.80.0.orig.tar.xz
 3b9775f92a54def5de8bd48414901b8447719fc1 55936 
gobject-introspection_1.80.0-1.debian.tar.xz
 cf904cd5af82621cab4d35d8ddf80bb6f21f11a1 8963 
gobject-introspection_1.80.0-1_source.buildinfo
Checksums-Sha256:
 752937b85aba1be9f25c9df86573b5ce72d88f900cde8324d7de2fde2b4ba69d 4145 
gobject-introspection_1.80.0-1.dsc
 b3764dd6e29b664085921dd4dd6ba2430fc19760ab6857ecfa3ebd4e8c1d114c 5475296 
gobject-introspection_1.80.0.orig-glib.tar.xz
 54a90b4a3cb82fd6a3e8b8a7775178ebc954af3c2bc726ed5961e6503ce62636 1039112 
gobject-introspection_1.80.0.orig.tar.xz
 03cf0692177f9c243c77fcfdbe44b9eea0e44ca6a6fddca0b8a9afb171b8955a 55936 
gobject-introspection_1.80.0-1.debian.tar.xz
 7bd83b0af6790df71799b980dedcccdef9a1a10c27b86d4cf90e35eb3afc14cb 8963 
gobject-introspection_1.80.0-1_source.buildinfo
Files:
 c8b9429305524987c7d6425c156884d7 4145 devel optional 
gobject-introspection_1.80.0-1.dsc
 9df2169686c0b7f891067017002ad111 5475296 devel optional 
gobject-introspection_1.80.0.orig-glib.tar.xz
 003cc22c45be5edf91911050bbcfbde6 1039112 devel optional 
gobject-introspection_1.80.0.orig.tar.xz
 1e7d9fef2e492429c5b7a4cdee53b855 55936 devel optional 
gobject-introspection_1.80.0-1.debian.tar.xz
 9026f774fd28c23ce3fd23d1f55aa3dd 8963 devel optional 
gobject-introspection_1.80.0-1_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEENuxaZEik9e95vv6Y4FrhR4+BTE8FAmX0nJoACgkQ4FrhR4+B
TE9QxhAAlTU7K9WzrFLyxatrV2J15k0HzbCLjP3dnnACB3DBYttpX4fywXV0nXIE
ypLaFMHdqq4whu4fRu36VXqs37H23m+p44Roo7jbUDTxYTGq/fLwUW+wYboOsVme
FYcmd1ZnkTTUJCd0VeJ0QyvpL0DJnL0xsWNJ/WDFiZtlV9GMbO+FIoMv5JqcHpbY
bPi5/ekYmTWL1NEj7+wB2Gsz6GV/vzXCYhll5RW4V87mi7vWLc8nmsvLMP0W5NjC
lGUuYdk4F/O6Y5RcHwKNhyNsQFfyMvBU1cFZJRNhGNlFhtGkkwZMSyyXnQARZqKY
jsbU6l55WQN+OfC7h5aCsC+vByHAKfqe4lC6H2hfd+H4Cr8A44C2nVaOjpIYVI0e
R0XvhPgEbrcmAGwod9dRfMZ0tu5WsNMsrNa4+TY/xpZRSMOQ5mVmOxeoOWWBpULJ
b/VK/Et8q0/YONNI+QzPt+mdxA49QJUbdOcwEzozTfIsnmqqzY2TXVdjje57ncQp
jpBtVSOkSbb0pTxxEMUyPaMrdNy/ab2eFf99dO/YoEglbY1YZ4jcCswerdt/NzXS
NJ5iTvW4DwFgz3WNNNRngG5MzRpIn2qEM5FGj6sgsGXqY7J5qz6WPF6r6YyRtDnW
4OjbyPylUdAj2ce/pJXKVRIi4bjmEWVr0x81EjAyHBXyl6oJcyE=
=en3o
-----END PGP SIGNATURE-----

Attachment: pgp5RY5udix10.pgp
Description: PGP signature


--- End Message ---

Reply via email to