Subject: | possible configure script error in finding zlib library |
From: | "Brian Meyer" <brian@cardadmin.com> |
To: | bind-bugs@isc.org, dhcp-bugs@isc.org |
Date: | Mon, 6 Nov 2017 14:56:31 -0800 |
downloaded
ftp://ftp.isc.org/isc/bind9/9.11.2/bind-9.11.2.tar.gz
Then I did a standard gnu make install to make it's libraries available on my mac system in a safe place that won't affect my actual system.
I was using the --with-zlib and it did not seem to be taking it. I have everything compiling in a custom prefix location named "/agility" so usually I can use "--with-zlib=/agility".
I noticed that in the following code ( at about 17326 in ./configure ) that when I added an echo of the variable being tested, it said "TESTING/agility/zlib.h" and thus it isn't being found, the file in question is actually in "/agility/include/zlib.h"
However after that it is after that setting zlib_cflags="-I${with_zlib}/include", and LIBS="$LIBS -L${with_zlib}/lib", so it really wants the file in include, hence this code can never work.
It would have to be in the root of agility to configure it, and if so it sets up an include path for two subdirectories which it would need to compile it.
I edited the source file to if test -f "${with_zlib}/include/zlib.h" so the variable with_zlib is the root, and it matches the other usage in zlib_cflags="-I${with_zlib}/include", this seems to be working. I suggest adjusting the source to reflect this.
Here is the code in question
have_zlib=""
case "$with_zlib" in
no)
zlib_libs=""
;;
auto|yes)
for d in /usr /usr/local /opt/local
do
if test -f "${d}/include/zlib.h"
then
if test ${d} != /usr
then
zlib_cflags="-I ${d}/include"
LIBS="$LIBS -L${d}/lib"
fi
have_zlib="yes"
fi
done
;;
*)
echo TESTING "${with_zlib}/zlib.h" <-- this is my debugging to see what is going on
if test -f "${with_zlib}/zlib.h" <---- this is the bug, it should be "${with_zlib}/include/zlib.h"
then
zlib_cflags="-I${with_zlib}/include"
LIBS="$LIBS -L${with_zlib}/lib"
have_zlib="yes"
else
as_fn_error $? "$with_zlib/include/zlib.h not found." "$LINENO" 5
fi
;;
esac