--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: glibc 2.42 breaks the gnat-XXX provide
- From: Matthias Klose <doko@debian.org>
- Date: Sun, 21 Sep 2025 07:37:34 +0200
- Message-id: <e0183d3f-0275-428d-bc8e-874908975217@debian.org>
Package: src:glibc
Version: 2.42-2
Severity: serious
Tags: sid forky
X-Debbugs-CC: debian-ada@lists.debian.org
Affects: src:gcc-14
When gcc-14 is rebuilt with glibc 2.42, the gnat provides will change. I
figured out this is due to:
--- ./build/gcc/ada/rts/s-oscons.ads 2025-09-20 12:25:15.710151493 +0200
+++ ./build/gcc/ada/rts/s-oscons.ads 2025-09-20 09:23:35.826784850 +0200
@@ -173,36 +173,36 @@
PARENB : constant := 256; -- Parity
enable
PARODD : constant := 512; -- Parity odd
B0 : constant := 0; -- 0 bps
- B50 : constant := 1; -- 50 bps
- B75 : constant := 2; -- 75 bps
- B110 : constant := 3; -- 110 bps
- B134 : constant := 4; -- 134 bps
- B150 : constant := 5; -- 150 bps
- B200 : constant := 6; -- 200 bps
- B300 : constant := 7; -- 300 bps
- B600 : constant := 8; -- 600 bps
- B1200 : constant := 9; -- 1200 bps
- B1800 : constant := 10; -- 1800 bps
- B2400 : constant := 11; -- 2400 bps
- B4800 : constant := 12; -- 4800 bps
- B9600 : constant := 13; -- 9600 bps
- B19200 : constant := 14; -- 19200 bps
- B38400 : constant := 15; -- 38400 bps
- B57600 : constant := 4097; -- 57600 bps
- B115200 : constant := 4098; -- 115200 bps
- B230400 : constant := 4099; -- 230400 bps
- B460800 : constant := 4100; -- 460800 bps
- B500000 : constant := 4101; -- 500000 bps
- B576000 : constant := 4102; -- 576000 bps
- B921600 : constant := 4103; -- 921600 bps
- B1000000 : constant := 4104; -- 1000000 bps
- B1152000 : constant := 4105; -- 1152000 bps
- B1500000 : constant := 4106; -- 1500000 bps
- B2000000 : constant := 4107; -- 2000000 bps
- B2500000 : constant := 4108; -- 2500000 bps
- B3000000 : constant := 4109; -- 3000000 bps
- B3500000 : constant := 4110; -- 3500000 bps
- B4000000 : constant := 4111; -- 4000000 bps
+ B50 : constant := 50; -- 50 bps
+ B75 : constant := 75; -- 75 bps
+ B110 : constant := 110; -- 110 bps
+ B134 : constant := 134; -- 134 bps
+ B150 : constant := 150; -- 150 bps
+ B200 : constant := 200; -- 200 bps
+ B300 : constant := 300; -- 300 bps
+ B600 : constant := 600; -- 600 bps
+ B1200 : constant := 1200; -- 1200 bps
+ B1800 : constant := 1800; -- 1800 bps
+ B2400 : constant := 2400; -- 2400 bps
+ B4800 : constant := 4800; -- 4800 bps
+ B9600 : constant := 9600; -- 9600 bps
+ B19200 : constant := 19200; -- 19200 bps
+ B38400 : constant := 38400; -- 38400 bps
+ B57600 : constant := 57600; -- 57600 bps
+ B115200 : constant := 115200; -- 115200 bps
+ B230400 : constant := 230400; -- 230400 bps
+ B460800 : constant := 460800; -- 460800 bps
+ B500000 : constant := 500000; -- 500000 bps
+ B576000 : constant := 576000; -- 576000 bps
+ B921600 : constant := 921600; -- 921600 bps
+ B1000000 : constant := 1000000; -- 1000000 bps
+ B1152000 : constant := 1152000; -- 1152000 bps
+ B1500000 : constant := 1500000; -- 1500000 bps
+ B2000000 : constant := 2000000; -- 2000000 bps
+ B2500000 : constant := 2500000; -- 2500000 bps
+ B3000000 : constant := 3000000; -- 3000000 bps
+ B3500000 : constant := 3500000; -- 3500000 bps
+ B4000000 : constant := 4000000; -- 4000000 bps
---------------------------------
-- Terminal control characters --
Now, that might not be considered an ABI break for glibc, but the
checksum over the .ali files interpret that as such one. However that
seems to be the first time that a glibc update changes that gnat ABI.
Note, that we just can rebuild all the packages build-depending on
gnat/gnat-14, but maybe the current ali checksum approach is too tight
to be useful for an ABI check.
--- End Message ---
--- Begin Message ---
- To: 1115881-done@bugs.debian.org
- Cc: Nicolas Boulenguez <nicolas@debian.org>, Matthias Klose <doko@debian.org>, debian-ada@lists.debian.org
- Subject: Re: Bug#1115881: glibc 2.42 breaks the gnat-XXX provide
- From: Aurelien Jarno <aurel32@debian.org>
- Date: Fri, 5 Dec 2025 23:03:37 +0100
- Message-id: <aTNWuUYAZdtsaQZF@aurel32.net>
- In-reply-to: <aSYuMHBZcf7Ln7zK@aurel32.net>
- References: <e0183d3f-0275-428d-bc8e-874908975217@debian.org> <aR4Gf27W7QjEXjCK@aurel32.net> <e0183d3f-0275-428d-bc8e-874908975217@debian.org> <aSRBiqD7Sp_8SWH4@pegase> <e0183d3f-0275-428d-bc8e-874908975217@debian.org> <aSYuMHBZcf7Ln7zK@aurel32.net>
On 2025-11-25 23:31, Aurelien Jarno wrote:
> Hi,
>
> On 2025-11-24 12:29, Nicolas Boulenguez wrote:
> > > > When gcc-14 is rebuilt with glibc 2.42, the gnat provides will change. I
> > > > figured out this is due to:
> >
> > > > --- ./build/gcc/ada/rts/s-oscons.ads
> > > > +++ ./build/gcc/ada/rts/s-oscons.ads
> > > > - B50 : constant := 1; -- 50 bps
> > > > + B50 : constant := 50; -- 50 bps
> >
> > > > Now, that might not be considered an ABI break for glibc, but the checksum
> > > > over the .ali files interpret that as such one. However that seems to be
> > > > the first time that a glibc update changes that gnat ABI.
> > > >
> > > > Note, that we just can rebuild all the packages build-depending on
> > > > gnat/gnat-14, but maybe the current ali checksum approach is too tight to be
> > > > useful for an ABI check.
> > >
> > > Could someone on the ADA side please tell us, if it is fine to include
> > > the gnat stack in the glibc transition, or if the checksum approach
> > > needs to be changed or any other suggestion?
> >
> > Hello.
> >
> > In addition to usual precautions regarding ABIs, Ada requires that all
> > reverse dependencies are rebuilt whenever a source changes. The ALI
> > checksums enforce this rule and seem right here.
>
> Thanks for the explanations.
>
> > That said, it is not currently possible to rebuild all Ada packages.
> > Most of them FTBFS and are removed from unstable.
> >
> > I think the only sensible option is to remove all Ada packages from
> > testing. If you confirm that this solves your problem, I will request
> > the removal.
>
> We will definitely need to get the packages that can't be rebuilt
> removed. For the other packages, thanks for the offer to remove them
> from testing.
>
> That said if they can get rebuild, I guess they can migrate at the same
> time with glibc 2.42 and gcc-14 rebuilt against glibc 2.42. The
> alternative to remove them from testing, get them rebuilt and migrated
> again is also to consider, but I guess we should just leave the release
> team to decide on the best procedure.
>
> Anyway I'll mention the strategy in the transition bug, and will put
> debian-ada@l.d.o in Cc. I'll first do an upload to experimental with the
> latest upstream change, and if all goes fine I'll open a transition bug
> in the next days.
The release team added a transition tracker entry to manage the rebuild:
https://release.debian.org/transitions/html/gnat-14-abi.html
I am therefore closing the bug.
Regards
Aurelien
--
Aurelien Jarno GPG: 4096R/1DDD8C9B
aurelien@aurel32.net http://aurel32.net
--- End Message ---