#1126962 axel: FTBFS with gettext 0.26

Package:
src:axel
Source:
src:axel
Submitter:
Santiago Vila
Date:
2026-06-08 10:21:02 UTC
Severity:
normal
Tags:
#1126962#5
Date:
2026-02-04 18:55:25 UTC
From:
To:
Dear maintainer:

During a rebuild of all packages in unstable using gettext 0.26
(yet to be uploaded for Debian), this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

https://people.debian.org/~sanvila/gettext/build-logs/

I've written this page to explain how to reproduce the problem:

https://people.debian.org/~sanvila/gettext/

This bug will be raised to important once gettext is uploaded for
experimental, and RC once gettext is uploaded for unstable, but
I still don't know when I will be able to do that. If you fix
this bug, it would help to have gettext in unstable sooner.

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:axel, so that this is still
visible in the BTS web page for this package.

Thanks.
--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean
   dh_clean
 debian/rules binary
dh binary
   dh_update_autotools_config
   dh_autoreconf
Copying file m4/codeset.m4
Copying file m4/glibc21.m4
Copying file m4/isc-posix.m4
Copying file m4/lcmessage.m4
configure.ac:239: warning: macro 'AM_GNU_GETTEXT' not found in library
configure.ac:240: warning: macro 'AM_GNU_GETTEXT_VERSION' not found in library
configure.ac: warning: AM_GNU_GETTEXT is used, but not AM_GNU_GETTEXT_VERSION or AM_GNU_GETTEXT_REQUIRE_VERSION
configure.ac:239: warning: The macro 'AC_OUTPUT_COMMANDS' is obsolete.
configure.ac:239: You should run autoupdate.
./lib/autoconf/status.m4:1025: AC_OUTPUT_COMMANDS is expanded from...
m4/gettext.m4:294: AM_PO_SUBDIRS is expanded from...
m4/gettext.m4:57: AM_GNU_GETTEXT is expanded from...
configure.ac:239: the top level
configure.ac:239: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.ac:239: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
lib/m4sugar/m4sh.m4:690: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:697: AS_IF is expanded from...
./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
./lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
m4/gettext.m4:57: AM_GNU_GETTEXT is expanded from...
configure.ac:239: the top level
configure.ac:239: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.ac:239: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
lib/m4sugar/m4sh.m4:690: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:697: AS_IF is expanded from...
./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
./lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
m4/iconv.m4:11: AM_ICONV_LINK is expanded from...
m4/gettext.m4:57: AM_GNU_GETTEXT is expanded from...
configure.ac:239: the top level
configure.ac:240: error: possibly undefined macro: AM_GNU_GETTEXT_VERSION
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
autoreconf: error: /usr/bin/autoconf failed with exit status: 1
dh_autoreconf: error: autoreconf -f -i returned exit code 1
make: *** [debian/rules:7: binary] Error 255
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2
--------------------------------------------------------------------------------

#1126962#12
Date:
2026-04-07 21:13:52 UTC
From:
To:
tags 1126962 patch
thanks

I've posted the patch below in the github issue where this was forwarded.

Thanks.
--- a/configure.ac +++ b/configure.ac @@ -237,7 +237,7 @@ AS_IF([test "x$with_ssl" != xno], [ # Add Gettext AM_GNU_GETTEXT([external]) -AM_GNU_GETTEXT_VERSION([0.11.1]) +AM_GNU_GETTEXT_VERSION([0.23]) # POSIX threads AX_PTHREAD()
#1126962#23
Date:
2026-06-06 09:57:34 UTC
From:
To:
There is a major difference between what Debian wants and what
autopoint does.

"autopoint --force" does *not* copy the gettext files from the latest
gettext version, it copies the files from the exact gettext version
in AM_GNU_GETTEXT_VERSION.

E.g. AM_GNU_GETTEXT_VERSION([0.11.4]) also fixes the build since that's
when AM_GNU_GETTEXT_VERSION was added to gettext.m4, but the package
will be built with the gettext files from 0.11.4 (released in 2002).

This happened to work with older gettext versions where the gettext
m4 macros were shipped in the global search path.

Omitting AM_GNU_GETTEXT_VERSION works, but uses the files from 0.23.1
(not the current version 0.26).

The first question is whether this behaviour is wanted in Debian,
or whether Debian package builds should use the latest version.

cu
Adrian

#1126962#28
Date:
2026-06-06 10:41:51 UTC
From:
To:
For the proposed patch, I decided to update the version a little bit,
after checking that it works, while still allowing builds in trixie.
That's all.

No, there is no need to use the latest version. Lots of upstream
packages have a version in AM_GNU_GETTEXT_VERSION which is a lot
older than our stable distribution and they work fine. I'm only
proposing a small update when we are updating configure.ac, as
I believe that's also what an upstream author would do if they
had to update configure.ac.

If you want to propose something different, feel free, I never
claimed my patches were the only way to fix the problem.

Thanks.

#1126962#33
Date:
2026-06-06 11:19:02 UTC
From:
To:
I don't really think so.

If 0.11.4 works, then using 0.11.4 would be probably a slightly better
patch than the one I initially proposed.

(When I proposed those patches, I was trying to fix several packages
in a short time. As soon as I realized that the version in trixie was,
in general, an improvement over the old original version in terms of
buildability, I decided to take it as the basis for the fixes, but as
you point out, in several cases an older version might also work).

Neither Debian or other distributions need the latest version. This is
designed to be that way. I believe this is well documented, but I may
be wrong. Feel free to ask bug-gettext@gnu.org for clarifications.

(i.e. I don't see the need to bother dh_autoreconf maintainers for this).

Thanks.

#1126962#38
Date:
2026-06-06 11:24:54 UTC
From:
To:
If upstream would add a gh pipeline that includes Ubuntu 24.04,
then your suggestion of using that version upstream would break.

AM_GNU_GETTEXT_REQUIRE_VERSION([0.19.6]) would be better for that,
since it permits using the latest version without breaking the build
in older environments.[1]

Few packages have been rebuilt with 0.26 so far.

Building packaged axel in trixie uses 0.23,
building packaged axel in sid uses 0.11.1.

A package with AM_GNU_GETTEXT_VERSION([0.11.4]) might use 22 year older
macros in forky than in trixie.

What happens when something like the C23 default change in GCC 15
breaks a > 20 year old gettext macro? This class of problems is
part of the rationale for dh-autoreconf updating everything.

cu
Adrian

[1] AM_GNU_GETTEXT_REQUIRE_VERSION was added in 0.19.6

#1126962#43
Date:
2026-06-06 15:48:48 UTC
From:
To:
Dear maintainer,

I've prepared an NMU for axel (versioned as 2.17.14-3.1) and uploaded
it to DELAYED/2. Please feel free to tell me if I should cancel it.

cu
Adrian

#1126962#50
Date:
2026-06-08 10:19:01 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
axel, 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 1126962@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Adrian Bunk <bunk@debian.org> (supplier of updated axel 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 ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Sat, 06 Jun 2026 18:45:25 +0300
Source: axel
Architecture: source
Version: 2.17.14-3.1
Distribution: unstable
Urgency: medium
Maintainer: Joao Eriberto Mota Filho <eriberto@debian.org>
Changed-By: Adrian Bunk <bunk@debian.org>
Closes: 1126962
Changes:
 axel (2.17.14-3.1) unstable; urgency=medium
 .
   * Non-maintainer upload.
   * Fix FTBFS with gettext 0.26. (Closes: #1126962)
Checksums-Sha1:
 3c90c5a82218ea725a7080f34a8c3d89f2dce8ee 1920 axel_2.17.14-3.1.dsc
 5dc5b2aaa16e6738de48c76b8d46eb54fcab2e0f 10312 axel_2.17.14-3.1.debian.tar.xz
Checksums-Sha256:
 4f6d1a8e15e6646ad63af647a1cc2f033bec9ee9783a02637c0793d1e289b0ba 1920 axel_2.17.14-3.1.dsc
 a59af671184cd72e6d0c1369388cd4e7ba50094adc7985987cf0e3b5b4202a3d 10312 axel_2.17.14-3.1.debian.tar.xz
Files:
 5de1c5f9594303a132a44a7c523685f3 1920 web optional axel_2.17.14-3.1.dsc
 ef094f2ba9a3c2df1696e14909f9797d 10312 web optional axel_2.17.14-3.1.debian.tar.xz
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEOvp1f6xuoR0v9F3wiNJCh6LYmLEFAmokQUkACgkQiNJCh6LY
mLE+yhAAqcxVsSN7BUFtKRasj2VWznOlm/D/VX9Ff9sK/ob5vR/COU/KD0TO9nE4
hiVpaCyO7MngRVJS381+sjE7WeKVIVKVIHZ5bsY2jviPdPrczGhU+2jBJflNdRtj
ehFZd6kK9AJceDmu+05M6AHbdYmUOZvg9A0aFgi9Zho19SIGDhuSVqM6/hOnvEzi
lZ6m90U0skiEsk8qcduzIfL5l8U+41qazOBhQeiz4QW++msfNdRetJRK8e17bNBE
Jb8pBNR2U97ok4eHYKH4RWX0dE6jKZLqJ2CB54Q4V8L3XbQEt5U1X5LYbgyrjl6k
fU/bLqplD0vusaWuNsenwoyee5vrgiXfoQf8bvU9kaBdl9zShlIdDUjbQkpSWkOn
fPzRiZ8PWMpZHVW3aMyK4H6zapI7tdHg/futo+Dri/K7CNOsVeD1mfqQHDjbTu0z
Rs/vsrwyOrCZI71I/n6AyLA47HsFGPTNiPHEbOhJu22Nw1aeCzzxorzudkqN/N1F
KhZ95BZH/BbuYcw173323qUSPGr2v3uOvMW3HD/4KfK9jIM1RyboawiED4nYdMpg
jWns8qjGB0q6vxWE03Hq7CT2Q8rT+zb53rNkP8yFvihDIqoVBvESZxsyy7EpjGQh
lE5HWfWaGkwGJN2KgwL4P2wUGgCkQlw4fqklBP+23f07TSX93h8=
=NnT/
-----END PGP SIGNATURE-----