X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=configure.in;h=830a28f51946bcb42609947eb960e3f3aeabbd27;hb=f03238c89d03779b3d5731ffdcce0bd7c3e099bc;hp=5dca9ce7364254c15a1f1769924b284ff5b2b390;hpb=9eeffdf14fddcf59618fdd7c8c16e4cc32429b4d;p=yaz-moved-to-github.git diff --git a/configure.in b/configure.in index 5dca9ce..830a28f 100644 --- a/configure.in +++ b/configure.in @@ -1,6 +1,6 @@ dnl YAZ Toolkit, Index Data 1994-2001 dnl See the file LICENSE for details. -dnl $Id: configure.in,v 1.46 2001-10-03 23:55:18 adam Exp $ +dnl $Id: configure.in,v 1.49 2001-10-06 08:16:30 adam Exp $ AC_INIT(include/yaz/yaz-version.h) AM_INIT_AUTOMAKE(yaz, 1.7) dnl @@ -123,10 +123,12 @@ if test "$ac_cv_header_stdc" = "no"; then fi dnl AC_SUBST(LIBTHREAD) +AC_SUBST(CFLAGSTHREADS) HAVETHREADS=0 +CFLAGSTHREADS="" LIBTHREAD="" dnl -AC_ARG_ENABLE(pth, [ --disable-pth disable GNU threads],[enable_pth=$enableval],[enable_pth=yes]) +AC_ARG_ENABLE(pth, [ --enable-pth enable GNU threads],[enable_pth=$enableval],[enable_pth=no]) AC_SUBST(LIBPTH) if test "$enable_pth" = "yes"; then OLIBS=$LIBS @@ -135,6 +137,7 @@ if test "$enable_pth" = "yes"; then AC_CHECK_HEADERS(pth.h) if test "$ac_cv_header_pth_h" = "yes"; then LIBTHREAD="-lpth" + CFLAGSTHREADS="-DYAZ_GNU_THREADS=1" HAVETHREADS=1 fi fi @@ -145,6 +148,7 @@ 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 @@ -154,13 +158,28 @@ if test "$enable_threads" = "yes" -a "$HAVETHREADS" = "0"; then pthread_create (&pthread_id, 0, func, 0);], thread_ok=yes,thread_ok=no) if test "$thread_ok" = "yes"; then - LIBTHREAD=-lpthread AC_MSG_RESULT(yes) - AC_CHECK_HEADERS(pthread.h) + LIBTHREAD=-lpthread + CFLAGSTHREADS="-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]) + CFLAGSTHREADS="-pthread -DYAZ_POSIX_THREADS=1 -D_REENTRANT" + HAVETHREADS=1 + fi + fi + if test "$thread_ok" = "no"; then AC_MSG_RESULT(no) fi + CC=$OCC LIBS=$OLIBS fi AM_CONDITIONAL(ISTHR, test $HAVETHREADS = "1")