#1121232 disabled gnat patches for gcc-16

#1121232#5
Date:
2025-11-23 12:47:43 UTC
From:
To:
The first gcc-16 packaging has some gnat patches disabled, because they
don't apply. These need updates / reconfirmation.

these are:

+#debian_patches += \
+#      0001-Ada-merge-all-timeval-and-timespec-definitions-and-c \
+#      0002-Ada-select-64-bits-time-functions-from-GNU-libc-when \

+    # debian_patches += ada-gcc-name

+  # debian_patches += ada-gnat-name


debian/rules2 again has a hack to provide the unversioned gnat and
gnatmake binaries.


Not yet uploaded to experimental, please see instead
https://lists.debian.org/debian-gcc/2025/11/msg00059.html

#1121232#14
Date:
2026-09-14 13:43:59 UTC
From:
To:
Considering the comments in the upstream PR;

Comment 59; Add System.C_Time and GNAT.C_Time units to libgnat
Comment 60; Fix GNAT build failure for x32 multilib

and that there are no current build failures,
it seems that patch 0001 has already been mostly applied upstream,
especially as most hunks fail to apply with "can be reverse-applied".

Patch 0002 mainly applies with fuzz and offset,
but one hunk does not apply at all.

It looks to me that upstream, when applying patch 0001,
have not applied it exactly as is, so breaking patch 0002,
that depends on our patch 0001.

I suggest dropping patch 0001,
and attach an (untested) rebased patch 0002

#1121232#19
Date:
2026-09-14 13:46:49 UTC
From:
To:
please could you test that one?

thanks, Matthias

#1121232#24
Date:
2026-09-14 14:35:13 UTC
From:
To:
Only if I can build gnat.
Preferably gnat-16-i686-linux-gnu and nothing else.

After 4 hours with my cpu at boiling point,
build failedt with

configure: exit 0
LOGFILE END /mnt/Data/SourceCode/Debian/gnat-build/gcc-16-16.2.0/build/lto-plugin/config.log
make[1]: *** [debian/rules2:1468: stamps/05-build-stamp] Error 1
make[1]: Leaving directory '/mnt/Data/SourceCode/Debian/gnat-build/gcc-16-16.2.0'
make: *** [debian/rules:51: build] Error 2
dpkg-buildpackage: error: debian/rules build subprocess failed with exit status 2
debuild: fatal error at line 1185:
dpkg-buildpackage -us -uc -ui failed


The failing line in rules2 is
set -o pipefail; \

the error the 24Mb buildlog looks to be

conftest.c:67:67: warning: integer overflow in expression of type 'long int' results in '-9223372036854775808' [-Woverflow]
    67 |                  < (int64_t) (((((int64_t) 1 << N) << N) - 1) * 2 + 2))];
       |                                                                   ^
conftest.c:66:12: error: storage size of 'test_array' isn't constant
    66 | static int test_array [1 - 2 * !((int64_t) (((((int64_t) 1 << N) << N) - 1) * 2 + 1)
       |            ^~~~~~~~~~
configure:13007: $? = 1
configure: failed program was:
| /* confdefs.h */



Cheers,
Peter

#1121232#29
Date:
2026-09-14 14:44:12 UTC
From:
To:
are you going to work on a fix?
#1121232#34
Date:
2026-09-14 15:31:54 UTC
From:
To:
Sorry, no. I'm not familiar with the code being patched,
and have no idea how to proceed.


P.S.
Probably moot now, but I would be interested to know
if it is documented anywhere, how using Debian packaging,
is it possible to do a minimal build of one compiler only.

I tried doing

export with_bootstrap=no
export DEB_BUILD_OPTIONS="nostrip nocheck"
export addons=ada

but these seem to be ignored. Build included rust and gm2 ....

#1121232#39
Date:
2026-09-14 15:46:10 UTC
From:
To:
DEB_BUILD_OPTIONS="parallel=<N> nocheck nopgo nolto nogcn nonvptx nojit
nohppa64 nolang=rust,objc,obj-c++,d,m2,go,cobol,algol68"
dpkg-buildpackage -B ...