use system zlib under Mac

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18247 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2002-12-15 22:50:42 +00:00
parent 34bed6d9ec
commit d775acfa77
2 changed files with 513 additions and 495 deletions

932
configure vendored

File diff suppressed because it is too large Load Diff

View File

@@ -1697,41 +1697,53 @@ if test "$wxUSE_ZLIB" != "no" ; then
AC_DEFINE(wxUSE_ZLIB) AC_DEFINE(wxUSE_ZLIB)
if test "$wxUSE_ZLIB" = "sys" -o "$wxUSE_ZLIB" = "yes" ; then if test "$wxUSE_ZLIB" = "sys" -o "$wxUSE_ZLIB" = "yes" ; then
dnl we have troubles with ancient zlib versions (e.g. 1.0.4 is known dnl don't test for zlib under Mac -- its verson there is 1.1.3 but we
dnl to not work) and although I don't know which is the minimal dnl should still use it because hopefully (can someone confirm this?)
dnl required version it's safer to test for 1.1.4 as it fixes a dnl Apple did fix the security problem in it and not using the system
dnl security problem in 1.1.3 -- and hopefully nobody has anything dnl library results in a whole bunch of warnings when linking with
dnl more ancient (1.1.3 was released in July 1998) anyow dnl Carbon framework
AC_CACHE_CHECK([for zlib.h >= 1.1.4], ac_cv_header_zlib_h, if test "$USE_DARWIN" = 1; then
AC_TRY_RUN( system_zlib_h_ok="yes"
[ else
dnl zlib.h defines ZLIB_VERSION="x.y.z" dnl we have troubles with ancient zlib versions (e.g. 1.0.4 is
#include <zlib.h> dnl known to not work) and although I don't know which is
#include <stdio.h> dnl the minimal required version it's safer to test for 1.1.4 as
dnl it fixes a security problem in 1.1.3 -- and hopefully nobody
dnl has anything more ancient (1.1.3 was released in July 1998)
dnl anyhow
AC_CACHE_CHECK([for zlib.h >= 1.1.4], ac_cv_header_zlib_h,
AC_TRY_RUN(
[
dnl zlib.h defines ZLIB_VERSION="x.y.z"
#include <zlib.h>
#include <stdio.h>
dnl don't use the brackets as quotes, we need them dnl don't use the brackets as quotes, we need them
changequote(,) changequote(,)
int main() int main()
{ {
FILE *f=fopen("conftestval", "w"); FILE *f=fopen("conftestval", "w");
if (!f) exit(1); if (!f) exit(1);
fprintf(f, "%s", fprintf(f, "%s",
ZLIB_VERSION[0] == '1' && ZLIB_VERSION[0] == '1' &&
(ZLIB_VERSION[2] > '1' || (ZLIB_VERSION[2] > '1' ||
(ZLIB_VERSION[2] == '1' && (ZLIB_VERSION[2] == '1' &&
ZLIB_VERSION[4] >= '4')) ? "yes" : "no"); ZLIB_VERSION[4] >= '4')) ? "yes" : "no");
exit(0); exit(0);
} }
changequote([,]) changequote([,])
], ],
ac_cv_header_zlib_h=`cat conftestval`, ac_cv_header_zlib_h=`cat conftestval`,
ac_cv_header_zlib_h=no, ac_cv_header_zlib_h=no,
dnl cross-compiling: test if we have any zlib.h dnl cross-compiling: test if we have any zlib.h
AC_CHECK_HEADER(zlib.h) AC_CHECK_HEADER(zlib.h)
)
) )
)
if test "$ac_cv_header_zlib_h" = "yes"; then system_zlib_h_ok=$ac_cv_header_zlib_h
fi
if test "$system_zlib_h_ok" = "yes"; then
AC_CHECK_LIB(z, deflate, ZLIB_LINK=" -lz") AC_CHECK_LIB(z, deflate, ZLIB_LINK=" -lz")
fi fi