From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.haj.ipfire.org (localhost [127.0.0.1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4ZyGwB4LFtz3393 for ; Wed, 14 May 2025 15:09:30 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) client-signature RSA-PSS (4096 bits)) (Client CN "mail01.haj.ipfire.org", Issuer "R10" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4ZyGw70xRtz2yVK for ; Wed, 14 May 2025 15:09:27 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4ZyGw63sN2z1Tl; Wed, 14 May 2025 15:09:26 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1747235366; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=VZoN3ahhoPdfsyg4Q1a/oX3qfnoe0cGkhnGlbG0hmYo=; b=Mb00/C98nDEUMdRmlSnMe6whA87Q0Iu45VXb7a+e734kXefGaX0YtXKsQ8q6dNdQf/9mL+ bPncxifFvZVtueBQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1747235366; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=VZoN3ahhoPdfsyg4Q1a/oX3qfnoe0cGkhnGlbG0hmYo=; b=oC777UR/QbqrRgVpnlf66PQ2ZdI3RNA/MnX3qgAf/AFhLgyZWSv247FN9+jYf7J/J8g7NQ IQTGnb/kYyRm5zDUn85NXeqqYOZodjz4cBz4IUEwStcW0G7qXIQ6hwtBUQ3ToAvTKqNYYG Jiga436pkoJlGzLkj+cIhXXpvndJs9sEyZrqVfg30END8mD5mKpZzqpt9SSiKthKKFtKMM qKWoeRNi/LGIXyxZYbGrEl4PsPB76hBR8qide8tvEtGkonC50ft5MIEcKcCJULi3OHw9fV Z7hV+CF5EJUf1T+JPSrVjHKrC9MFZr1GwMmyQSEzLao7UQjX8gpNy22tarJtbQ== Content-Type: text/plain; charset=utf-8 Precedence: list List-Id: List-Subscribe: , List-Unsubscribe: , List-Post: List-Help: Sender: Mail-Followup-To: Mime-Version: 1.0 Subject: Re: New version of gettext is causing fireperf to fail to build From: Michael Tremer In-Reply-To: Date: Wed, 14 May 2025 16:09:26 +0100 Cc: "IPFire: Development-List" Content-Transfer-Encoding: quoted-printable Message-Id: References: <1b4d9025-5b3c-4af0-8f75-b2b691e9e6f8@ipfire.org> <1F0419DA-4D6A-466F-A828-E300BBB28308@ipfire.org> <1e01ddc3-37cf-4d61-abc8-392a45f5bcb2@ipfire.org> To: Adolf Belka Thank you. We should upstream the changes into the individual repositories. I have merged your patches for now to get the build going again. -Michael > On 14 May 2025, at 10:57, Adolf Belka wrote: >=20 > Hi Michael, >=20 >=20 > Also had to do the same with libloc. >=20 > Everything else after that has built successfully. >=20 > Will do a full clean build now and then submit patches for the = changes. >=20 > Regards, > Adolf. >=20 > On 14/05/2025 10:19, Adolf Belka wrote: >> Hi Michael, >> Success!! >> On 13/05/2025 20:57, Adolf Belka wrote: >>> Hi Michael, >>>=20 >>> On 13/05/2025 16:24, Michael Tremer wrote: >>>> Hello Adolf, >>>>=20 >>>> Yay, a breaking change in Gettext. This might hurt us a lot then=E2=80= =A6 >>>>=20 >>>> The =E2=80=9Cautogen.sh=E2=80=9D script is just a script that I = wrote which takes care of setting up autoconf/automake and intltool. >>>>=20 >>>> What happens when you add autopoint to that script? Or run = autopoint before running the script? >>>=20 >>> I added autopoint into the LFS just before the autogen.sh line. >>>=20 >>> It failed to build with the following log output:- >>>=20 >>>=20 >>> 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 >>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D 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' >>>=20 >>>=20 >>> So I created a patch to add AM_GNU_GETTEXT_VERSION(0.25) into the = configure.ac >>>=20 >>> This then failed with the following log output:- >>>=20 >>> autopoint: *** AM_GNU_GETTEXT without 'external' argument is no = longer supported in version 0.25 >>>=20 >>> So I added AM_GNU_GETTEXT([external]) into configure.ac and tried = again with log output >>>=20 >>>=20 >>> 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 >>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D 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.pa= tch >>> 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' >>>=20 >>>=20 >>> Run out of ideas of what, if anything, to change further or in place = of what I have tried. >> Got it to build successfully. >> I realised that the message was about --force not being specified for = autoreconf and not autopoint so I added --force into the autoreconf = command in autogen.sh and fireperf then built successfully. >> Then the ddns package came along some build steps later and failed = with the same message as fireperf. >> So I will look at taking the same action with that one as well and = see how much further I get after that. >> Regards, >> Adolf. >>>=20 >>> Regards, >>> Adolf. >>>=20 >>>=20 >>>> -Michael >>>>=20 >>>>> On 13 May 2025, at 15:12, Adolf Belka = wrote: >>>>>=20 >>>>> Hi All, >>>>>=20 >>>>> I am running some package updates and one of those was gettext = from 0.24 to 0.25 >>>>>=20 >>>>> 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. >>>>>=20 >>>>> The fireperf build log content was:- >>>>>=20 >>>>> 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 >>>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D 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' >>>>>=20 >>>>>=20 >>>>> I found the following in the 0.24.1 version changelog >>>>>=20 >>>>> * Bug fixes: >>>>> - Fix bad interactions between autoreconf and autopoint. >>>>>=20 >>>>> and the following bug in gettext "bug #67090: autotools issue with = gettext-tools 0.24.1" >>>>>=20 >>>>> with the conclusion >>>>>=20 >>>>> 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=3Dgettext.git;a=3Dcommitdiff;h=3D43= f5ac51ddeb1b70a7b9647cb45cfeee67fd8c41 >>>>>=20 >>>>> fireperf is using autogen.sh to create the configure file and it = runs autoreconf. >>>>>=20 >>>>> It looks like with the latest gettext version autoreconf should be = replaced with some other method but I have no idea what? >>>>>=20 >>>>> Regards, >>>>> Adolf. >>>>>=20 >>>>=20 >>>>=20 >>>=20 >=20