Re: [squid-dev] Compiling from repository checkout
Hi Mika, sorry for the delayed answer. > Thanks, got it. One more question. Do you know why bootstrap.sh verifies > that glibtool is installed in OS X. Cause I tried this > > brew install libtool > ./bootstrap.sh > brew uninstall libtool > ./configure && make > > And squid builds (and runs) just fine. But If I do > > brew uninstall libtool > ./bootstrap.sh > > Then bootstrapping fails saying glibtool is not installed. What MacOS calls 'libtool' is an entirely different beast than GNU libtool. Just try 'man libtool' to see what I mean. So unless you have glibtool installed, well, it is't. > The reason I am asking is that if I don’t uninstall glibtool, the final > binary will have dependency to dynamic glibtool lib. The glibtool is > installed to Homebrew default path (/usr/local/..) and doesn’t necessarily > exists in other OS X installations. So if I want to give the binary I build > to my coworker it may not work in his machine unless he installs glibtool > first through homebrew. If you want to have a fully portable binary I suspect that the only solution is to link it statically, sorry. And yes, that's unavoidable, sadly: libtool is a required component to build squid. -- Francesco ___ squid-dev mailing list squid-dev@lists.squid-cache.org http://lists.squid-cache.org/listinfo/squid-dev
Re: [squid-dev] Compiling from repository checkout
On 18 Dec 2017, 10.44 +0200, Kinkie, wrote: > On Mon, Dec 18, 2017 at 7:34 AM, mika ristimaki > wrote: > > > So my question is how platform independent configure scripts are created if > > bootstrap.sh is platform dependant? Or what I am missing here? > > Exactly through bootstrap.sh :) > The full build process for Squid-from-source is > $ bootstrap.sh && ./configure && make > > This is because bootstrap builds auto-generated code (e.g. configure) > which makes no sense to have in our source repository. > At the same time, building from source requires additional tools (e.g. > autoconf, automake, libtoolize) which may not be present on an user's > build system, so these generated bits are included in the distribution > tarball. Thanks, got it. One more question. Do you know why bootstrap.sh verifies that glibtool is installed in OS X. Cause I tried this brew install libtool ./bootstrap.sh brew uninstall libtool ./configure && make And squid builds (and runs) just fine. But If I do brew uninstall libtool ./bootstrap.sh Then bootstrapping fails saying glibtool is not installed. The reason I am asking is that if I don’t uninstall glibtool, the final binary will have dependency to dynamic glibtool lib. The glibtool is installed to Homebrew default path (/usr/local/..) and doesn’t necessarily exists in other OS X installations. So if I want to give the binary I build to my coworker it may not work in his machine unless he installs glibtool first through homebrew. -Mika > > > -- > Francesco ___ squid-dev mailing list squid-dev@lists.squid-cache.org http://lists.squid-cache.org/listinfo/squid-dev
Re: [squid-dev] Compiling from repository checkout
On Mon, Dec 18, 2017 at 7:34 AM, mika ristimakiwrote: > Hi all, Hello Mika! > I noticed that the source code distributions > (http://www.squid-cache.org/Versions/v4/) and the repository > (https://github.com/squid-cache/squid) differ in a sense that the tar.gz > packages include the configure script and Makefiles. > > > I am trying to replicate it, and I it looks to me that the configure > scripts, etc., are created by running ./bootstrap.sh. But looking at the > bootstrap.sh it has this > > > # On MAC OS X, GNU libtool is named 'glibtool': > > if [ `uname -s 2>/dev/null` = 'Darwin' ] > > then > > LIBTOOL_BIN="glibtool" > > else > > LIBTOOL_BIN="libtool” > > fi > > > So it is platform dependant. Yes. > So my question is how platform independent configure scripts are created if > bootstrap.sh is platform dependant? Or what I am missing here? Exactly through bootstrap.sh :) The full build process for Squid-from-source is $ bootstrap.sh && ./configure && make This is because bootstrap builds auto-generated code (e.g. configure) which makes no sense to have in our source repository. At the same time, building from source requires additional tools (e.g. autoconf, automake, libtoolize) which may not be present on an user's build system, so these generated bits are included in the distribution tarball. -- Francesco ___ squid-dev mailing list squid-dev@lists.squid-cache.org http://lists.squid-cache.org/listinfo/squid-dev
[squid-dev] Compiling from repository checkout
Hi all, I noticed that the source code distributions (http://www.squid-cache.org/Versions/v4/) and the repository (https://github.com/squid-cache/squid) differ in a sense that the tar.gz packages include the configure script and Makefiles. I am trying to replicate it, and I it looks to me that the configure scripts, etc., are created by running ./bootstrap.sh. But looking at the bootstrap.sh it has this # On MAC OS X, GNU libtool is named 'glibtool': if [ `uname -s 2>/dev/null` = 'Darwin' ] then LIBTOOL_BIN="glibtool" else LIBTOOL_BIN="libtool” fi So it is platform dependant. So my question is how platform independent configure scripts are created if bootstrap.sh is platform dependant? Or what I am missing here? -Mika P.S. Sorry if this is a duplicate but it seems like the first one didn’t go through ___ squid-dev mailing list squid-dev@lists.squid-cache.org http://lists.squid-cache.org/listinfo/squid-dev