]> git.sur5r.net Git - openldap/blobdiff - configure.in
Import value_cmp fix from -devel.
[openldap] / configure.in
index d606cc0b101bb51996f48aea6996c0c978acb0e5..bc6b50805c3988a833a78837641a5106d4356587 100644 (file)
@@ -305,6 +305,11 @@ if test $ol_link_isode != no; then
        AC_PATH_PROG(PEPSY, pepsy)
 fi
 
+dnl
+dnl check for kerberos
+dnl
+ol_link_kerberos=no
+
 if test $ol_with_kerberos = auto -o $ol_with_kerberos = k5 ; then
        AC_CHECK_HEADERS(kerberosIV/krb.h kerberosIV/des.h)
 
@@ -317,11 +322,11 @@ if test $ol_with_kerberos = auto -o $ol_with_kerberos = k5 ; then
                        ol_link_kerberos=yes
 
                        AC_DEFINE(HAVE_KERBEROS)
-
                        KRB_LIBS="-lkrb4 -lkrb5 -ldes425"
                fi
        fi
 fi
+
 if test $ol_with_kerberos = auto -o $ol_with_kerberos = k4 ; then
        AC_CHECK_HEADERS(krb.h des.h)
 
@@ -334,12 +339,17 @@ if test $ol_with_kerberos = auto -o $ol_with_kerberos = k4 ; then
 
                        AC_DEFINE(HAVE_KERBEROS)
                        KRB_LIBS="-lkrb -ldes"
-
-                       AC_CHECK_FUNCS(des_string_to_key)
                fi
        fi
 fi
 
+dnl    if test $ol_link_kerberos = yes ; then
+dnl            save_LIBS=$LIBS
+dnl            LIBS="$KRB_LIBS $LIBS"
+dnl            AC_CHECK_FUNCS(des_string_to_key)
+dnl            LIBS=$save_LIBS
+dnl fi
+
 ol_link_threads=no
 if test $ol_with_threads = auto -o $ol_with_threads = yes \
        -o $ol_with_threads = posix ; then
@@ -475,6 +485,15 @@ if test $ol_with_threads = auto -o $ol_with_threads = yes \
                        LIBS="$save_LIBS"
                fi
 
+               if test $ol_link_threads = no ; then
+                       dnl try -lpthreads
+                       save_LIBS="$LIBS"
+                       AC_CHECK_LIB(pthreads, pthread_create, [
+                               ol_link_threads=posix
+                               LTHREAD_LIBS="$LTHREAD_LIBS -lpthreads"])
+                       LIBS="$save_LIBS"
+               fi
+
                if test $ol_link_threads != no ; then
                        AC_DEFINE(HAVE_PTHREADS)
 
@@ -592,10 +611,10 @@ static void *task(p)
 
        if(i < 0) {
                perror("select");
-               exit(0);
+               exit(10);
        }
 
-       exit(1); /* if we exit here, the select blocked the whole process */
+       exit(0); /* if we exit here, the select blocked the whole process */
 }
 
 int main(argc, argv)
@@ -607,7 +626,7 @@ int main(argc, argv)
        /* create a pipe to select */
        if(pipe(&fildes[0])) {
                perror("select");
-               exit(0);
+               exit(1);
        }
 
 #ifdef HAVE_PTHREAD_SETCONCURRENCY
@@ -628,10 +647,11 @@ int main(argc, argv)
        pthread_yield();        /* make sure task runs first */
 #endif
 #endif
-       exit(0);
+
+       exit(2);
 }],
-                               [ol_cv_pthread_select_yields=yes],
-                               [ol_cv_pthread_select_yields=no], [
+                               [ol_cv_pthread_select_yields=no],
+                               [ol_cv_pthread_select_yields=yes], [
                                AC_MSG_ERROR([crossing compiling: use --with-yielding_select=yes|no|manual])])])
                                AC_MSG_RESULT($ol_cv_pthread_select_yields)
 
@@ -640,17 +660,6 @@ int main(argc, argv)
                                fi
                        fi
 
-dnl                    dnl check for reentrant/threadsafe functions
-dnl                    AC_CHECK_FUNCS( \
-dnl                            feof_unlocked \
-dnl                            unlocked_feof \
-dnl                            ftrylockfile \
-dnl                            flockfile \
-dnl                            putc_unlocked \
-dnl                            gmtime_r \
-dnl                            strtok_r \
-dnl                    )
-
                        dnl restore flags
                        CPPFLAGS="$save_CPPFLAGS"
                        LIBS="$save_LIBS"
@@ -793,6 +802,25 @@ int x = errno;
                LIBS="$LTHREAD_LIBS $LIBS"
                LTHREAD_LIBS=""
        fi
+
+       dnl check for reentrant/threadsafe functions
+       dnl
+       dnl note: these should only be used when linking
+       dnl       with $LTHREAD_LIBS
+       dnl
+       save_CPPFLAGS="$CPPFLAGS"
+       save_LIBS="$LIBS"
+       LIBS="$LTHREAD_LIBS $LIBS"
+       AC_CHECK_FUNCS( \
+               strtok_r \
+               gmtime_r \
+               gethostbyaddr_r gethostbyname_r \
+               feof_unlocked unlocked_feof \
+               putc_unlocked unlocked_putc \
+               flockfile ftrylockfile \
+       )
+       CPPFLAGS="$save_CPPFLAGS"
+       LIBS="$save_LIBS"
 fi  
 
 dnl ----------------------------------------------------------------
@@ -907,7 +935,7 @@ if test $ol_link_ldbm = no -a $ol_enable_ldbm != no ; then
 fi
 
 if test $ol_enable_wrappers = yes ; then
-       AC_CHECK_LIB(wrap, hosts_access,
+       AC_CHECK_LIB(wrap, main,
                [have_wrappers=yes], [have_wrappers=no])
 
        if test $have_wrappers = yes ; then