]> git.sur5r.net Git - openldap/blobdiff - configure.in
Section 3 man pages for ldap_parse_result(),
[openldap] / configure.in
index 9395e81d46fbcc1d066feb3700d4cbb6686fa2a8..45a25be9e73afe6a09bb4956af05db70ee294ad2 100644 (file)
@@ -382,13 +382,23 @@ elif test $ol_enable_ldbm = no ; then
                $ol_enable_shell = no -a \
                $ol_enable_sql = no -a \
                $ol_enable_tcl = no ; then
-               AC_MSG_ERROR([slapd requires a backend])
+
+               if test $ol_enable_slapd = yes ; then
+                       AC_MSG_ERROR([slapd requires a backend])
+               else
+                       AC_MSG_WARN([skipping slapd, no backend specified])
+                       ol_enable_slapd=no
+               fi
        fi
 
        ol_with_ldbm_api=no
        ol_with_ldbm_type=no
        ol_with_ldbm_module=static
 
+       if test $ol_enable_bdb != no ; then
+               ol_with_ldbm_api=berkeley
+       fi
+
 else
        dnl SLAPD with LDBM
        if test $ol_with_ldbm_api = gdbm -a \
@@ -403,6 +413,21 @@ else
                $ol_with_ldbm_type = btree ; then
                AC_MSG_ERROR([NDBM only supports LDBM type hash])
        fi
+
+       if test $ol_enable_bdb = yes ; then
+               if test $ol_with_ldbm_api = auto ; then
+                       ol_with_ldbm_api=berkeley
+               elif test $ol_with_ldbm_api != berkeley ; then
+                       AC_MSG_ERROR([LDBM API not compatible with BDB])
+               fi
+
+       elif test $ol_enable_bdb = auto ; then
+               if test $ol_with_ldbm_api != berkeley \
+                       -o $ol_with_ldbm_api != auto ; then
+                       AC_MSG_WARN([LDBM API not compatible with BDB, disabling BDB])
+                       ol_enable_bdb=no
+               fi
+       fi
 fi
 
 if test $ol_enable_slurpd = yes ; then
@@ -421,13 +446,17 @@ fi
 if test $ol_enable_kbind = yes -o $ol_enable_kpasswd = yes ; then
        if test $ol_with_kerberos = no ; then
                AC_MSG_ERROR([options require --with-kerberos])
+       elif $ol_with_kerberos = auto ; then
+               ol_with_kerberos=yes
        fi
-       ol_with_kerberos=yes
+
 elif test $ol_enable_kbind = no -o $ol_enable_kpasswd = no ; then
-       if test $ol_with_kerberos != no -a $ol_with_kerberos != auto ; then
+       if test $ol_with_kerberos = auto ; then
+               ol_with_kerberos=no
+       elif test $ol_with_kerberos != no ; then
                AC_MSG_WARN([Kerberos detection enabled unnecessarily]);
+               ol_with_kerberos=no
        fi
-       ol_with_kerberos=no
 fi
 
 if test $ol_enable_spasswd = yes ; then
@@ -443,6 +472,7 @@ dnl ----------------------------------------------------------------
 dnl Initialize vars
 LDAP_LIBS=
 LDIF_LIBS=
+LDBM_LIB=
 LDBM_LIBS=
 LTHREAD_LIBS=
 LUTIL_LIBS=
@@ -919,11 +949,15 @@ if test $ol_with_kerberos = yes -o $ol_with_kerberos = auto \
                fi
 
                if test $krb5_impl = mit; then
+                       AC_CHECK_LIB(k5crypto, main,
+                               [krb5crypto=k5crypto],
+                               [krb5crypto=crypto])
+
                        AC_CHECK_LIB(krb5, main,
                                [have_krb5=yes
-                               KRB5_LIBS="-lkrb5 -lcrypto -lcom_err"],
+                               KRB5_LIBS="-lkrb5 -l$krb5crypto -lcom_err"],
                                [have_krb5=no],
-                               [-lcrypto -lcom_err])
+                               [-l$krb5crypto -lcom_err])
 
                elif test $krb5_impl = heimdal; then
                        AC_CHECK_LIB(krb5, main,
@@ -934,6 +968,7 @@ if test $ol_with_kerberos = yes -o $ol_with_kerberos = auto \
 
                        AC_DEFINE(HAVE_HEIMDAL_KERBEROS, 1,
                                [define if you have HEIMDAL Kerberos])
+
                else
                        have_krb5=no
                        AC_MSG_WARN([Unrecongized Kerberos5 Implementation])
@@ -969,7 +1004,7 @@ if test $ol_link_krb5 = yes -a \( $ol_with_kerberos = yes -o \
                if test $krb5_impl = mit; then
                        AC_CHECK_LIB(krb4, main, [have_k425=yes
                                KRB4_LIBS="-lkrb4 -ldes425"], [have_k425=no],
-                               [-ldes425 -lkrb5 -lcrypto -lcom_err])
+                               [-ldes425 -lkrb5 -l$krb5crypto -lcom_err])
 
                elif test $krb5_impl = heimdal; then
                        AC_CHECK_LIB(krb4, main, [have_k425=yes
@@ -1752,7 +1787,7 @@ if test $ol_with_ldbm_api = auto \
                        [define this if Berkeley DB is available])
 
                ol_link_ldbm=berkeley
-               ol_with_ldbm_api=db
+               ol_with_ldbm_api=berkeley
 
                if test $ol_with_ldbm_type = hash ; then
                        AC_DEFINE(LDBM_USE_DBHASH,1,
@@ -1770,6 +1805,12 @@ if test $ol_with_ldbm_api = auto \
        fi
 fi
 
+if test $ol_enable_bdb = yes -a $ol_link_ldbm != berkeley ; then
+       AC_MSG_ERROR(BerkeleyDB not availabl)
+elif test $ol_enable_bdb != no -a $ol_link_ldbm != no ; then
+       ol_enable_bdb=yes
+fi
+
 if test $ol_link_ldbm = no -a $ol_with_ldbm_type = btree ; then
        AC_MSG_WARN(Could not find LDBM with BTREE support)
        ol_with_ldbm_api=none
@@ -2361,10 +2402,11 @@ if test "$ol_enable_ldap" != no ; then
        fi
 fi
 
-if test "$ol_link_ldbm" != no ; then
+if test "$ol_link_ldbm" != no -a $ol_enable_ldbm != no; then
        AC_DEFINE(SLAPD_LDBM,1,[define to support LDBM backend])
        BUILD_SLAPD=yes
        BUILD_LDBM=yes
+       LDBM_LIB="-lldbm"
        if test "$ol_with_ldbm_module" != static ; then
                AC_DEFINE(SLAPD_LDBM_DYNAMIC,1,
                        [define to support dynamic LDBM backend])
@@ -2532,6 +2574,8 @@ AC_SUBST(BUILD_SLAPD)
   AC_SUBST(BUILD_TCL_DYNAMIC)
 AC_SUBST(BUILD_SLURPD)
 
+AC_SUBST(LDBM_LIB)
+
 AC_SUBST(LDAP_LIBS)
 AC_SUBST(LDIF_LIBS)
 AC_SUBST(SLAPD_LIBS)