public inbox for development@lists.ipfire.org
 help / color / mirror / Atom feed
* New version of gettext is causing fireperf to fail to build
@ 2025-05-13 14:12 Adolf Belka
  2025-05-13 14:24 ` Michael Tremer
  0 siblings, 1 reply; 3+ messages in thread
From: Adolf Belka @ 2025-05-13 14:12 UTC (permalink / raw)
  To: IPFire: Development-List

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.


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: New version of gettext is causing fireperf to fail to build
  2025-05-13 14:12 New version of gettext is causing fireperf to fail to build Adolf Belka
@ 2025-05-13 14:24 ` Michael Tremer
  2025-05-13 18:57   ` Adolf Belka
  0 siblings, 1 reply; 3+ messages in thread
From: Michael Tremer @ 2025-05-13 14:24 UTC (permalink / raw)
  To: Adolf Belka; +Cc: IPFire: Development-List

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?

-Michael

> On 13 May 2025, at 15:12, Adolf Belka <adolf.belka@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.
> 



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: New version of gettext is causing fireperf to fail to build
  2025-05-13 14:24 ` Michael Tremer
@ 2025-05-13 18:57   ` Adolf Belka
  0 siblings, 0 replies; 3+ messages in thread
From: Adolf Belka @ 2025-05-13 18:57 UTC (permalink / raw)
  To: Michael Tremer; +Cc: IPFire: Development-List

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.belka@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.
>>
> 
> 



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-05-13 18:58 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-05-13 14:12 New version of gettext is causing fireperf to fail to build Adolf Belka
2025-05-13 14:24 ` Michael Tremer
2025-05-13 18:57   ` Adolf Belka

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox