X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=configure.ac;h=3a9f3c2879d836f4fdbcb2ef2da5be4dc1504a21;hp=c330ede9fe9719f635830b153bb7c66f7c2b4e24;hb=ecbd263c8be1f35bde47ba8c119627a6dedb9b28;hpb=0a9596292ae022d000ae49340db024c245626ddd diff --git a/configure.ac b/configure.ac index c330ede..3a9f3c2 100644 --- a/configure.ac +++ b/configure.ac @@ -1,8 +1,8 @@ dnl YAZ Toolkit, Index Data 1995-2007 dnl See the file LICENSE for details. -dnl $Id: configure.ac,v 1.61 2007-02-23 11:54:38 adam Exp $ +dnl $Id: configure.ac,v 1.90 2007-08-22 09:09:03 adam Exp $ AC_PREREQ(2.59) -AC_INIT([yaz],[2.1.50],[yaz-help@indexdata.dk]) +AC_INIT([yaz],[3.0.10],[yaz-help@indexdata.dk]) AC_CONFIG_SRCDIR(configure.ac) AC_CONFIG_AUX_DIR([config]) AM_INIT_AUTOMAKE([1.8]) @@ -23,14 +23,17 @@ YAZ_DOC dnl dnl dnl ------ Headers -AC_CHECK_HEADERS([dirent.h fnmatch.h wchar.h locale.h langinfo.h pwd.h unistd.h sys/select.h sys/socket.h sys/stat.h sys/time.h sys/times.h sys/types.h sys/un.h sys/wait.h netinet/in.h netdb.h arpa/inet.h netinet/tcp.h netinet/in_systm.h]) -AC_CHECK_HEADERS([netinet/if_ether.h],[],[],[ +AC_CHECK_HEADERS([dirent.h fnmatch.h wchar.h locale.h langinfo.h pwd.h unistd.h sys/select.h sys/socket.h sys/stat.h sys/time.h sys/times.h sys/types.h sys/un.h sys/wait.h netdb.h arpa/inet.h netinet/tcp.h netinet/in_systm.h]) +AC_CHECK_HEADERS([net/if.h netinet/in.h netinet/if_ether.h],[],[],[ #if HAVE_SYS_TYPES_H #include #endif #if HAVE_SYS_SOCKET_H #include #endif + #if HAVE_NET_IF_H + #include + #endif #if HAVE_NETINET_IN_H #include #endif @@ -182,39 +185,36 @@ AC_SUBST(PCAP_CFLAGS) ZIFFY_PROG= AC_ARG_WITH(pcap, [ --with-pcap[=DIR] libpcap root dir located in (dir)], [PCAP_DIR="$withval"],[PCAP_DIR=default]) -AC_MSG_CHECKING([for libpcap (required for ziffy)]) if test "${PCAP_DIR}" != "no"; then - if test "${PCAP_DIR}" != "yes" && test "${PCAP_DIR}" != "default"; then - if test -r $PCAP_DIR/libpcap.a && test -r $PCAP_DIR/pcap.h; then - PCAP_DIR="$PCAP_DIR" - PCAP_LIBS="${LIBS} -L$PCAP_DIR -lpcap" - PCAP_CFLAGS="${INCS} -I$PCAP_DIR" - ZIFFY_PROG=ziffy + if test "${ac_cv_header_netinet_if_ether_h}" = "no"; then + : + elif test "${PCAP_DIR}" != "yes" && test "${PCAP_DIR}" != "default"; then + PCAP_LIBS="-lpcap" + if test "$PCAP_DIR" != "/usr"; then + PCAP_LIBS="-L$PCAP_DIR $PCAP_LIBS" + PCAP_CFLAGS="-I$PCAP_DIR" fi else - if test -d /usr/local && - test -r /usr/local/lib/libpcap.a && - test -r /usr/local/include/pcap.h; then - PCAP_DIR="/usr/local" - PCAP_LIBS="${LIBS} -L$PCAP_DIR/lib -lpcap" - PCAP_CFLAGS="${INCS} -I$PCAP_DIR/include" - ZIFFY_PROG=ziffy - elif test -d /usr && - test -r /usr/lib/libpcap.a && - test -r /usr/include/pcap.h; then - PCAP_DIR="/usr" - PCAP_LIBS="${LIBS} -lpcap" - ZIFFY_PROG=ziffy + oldLibs=$LIBS + AC_CHECK_LIB([pcap], [main]) + if test "$ac_cv_lib_pcap_main" = "yes"; then + AC_CHECK_HEADER([pcap.h]) + if test "$ac_cv_header_pcap_h" = "yes"; then + PCAP_LIBS="-lpcap" + fi fi + LIBS=$oldLibs fi fi -if test -z "$ZIFFY_PROG"; then +AC_MSG_CHECKING([for libpcap (required for ziffy)]) +if test -z "${PCAP_LIBS}"; then AC_MSG_RESULT([not found. ziffy disabled]) - if test "${PCAP_DIR}" != "default" && test "${PCAP_DIR}" != "no"; then + if test "${PCAP_DIR}" = "yes"; then AC_MSG_ERROR([libpcap missing]) fi else AC_MSG_RESULT([found in $PCAP_DIR]) + ZIFFY_PROG=ziffy fi dnl ------ various functions @@ -292,7 +292,7 @@ if test "$enable_tcpd" -a "$enable_tcpd" != "no"; then CPPFLAGS="$CPPFLAGS -I$enable_tcpd/include" fi AC_MSG_CHECKING(for working tcpd.h) - LIBS="$LIBS -lwrap -lnsl" + LIBS="$LIBS -lwrap" AC_TRY_LINK([#include #include int allow_severity = LOG_INFO; @@ -311,72 +311,55 @@ if test "$enable_tcpd" -a "$enable_tcpd" != "no"; then fi fi dnl -AC_SUBST(THREAD_CFLAGS) +AC_SUBST(YAZ_CONFIG_CFLAGS) +dnl HAVETHREADS=0 -THREAD_CFLAGS="" -LIBTHREAD="" dnl dnl ------ GNU threads AC_ARG_ENABLE(pth, [ --enable-pth enable GNU threads],[enable_pth=$enableval],[enable_pth=no]) AC_SUBST(LIBPTH) if test "$enable_pth" = "yes"; then + PTH_LIBS="" OLIBS=$LIBS AC_CHECK_LIB(pth,main) if test "$ac_cv_lib_pth_main" = "yes"; then AC_CHECK_HEADERS(pth.h) if test "$ac_cv_header_pth_h" = "yes"; then - LIBTHREAD="-lpth" - THREAD_CFLAGS="-DYAZ_GNU_THREADS=1" + PTH_LIBS="-lpth" + CFLAGS="$CFLAGS -DYAZ_GNU_THREADS=1" HAVETHREADS=1 fi fi - LIBS="$OLIBS $LIBTHREAD" + LIBS="$OLIBS $PTH_LIBS" fi dnl dnl ------ POSIX Threads AC_ARG_ENABLE(threads, [ --disable-threads disable POSIX threads],[enable_threads=$enableval],[enable_threads=yes]) if test "$enable_threads" = "yes" -a "$HAVETHREADS" = "0"; then - OLIBS=$LIBS - OCC=$CC - AC_CHECK_LIB(pthread,main) - AC_MSG_CHECKING(for working POSIX Threads) - AC_TRY_LINK([#include - void *func(void *p) { return 0; } - ],[ - pthread_t pthread_id; - pthread_create (&pthread_id, 0, func, 0);], - thread_ok=yes,thread_ok=no) - if test "$thread_ok" = "yes"; then - AC_MSG_RESULT(yes) - LIBTHREAD="-lpthread" - THREAD_CFLAGS="-DYAZ_POSIX_THREADS=1 -D_REENTRANT" - HAVETHREADS=1 - else - CC="$CC -pthread" - AC_TRY_LINK([#include - void *func(void *p) { return 0; } - ],[ - pthread_t pthread_id; - pthread_create (&pthread_id, 0, func, 0);], - thread_ok=yes,thread_ok=no) - if test "$thread_ok" = "yes"; then - AC_MSG_RESULT([yes,BSD]) - THREAD_CFLAGS="-pthread -DYAZ_POSIX_THREADS=1 -D_REENTRANT" - LIBTHREAD="-pthread" - HAVETHREADS=1 - fi - fi - if test "$thread_ok" = "no"; then - AC_MSG_RESULT(no) - fi - CC=$OCC - LIBS="$OLIBS $LIBTHREAD" + ACX_PTHREAD([ + OCFLAGS=$CFLAGS + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + dnl unfortunately empty thread lib spec is problematic because + dnl 'yaz-config --cflags' is not always passed to linker in + dnl applications using YAZ (such as Zebra). + if test "x$PTHREAD_LIBS" = "x"; then + OLIBS=$LIBS + for lib in -lpthread -lpthreads -lc_r; do + LIBS="$lib $OLIBS" + AC_TRY_LINK([ #include ], + [ pthread_t id; pthread_join(id, 0); ], + [ PTHREAD_LIBS=$lib; break ] + ) + done + LIBS=$OLIBS + fi + CFLAGS=$OCFLAGS + PTHREAD_CFLAGS="$PTHREAD_CFLAGS -DYAZ_POSIX_THREADS=1" + ]) fi dnl ----- libXSLT/libEXLT/libXML2 AC_SUBST(XML2_CFLAGS) -AC_SUBST(YAZ_CONFIG_CFLAGS) -YAZ_CONFIG_CFLAGS="" YAZ_LIBXML2( [ @@ -418,6 +401,9 @@ AC_SUBST(YAZ_SRC_ROOT) AC_SUBST(YAZ_BUILD_ROOT) YAZ_SRC_ROOT=`cd ${srcdir}; pwd` YAZ_BUILD_ROOT=`pwd` + +dnl ------ windows version files +WIN_FILEVERSION=`echo $PACKAGE_VERSION|tr . ,`.1 dnl dnl ------ Makefiles dnl @@ -441,7 +427,10 @@ etc/Makefile yaz-config yaz.pc Doxyfile -],[sed s%yaz_echo_source=yes%yaz_echo_source=no%g < yaz-config > util/yaz-config && chmod +x yaz-config util/yaz-config]) +],[ + sed s%yaz_echo_source=yes%yaz_echo_source=no%g < yaz-config > util/yaz-config && chmod +x yaz-config util/yaz-config + ] +) echo \