]> git.sur5r.net Git - openldap/blobdiff - configure.in
revert previous commit
[openldap] / configure.in
index 2214513eec8110e9b7422cf1878fb358ded03a0a..c76cdb8c7a14ebadcef3250f73f1e1bc503af284 100644 (file)
@@ -1,7 +1,7 @@
 dnl $OpenLDAP$
 dnl This work is part of OpenLDAP Software <http://www.openldap.org/>.
 dnl
 dnl $OpenLDAP$
 dnl This work is part of OpenLDAP Software <http://www.openldap.org/>.
 dnl
-dnl Copyright 1998-2006 The OpenLDAP Foundation.
+dnl Copyright 1998-2009 The OpenLDAP Foundation.
 dnl All rights reserved.
 dnl
 dnl Redistribution and use in source and binary forms, with or without
 dnl All rights reserved.
 dnl
 dnl Redistribution and use in source and binary forms, with or without
@@ -23,7 +23,7 @@ define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
 define([AC_LIBTOOL_LANG_GCJ_CONFIG], [:])dnl
 dnl ================================================================
 dnl Configure.in for OpenLDAP
 define([AC_LIBTOOL_LANG_GCJ_CONFIG], [:])dnl
 dnl ================================================================
 dnl Configure.in for OpenLDAP
-AC_COPYRIGHT([[Copyright 1998-2006 The OpenLDAP Foundation. All rights reserved.
+AC_COPYRIGHT([[Copyright 1998-2009 The OpenLDAP Foundation. All rights reserved.
 Restrictions apply, see COPYRIGHT and LICENSE files.]])
 AC_REVISION([$OpenLDAP$])
 AC_INIT([OpenLDAP],,[http://www.openldap.org/its/])
 Restrictions apply, see COPYRIGHT and LICENSE files.]])
 AC_REVISION([$OpenLDAP$])
 AC_INIT([OpenLDAP],,[http://www.openldap.org/its/])
@@ -50,8 +50,11 @@ fi
 SHTOOL="$ac_cv_shtool"
 dnl AC_SUBST(SHTOOL)dnl
 
 SHTOOL="$ac_cv_shtool"
 dnl AC_SUBST(SHTOOL)dnl
 
-TB="`$SHTOOL echo -e '%B' 2>/dev/null`"
-TN="`$SHTOOL echo -e '%b' 2>/dev/null`"
+TB="" TN=""
+if test -t 1; then
+       TB="`$SHTOOL echo -e '%B' 2>/dev/null`"
+       TN="`$SHTOOL echo -e '%b' 2>/dev/null`"
+fi
 
 OPENLDAP_CVS=""
 if test -d $ac_aux_dir/CVS; then
 
 OPENLDAP_CVS=""
 if test -d $ac_aux_dir/CVS; then
@@ -93,7 +96,7 @@ AH_TOP([
 /* begin of portable.h.pre */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
 /* begin of portable.h.pre */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
- * Copyright 1998-2006 The OpenLDAP Foundation
+ * Copyright 1998-2009 The OpenLDAP Foundation
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -230,8 +233,6 @@ OL_ARG_ENABLE(syslog,[  --enable-syslog       enable syslog support], auto)dnl
 OL_ARG_ENABLE(proctitle,[  --enable-proctitle    enable proctitle support], yes)dnl
 dnl OL_ARG_ENABLE(referrals,[  --enable-referrals        enable LDAPv2+ Referrals (experimental)], no)dnl
 ol_enable_referrals=${ol_enable_referrals-no}
 OL_ARG_ENABLE(proctitle,[  --enable-proctitle    enable proctitle support], yes)dnl
 dnl OL_ARG_ENABLE(referrals,[  --enable-referrals        enable LDAPv2+ Referrals (experimental)], no)dnl
 ol_enable_referrals=${ol_enable_referrals-no}
-dnl OL_ARG_ENABLE(kbind,[  --enable-kbind        enable LDAPv2+ Kerberos IV bind (deprecated)], no)dnl
-ol_enable_kbind=${ol_enable_kbind-no}
 OL_ARG_ENABLE(ipv6,[  --enable-ipv6      enable IPv6 support], auto)dnl
 OL_ARG_ENABLE(local,[  --enable-local    enable AF_LOCAL (AF_UNIX) socket support], auto)dnl
 
 OL_ARG_ENABLE(ipv6,[  --enable-ipv6      enable IPv6 support], auto)dnl
 OL_ARG_ENABLE(local,[  --enable-local    enable AF_LOCAL (AF_UNIX) socket support], auto)dnl
 
@@ -241,19 +242,19 @@ OL_ARG_WITH(cyrus_sasl,[  --with-cyrus-sasl         with Cyrus SASL support],
        auto, [auto yes no] )
 OL_ARG_WITH(fetch,[  --with-fetch                with fetch(3) URL support],
        auto, [auto yes no] )
        auto, [auto yes no] )
 OL_ARG_WITH(fetch,[  --with-fetch                with fetch(3) URL support],
        auto, [auto yes no] )
-dnl    OL_ARG_WITH(kerberos,[  --with-kerberos   with Kerberos support],
-dnl            auto, [auto k5 k5only k425 kth k4 afs yes no])
-ol_with_kerberos=${ol_with_kerberos-auto}
 OL_ARG_WITH(threads,[  --with-threads    with threads],
        auto, [auto nt posix mach pth lwp yes no manual] )
 OL_ARG_WITH(threads,[  --with-threads    with threads],
        auto, [auto nt posix mach pth lwp yes no manual] )
-OL_ARG_WITH(tls,[  --with-tls            with TLS/SSL support],
-       auto, [auto openssl yes no] )
+OL_ARG_WITH(tls,[  --with-tls            with TLS/SSL support auto|openssl|gnutls|moznss],
+       auto, [auto openssl gnutls moznss yes no] )
 OL_ARG_WITH(yielding_select,
        [  --with-yielding-select  with implicitly yielding select],
        auto, [auto yes no manual] )
 OL_ARG_WITH(mp,
        [  --with-mp               with multiple precision statistics auto|longlong|long|bignum|gmp],
        auto, [auto longlong long bignum gmp yes no])
 OL_ARG_WITH(yielding_select,
        [  --with-yielding-select  with implicitly yielding select],
        auto, [auto yes no manual] )
 OL_ARG_WITH(mp,
        [  --with-mp               with multiple precision statistics auto|longlong|long|bignum|gmp],
        auto, [auto longlong long bignum gmp yes no])
+OL_ARG_WITH(odbc,
+       [  --with-odbc             with specific ODBC support iodbc|unixodbc|odbc32|auto],
+       auto, [auto iodbc unixodbc odbc32] )
 
 dnl ----------------------------------------------------------------
 dnl Server options
 
 dnl ----------------------------------------------------------------
 dnl Server options
@@ -285,11 +286,13 @@ Backends="bdb \
        ldap \
        meta \
        monitor \
        ldap \
        meta \
        monitor \
+       ndb \
        null \
        passwd \
        perl \
        relay \
        shell \
        null \
        passwd \
        perl \
        relay \
        shell \
+       sock \
        sql"
 
 AC_ARG_ENABLE(xxslapbackends,[
        sql"
 
 AC_ARG_ENABLE(xxslapbackends,[
@@ -298,7 +301,7 @@ SLAPD Backend Options:])
 OL_ARG_ENABLE(backends,[    --enable-backends    enable all available backends],
        --, [no yes mod])dnl
 OL_ARG_ENABLE(bdb,[    --enable-bdb      enable Berkeley DB backend],
 OL_ARG_ENABLE(backends,[    --enable-backends    enable all available backends],
        --, [no yes mod])dnl
 OL_ARG_ENABLE(bdb,[    --enable-bdb      enable Berkeley DB backend],
-       yes, [no yes mod], ol_enable_backends)dnl
+       no, [no yes mod], ol_enable_backends)dnl
 OL_ARG_ENABLE(dnssrv,[    --enable-dnssrv        enable dnssrv backend],
        no, [no yes mod], ol_enable_backends)dnl
 OL_ARG_ENABLE(hdb,[    --enable-hdb      enable Hierarchical DB backend],
 OL_ARG_ENABLE(dnssrv,[    --enable-dnssrv        enable dnssrv backend],
        no, [no yes mod], ol_enable_backends)dnl
 OL_ARG_ENABLE(hdb,[    --enable-hdb      enable Hierarchical DB backend],
@@ -309,6 +312,8 @@ OL_ARG_ENABLE(meta,[    --enable-meta         enable metadirectory backend],
        no, [no yes mod], ol_enable_backends)dnl
 OL_ARG_ENABLE(monitor,[    --enable-monitor      enable monitor backend],
        yes, [no yes mod], ol_enable_backends)dnl
        no, [no yes mod], ol_enable_backends)dnl
 OL_ARG_ENABLE(monitor,[    --enable-monitor      enable monitor backend],
        yes, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(ndb,[    --enable-ndb      enable MySQL NDB Cluster backend],
+       no, [no yes mod], ol_enable_backends)dnl
 OL_ARG_ENABLE(null,[    --enable-null    enable null backend],
        no, [no yes mod], ol_enable_backends)dnl
 OL_ARG_ENABLE(passwd,[    --enable-passwd        enable passwd backend],
 OL_ARG_ENABLE(null,[    --enable-null    enable null backend],
        no, [no yes mod], ol_enable_backends)dnl
 OL_ARG_ENABLE(passwd,[    --enable-passwd        enable passwd backend],
@@ -319,6 +324,8 @@ OL_ARG_ENABLE(relay,[    --enable-relay       enable relay backend],
        yes, [no yes mod], ol_enable_backends)dnl
 OL_ARG_ENABLE(shell,[    --enable-shell          enable shell backend],
        no, [no yes mod], ol_enable_backends)dnl
        yes, [no yes mod], ol_enable_backends)dnl
 OL_ARG_ENABLE(shell,[    --enable-shell          enable shell backend],
        no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(sock,[    --enable-sock    enable sock backend],
+       no, [no yes mod], ol_enable_backends)dnl
 OL_ARG_ENABLE(sql,[    --enable-sql      enable sql backend],
        no, [no yes mod], ol_enable_backends)dnl
 
 OL_ARG_ENABLE(sql,[    --enable-sql      enable sql backend],
        no, [no yes mod], ol_enable_backends)dnl
 
@@ -326,18 +333,20 @@ dnl ----------------------------------------------------------------
 dnl SLAPD Overlay Options
 Overlays="accesslog \
        auditlog \
 dnl SLAPD Overlay Options
 Overlays="accesslog \
        auditlog \
+       collect \
        constraint \
        dds \
        constraint \
        dds \
-       denyop \
+       deref \
        dyngroup \
        dynlist \
        dyngroup \
        dynlist \
-       lastmod \
+       memberof \
        ppolicy \
        proxycache \
        refint \
        retcode \
        rwm \
        seqmod \
        ppolicy \
        proxycache \
        refint \
        retcode \
        rwm \
        seqmod \
+       sssvlv \
        syncprov \
        translucent \
        unique \
        syncprov \
        translucent \
        unique \
@@ -352,17 +361,19 @@ OL_ARG_ENABLE(accesslog,[    --enable-accesslog     In-Directory Access Logging ov
        no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(auditlog,[    --enable-auditlog    Audit Logging overlay],
        no, [no yes mod], ol_enable_overlays)
        no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(auditlog,[    --enable-auditlog    Audit Logging overlay],
        no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(collect,[    --enable-collect      Collect overlay],
+       no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(constraint,[    --enable-constraint        Attribute Constraint overlay],
        no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(dds,[    --enable-dds      Dynamic Directory Services overlay],
        no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(constraint,[    --enable-constraint        Attribute Constraint overlay],
        no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(dds,[    --enable-dds      Dynamic Directory Services overlay],
        no, [no yes mod], ol_enable_overlays)
-OL_ARG_ENABLE(denyop,[    --enable-denyop        Deny Operation overlay],
+OL_ARG_ENABLE(deref,[    --enable-deref          Dereference overlay],
        no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(dyngroup,[    --enable-dyngroup    Dynamic Group overlay],
        no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(dynlist,[    --enable-dynlist      Dynamic List overlay],
        no, [no yes mod], ol_enable_overlays)
        no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(dyngroup,[    --enable-dyngroup    Dynamic Group overlay],
        no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(dynlist,[    --enable-dynlist      Dynamic List overlay],
        no, [no yes mod], ol_enable_overlays)
-OL_ARG_ENABLE(lastmod,[    --enable-lastmod      Last Modification overlay],
+OL_ARG_ENABLE(memberof,[    --enable-memberof    Reverse Group Membership overlay],
        no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(ppolicy,[    --enable-ppolicy      Password Policy overlay],
        no, [no yes mod], ol_enable_overlays)
        no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(ppolicy,[    --enable-ppolicy      Password Policy overlay],
        no, [no yes mod], ol_enable_overlays)
@@ -375,7 +386,9 @@ OL_ARG_ENABLE(retcode,[    --enable-retcode   Return Code testing overlay],
 OL_ARG_ENABLE(rwm,[    --enable-rwm              Rewrite/Remap overlay],
        no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(seqmod,[    --enable-seqmod        Sequential Modify overlay],
 OL_ARG_ENABLE(rwm,[    --enable-rwm              Rewrite/Remap overlay],
        no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(seqmod,[    --enable-seqmod        Sequential Modify overlay],
-       yes, [no yes mod], ol_enable_overlays)
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(sssvlv,[    --enable-sssvlv        ServerSideSort/VLV overlay],
+       no, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(syncprov,[    --enable-syncprov    Syncrepl Provider overlay],
        yes, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(translucent,[    --enable-translucent  Translucent Proxy overlay],
 OL_ARG_ENABLE(syncprov,[    --enable-syncprov    Syncrepl Provider overlay],
        yes, [no yes mod], ol_enable_overlays)
 OL_ARG_ENABLE(translucent,[    --enable-translucent  Translucent Proxy overlay],
@@ -385,12 +398,6 @@ OL_ARG_ENABLE(unique,[    --enable-unique       Attribute Uniqueness overlay],
 OL_ARG_ENABLE(valsort,[    --enable-valsort      Value Sorting overlay],
        no, [no yes mod], ol_enable_overlays)
 
 OL_ARG_ENABLE(valsort,[    --enable-valsort      Value Sorting overlay],
        no, [no yes mod], ol_enable_overlays)
 
-dnl ----------------------------------------------------------------
-dnl SLURPD OPTIONS
-AC_ARG_ENABLE(xxslurpdoptions,[
-SLURPD (Replication Daemon) Options:])
-OL_ARG_ENABLE(slurpd,[  --enable-slurpd          enable building slurpd], auto)dnl
-
 dnl ----------------------------------------------------------------
 AC_ARG_ENABLE(xxliboptions,[
 Library Generation & Linking Options])
 dnl ----------------------------------------------------------------
 AC_ARG_ENABLE(xxliboptions,[
 Library Generation & Linking Options])
@@ -430,9 +437,6 @@ if test $ol_enable_slapd = no ; then
        if test $ol_enable_aci != no ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-aci argument])
        fi
        if test $ol_enable_aci != no ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-aci argument])
        fi
-       if test $ol_enable_slurpd = yes ; then
-               AC_MSG_ERROR([slurpd requires slapd])
-       fi
        if test $ol_enable_rewrite = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-rewrite argument])
        fi
        if test $ol_enable_rewrite = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-rewrite argument])
        fi
@@ -459,8 +463,6 @@ if test $ol_enable_slapd = no ; then
        ol_enable_aci=no
        ol_enable_wrappers=no
 
        ol_enable_aci=no
        ol_enable_wrappers=no
 
-       ol_enable_slurpd=no
-
        ol_enable_rewrite=no
 
 elif test $ol_enable_modules != yes &&
        ol_enable_rewrite=no
 
 elif test $ol_enable_modules != yes &&
@@ -470,11 +472,13 @@ elif test $ol_enable_modules != yes &&
        test $ol_enable_ldap = no &&
        test $ol_enable_meta = no &&
        test $ol_enable_monitor = no &&
        test $ol_enable_ldap = no &&
        test $ol_enable_meta = no &&
        test $ol_enable_monitor = no &&
+       test $ol_enable_ndb = no &&
        test $ol_enable_null = no &&
        test $ol_enable_passwd = no &&
        test $ol_enable_perl = no &&
        test $ol_enable_relay = no &&
        test $ol_enable_shell = no &&
        test $ol_enable_null = no &&
        test $ol_enable_passwd = no &&
        test $ol_enable_perl = no &&
        test $ol_enable_relay = no &&
        test $ol_enable_shell = no &&
+       test $ol_enable_sock = no &&
        test $ol_enable_sql = no ; then
        dnl no slapd backend
 
        test $ol_enable_sql = no ; then
        dnl no slapd backend
 
@@ -490,35 +494,12 @@ if test $ol_enable_meta/$ol_enable_ldap = yes/no ; then
        AC_MSG_ERROR([--enable-meta requires --enable-ldap])
 fi
 
        AC_MSG_ERROR([--enable-meta requires --enable-ldap])
 fi
 
-if test $ol_enable_slurpd = yes ; then
-       dnl SLURPD was specifically enabled
-       if test $ol_with_threads = no ; then
-               AC_MSG_ERROR([slurpd requires threads])
-       fi
-fi
-
 if test $ol_enable_lmpasswd = yes ; then
        if test $ol_with_tls = no ; then
                AC_MSG_ERROR([LAN Manager passwords require OpenSSL])
        fi
 fi
 
 if test $ol_enable_lmpasswd = yes ; then
        if test $ol_with_tls = no ; then
                AC_MSG_ERROR([LAN Manager passwords require OpenSSL])
        fi
 fi
 
-if test $ol_enable_kbind = yes ; then
-       if test $ol_with_kerberos = no ; then
-               AC_MSG_ERROR([options require --with-kerberos])
-       elif test $ol_with_kerberos = auto ; then
-               ol_with_kerberos=yes
-       fi
-
-elif test $ol_enable_kbind = no ; 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
-fi
-
 if test $ol_enable_spasswd = yes ; then
        if test $ol_with_cyrus_sasl = no ; then
                AC_MSG_ERROR([options require --with-cyrus-sasl])
 if test $ol_enable_spasswd = yes ; then
        if test $ol_with_cyrus_sasl = no ; then
                AC_MSG_ERROR([options require --with-cyrus-sasl])
@@ -532,14 +513,14 @@ dnl ----------------------------------------------------------------
 dnl Initialize vars
 LDAP_LIBS=
 BDB_LIBS=
 dnl Initialize vars
 LDAP_LIBS=
 BDB_LIBS=
+SLAPD_NDB_LIBS=
+SLAPD_NDB_INCS=
 LTHREAD_LIBS=
 LUTIL_LIBS=
 
 SLAPD_LIBS=
 LTHREAD_LIBS=
 LUTIL_LIBS=
 
 SLAPD_LIBS=
-SLURPD_LIBS=
 
 BUILD_SLAPD=no
 
 BUILD_SLAPD=no
-BUILD_SLURPD=no
 
 BUILD_THREAD=no
 
 
 BUILD_THREAD=no
 
@@ -552,11 +533,13 @@ BUILD_HDB=no
 BUILD_LDAP=no
 BUILD_META=no
 BUILD_MONITOR=no
 BUILD_LDAP=no
 BUILD_META=no
 BUILD_MONITOR=no
+BUILD_NDB=no
 BUILD_NULL=no
 BUILD_PASSWD=no
 BUILD_PERL=no
 BUILD_RELAY=no
 BUILD_SHELL=no
 BUILD_NULL=no
 BUILD_PASSWD=no
 BUILD_PERL=no
 BUILD_RELAY=no
 BUILD_SHELL=no
+BUILD_SOCK=no
 BUILD_SQL=no
 
 BUILD_ACCESSLOG=no
 BUILD_SQL=no
 
 BUILD_ACCESSLOG=no
@@ -564,15 +547,18 @@ BUILD_AUDITLOG=no
 BUILD_CONSTRAINT=no
 BUILD_DDS=no
 BUILD_DENYOP=no
 BUILD_CONSTRAINT=no
 BUILD_DDS=no
 BUILD_DENYOP=no
+BUILD_DEREF=no
 BUILD_DYNGROUP=no
 BUILD_DYNLIST=no
 BUILD_LASTMOD=no
 BUILD_DYNGROUP=no
 BUILD_DYNLIST=no
 BUILD_LASTMOD=no
+BUILD_MEMBEROF=no
 BUILD_PPOLICY=no
 BUILD_PROXYCACHE=no
 BUILD_REFINT=no
 BUILD_RETCODE=no
 BUILD_RWM=no
 BUILD_SEQMOD=no
 BUILD_PPOLICY=no
 BUILD_PROXYCACHE=no
 BUILD_REFINT=no
 BUILD_RETCODE=no
 BUILD_RWM=no
 BUILD_SEQMOD=no
+BUILD_SSSVLV=no
 BUILD_SYNCPROV=no
 BUILD_TRANSLUCENT=no
 BUILD_UNIQUE=no
 BUILD_SYNCPROV=no
 BUILD_TRANSLUCENT=no
 BUILD_UNIQUE=no
@@ -707,12 +693,14 @@ if test $ol_enable_perl != no ; then
 fi
 
 AC_PROG_CPP
 fi
 
 AC_PROG_CPP
+OL_MSVC
 
 dnl ----------------------------------------------------------------
 dnl Checks for Windows NT
 case $host_os in
   *mingw32* ) ac_cv_mingw32=yes ;;
   *cygwin* ) ac_cv_cygwin=yes ;;
 
 dnl ----------------------------------------------------------------
 dnl Checks for Windows NT
 case $host_os in
   *mingw32* ) ac_cv_mingw32=yes ;;
   *cygwin* ) ac_cv_cygwin=yes ;;
+  *interix* ) ac_cv_interix=yes ;;
 esac
 
 dnl ----------------------------------------------------------------
 esac
 
 dnl ----------------------------------------------------------------
@@ -837,9 +825,11 @@ AC_CHECK_HEADERS(  \
        sysexits.h              \
        sys/file.h              \
        sys/filio.h             \
        sysexits.h              \
        sys/file.h              \
        sys/filio.h             \
+       sys/fstyp.h             \
        sys/errno.h             \
        sys/ioctl.h             \
        sys/param.h             \
        sys/errno.h             \
        sys/ioctl.h             \
        sys/param.h             \
+       sys/privgrp.h   \
        sys/resource.h  \
        sys/select.h    \
        sys/socket.h    \
        sys/resource.h  \
        sys/select.h    \
        sys/socket.h    \
@@ -848,14 +838,21 @@ AC_CHECK_HEADERS( \
        sys/time.h              \
        sys/types.h             \
        sys/uio.h               \
        sys/time.h              \
        sys/types.h             \
        sys/uio.h               \
+       sys/vmount.h    \
        syslog.h                \
        termios.h               \
        unistd.h                \
        utime.h                 \
        syslog.h                \
        termios.h               \
        unistd.h                \
        utime.h                 \
-       winsock.h               \
-       winsock2.h              \
 )
 
 )
 
+dnl Only check Winsock on MinGW
+if test "$ac_cv_mingw32" = yes \
+       -o "$ac_cv_interix" = yes \
+       -o "$ol_cv_msvc" = yes
+then
+       AC_CHECK_HEADERS( winsock.h winsock2.h )
+fi
+
 AC_CHECK_HEADERS( resolv.h, [], [],
 [$ac_includes_default
 #include <netinet/in.h>
 AC_CHECK_HEADERS( resolv.h, [], [],
 [$ac_includes_default
 #include <netinet/in.h>
@@ -884,39 +881,48 @@ if test $ac_cv_func_sigaction = no && test $ac_cv_func_sigaction = no ; then
        AC_CHECK_LIB(V3, sigset)
 fi
 
        AC_CHECK_LIB(V3, sigset)
 fi
 
+if test $ol_cv_msvc = yes ; then
+   ol_cv_winsock=yes
+fi
+
 dnl The following is INTENTIONALLY scripted out because shell does not
 dnl support variable names with the '@' character, which is what
 dnl autoconf would try to generate if one merely used AC_SEARCH_LIBS
 dnl The following is INTENTIONALLY scripted out because shell does not
 dnl support variable names with the '@' character, which is what
 dnl autoconf would try to generate if one merely used AC_SEARCH_LIBS
-dnl
-dnl Skip Winsock tests on Cygwin
-if test "$ac_cv_cygwin" != yes && test "$ac_cv_header_winsock_h" = yes; then
-AC_CACHE_CHECK([for winsock], [ol_cv_winsock],
-save_LIBS="$LIBS"
-for curlib in ws2_32 wsock32; do
-       LIBS="$LIBS -l$curlib"
-       AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <winsock.h>
+if test "$ac_cv_header_winsock_h" = yes; then
+       AC_CACHE_CHECK([for winsock], [ol_cv_winsock],[
+       save_LIBS="$LIBS"
+       for curlib in none ws2_32 wsock32; do
+               if test $curlib != none ; then
+               LIBS="$save_LIBS -l$curlib"
+               fi
+               AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <winsock.h>
                        ]], [[
                        socket(0,0,0);
                        select(0,NULL,NULL,NULL,NULL);
                        closesocket(0);
                        gethostname(NULL,0);
                        ]], [[
                        socket(0,0,0);
                        select(0,NULL,NULL,NULL,NULL);
                        closesocket(0);
                        gethostname(NULL,0);
-                       ]])],[ol_cv_winsock=yes],[ol_cv_winsock=no])
-
-       if test $ol_cv_winsock = yes; then
-               AC_DEFINE(HAVE_WINSOCK, 1, [define if you have winsock])
-               ac_cv_func_socket=yes
-               ac_cv_func_select=yes
-               ac_cv_func_closesocket=yes
-               ac_cv_func_gethostname=yes
-               if test $curlib = ws2_32; then
-                       ol_cv_winsock=winsock2
-                       AC_DEFINE(HAVE_WINSOCK2, 1,
-                                 [define if you have winsock2])
+                       ]])],[ol_cv_winsock=$curlib],[ol_cv_winsock=no])
+
+               test "$ol_cv_winsock" != no && break
+       done
+       LIBS="$save_LIBS"
+       ])
+
+       if test $ol_cv_winsock != no ; then
+       AC_DEFINE(HAVE_WINSOCK, 1, [define if you have winsock])
+       ac_cv_func_socket=yes
+       ac_cv_func_select=yes
+       ac_cv_func_closesocket=yes
+       ac_cv_func_gethostname=yes
+
+               if test $ol_cv_winsock != none -a $ol_cv_winsock != yes ; then
+               LIBS="$LIBS -l$ol_cv_winsock"
                fi
                fi
-               break
+
+       if test $ol_cv_winsock = ws2_32 -o $ol_cv_winsock = yes ; then
+                       AC_DEFINE(HAVE_WINSOCK2, 1, [define if you have winsock2])
+       fi
        fi
        fi
-       LIBS="$save_LIBS"
-done)
 fi
 
 dnl Find socket()
 fi
 
 dnl Find socket()
@@ -949,27 +955,49 @@ dnl AC_SYS_RESTARTABLE_SYSCALLS
 
 dnl ----------------------------------------------------------------
 AC_CHECK_FUNCS( poll )
 
 dnl ----------------------------------------------------------------
 AC_CHECK_FUNCS( poll )
-AC_CHECK_HEADERS( poll.h )
+if test $ac_cv_func_poll = yes; then
+AC_CHECK_HEADERS( poll.h sys/poll.h )
+fi
 
 dnl ----------------------------------------------------------------
 AC_CHECK_HEADERS( sys/epoll.h )
 if test "${ac_cv_header_sys_epoll_h}" = yes; then
 
 dnl ----------------------------------------------------------------
 AC_CHECK_HEADERS( sys/epoll.h )
 if test "${ac_cv_header_sys_epoll_h}" = yes; then
-AC_MSG_CHECKING(for epoll system call)
-AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(int argc, char *argv)
+       AC_MSG_CHECKING(for epoll system call)
+       AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(int argc, char **argv)
 {
        int epfd = epoll_create(256);
        exit (epfd == -1 ? 1 : 0);
 }]])],[AC_MSG_RESULT(yes)
 {
        int epfd = epoll_create(256);
        exit (epfd == -1 ? 1 : 0);
 }]])],[AC_MSG_RESULT(yes)
-AC_DEFINE(HAVE_EPOLL,1, [define if your system supports epoll])],[AC_MSG_RESULT(no)],[AC_MSG_RESULT(no)])
+       AC_DEFINE(HAVE_EPOLL,1, [define if your system supports epoll])],[AC_MSG_RESULT(no)],[AC_MSG_RESULT(no)])
+fi
+
+dnl ----------------------------------------------------------------
+AC_CHECK_HEADERS( sys/devpoll.h )
+dnl "/dev/poll" needs <sys/poll.h> as well...
+if test "${ac_cv_header_sys_devpoll_h}" = yes \
+               -a "${ac_cv_header_poll_h}" = yes ; \
+then
+       AC_MSG_CHECKING(for /dev/poll)
+       AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(int argc, char **argv)
+{
+       int devpollfd = open("/dev/poll", /* O_RDWR */ 2);
+       exit (devpollfd == -1 ? 1 : 0);
+}]])],[AC_MSG_RESULT(yes)
+       AC_DEFINE(HAVE_DEVPOLL,1, [define if your system supports /dev/poll])],[AC_MSG_RESULT(no)],[AC_MSG_RESULT(no)])
 fi
 
 dnl ----------------------------------------------------------------
 fi
 
 dnl ----------------------------------------------------------------
-# strerror checks
 OL_STRERROR
 
 dnl ----------------------------------------------------------------
 dnl require POSIX regex
 OL_STRERROR
 
 dnl ----------------------------------------------------------------
 dnl require POSIX regex
-AC_CHECK_HEADERS( regex.h )
+AC_CHECK_HEADERS( regex.h, [], [],
+[$ac_includes_default
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+])
+
 if test "$ac_cv_header_regex_h" != yes ; then
        AC_MSG_ERROR([POSIX regex.h required.])
 fi
 if test "$ac_cv_header_regex_h" != yes ; then
        AC_MSG_ERROR([POSIX regex.h required.])
 fi
@@ -986,12 +1014,14 @@ dnl UUID Support
 
 have_uuid=no
 AC_CHECK_HEADERS(sys/uuid.h)
 
 have_uuid=no
 AC_CHECK_HEADERS(sys/uuid.h)
+dnl The HAVE_UUID_TO_STR code path also needs uuid_create
 if test $ac_cv_header_sys_uuid_h = yes ; then
        save_LIBS="$LIBS"
 if test $ac_cv_header_sys_uuid_h = yes ; then
        save_LIBS="$LIBS"
-       AC_SEARCH_LIBS(uuid_to_str, uuid, [have_uuid=yes], :)
+       AC_SEARCH_LIBS([uuid_to_str], [uuid], [have_uuid=yes], :)
+       AC_SEARCH_LIBS([uuid_create], [uuid], :, [have_uuid=no])
        LIBS="$save_LIBS"
 
        LIBS="$save_LIBS"
 
-       if test have_uuid = yes ; then
+       if test $have_uuid = yes ; then
                AC_DEFINE(HAVE_UUID_TO_STR,1,
                        [define if you have uuid_to_str()])
 
                AC_DEFINE(HAVE_UUID_TO_STR,1,
                        [define if you have uuid_to_str()])
 
@@ -1000,6 +1030,26 @@ if test $ac_cv_header_sys_uuid_h = yes ; then
        fi
 fi
 
        fi
 fi
 
+dnl Look for uuid_generate
+dnl The HAVE_UUID_GENERATE code path also needs uuid_unparse_lower
+if test $have_uuid = no ; then
+       AC_CHECK_HEADERS(uuid/uuid.h)
+       if test $ac_cv_header_uuid_uuid_h = yes ; then
+               save_LIBS="$LIBS"
+               AC_SEARCH_LIBS([uuid_generate], [uuid], [have_uuid=yes], :)
+               AC_SEARCH_LIBS([uuid_unparse_lower], [uuid], :, [have_uuid=no])
+               LIBS="$save_LIBS"
+
+               if test $have_uuid = yes ; then
+                       AC_DEFINE(HAVE_UUID_GENERATE,1,
+                               [define if you have uuid_generate()])
+
+                       test "$ac_cv_search_uuid_generate" = "none required" || \
+                               SLAPD_LIBS="$SLAPD_LIBS $ac_cv_search_uuid_generate"
+               fi
+       fi
+fi
+
 dnl For windows, check for the need of RPCRT for UUID function support
 if test $have_uuid = no ; then
        AC_MSG_CHECKING(to see if -lrpcrt4 is needed for win32 UUID support)
 dnl For windows, check for the need of RPCRT for UUID function support
 if test $have_uuid = no ; then
        AC_MSG_CHECKING(to see if -lrpcrt4 is needed for win32 UUID support)
@@ -1097,174 +1147,6 @@ if test $ol_enable_local != no ; then
        fi
 fi
 
        fi
 fi
 
-dnl ----------------------------------------------------------------
-dnl Kerberos
-ol_link_kbind=no
-ol_link_krb5=no
-ol_link_krb4=no
-
-case $ol_with_kerberos in yes | auto | k5 | k5only | k425)
-
-       AC_CHECK_HEADERS(krb5.h)
-
-       if test $ac_cv_header_krb5_h = yes ; then
-               dnl lazy check for Heimdal Kerberos
-               AC_CHECK_HEADERS(heim_err.h)
-               if test $ac_cv_header_heim_err_h = yes ; then
-                       krb5_impl=heimdal
-               else
-                       krb5_impl=mit
-               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 -l$krb5crypto -lcom_err"],
-                               [have_krb5=no],
-                               [-l$krb5crypto -lcom_err])
-
-               elif test $krb5_impl = heimdal; then
-                       AC_CHECK_LIB(des, main,
-                               [krb5crypto=des],
-                               [krb5crypto=crypto])
-
-                       AC_CHECK_LIB(krb5, main,
-                               [have_krb5=yes
-                               KRB5_LIBS="-lkrb5 -l$krb5crypto -lasn1 -lroken -lcom_err"],
-                               [have_krb5=no],
-                               [-l$krb5crypto -lasn1 -lroken -lcom_err])
-
-                       AC_DEFINE(HAVE_HEIMDAL_KERBEROS, 1,
-                               [define if you have HEIMDAL Kerberos])
-
-               else
-                       have_krb5=no
-                       AC_MSG_WARN([Unrecognized Kerberos5 Implementation])
-               fi
-
-               if test $have_krb5 = yes ; then
-                       ol_link_krb5=yes
-
-                       AC_DEFINE(HAVE_KRB5, 1,
-                               [define if you have Kerberos V])
-
-                       if test $ol_with_kerberos = k5only ; then
-                               ol_with_kerberos=found
-                       fi
-
-               elif test $ol_with_kerberos != auto ; then
-                       AC_MSG_ERROR([Required Kerberos 5 support not available])
-               fi
-
-       fi
-       ;;
-esac
-
-if test $ol_link_krb5 = yes &&
-   { test $ol_with_kerberos = yes ||
-     test $ol_with_kerberos = auto ||
-     test $ol_with_kerberos = k425; }; then
-
-       AC_CHECK_HEADERS(kerberosIV/krb.h kerberosIV/des.h)
-
-       if test $ac_cv_header_kerberosIV_krb_h = yes ; then
-               if test $krb5_impl = mit; then
-                       AC_CHECK_LIB(krb4, main, [have_k425=yes
-                               KRB4_LIBS="-lkrb4 -ldes425"], [have_k425=no],
-                               [-ldes425 -lkrb5 -l$krb5crypto -lcom_err])
-
-               elif test $krb5_impl = heimdal; then
-                       AC_CHECK_LIB(krb4, main, [have_k425=yes
-                               KRB4_LIBS="-lkrb4"], [have_k425=no],
-                               [-lkrb5 -l$krb5crypto -lasn1 -lroken -lcom_err])
-
-               else
-                       have_425=no
-                       AC_MSG_WARN([Unrecongized Kerberos V Implementation])
-               fi
-
-               if test $have_k425 = yes ; then
-                       ol_with_kerberos=found
-                       ol_link_krb4=yes
-
-                       AC_DEFINE(HAVE_KRB425, 1,
-                               [define if you have Kerberos V with IV support])
-                       AC_DEFINE(HAVE_KRB4, 1,
-                               [define if you have Kerberos IV])
-
-                       AC_CACHE_CHECK([for des_debug in Kerberos libraries],
-                               [ol_cv_var_des_debug], [
-                               dnl save the flags
-                               save_LIBS="$LIBS"
-                               LIBS="$KRB4_LIBS $KRB5_LIBS $LIBS"
-                               AC_LINK_IFELSE([AC_LANG_PROGRAM([[
-#include <kerberosIV/krb.h>
-#include <kerberosIV/des.h>
-extern int des_debug;
-]], [[
-des_debug = 1;
-]])],[ol_cv_var_des_debug=yes],[ol_cv_var_des_debug=no])
-                               dnl restore the LIBS
-                               LIBS="$save_LIBS"
-                       ])
-
-                       if test $ol_cv_var_des_debug = yes ; then
-                               AC_DEFINE(HAVE_DES_DEBUG,1,
-                                       [define if you have Kerberos des_debug])
-                       fi
-
-                       LIBS="$save_LIBS"
-               fi
-       fi
-fi
-
-if test $ol_link_krb5 = yes ; then
-       ol_with_kerberos=found
-fi
-
-case $ol_with_kerberos in yes | auto | k4 | kth)
-
-       AC_CHECK_HEADERS(krb.h des.h krb-archaeology.h )
-
-       if test $ac_cv_header_krb_h = yes ; then
-               AC_CHECK_LIB(krb, main, [have_k4=yes], [have_k4=no], [-ldes])
-
-               if test $have_k4 = yes ; then
-                       ol_with_kerberos=found
-                       ol_link_krb4=yes
-
-                       AC_DEFINE(HAVE_KRB4, 1,
-                               [define if you have Kerberos IV])
-
-                       KRB4_LIBS="-lkrb -ldes"
-
-                       if test $ac_cv_header_krb_archaeology_h = yes ; then
-                               AC_DEFINE(HAVE_KTH_KERBEROS, 1,
-                                       [define if you have Kth Kerberos])
-                       fi
-               fi
-       fi
-       ;;
-esac
-
-if test $ol_link_krb4 = yes && test $ol_enable_kbind != no ; then
-       ol_link_kbind=yes
-
-elif test $ol_enable_kbind = yes ; then
-       AC_MSG_ERROR([Kerberos IV detection failed])
-fi
-
-if test $ol_link_krb4 = yes || test $ol_link_krb5 = yes ; then
-       AC_DEFINE(HAVE_KERBEROS, 1, [define if you have Kerberos])
-
-elif test $ol_with_kerberos != auto && test $ol_with_kerberos != no ; then
-       AC_MSG_ERROR([Kerberos detection failed])
-fi
-
 dnl ----------------------------------------------------------------
 dnl TLS/SSL
        
 dnl ----------------------------------------------------------------
 dnl TLS/SSL
        
@@ -1314,6 +1196,51 @@ if test $ol_with_tls = openssl || test $ol_with_tls = auto ; then
        fi
 fi
 
        fi
 fi
 
+if test $ol_link_tls = no ; then
+       if test $ol_with_tls = gnutls || test $ol_with_tls = auto ; then
+               AC_CHECK_HEADERS(gnutls/gnutls.h)
+
+               if test $ac_cv_header_gnutls_gnutls_h = yes ; then
+                       AC_CHECK_LIB(gnutls, gnutls_init,
+                               [have_gnutls=yes], [have_gnutls=no])
+
+                       if test $have_gnutls = yes ; then
+                               ol_with_tls=gnutls
+                               ol_link_tls=yes
+
+                               TLS_LIBS="-lgnutls"
+
+                               AC_DEFINE(HAVE_GNUTLS, 1, 
+                                       [define if you have GNUtls])
+                       fi
+               fi
+       fi
+fi
+
+dnl NOTE: caller must specify -I/path/to/nspr4 and -I/path/to/nss3
+dnl and -L/path/to/nspr4 libs and -L/path/to/nss3 libs if those libs
+dnl are not in the default system location
+if test $ol_link_tls = no ; then
+       if test $ol_with_tls = moznss || test $ol_with_tls = auto ; then
+               have_moznss=no
+               AC_CHECK_HEADERS([nssutil.h])
+               if test "$ac_cv_header_nssutil_h" = yes ; then
+                       AC_CHECK_LIB([nss3], [NSS_Initialize],
+                                                [ have_moznss=yes ], [ have_moznss=no ])
+               fi
+
+               if test "$have_moznss" = yes ; then
+                       ol_with_tls=moznss
+                       ol_link_tls=yes
+                       AC_DEFINE(HAVE_MOZNSS, 1, 
+                                         [define if you have MozNSS])
+                       TLS_LIBS="-lssl3 -lsmime3 -lnss3 -lnssutil3 -lplds4 -lplc4 -lnspr4"
+               else
+                       AC_MSG_ERROR([MozNSS not found - please specify the location to the NSPR and NSS header files in CPPFLAGS and the location to the NSPR and NSS libraries in LDFLAGS (if not in the system location)])
+               fi
+       fi
+fi
+
 WITH_TLS=no
 if test $ol_link_tls = yes ; then
        AC_DEFINE(HAVE_TLS, 1, [define if you have TLS])
 WITH_TLS=no
 if test $ol_link_tls = yes ; then
        AC_DEFINE(HAVE_TLS, 1, [define if you have TLS])
@@ -1494,7 +1421,22 @@ dnl                      [ol_cv_pthread_lpthread_lexc])
                        fi
 
                        dnl Check functions for compatibility
                        fi
 
                        dnl Check functions for compatibility
-                       AC_CHECK_FUNCS(pthread_kill pthread_rwlock_destroy)
+                       AC_CHECK_FUNCS(pthread_kill)
+
+                       dnl Check for pthread_rwlock_destroy with <pthread.h>
+                       dnl as pthread_rwlock_t may not be defined.
+                       AC_CACHE_CHECK([for pthread_rwlock_destroy with <pthread.h>],
+                               [ol_cv_func_pthread_rwlock_destroy], [
+                               dnl save the flags
+                               AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+#include <pthread.h>
+pthread_rwlock_t rwlock;
+]], [[pthread_rwlock_destroy(&rwlock);]])],[ol_cv_func_pthread_rwlock_destroy=yes],[ol_cv_func_pthread_rwlock_destroy=no])
+                       ])
+                       if test $ol_cv_func_pthread_rwlock_destroy = yes ; then
+                               AC_DEFINE(HAVE_PTHREAD_RWLOCK_DESTROY,1,
+                                       [define if you have pthread_rwlock_destroy function])
+                       fi
 
                        dnl Check for pthread_detach with <pthread.h> inclusion
                        dnl as it's symbol may have been mangled.
 
                        dnl Check for pthread_detach with <pthread.h> inclusion
                        dnl as it's symbol may have been mangled.
@@ -1624,7 +1566,7 @@ int main(argc, argv)
 #endif
 
        /* make sure task runs first */
 #endif
 
        /* make sure task runs first */
-#if HAVE_THR_YIELD
+#ifdef HAVE_THR_YIELD
        thr_yield();
 #elif defined( HAVE_SCHED_YIELD )
        sched_yield();
        thr_yield();
 #elif defined( HAVE_SCHED_YIELD )
        sched_yield();
@@ -1918,6 +1860,7 @@ dnl ----------------------------------------------------------------
 dnl Tests for reentrant functions necessary to build -lldap_r
 AC_CHECK_FUNCS(                \
        ctime_r                 \
 dnl Tests for reentrant functions necessary to build -lldap_r
 AC_CHECK_FUNCS(                \
        ctime_r                 \
+       gmtime_r localtime_r \
        gethostbyname_r gethostbyaddr_r \
 )
 
        gethostbyname_r gethostbyaddr_r \
 )
 
@@ -1959,12 +1902,6 @@ if test $ol_enable_bdb/$ol_enable_hdb != no/no; then
                BDB_LIBS="$BDB_LIBS $ol_cv_lib_db"
        fi
 
                BDB_LIBS="$BDB_LIBS $ol_cv_lib_db"
        fi
 
-       OL_BDB_COMPAT
-
-       if test $ol_cv_bdb_compat != yes ; then
-               AC_MSG_ERROR([BDB/HDB: BerkeleyDB version incompatible])
-       fi
-
        SLAPD_LIBS="$SLAPD_LIBS \$(BDB_LIBS)"
 
        ol_link_bdb=yes 
        SLAPD_LIBS="$SLAPD_LIBS \$(BDB_LIBS)"
 
        ol_link_bdb=yes 
@@ -2047,16 +1984,41 @@ if test $ol_enable_sql != no ; then
        sql_LIBS="$LIBS"
        LIBS="$LTHREAD_LIBS"
 
        sql_LIBS="$LIBS"
        LIBS="$LTHREAD_LIBS"
 
-       AC_CHECK_LIB(iodbc,SQLDriverConnect,[have_iodbc=yes],[have_iodbc=no])
-       if test $have_iodbc = yes ; then
-               ol_link_sql="-liodbc"
-       else
-               AC_CHECK_LIB(odbc,SQLDriverConnect,[have_odbc=yes],[have_odbc=no])
-               if test $have_odbc = yes ; then
-                       ol_link_sql="-lodbc"
-               fi
+       if test $ol_with_odbc = auto ; then
+               ol_with_odbc="iodbc unixodbc odbc32"
        fi
 
        fi
 
+       for odbc in $ol_with_odbc ; do
+               if test $ol_link_sql = no ; then
+                       case $odbc in
+                       iodbc)
+                               AC_CHECK_LIB(iodbc, SQLDriverConnect, [have_iodbc=yes], [have_iodbc=no])
+                               if test $have_iodbc = yes ; then
+                                       ol_link_sql="-liodbc"
+                               fi
+                               ;;
+
+                       unixodbc)
+                               AC_CHECK_LIB(odbc, SQLDriverConnect, [have_odbc=yes], [have_odbc=no])
+                               if test $have_odbc = yes ; then
+                                       ol_link_sql="-lodbc"
+                               fi
+                               ;;
+
+                       odbc32)
+                               AC_CHECK_LIB(odbc32, SQLDriverConnect, [have_odbc32=yes], [have_odbc32=no])
+                               if test $have_odbc32 = yes ; then
+                                       ol_link_sql="-lodbc32"
+                               fi
+                               ;;
+
+                       *)
+                               AC_MSG_ERROR([unknown ODBC library])
+                               ;;
+                       esac
+               fi
+       done
+
        LIBS="$sql_LIBS"
 
        if test $ol_link_sql != no ; then
        LIBS="$sql_LIBS"
 
        if test $ol_link_sql != no ; then
@@ -2067,6 +2029,47 @@ if test $ol_enable_sql != no ; then
        fi
 fi
 
        fi
 fi
 
+dnl ----------------------------------------------------------------
+dnl MySQL NDBapi
+dnl Note: uses C++, but we don't want to add C++ test overhead to
+dnl the rest of the libtool machinery.
+ol_link_ndb=no
+if test $ol_enable_ndb != no ; then
+       AC_CHECK_PROG(MYSQL,mysql_config,yes)
+       if test "$MYSQL" != yes ; then
+               AC_MSG_ERROR([could not locate mysql_config])
+       fi
+
+       SQL_INC=`mysql_config --include`
+       SLAPD_NDB_INCS="$SQL_INC $SQL_INC/storage/ndb $SQL_INC/storage/ndb/ndbapi"
+
+       save_CPPFLAGS="$CPPFLAGS"
+       CPPFLAGS="$SLAPD_NDB_INCS"
+       AC_MSG_CHECKING(for NdbApi.hpp)
+       AC_PREPROC_IFELSE(
+               [AC_LANG_SOURCE([[#include <NdbApi.hpp>]])],
+                       AC_MSG_RESULT(yes),
+                       AC_MSG_ERROR([could not locate NdbApi headers])
+       )
+       CPPFLAGS="$save_CPPFLAGS"
+
+       SQL_LIB=`mysql_config --libs_r`
+       SLAPD_NDB_LIBS="$SQL_LIB -lndbclient -lstdc++"
+
+       save_LDFLAGS="$LDFLAGS"
+       save_LIBS="$LIBS"
+       LDFLAGS="$SQL_LIB"
+       AC_CHECK_LIB(ndbclient,ndb_init,[: ok],[
+               AC_MSG_ERROR([could not locate ndbclient library])
+       ],[-lstdc++])
+       LIBS="$save_LIBS"
+       LDFLAGS="$save_LDFLAGS"
+
+       if test "$ol_enable_ndb" = yes ; then
+               SLAPD_LIBS="$SLAPD_LIBS \$(SLAPD_NDB_LIBS)"
+       fi
+fi
+
 dnl ----------------------------------------------------------------
 dnl International Components for Unicode
 OL_ICU
 dnl ----------------------------------------------------------------
 dnl International Components for Unicode
 OL_ICU
@@ -2243,14 +2246,43 @@ AC_CHECK_TYPE(size_t, unsigned)
 AC_CHECK_TYPES([long long])
 AC_CHECK_TYPES([ptrdiff_t])
 
 AC_CHECK_TYPES([long long])
 AC_CHECK_TYPES([ptrdiff_t])
 
-AC_CHECK_TYPE([socklen_t],,
-       [AC_DEFINE_UNQUOTED([socklen_t], [int],
-               [Define to `int' if <sys/socket.h> does not define.])],
-       [$ac_includes_default
+
+AC_CHECK_TYPE([socklen_t],,, [$ac_includes_default
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif])
+
+dnl socklen_t-like type in accept(), default socklen_t or int:
+dnl - The OS might define socklen_t without using it.  POSIX moved from
+dnl   int to size_t to socklen_t, hoping to stay at a 32-bit type, and
+dnl   HP-UX now has selectors for what to use.
+dnl - On Solaris 2.8 the prototype has void *len, but the default is OK.
+AC_MSG_CHECKING([the type of arg 3 to accept()])
+AC_CACHE_VAL(ol_cv_type_ber_socklen_t, [
+       set socklen_t int unsigned "unsigned long" long size_t
+       test "$ac_cv_type_socklen_t" = yes || shift
+       ol_cv_type_ber_socklen_t=$1 guessing="guessing "
+       for lentype in "$@" ; do for addrtype in "struct sockaddr" void ; do
+               AC_COMPILE_IFELSE([AC_LANG_PROGRAM([$ac_includes_default
 #ifdef HAVE_SYS_SOCKET_H
 #include <sys/socket.h>
 #endif
 #ifdef HAVE_SYS_SOCKET_H
 #include <sys/socket.h>
 #endif
-       ])
+extern int accept(int s, $addrtype *ap, $lentype *lp);
+], [
+accept(0, (struct sockaddr *) 0, ($lentype *) 0);
+])], [ol_cv_type_ber_socklen_t=$lentype guessing= ; break 2])
+       done ; done])
+AC_MSG_RESULT([$guessing$ol_cv_type_ber_socklen_t *])
+AC_DEFINE_UNQUOTED(ber_socklen_t, $ol_cv_type_ber_socklen_t,
+       [Define to the type of arg 3 for `accept'.])
+
+dnl Modules should use ber_socklen_t, not socklen_t.  Define socklen_t
+dnl for the time being anyway, for backwards compatibility.
+if test "$ac_cv_type_socklen_t" != yes; then
+       AC_DEFINE_UNQUOTED([socklen_t], [$ol_cv_type_ber_socklen_t],
+               [Define like ber_socklen_t if <sys/socket.h> does not define.])
+fi
+
 
 AC_TYPE_SIGNAL
 
 
 AC_TYPE_SIGNAL
 
@@ -2364,9 +2396,12 @@ AC_CHECK_FUNC(_snprintf, [ac_cv_func_snprintf=yes
        AC_DEFINE(snprintf, _snprintf, [define to snprintf routine])
 ])
 
        AC_DEFINE(snprintf, _snprintf, [define to snprintf routine])
 ])
 
-AC_CHECK_FUNC(_vsnprintf, [ac_cv_func_vsnprintf=yes
+AC_CHECK_FUNCS(vsnprintf _vsnprintf)
+
+if test $ac_cv_func_vsnprintf = no -a $ac_cv_func__vsnprintf = yes ; then
+       ac_cv_func_vsnprintf=yes
        AC_DEFINE(vsnprintf, _vsnprintf, [define to vsnprintf routine])
        AC_DEFINE(vsnprintf, _vsnprintf, [define to vsnprintf routine])
-])
+fi
 
 AC_FUNC_VPRINTF
 
 
 AC_FUNC_VPRINTF
 
@@ -2375,7 +2410,7 @@ if test $ac_cv_func_vprintf = yes ; then
        AC_CHECK_FUNCS(snprintf vsnprintf)
 fi
 
        AC_CHECK_FUNCS(snprintf vsnprintf)
 fi
 
-AC_CHECK_FUNCS(                \
+AC_CHECK_FUNCS(                        \
        bcopy                   \
        closesocket             \
        chroot                  \
        bcopy                   \
        closesocket             \
        chroot                  \
@@ -2384,17 +2419,18 @@ AC_CHECK_FUNCS(         \
        fcntl                   \
        flock                   \
        fstat                   \
        fcntl                   \
        flock                   \
        fstat                   \
-       getdtablesize   \
+       getdtablesize           \
+       geteuid                 \
        getgrgid                \
        gethostname             \
        getgrgid                \
        gethostname             \
-       getpass                 \
-       getpassphrase   \
+       getpassphrase           \
        getpwuid                \
        getpwnam                \
        getspnam                \
        getpwuid                \
        getpwnam                \
        getspnam                \
-       gettimeofday    \
+       gettimeofday            \
        initgroups              \
        inet_ntoa_b             \
        initgroups              \
        inet_ntoa_b             \
+       ioctl                   \
        lockf                   \
        memcpy                  \
        memmove                 \
        lockf                   \
        memcpy                  \
        memmove                 \
@@ -2454,6 +2490,12 @@ if test "$ac_cv_func_getpeereid" != yes; then
 #include <sys/socket.h>
 #endif])
                fi
 #include <sys/socket.h>
 #endif])
                fi
+               AC_CHECK_MEMBERS([struct stat.st_fstype, struct stat.st_vfstype])
+               if test "$ac_cv_member_struct_stat_st_fstype" = yes; then
+                       AC_COMPILE_IFELSE([struct stat st; char *ptr=st.st_fstype;],
+                               AC_DEFINE([HAVE_STRUCT_STAT_ST_FSTYPE_CHAR],1,[define to 1 if st_fstype is char *]),
+                               AC_DEFINE([HAVE_STRUCT_STAT_ST_FSTYPE_INT],1,[define to 1 if st_fstype is int]))
+               fi
        fi
        LIBSRCS="$LIBSRCS getpeereid.c"
 fi
        fi
        LIBSRCS="$LIBSRCS getpeereid.c"
 fi
@@ -2501,10 +2543,6 @@ if test "$ol_enable_syslog" = yes ; then
        AC_DEFINE(LDAP_SYSLOG,1,
                [define this to add syslog code])
 fi
        AC_DEFINE(LDAP_SYSLOG,1,
                [define this to add syslog code])
 fi
-if test "$ol_link_kbind" != no ; then
-       AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND,LDAP_VENDOR_VERSION,
-               [define to LDAP VENDOR VERSION])
-fi
 if test "$ol_enable_proctitle" != no ; then
        AC_DEFINE(LDAP_PROCTITLE,1,
                [define this for LDAP process title support])
 if test "$ol_enable_proctitle" != no ; then
        AC_DEFINE(LDAP_PROCTITLE,1,
                [define this for LDAP process title support])
@@ -2561,6 +2599,20 @@ fi
 AC_DEFINE(SLAPD_MOD_STATIC,1,[statically linked module])
 AC_DEFINE(SLAPD_MOD_DYNAMIC,2,[dynamically linked module])
 
 AC_DEFINE(SLAPD_MOD_STATIC,1,[statically linked module])
 AC_DEFINE(SLAPD_MOD_DYNAMIC,2,[dynamically linked module])
 
+dnl back-monitor goes first (well, after back-config)
+if test "$ol_enable_monitor" != no ; then
+       BUILD_SLAPD=yes
+       BUILD_MONITOR=$ol_enable_monitor
+       if test "$ol_enable_monitor" = mod ; then
+               SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-monitor"
+               MFLAG=SLAPD_MOD_DYNAMIC
+       else
+               SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-monitor"
+               MFLAG=SLAPD_MOD_STATIC
+       fi
+       AC_DEFINE_UNQUOTED(SLAPD_MONITOR,$MFLAG,[define to support cn=Monitor backend])
+fi
+
 if test "$ol_enable_bdb" != no ; then
        BUILD_SLAPD=yes
        BUILD_BDB=$ol_enable_bdb
 if test "$ol_enable_bdb" != no ; then
        BUILD_SLAPD=yes
        BUILD_BDB=$ol_enable_bdb
@@ -2627,17 +2679,17 @@ if test "$ol_enable_meta" != no ; then
        AC_DEFINE_UNQUOTED(SLAPD_META,$MFLAG,[define to support LDAP Metadirectory backend])
 fi
 
        AC_DEFINE_UNQUOTED(SLAPD_META,$MFLAG,[define to support LDAP Metadirectory backend])
 fi
 
-if test "$ol_enable_monitor" != no ; then
+if test "$ol_enable_ndb" != no ; then
        BUILD_SLAPD=yes
        BUILD_SLAPD=yes
-       BUILD_MONITOR=$ol_enable_monitor
-       if test "$ol_enable_monitor" = mod ; then
-               SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-monitor"
+       BUILD_NDB=$ol_enable_ndb
+       if test "$ol_enable_ndb" = mod ; then
+               SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-ndb"
                MFLAG=SLAPD_MOD_DYNAMIC
        else
                MFLAG=SLAPD_MOD_DYNAMIC
        else
-               SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-monitor"
+               SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-ndb"
                MFLAG=SLAPD_MOD_STATIC
        fi
                MFLAG=SLAPD_MOD_STATIC
        fi
-       AC_DEFINE_UNQUOTED(SLAPD_MONITOR,$MFLAG,[define to support cn=Monitor backend])
+       AC_DEFINE_UNQUOTED(SLAPD_NDB,$MFLAG,[define to support NDB backend])
 fi
 
 if test "$ol_enable_null" != no ; then
 fi
 
 if test "$ol_enable_null" != no ; then
@@ -2708,6 +2760,19 @@ if test "$ol_enable_shell" != no ; then
        AC_DEFINE_UNQUOTED(SLAPD_SHELL,$MFLAG,[define to support SHELL backend])
 fi
 
        AC_DEFINE_UNQUOTED(SLAPD_SHELL,$MFLAG,[define to support SHELL backend])
 fi
 
+if test "$ol_enable_sock" != no ; then
+       BUILD_SLAPD=yes
+       BUILD_SOCK=$ol_enable_sock
+       if test "$ol_enable_sock" = mod ; then
+               SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-sock"
+               MFLAG=SLAPD_MOD_DYNAMIC
+       else
+               SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-sock"
+               MFLAG=SLAPD_MOD_STATIC
+       fi
+       AC_DEFINE_UNQUOTED(SLAPD_SOCK,$MFLAG,[define to support SOCK backend])
+fi
+
 if test "$ol_link_sql" != no ; then
        BUILD_SLAPD=yes
        BUILD_SQL=$ol_enable_sql
 if test "$ol_link_sql" != no ; then
        BUILD_SLAPD=yes
        BUILD_SQL=$ol_enable_sql
@@ -2745,6 +2810,18 @@ if test "$ol_enable_auditlog" != no ; then
        AC_DEFINE_UNQUOTED(SLAPD_OVER_AUDITLOG,$MFLAG,[define for Audit Logging overlay])
 fi
 
        AC_DEFINE_UNQUOTED(SLAPD_OVER_AUDITLOG,$MFLAG,[define for Audit Logging overlay])
 fi
 
+if test "$ol_enable_collect" != no ; then
+        BUILD_COLLECT=$ol_enable_collect
+        if test "$ol_enable_collect" = mod ; then
+                MFLAG=SLAPD_MOD_DYNAMIC
+                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS collect.la"
+        else
+                MFLAG=SLAPD_MOD_STATIC
+                SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS collect.o"
+        fi
+        AC_DEFINE_UNQUOTED(SLAPD_OVER_COLLECT,$MFLAG,[define for Collect overlay])
+fi
+
 if test "$ol_enable_constraint" != no ; then
        BUILD_CONSTRAINT=$ol_enable_constraint
        if test "$ol_enable_constraint" = mod ; then
 if test "$ol_enable_constraint" != no ; then
        BUILD_CONSTRAINT=$ol_enable_constraint
        if test "$ol_enable_constraint" = mod ; then
@@ -2769,16 +2846,16 @@ if test "$ol_enable_dds" != no ; then
        AC_DEFINE_UNQUOTED(SLAPD_OVER_DDS,$MFLAG,[define for Dynamic Directory Services overlay])
 fi
 
        AC_DEFINE_UNQUOTED(SLAPD_OVER_DDS,$MFLAG,[define for Dynamic Directory Services overlay])
 fi
 
-if test "$ol_enable_denyop" != no ; then
-       BUILD_DENYOP=$ol_enable_denyop
-       if test "$ol_enable_denyop" = mod ; then
+if test "$ol_enable_deref" != no ; then
+       BUILD_DEREF=$ol_enable_deref
+       if test "$ol_enable_deref" = mod ; then
                MFLAG=SLAPD_MOD_DYNAMIC
                MFLAG=SLAPD_MOD_DYNAMIC
-               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS denyop.la"
+               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS deref.la"
        else
                MFLAG=SLAPD_MOD_STATIC
        else
                MFLAG=SLAPD_MOD_STATIC
-               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS denyop.o"
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS deref.o"
        fi
        fi
-       AC_DEFINE_UNQUOTED(SLAPD_OVER_DENYOP,$MFLAG,[define for Deny Operation overlay])
+       AC_DEFINE_UNQUOTED(SLAPD_OVER_DEREF,$MFLAG,[define for Dynamic Directory Services overlay])
 fi
 
 if test "$ol_enable_dyngroup" != no ; then
 fi
 
 if test "$ol_enable_dyngroup" != no ; then
@@ -2805,16 +2882,16 @@ if test "$ol_enable_dynlist" != no ; then
        AC_DEFINE_UNQUOTED(SLAPD_OVER_DYNLIST,$MFLAG,[define for Dynamic List overlay])
 fi
 
        AC_DEFINE_UNQUOTED(SLAPD_OVER_DYNLIST,$MFLAG,[define for Dynamic List overlay])
 fi
 
-if test "$ol_enable_lastmod" != no ; then
-       BUILD_LASTMOD=$ol_enable_lastmod
-       if test "$ol_enable_lastmod" = mod ; then
+if test "$ol_enable_memberof" != no ; then
+       BUILD_MEMBEROF=$ol_enable_memberof
+       if test "$ol_enable_memberof" = mod ; then
                MFLAG=SLAPD_MOD_DYNAMIC
                MFLAG=SLAPD_MOD_DYNAMIC
-               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS lastmod.la"
+               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS memberof.la"
        else
                MFLAG=SLAPD_MOD_STATIC
        else
                MFLAG=SLAPD_MOD_STATIC
-               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS lastmod.o"
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS memberof.o"
        fi
        fi
-       AC_DEFINE_UNQUOTED(SLAPD_OVER_LASTMOD,$MFLAG,[define for Last Modification overlay])
+       AC_DEFINE_UNQUOTED(SLAPD_OVER_MEMBEROF,$MFLAG,[define for Reverse Group Membership overlay])
 fi
 
 if test "$ol_enable_ppolicy" != no ; then
 fi
 
 if test "$ol_enable_ppolicy" != no ; then
@@ -2890,6 +2967,18 @@ if test "$ol_enable_seqmod" != no ; then
        AC_DEFINE_UNQUOTED(SLAPD_OVER_SEQMOD,$MFLAG,[define for Sequential Modify overlay])
 fi
 
        AC_DEFINE_UNQUOTED(SLAPD_OVER_SEQMOD,$MFLAG,[define for Sequential Modify overlay])
 fi
 
+if test "$ol_enable_sssvlv" != no ; then
+       BUILD_SSSVLV=$ol_enable_sssvlv
+       if test "$ol_enable_sssvlv" = mod ; then
+               MFLAG=SLAPD_MOD_DYNAMIC
+               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS sssvlv.la"
+       else
+               MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS sssvlv.o"
+       fi
+       AC_DEFINE_UNQUOTED(SLAPD_OVER_SSSVLV,$MFLAG,[define for ServerSideSort/VLV overlay])
+fi
+
 if test "$ol_enable_syncprov" != no ; then
        BUILD_SYNCPROV=$ol_enable_syncprov
        if test "$ol_enable_syncprov" = mod ; then
 if test "$ol_enable_syncprov" != no ; then
        BUILD_SYNCPROV=$ol_enable_syncprov
        if test "$ol_enable_syncprov" = mod ; then
@@ -2938,12 +3027,6 @@ if test "$ol_enable_valsort" != no ; then
        AC_DEFINE_UNQUOTED(SLAPD_OVER_VALSORT,$MFLAG,[define for Value Sorting overlay])
 fi
 
        AC_DEFINE_UNQUOTED(SLAPD_OVER_VALSORT,$MFLAG,[define for Value Sorting overlay])
 fi
 
-if test "$ol_enable_slurpd" != no &&
-   test "$ol_link_threads" != no &&
-   test $BUILD_SLAPD = yes ; then
-       BUILD_SLURPD=yes
-fi
-
 if test "$ol_enable_rewrite" != no ; then
        AC_DEFINE(ENABLE_REWRITE,1,[define to enable rewriting in back-ldap and back-meta])
        BUILD_REWRITE=yes
 if test "$ol_enable_rewrite" != no ; then
        AC_DEFINE(ENABLE_REWRITE,1,[define to enable rewriting in back-ldap and back-meta])
        BUILD_REWRITE=yes
@@ -2962,7 +3045,7 @@ dnl For Windows build, we don't want to include -dlopen flags.
 dnl They hurt more than they help.
 dnl
 
 dnl They hurt more than they help.
 dnl
 
-if test "$ac_cv_mingw32" = yes ; then
+if test "$ac_cv_mingw32" = yes -o $ol_cv_msvc = yes ; then
        PLAT=NT
        SLAPD_MODULES_LDFLAGS=
 else
        PLAT=NT
        SLAPD_MODULES_LDFLAGS=
 else
@@ -2989,37 +3072,43 @@ dnl backends
   AC_SUBST(BUILD_LDAP)
   AC_SUBST(BUILD_META)
   AC_SUBST(BUILD_MONITOR)
   AC_SUBST(BUILD_LDAP)
   AC_SUBST(BUILD_META)
   AC_SUBST(BUILD_MONITOR)
+  AC_SUBST(BUILD_NDB)
   AC_SUBST(BUILD_NULL)
   AC_SUBST(BUILD_PASSWD)
   AC_SUBST(BUILD_RELAY)
   AC_SUBST(BUILD_PERL)
   AC_SUBST(BUILD_SHELL)
   AC_SUBST(BUILD_NULL)
   AC_SUBST(BUILD_PASSWD)
   AC_SUBST(BUILD_RELAY)
   AC_SUBST(BUILD_PERL)
   AC_SUBST(BUILD_SHELL)
+  AC_SUBST(BUILD_SOCK)
   AC_SUBST(BUILD_SQL)
 dnl overlays
   AC_SUBST(BUILD_ACCESSLOG)
   AC_SUBST(BUILD_AUDITLOG)
   AC_SUBST(BUILD_SQL)
 dnl overlays
   AC_SUBST(BUILD_ACCESSLOG)
   AC_SUBST(BUILD_AUDITLOG)
+  AC_SUBST(BUILD_COLLECT)
   AC_SUBST(BUILD_CONSTRAINT)
   AC_SUBST(BUILD_DDS)
   AC_SUBST(BUILD_DENYOP)
   AC_SUBST(BUILD_CONSTRAINT)
   AC_SUBST(BUILD_DDS)
   AC_SUBST(BUILD_DENYOP)
+  AC_SUBST(BUILD_DEREF)
   AC_SUBST(BUILD_DYNGROUP)
   AC_SUBST(BUILD_DYNLIST)
   AC_SUBST(BUILD_LASTMOD)
   AC_SUBST(BUILD_DYNGROUP)
   AC_SUBST(BUILD_DYNLIST)
   AC_SUBST(BUILD_LASTMOD)
+  AC_SUBST(BUILD_MEMBEROF)
   AC_SUBST(BUILD_PPOLICY)
   AC_SUBST(BUILD_PROXYCACHE)
   AC_SUBST(BUILD_REFINT)
   AC_SUBST(BUILD_RETCODE)
   AC_SUBST(BUILD_RWM)
   AC_SUBST(BUILD_SEQMOD)
   AC_SUBST(BUILD_PPOLICY)
   AC_SUBST(BUILD_PROXYCACHE)
   AC_SUBST(BUILD_REFINT)
   AC_SUBST(BUILD_RETCODE)
   AC_SUBST(BUILD_RWM)
   AC_SUBST(BUILD_SEQMOD)
+  AC_SUBST(BUILD_SSSVLV)
   AC_SUBST(BUILD_SYNCPROV)
   AC_SUBST(BUILD_TRANSLUCENT)
   AC_SUBST(BUILD_UNIQUE)
   AC_SUBST(BUILD_VALSORT)
   AC_SUBST(BUILD_SYNCPROV)
   AC_SUBST(BUILD_TRANSLUCENT)
   AC_SUBST(BUILD_UNIQUE)
   AC_SUBST(BUILD_VALSORT)
-AC_SUBST(BUILD_SLURPD)
 
 AC_SUBST(LDAP_LIBS)
 AC_SUBST(SLAPD_LIBS)
 
 AC_SUBST(LDAP_LIBS)
 AC_SUBST(SLAPD_LIBS)
-AC_SUBST(SLURPD_LIBS)
 AC_SUBST(BDB_LIBS)
 AC_SUBST(BDB_LIBS)
+AC_SUBST(SLAPD_NDB_LIBS)
+AC_SUBST(SLAPD_NDB_INCS)
 AC_SUBST(LTHREAD_LIBS)
 AC_SUBST(LUTIL_LIBS)
 AC_SUBST(WRAP_LIBS)
 AC_SUBST(LTHREAD_LIBS)
 AC_SUBST(LUTIL_LIBS)
 AC_SUBST(WRAP_LIBS)
@@ -3090,16 +3179,17 @@ AC_CONFIG_FILES([Makefile:build/top.mk:Makefile.in:build/dir.mk]
 [servers/slapd/back-ldif/Makefile:build/top.mk:servers/slapd/back-ldif/Makefile.in:build/mod.mk]
 [servers/slapd/back-meta/Makefile:build/top.mk:servers/slapd/back-meta/Makefile.in:build/mod.mk]
 [servers/slapd/back-monitor/Makefile:build/top.mk:servers/slapd/back-monitor/Makefile.in:build/mod.mk]
 [servers/slapd/back-ldif/Makefile:build/top.mk:servers/slapd/back-ldif/Makefile.in:build/mod.mk]
 [servers/slapd/back-meta/Makefile:build/top.mk:servers/slapd/back-meta/Makefile.in:build/mod.mk]
 [servers/slapd/back-monitor/Makefile:build/top.mk:servers/slapd/back-monitor/Makefile.in:build/mod.mk]
+[servers/slapd/back-ndb/Makefile:build/top.mk:servers/slapd/back-ndb/Makefile.in:build/mod.mk]
 [servers/slapd/back-null/Makefile:build/top.mk:servers/slapd/back-null/Makefile.in:build/mod.mk]
 [servers/slapd/back-passwd/Makefile:build/top.mk:servers/slapd/back-passwd/Makefile.in:build/mod.mk]
 [servers/slapd/back-perl/Makefile:build/top.mk:servers/slapd/back-perl/Makefile.in:build/mod.mk]
 [servers/slapd/back-relay/Makefile:build/top.mk:servers/slapd/back-relay/Makefile.in:build/mod.mk]
 [servers/slapd/back-shell/Makefile:build/top.mk:servers/slapd/back-shell/Makefile.in:build/mod.mk]
 [servers/slapd/back-null/Makefile:build/top.mk:servers/slapd/back-null/Makefile.in:build/mod.mk]
 [servers/slapd/back-passwd/Makefile:build/top.mk:servers/slapd/back-passwd/Makefile.in:build/mod.mk]
 [servers/slapd/back-perl/Makefile:build/top.mk:servers/slapd/back-perl/Makefile.in:build/mod.mk]
 [servers/slapd/back-relay/Makefile:build/top.mk:servers/slapd/back-relay/Makefile.in:build/mod.mk]
 [servers/slapd/back-shell/Makefile:build/top.mk:servers/slapd/back-shell/Makefile.in:build/mod.mk]
+[servers/slapd/back-sock/Makefile:build/top.mk:servers/slapd/back-sock/Makefile.in:build/mod.mk]
 [servers/slapd/back-sql/Makefile:build/top.mk:servers/slapd/back-sql/Makefile.in:build/mod.mk]
 [servers/slapd/shell-backends/Makefile:build/top.mk:servers/slapd/shell-backends/Makefile.in:build/srv.mk]
 [servers/slapd/slapi/Makefile:build/top.mk:servers/slapd/slapi/Makefile.in:build/lib.mk:build/lib-shared.mk]
 [servers/slapd/overlays/Makefile:build/top.mk:servers/slapd/overlays/Makefile.in:build/lib.mk]
 [servers/slapd/back-sql/Makefile:build/top.mk:servers/slapd/back-sql/Makefile.in:build/mod.mk]
 [servers/slapd/shell-backends/Makefile:build/top.mk:servers/slapd/shell-backends/Makefile.in:build/srv.mk]
 [servers/slapd/slapi/Makefile:build/top.mk:servers/slapd/slapi/Makefile.in:build/lib.mk:build/lib-shared.mk]
 [servers/slapd/overlays/Makefile:build/top.mk:servers/slapd/overlays/Makefile.in:build/lib.mk]
-[servers/slurpd/Makefile:build/top.mk:servers/slurpd/Makefile.in:build/srv.mk]
 [tests/Makefile:build/top.mk:tests/Makefile.in:build/dir.mk]
 [tests/run]
 [tests/progs/Makefile:build/top.mk:tests/progs/Makefile.in:build/rules.mk])
 [tests/Makefile:build/top.mk:tests/Makefile.in:build/dir.mk]
 [tests/run]
 [tests/progs/Makefile:build/top.mk:tests/progs/Makefile.in:build/rules.mk])
@@ -3113,7 +3203,7 @@ rm -f $BACKENDSC
 cat > $BACKENDSC << ENDX
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
 cat > $BACKENDSC << ENDX
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
- * Copyright 1998-2006 The OpenLDAP Foundation.
+ * Copyright 1998-2009 The OpenLDAP Foundation.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -3164,7 +3254,7 @@ rm -f $OVERLAYSC
 cat > $OVERLAYSC << ENDX
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
 cat > $OVERLAYSC << ENDX
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
- * Copyright 1998-2006 The OpenLDAP Foundation.
+ * Copyright 1998-2009 The OpenLDAP Foundation.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -3212,7 +3302,11 @@ fi
 /* end of generated file */
 ENDX
 
 /* end of generated file */
 ENDX
 
-echo Please run \"make depend\" to build dependencies
+if test "${ol_cv_mkdep}" = no; then
+       echo '(Do not "make depend"; we do not know how to build dependencies)'
+else
+       echo 'Please run "make depend" to build dependencies'
+fi
 ]],[[
 STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS"
 STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS"
 ]],[[
 STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS"
 STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS"