[squid-users] v6.12 build error from release tarball

Marko, Peter Peter.Marko at siemens.com
Fri Nov 8 07:33:28 UTC 2024


Hi Alex,

I don't really know autotools and how they are supposed to be used.
This process (using bootstrapped release tarball + running autoreconf) is
the standard way how Yocto project builds autotool based components.
Maybe because release tarballs are bootstrapped with a possibly/usually
different version of libtool and other toolchain parts than are used by Yocto
or because of different configuration options?

Your explanation makes sense to me and I have some idea why this
build problem occurs and have some arguments for my patch within Yocto.

Thanks for your support,
Peter

> -----Original Message-----
> From: Alex Rousskov <rousskov at measurement-factory.com>
> Sent: Friday, November 8, 2024 5:27
> To: squid-users at lists.squid-cache.org
> Cc: Marko, Peter (FT D EU SK BFS1) <Peter.Marko at siemens.com>
> Subject: Re: [squid-users] v6.12 build error from release tarball
> 
> On 2024-11-07 16:48, Marko, Peter wrote:
> 
> > Commit [1] removed directory libltdl/m4 from release tarball by merging
> > all those files into libltdl/aclocal.m4,
> 
> Clarification: While commit b4addc22 itself did not remove any
> directories or merged any files, bootstrapping Squid after that commit
> may have such an effect. The exact bootstrapping outcome depends, in
> part, on bootstrapping environment (e.g., installed libtool version)...
> 
> 
> > however makefiles still
> > reference it causing following error (in Yocto project):
> 
> libltdl/Makefile.am that references m4 directory comes from Libtool.
> That particular Makefile.am does not exist in primary Squid sources
> (i.e. what gets committed to the official git repository). It gets
> created (by libtoolize IIRC) during bootstrapping of Squid sources.
> 
> 
> 
> > | autoreconf: Entering directory 'libltdl'
> 
> To bootstrap Squid, one has to run ./bootstrap.sh instead of autoreconf.
> AFAIK, Squid does not fully support bootstrapping with autoreconf;
> autoreconf fails to do the right thing in some environments. If
> autoreconf had worked for you, it was just temporary luck.
> 
> However, _why_ run autoreconf (i.e. bootstrapping Squid) after
> downloading _bootstrapped_ sources?! Clarifying this contradiction may
> help identify and address the underlying problem.
> 
> 
> Thank you,
> 
> Alex.
> 
> 
> 
> 
> 
> 
> > | autoreconf: configure.ac: not using Gettext
> > | autoreconf: running: aclocal --system-acdir=WORKDIR/recipe-
> sysroot/usr/share/aclocal/ -I WORKDIR/squid-6.12/acinclude/ -I
> WORKDIR/recipe-sysroot-native/usr/share/aclocal/ --force -I m4
> > | aclocal: error: couldn't open directory 'm4': No such file or directory
> > | autoreconf: error: aclocal failed with exit status: 1
> >
> > Following change of release tarball will make the build pass:
> > diff squid-6.12-orig/libltdl/Makefile.am squid-6.12/libltdl/Makefile.am
> > --- squid-6.12-orig/libltdl/Makefile.am
> > +++ squid-6.12/libltdl/Makefile.am
> > @@ -29,7 +29,7 @@
> >   ## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
> >   #####
> >
> > -ACLOCAL_AMFLAGS = -I m4
> > +ACLOCAL_AMFLAGS =
> >   AUTOMAKE_OPTIONS = foreign
> >   AM_CPPFLAGS =
> >   AM_LDFLAGS =
> > diff squid-6.12-orig/libltdl/Makefile.in squid-6.12/libltdl/Makefile.in
> > --- squid-6.12-orig/libltdl/Makefile.in
> > +++ squid-6.12/libltdl/Makefile.in
> > @@ -448,7 +448,7 @@ target_alias = @target_alias@
> >   top_build_prefix = @top_build_prefix@
> >   top_builddir = @top_builddir@
> >   top_srcdir = @top_srcdir@
> > -ACLOCAL_AMFLAGS = -I m4
> > +ACLOCAL_AMFLAGS =
> >   AUTOMAKE_OPTIONS = foreign
> >
> >   # -I$(srcdir) is needed for user that built libltdl with a sub-Automake
> >
> > I don't know how to fix it in source repository.
> > Help would be appreciated.
> >
> > Thanks,
> >    Peter
> >
> > [1] https://github.com/squid-
> cache/squid/commit/b4addc2262e5bee37543f8d1ab9dd98337bafba3
> > _______________________________________________
> > squid-users mailing list
> > squid-users at lists.squid-cache.org
> > https://lists.squid-cache.org/listinfo/squid-users



More information about the squid-users mailing list