Hi Michael,
On 13/05/2025 16:24, Michael Tremer wrote:
Hello Adolf,
Yay, a breaking change in Gettext. This might hurt us a lot then…
The “autogen.sh” script is just a script that I wrote which takes care of
setting up autoconf/automake and intltool.
What happens when you add autopoint to that script? Or run autopoint before
running the script?
I added autopoint into the LFS just before the autogen.sh line.
It failed to build with the following log output:-
May 13 18:16:55: Building fireperf make: Entering directory
'/home/build/sandbox/ipfire-2.x/lfs'
make: Nothing to be done for 'download'.
make: Leaving directory '/home/build/sandbox/ipfire-2.x/lfs'
make: Entering directory '/usr/src/lfs'
fireperf-0.2.0.tar.gz checksum OK
====================================== Installing fireperf-0.2.0 ...
Install started; saving file list to /usr/src/lsalr ...
fireperf-0.2.0/
fireperf-0.2.0/.gitignore
fireperf-0.2.0/Makefile.am
fireperf-0.2.0/autogen.sh
fireperf-0.2.0/configure.ac
fireperf-0.2.0/debian/
fireperf-0.2.0/debian/build.sh
fireperf-0.2.0/debian/changelog
fireperf-0.2.0/debian/compat
fireperf-0.2.0/debian/control
fireperf-0.2.0/debian/copyright
fireperf-0.2.0/debian/rules
fireperf-0.2.0/m4/
fireperf-0.2.0/m4/.gitignore
fireperf-0.2.0/man/
fireperf-0.2.0/man/.gitignore
fireperf-0.2.0/man/asciidoc.conf
fireperf-0.2.0/man/fireperf.txt
fireperf-0.2.0/po/
fireperf-0.2.0/po/.gitignore
fireperf-0.2.0/po/POTFILES.in
fireperf-0.2.0/src/
fireperf-0.2.0/src/.gitignore
fireperf-0.2.0/src/client.c
fireperf-0.2.0/src/client.h
fireperf-0.2.0/src/logging.c
fireperf-0.2.0/src/logging.h
fireperf-0.2.0/src/main.c
fireperf-0.2.0/src/main.h
fireperf-0.2.0/src/random.c
fireperf-0.2.0/src/random.h
fireperf-0.2.0/src/server.c
fireperf-0.2.0/src/server.h
fireperf-0.2.0/src/util.c
fireperf-0.2.0/src/util.h
cd /usr/src/fireperf-0.2.0 && autopoint
autopoint: *** Missing version: please specify in configure.ac through a line
'AM_GNU_GETTEXT_VERSION(x.yy.zz)' the gettext version the package is using
autopoint: *** Stop.
make: *** [fireperf:84: /usr/src/log/fireperf-0.2.0] Error 1
make: Leaving directory '/usr/src/lfs'
So I created a patch to add AM_GNU_GETTEXT_VERSION(0.25) into the configure.ac
This then failed with the following log output:-
autopoint: *** AM_GNU_GETTEXT without 'external' argument is no longer
supported in version 0.25
So I added AM_GNU_GETTEXT([external]) into configure.ac and tried again with
log output
May 13 18:48:57: Building fireperf make: Entering directory
'/home/ahb/sandbox/ipfire-2.x/lfs'
make: Nothing to be done for 'download'.
make: Leaving directory '/home/ahb/sandbox/ipfire-2.x/lfs'
make: Entering directory '/usr/src/lfs'
fireperf-0.2.0.tar.gz checksum OK
====================================== Installing fireperf-0.2.0 ...
Install started; saving file list to /usr/src/lsalr ...
fireperf-0.2.0/
fireperf-0.2.0/.gitignore
fireperf-0.2.0/Makefile.am
fireperf-0.2.0/autogen.sh
fireperf-0.2.0/configure.ac
fireperf-0.2.0/debian/
fireperf-0.2.0/debian/build.sh
fireperf-0.2.0/debian/changelog
fireperf-0.2.0/debian/compat
fireperf-0.2.0/debian/control
fireperf-0.2.0/debian/copyright
fireperf-0.2.0/debian/rules
fireperf-0.2.0/m4/
fireperf-0.2.0/m4/.gitignore
fireperf-0.2.0/man/
fireperf-0.2.0/man/.gitignore
fireperf-0.2.0/man/asciidoc.conf
fireperf-0.2.0/man/fireperf.txt
fireperf-0.2.0/po/
fireperf-0.2.0/po/.gitignore
fireperf-0.2.0/po/POTFILES.in
fireperf-0.2.0/src/
fireperf-0.2.0/src/.gitignore
fireperf-0.2.0/src/client.c
fireperf-0.2.0/src/client.h
fireperf-0.2.0/src/logging.c
fireperf-0.2.0/src/logging.h
fireperf-0.2.0/src/main.c
fireperf-0.2.0/src/main.h
fireperf-0.2.0/src/random.c
fireperf-0.2.0/src/random.h
fireperf-0.2.0/src/server.c
fireperf-0.2.0/src/server.h
fireperf-0.2.0/src/util.c
fireperf-0.2.0/src/util.h
cd /usr/src/fireperf-0.2.0 && patch -Np1 -i
/usr/src/src/patches/fireperf-0.2.0_add_gettext_version_to_configure.ac.patch
patching file configure.ac
cd /usr/src/fireperf-0.2.0 && autopoint
Copying file ABOUT-NLS
Creating directory build-aux
Copying file build-aux/config.rpath
Copying file m4/build-to-host.m4
Copying file m4/gettext.m4
Copying file m4/host-cpu-c-abi.m4
Copying file m4/iconv.m4
Copying file m4/intlmacosx.m4
Copying file m4/lib-ld.m4
Copying file m4/lib-link.m4
Copying file m4/lib-prefix.m4
Copying file m4/nls.m4
Copying file m4/po.m4
Copying file m4/progtest.m4
Copying file po/Makefile.in.in
Copying file po/Makevars.template
Copying file po/Rules-quot
Copying file po/boldquot.sed
Copying file po/en@boldquot.header
Copying file po/en@quot.header
Copying file po/insert-header.sed
Copying file po/quot.sed
Copying file po/remove-potcdate.sed
cd /usr/src/fireperf-0.2.0 && ./autogen.sh
autopoint: File po/Makefile.in.in has been locally modified.
autopoint: *** Some files have been locally modified. Not overwriting them
because --force has not been specified. For your convenience, you find the
local modifications in the file '/tmp/arhsZdgd/gtso2IqI/autopoint.diff'.
autopoint: *** Stop.
autoreconf: error: autopoint failed with exit status: 1
make: *** [fireperf:86: /usr/src/log/fireperf-0.2.0] Error 1
make: Leaving directory '/usr/src/lfs'
Run out of ideas of what, if anything, to change further or in place of what I
have tried.
Regards,
Adolf.
-Michael
On 13 May 2025, at 15:12, Adolf Belka <adolf.be...@ipfire.org> wrote:
Hi All,
I am running some package updates and one of those was gettext from 0.24 to 0.25
gettext built without any problems but when the build got to fireperf it
failed. Restoring gettext to the 0.24 version caused fireperf to build without
any problems.
The fireperf build log content was:-
May 13 13:19:31: Building fireperf make: Entering directory
'/home/build/sandbox/ipfire-2.x/lfs'
make: Nothing to be done for 'download'.
make: Leaving directory '/home/build/sandbox/ipfire-2.x/lfs'
make: Entering directory '/usr/src/lfs'
fireperf-0.2.0.tar.gz checksum OK
====================================== Installing fireperf-0.2.0 ...
Install started; saving file list to /usr/src/lsalr ...
fireperf-0.2.0/
fireperf-0.2.0/.gitignore
fireperf-0.2.0/Makefile.am
fireperf-0.2.0/autogen.sh
fireperf-0.2.0/configure.ac
fireperf-0.2.0/debian/
fireperf-0.2.0/debian/build.sh
fireperf-0.2.0/debian/changelog
fireperf-0.2.0/debian/compat
fireperf-0.2.0/debian/control
fireperf-0.2.0/debian/copyright
fireperf-0.2.0/debian/rules
fireperf-0.2.0/m4/
fireperf-0.2.0/m4/.gitignore
fireperf-0.2.0/man/
fireperf-0.2.0/man/.gitignore
fireperf-0.2.0/man/asciidoc.conf
fireperf-0.2.0/man/fireperf.txt
fireperf-0.2.0/po/
fireperf-0.2.0/po/.gitignore
fireperf-0.2.0/po/POTFILES.in
fireperf-0.2.0/src/
fireperf-0.2.0/src/.gitignore
fireperf-0.2.0/src/client.c
fireperf-0.2.0/src/client.h
fireperf-0.2.0/src/logging.c
fireperf-0.2.0/src/logging.h
fireperf-0.2.0/src/main.c
fireperf-0.2.0/src/main.h
fireperf-0.2.0/src/random.c
fireperf-0.2.0/src/random.h
fireperf-0.2.0/src/server.c
fireperf-0.2.0/src/server.h
fireperf-0.2.0/src/util.c
fireperf-0.2.0/src/util.h
cd /usr/src/fireperf-0.2.0 && ./autogen.sh
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'.
libtoolize: linking file 'build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: linking file 'm4/libtool.m4'
libtoolize: linking file 'm4/ltoptions.m4'
libtoolize: linking file 'm4/ltsugar.m4'
libtoolize: linking file 'm4/ltversion.m4'
libtoolize: linking file 'm4/lt~obsolete.m4'
You should update your 'aclocal.m4' by running aclocal.
intltoolize: 'po/Makefile.in.in' exists: use '--force' to overwrite
configure.ac:21: warning: The macro 'AC_PROG_CC_STDC' is obsolete.
configure.ac:21: You should run autoupdate.
./lib/autoconf/c.m4:1669: AC_PROG_CC_STDC is expanded from...
configure.ac:21: the top level
configure.ac:32: warning: AM_NLS is m4_require'd but not m4_defun'd
m4/intltool.m4:27: IT_PROG_INTLTOOL is expanded from...
configure.ac:32: the top level
configure:13968: error: possibly undefined macro: AM_NLS
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
make: *** [fireperf:84: /usr/src/log/fireperf-0.2.0] Error 1
make: Leaving directory '/usr/src/lfs'
I found the following in the 0.24.1 version changelog
* Bug fixes:
- Fix bad interactions between autoreconf and autopoint.
and the following bug in gettext "bug #67090: autotools issue with gettext-tools
0.24.1"
with the conclusion
I have now added a piece of documentation that clarifies how to obtain the
autoconf macros, and that autoreconf is discouraged for this purpose:
https://git.savannah.gnu.org/gitweb/?p=gettext.git;a=commitdiff;h=43f5ac51ddeb1b70a7b9647cb45cfeee67fd8c41
fireperf is using autogen.sh to create the configure file and it runs
autoreconf.
It looks like with the latest gettext version autoreconf should be replaced
with some other method but I have no idea what?
Regards,
Adolf.