X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=configure.in;h=c971eff0f4c0f5d164aed46d4b9ee0ca1536407d;hb=e0b38a8744077e71e4673afc76a4e17546eb01a2;hp=c5d35b08d3792c950fce24e807254877aa19c4a6;hpb=141269ce5f566fcd7ed188ebe9bb878bf4b32018;p=yaz-moved-to-github.git diff --git a/configure.in b/configure.in index c5d35b0..c971eff 100644 --- a/configure.in +++ b/configure.in @@ -1,6 +1,6 @@ dnl YAZ Toolkit, Index Data 1994-2002 dnl See the file LICENSE for details. -dnl $Id: configure.in,v 1.89 2002-09-16 18:45:13 adam Exp $ +dnl $Id: configure.in,v 1.92 2002-09-24 08:05:41 adam Exp $ AC_INIT(include/yaz/yaz-version.h) AM_INIT_AUTOMAKE(yaz, 1.9.1) dnl @@ -140,57 +140,73 @@ if test "$ac_cv_lib_readline_readline" = "yes"; then ],AC_DEFINE(HAVE_READLINE_RL_COMPLETION_MATCHES)) LIBS=$xLIBS fi +dnl ------ iconv +AC_ARG_WITH(iconv, [ --with-iconv[=DIR] iconv library in DIR]) +if test "$with_iconv" != "no"; then + AC_MSG_CHECKING(for iconv) + oldLIBS="$LIBS" + oldCPPFLAGS="${CPPFLAGS}" + if test "$with_iconv" != "yes" -a "$with_iconv" != ""; then + LIBS="$LIBS -L${with_iconv}/lib" + CPPFLAGS="${CPPFLAGS} -I${with_iconv}/include" + fi + AC_TRY_LINK([ + #include + ],[ + static void f() {iconv_t t = iconv_open("", ""); } + ],[ + AC_DEFINE(HAVE_ICONV_H) + AC_MSG_RESULT(yes) + ],[ + LIBS="$LIBS -liconv" + AC_TRY_LINK([ + #include + ],[ + static void f() {iconv_t t = iconv_open("", ""); } + ],[ + AC_DEFINE(HAVE_ICONV_H) + AC_MSG_RESULT(yes) + ],[ + LIBS="$oldLIBS" + CPPFLAGS="$oldCPPFLAGS" + AC_MSG_RESULT(no) + ]) + ]) +fi dnl ------ various functions -AC_CHECK_FUNCS(vsnprintf gettimeofday poll iconv_open) +AC_CHECK_FUNCS(vsnprintf gettimeofday poll) if test "$ac_cv_func_poll" = "yes"; then AC_CHECK_HEADERS(sys/poll.h) fi -if test "$ac_cv_func_iconv_open" = "no"; then - oldLibs=$LIBS - LIBS="$LIBS -liconv" - AC_CHECK_FUNCS(iconv_open) - if test "$ac_cv_func_iconv_open" = "no"; then - LIBS=$oldLibs - fi -fi -if test "$ac_cv_func_iconv_open" = "yes"; then - AC_CHECK_HEADERS(iconv.h) -fi dnl ------ socklen_t -dnl AC_CHECK_TYPES(socklen_t) -AC_MSG_CHECKING(for socklen_t) -AC_CACHE_VAL(ac_cv_check_socklen_t, -[ac_cv_check_socklen_t='' -AC_TRY_COMPILE([ -#include -#include -#include -#include -], - [socklen_t len;], - ac_cv_check_socklen_t=yes, - ac_cv_check_socklen_t=no)]) -AC_MSG_RESULT($ac_cv_check_socklen_t) -if test "$ac_cv_check_socklen_t" = "yes"; then - AC_DEFINE(HAVE_SOCKLEN_T) -else - AC_MSG_CHECKING(whether net size is of type size_t) - AC_CACHE_VAL(ac_cv_check_getpeername_accepts_size_t, - [ac_cv_check_getpeername_accepts_size_t='' +AC_MSG_CHECKING([for socklen_t]) +AC_CACHE_VAL(ac_cv_check_socklen_t,[ac_cv_check_socklen_t='' AC_TRY_COMPILE([ -#include -#include -#include -#include -], - [size_t mylen; getpeername(0, (struct sockaddr *)NULL, &mylen);], - ac_cv_check_getpeername_accepts_size_t=yes, - ac_cv_check_getpeername_accepts_size_t=no)]) - AC_MSG_RESULT($ac_cv_check_getpeername_accepts_size_t) - if test "$ac_cv_check_getpeername_accepts_size_t" = yes; then - AC_DEFINE(GETPEERNAME_ACCEPTS_SIZE_T_FOR_THIRD_ARGUMENT) - fi -fi + #include + #include + #ifdef __cplusplus + extern "C" { + #endif + extern int accept(int, struct sockaddr *, socklen_t *); + #ifdef __cplusplus + } + #endif + ],,[ac_cv_check_socklen_t=socklen_t],[ + AC_TRY_COMPILE([ + #include + #include + #ifdef __cplusplus + extern "C" { + #endif + extern int accept(int, struct sockaddr *, size_t t *); + #ifdef __cplusplus + } + #endif + ],,[ac_cv_check_socklen_t=size_t],[ac_cv_check_socklen_t=int]) + ]) +]) +AC_MSG_RESULT($ac_cv_check_socklen_t) +AC_DEFINE_UNQUOTED(YAZ_SOCKLEN_T,$ac_cv_check_socklen_t) dnl dnl ------ tcpd AC_ARG_ENABLE(tcpd,[ --enable-tcpd[=PREFIX] enable TCP wrapper for server if available])