]> git.sur5r.net Git - openldap/blobdiff - configure.in
Regenerated with new OL_ARG_ENABLE
[openldap] / configure.in
index 7583f847d64a5d6a04169aad3fc7dd718dee25de..5204449f85c595e2addd835b07f32758a8ae0155 100644 (file)
@@ -1,7 +1,7 @@
 dnl $OpenLDAP$
 dnl This work is part of OpenLDAP Software <http://www.openldap.org/>.
 dnl
-dnl Copyright 1998-2004 The OpenLDAP Foundation.
+dnl Copyright 1998-2005 The OpenLDAP Foundation.
 dnl All rights reserved.
 dnl
 dnl Redistribution and use in source and binary forms, with or without
@@ -13,46 +13,20 @@ dnl top-level directory of the distribution or, alternatively, at
 dnl <http://www.OpenLDAP.org/license.html>.
 dnl
 dnl ----------------------------------------------------------------
-dnl
-dnl Redefine AC_INIT_BINSH to provide RCS IDs and copyright notice
-dnl at top of generated configure script.  Prints simple copyright.
-define([AC_INIT_BINSH],
-[[#! /bin/sh
-# $]OpenLDAP[$
-# from] translit([$OpenLDAP$], $")] [
-
-# This work is part of OpenLDAP Software <http://www.openldap.org/>.
-#
-# Copyright 1998-2004 The OpenLDAP Foundation.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted only as authorized by the OpenLDAP
-# Public License.
-#
-# A copy of this license is available in the file LICENSE in the
-# top-level directory of the distribution or, alternatively, at
-# <http://www.OpenLDAP.org/license.html>.
-
-echo "Copyright 1998-2004 The OpenLDAP Foundation. All rights reserved."
-echo " Restrictions apply, see COPYRIGHT and LICENSE files."
-])dnl
-dnl ----------------------------------------------------------------
 dnl Disable config.cache!
 define([AC_CACHE_LOAD], )dnl
 define([AC_CACHE_SAVE], )dnl
 dnl ================================================================
 dnl Configure.in for OpenLDAP
-AC_INIT(build/version.sh)dnl
-
-# set unset (borrowed from autoconf 2.49c)
-if (OL_FOO=OL_FOO; unset OL_FOO) >/dev/null 2>&1; then
-  ol_unset=unset
-else
-  ol_unset=false
-fi
-# unset CDPATH
-$ol_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=:; export CDPATH; }
+AC_COPYRIGHT([[Copyright 1998-2005 The OpenLDAP Foundation. All rights reserved.
+Restrictions apply, see COPYRIGHT and LICENSE files.]])
+AC_REVISION([$OpenLDAP$])
+AC_INIT([OpenLDAP],,[http://www.openldap.org/its/])
+AC_CONFIG_SRCDIR(build/version.sh)dnl
+dnl ----------------------------------------------------------------
+dnl OpenLDAP Autoconf Macros
+builtin(include, build/openldap.m4)dnl
+dnl ================================================================
 
 AC_CONFIG_AUX_DIR(build)dnl
 
@@ -82,7 +56,7 @@ echo "Configuring ${TB}${OL_STRING}${TN} ${OPENLDAP_CVS}..."
 
 dnl Determine host platform
 dnl            we try not to use this for much
-AC_CANONICAL_SYSTEM
+AC_CANONICAL_TARGET([])
 
 AM_INIT_AUTOMAKE([$OL_PACKAGE],[$OL_VERSION], [no defines])dnl
 AC_SUBST(PACKAGE)dnl
@@ -104,12 +78,112 @@ AC_SUBST(OPENLDAP_LIBVERSION)dnl
 OPENLDAP_RELEASE_DATE="$OL_RELEASE_DATE"
 AC_SUBST(OPENLDAP_RELEASE_DATE)dnl
 
-dnl We use autoconf features new to 2.13.  Later versions like won't work.
-dnl aclocal.m4 should be built using aclocal from automake 1.4
-dnl libtool 1.4.3 should be installed.
-AC_PREREQ(2.13)dnl Required Autoconf version
+dnl We use autoconf features new to 2.59.  Later versions like won't work.
+dnl aclocal.m4 should be built using aclocal from automake 1.5
+dnl libtool 1.5 should be installed.
+AC_PREREQ(2.59)dnl Required Autoconf version
+
+AH_TOP([
+/* begin of portable.h.pre */
+/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
+ *
+ * Copyright 1998-2005 The OpenLDAP Foundation
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted only as authorized by the OpenLDAP
+ * Public License.
+ *
+ * A copy of this license is available in the file LICENSE in the
+ * top-level directory of the distribution or, alternatively, at
+ * <http://www.OpenLDAP.org/license.html>.
+ */
+
+#ifndef _LDAP_PORTABLE_H
+#define _LDAP_PORTABLE_H
+
+/* define this if needed to get reentrant functions */
+#ifndef REENTRANT
+#undef REENTRANT
+#endif
+#ifndef _REENTRANT
+#undef _REENTRANT
+#endif
 
-AC_CONFIG_HEADER(include/portable.h include/ldap_features.h include/lber_types.h)dnl
+/* define this if needed to get threadsafe functions */
+#ifndef THREADSAFE
+#undef THREADSAFE
+#endif
+#ifndef _THREADSAFE
+#undef _THREADSAFE
+#endif
+#ifndef THREAD_SAFE
+#undef THREAD_SAFE
+#endif
+#ifndef _THREAD_SAFE
+#undef _THREAD_SAFE
+#endif
+
+#ifndef _SGI_MP_SOURCE
+#undef _SGI_MP_SOURCE
+#endif
+
+/* end of portable.h.pre */
+])
+AH_BOTTOM([
+/* begin of portable.h.post */
+
+#ifdef _WIN32
+       /* don't suck in all of the win32 api */
+#      define WIN32_LEAN_AND_MEAN 1
+#endif
+
+#ifndef LDAP_NEEDS_PROTOTYPES
+/* force LDAP_P to always include prototypes */
+#define LDAP_NEEDS_PROTOTYPES 1
+#endif
+
+#ifndef LDAP_REL_ENG
+#if (LDAP_VENDOR_VERSION == 000000) && !defined(LDAP_DEVEL)
+#define LDAP_DEVEL
+#endif
+#if defined(LDAP_DEVEL) && !defined(LDAP_TEST)
+#define LDAP_TEST
+#endif
+#endif
+
+#ifdef HAVE_STDDEF_H
+#      include <stddef.h>
+#endif
+
+#ifdef HAVE_EBCDIC 
+/* ASCII/EBCDIC converting replacements for stdio funcs
+ * vsnprintf and snprintf are used too, but they are already
+ * checked by the configure script
+ */
+#define fputs ber_pvt_fputs
+#define fgets ber_pvt_fgets
+#define printf ber_pvt_printf
+#define fprintf ber_pvt_fprintf
+#define vfprintf ber_pvt_vfprintf
+#define vsprintf ber_pvt_vsprintf
+#endif
+
+#include "ac/fdset.h"
+
+#include "ldap_cdefs.h"
+#include "ldap_features.h"
+
+#include "ac/assert.h"
+#include "ac/localize.h"
+
+#endif /* _LDAP_PORTABLE_H */
+/* end of portable.h.post */
+])
+
+AC_CONFIG_HEADERS([include/portable.h:include/portable.hin])
+AC_CONFIG_HEADERS([include/ldap_features.h:include/ldap_features.hin])
+AC_CONFIG_HEADERS([include/lber_types.h:include/lber_types.hin])
 
 dnl ================================================================
 dnl Start Args
@@ -156,8 +230,6 @@ OL_ARG_ENABLE(local,[  --enable-local         enable AF_LOCAL (AF_UNIX) socket support
 
 dnl ----------------------------------------------------------------
 dnl General "with" options
-dnl OL_ARG_ENABLE(dmalloc,[  --enable-dmalloc    enable debug malloc support], no)dnl
-
 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],
@@ -182,7 +254,7 @@ dnl ----------------------------------------------------------------
 
 dnl ----------------------------------------------------------------
 dnl SLAPD OPTIONS
-AC_ARG_WITH(xxslapdoptions,[
+AC_ARG_ENABLE(xxslapdoptions,[
 SLAPD (Standalone LDAP Daemon) Options:])
 OL_ARG_ENABLE(slapd,[  --enable-slapd    enable building slapd], yes)dnl
 OL_ARG_ENABLE(aci,[    --enable-aci      enable per-object ACIs (experimental)], no)dnl
@@ -193,7 +265,7 @@ OL_ARG_ENABLE(spasswd,[    --enable-spasswd   enable (Cyrus) SASL password verif
 OL_ARG_ENABLE(modules,[    --enable-modules      enable dynamic module support], no)dnl
 dnl OL_ARG_ENABLE(multimaster,[    --enable-multimaster  enable multimaster replication], no)dnl
 ol_enable_multimaster=${ol_enable_multimaster-no}
-OL_ARG_ENABLE(rewrite,[    --enable-rewrite      enable DN rewriting in back-ldap and the rwm overlay], auto)dnl
+OL_ARG_ENABLE(rewrite,[    --enable-rewrite      enable DN rewriting in back-ldap and rwm overlay], auto)dnl
 OL_ARG_ENABLE(rlookups,[    --enable-rlookups    enable reverse lookups of client hostnames], no)dnl
 OL_ARG_ENABLE(slapi,[    --enable-slapi        enable SLAPI support (experimental)], no)dnl
 OL_ARG_ENABLE(slp,[    --enable-slp          enable SLPv2 support], no)dnl     
@@ -204,116 +276,104 @@ dnl SLAPD Backend Options
 Backends="bdb dnssrv hdb ldap ldbm meta monitor null \
        passwd perl relay shell sql"
 
-AC_ARG_WITH(xxslapbackends,[
+AC_ARG_ENABLE(xxslapbackends,[
 SLAPD Backend Options:])
 
-OL_ARG_ENABLE(backends,[    --enable-backends    enable all available backends no|yes|mod],
-       no, [no yes mod])dnl
-OL_ARG_ENABLE(bdb,[    --enable-bdb      enable Berkeley DB backend no|yes|mod],
-       yes, [no yes mod])dnl
-OL_ARG_ENABLE(dnssrv,[    --enable-dnssrv        enable dnssrv backend no|yes|mod],
-       no, [no yes mod])dnl
-OL_ARG_ENABLE(hdb,[    --enable-hdb      enable Hierarchical DB backend no|yes|mod],
-       no, [no yes mod])dnl
-OL_ARG_ENABLE(ldap,[    --enable-ldap    enable ldap backend no|yes|mod],
-       no, [no yes mod])dnl
-OL_ARG_ENABLE(ldbm,[    --enable-ldbm    enable ldbm backend no|yes|mod], no,
-       [no yes mod])dnl
-OL_ARG_WITH(ldbm_api,[      --with-ldbm-api     with LDBM API auto|berkeley|bcompat|mdbm|gdbm],
+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
+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],
+       yes, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(ldap,[    --enable-ldap    enable ldap backend],
+       no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(ldbm,[    --enable-ldbm    enable ldbm backend],
+       no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(ldbm_api,[      --enable-ldbm-api   use LDBM API],
        auto, [auto berkeley bcompat mdbm gdbm])
-OL_ARG_WITH(ldbm_type,[      --with-ldbm-type    use LDBM type auto|btree|hash],
+OL_ARG_ENABLE(ldbm_type,[      --enable-ldbm-type  use LDBM type],
        auto, [auto btree hash])
-OL_ARG_ENABLE(meta,[    --enable-meta    enable metadirectory backend no|yes|mod],
-       no, [no yes mod])dnl
-OL_ARG_ENABLE(monitor,[    --enable-monitor      enable monitor backend no|yes|mod],
-       yes, [no yes mod])dnl
-OL_ARG_ENABLE(null,[    --enable-null    enable null backend no|yes|mod],
-       no, [no yes mod])dnl
-OL_ARG_ENABLE(passwd,[    --enable-passwd        enable passwd backend no|yes|mod],
-       no, [no yes mod])dnl
-OL_ARG_ENABLE(perl,[    --enable-perl    enable perl backend no|yes|mod],
-       no, [no yes mod])dnl
-OL_ARG_ENABLE(relay,[    --enable-relay          enable relay backend no|yes|mod],
-       yes, [no yes mod])dnl
-OL_ARG_ENABLE(shell,[    --enable-shell          enable shell backend no|yes|mod],
-       no, [no yes mod])dnl
-OL_ARG_ENABLE(sql,[    --enable-sql      enable sql backend no|yes|mod],
-       no, [no yes mod])dnl
+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
+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],
+       no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(perl,[    --enable-perl    enable perl backend],
+       no, [no yes mod], ol_enable_backends)dnl
+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
+OL_ARG_ENABLE(sql,[    --enable-sql      enable sql backend],
+       no, [no yes mod], ol_enable_backends)dnl
 
 dnl ----------------------------------------------------------------
 dnl SLAPD Overlay Options
-Overlays="chain denyop dyngroup lastmod ppolicy proxycache rwm \
-       refint unique"
+Overlays="accesslog denyop dyngroup dynlist glue lastmod ppolicy proxycache \
+       refint retcode rwm syncprov translucent unique"
 
-AC_ARG_WITH(xxslapoverlays,[
+AC_ARG_ENABLE(xxslapoverlays,[
 SLAPD Overlay Options:])
 
-OL_ARG_ENABLE(overlays,[    --enable-overlays    enable all available overlays no|yes|mod],
-       no, [no yes mod])dnl
-OL_ARG_ENABLE(chain,[    --enable-chain          LDAP Chain Response no|yes|mod],
-       no, [no yes mod])
-OL_ARG_ENABLE(denyop,[    --enable-denyop        Deny Operation overlay no|yes|mod],
-       no, [no yes mod])
-OL_ARG_ENABLE(dyngroup,[    --enable-dyngroup    Dynamic Group overlay no|yes|mod],
-       no, [no yes mod])
-OL_ARG_ENABLE(lastmod,[    --enable-lastmod      Last Modification overlay no|yes|mod],
-       no, [no yes mod])
-OL_ARG_ENABLE(ppolicy,[    --enable-ppolicy      Password Policy overlay no|yes|mod],
-       no, [no yes mod])
-OL_ARG_ENABLE(proxycache,[    --enable-proxycache        Proxy Cache overlay no|yes|mod],
-       no, [no yes mod])
-OL_ARG_ENABLE(refint,[    --enable-refint        Referential Integrity overlay no|yes|mod],
-       no, [no yes mod])
-OL_ARG_ENABLE(rwm,[    --enable-rwm              Rewrite/Remap overlay no|yes|mod],
-       no, [no yes mod])
-OL_ARG_ENABLE(unique,[    --enable-unique       Attribute Uniqueness overlay no|yes|mod],
-       no, [no yes mod])
-
+OL_ARG_ENABLE(overlays,[    --enable-overlays    enable all available overlays],
+       --, [no yes mod])dnl
+OL_ARG_ENABLE(accesslog,[    --enable-accesslog          In-Directory Access Logging overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(denyop,[    --enable-denyop        Deny Operation 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)
+OL_ARG_ENABLE(glue,[    --enable-glue    Backend Glue overlay],
+       yes, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(lastmod,[    --enable-lastmod      Last Modification overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(ppolicy,[    --enable-ppolicy      Password Policy overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(proxycache,[    --enable-proxycache        Proxy Cache overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(refint,[    --enable-refint        Referential Integrity overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(retcode,[    --enable-retcode      Return Code testing overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(rwm,[    --enable-rwm              Rewrite/Remap 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],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(unique,[    --enable-unique       Attribute Uniqueness overlay],
+       no, [no yes mod], ol_enable_overlays)
 
 dnl ----------------------------------------------------------------
 dnl SLURPD OPTIONS
-AC_ARG_WITH(xxslurpdoptions,[
+AC_ARG_ENABLE(xxslurpdoptions,[
 SLURPD (Replication Daemon) Options:])
 OL_ARG_ENABLE(slurpd,[  --enable-slurpd          enable building slurpd], auto)dnl
 
 dnl ----------------------------------------------------------------
-AC_ARG_WITH(xxliboptions,[
+AC_ARG_ENABLE(xxliboptions,[
 Library Generation & Linking Options])
 AC_ENABLE_STATIC
 AC_ENABLE_SHARED
 
 dnl ----------------------------------------------------------------
 
-dnl General "enable" options
-# Activate any backends that were not explicitly enabled.
-# Note that back_bdb defaults to "yes" so this loop won't touch it.
-if test $ol_enable_backends != no ; then
-       for i in $Backends; do
-               eval "ol_tmp=\$ol_enable_$i"
-               if test $ol_tmp = no ; then
-                       eval "ol_enable_$i=$ol_enable_backends"
-               fi
-       done
-fi
-# Activate the overlays
-if test $ol_enable_overlays != no ; then
-       for i in $Overlays; do
-               eval "ol_tmp=\$ol_enable_$i"
-               if test $ol_tmp = no ; then
-                       eval "ol_enable_$i=$ol_enable_overlays"
-               fi
-       done
-fi
-
 # validate options
 if test $ol_enable_slapd = no ; then
        dnl SLAPD was specificallly disabled
        if test $ol_enable_slapi = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-slapi argument])
        fi
-       if test $ol_enable_backends != no ; then
+       case "$ol_enable_backends" in yes | mod)
                AC_MSG_WARN([slapd disabled, ignoring --enable-backends argument])
-       fi
+       esac
        for i in $Backends; do
                eval "ol_tmp=\$ol_enable_$i"
                if test $ol_tmp != no ; then
@@ -336,11 +396,11 @@ if test $ol_enable_slapd = no ; then
        if test $ol_enable_aci = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-aci argument])
        fi
-       if test $ol_with_ldbm_api != auto ; then
-               AC_MSG_WARN([slapd disabled, ignoring --with-ldbm-api argument])
+       if test $ol_enable_ldbm_api != auto ; then
+               AC_MSG_WARN([slapd disabled, ignoring --enable-ldbm-api argument])
        fi
-       if test $ol_with_ldbm_type != auto ; then
-               AC_MSG_WARN([slapd disabled, ignoring --with-ldbm-type argument])
+       if test $ol_enable_ldbm_type != auto ; then
+               AC_MSG_WARN([slapd disabled, ignoring --enable-ldbm-type argument])
        fi
        if test $ol_enable_slurpd = yes ; then
                AC_MSG_ERROR([slurpd requires slapd])
@@ -349,9 +409,9 @@ if test $ol_enable_slapd = no ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-rewrite argument])
        fi
        dnl overlays
-       if test $ol_enable_overlays != no ; then
+       case "$ol_enable_overlays" in yes | mod)
                AC_MSG_WARN([slapd disabled, ignoring --enable-overlays argument])
-       fi
+       esac
        for i in $Overlays; do
                eval "ol_tmp=\$ol_enable_$i"
                if test $ol_tmp != no ; then
@@ -363,16 +423,16 @@ if test $ol_enable_slapd = no ; then
        # force settings to no
        ol_enable_slapi=no
 
-       ol_enable_backends=no
-       ol_enable_overlays=no
+       ol_enable_backends=
+       ol_enable_overlays=
        ol_enable_modules=no
        ol_enable_multimaster=no
        ol_enable_rlookups=no
        ol_enable_aci=no
        ol_enable_wrappers=no
 
-       ol_with_ldbm_api=no
-       ol_with_ldbm_type=no
+       ol_enable_ldbm_api=no
+       ol_enable_ldbm_type=no
 
        ol_enable_slurpd=no
 
@@ -381,12 +441,12 @@ if test $ol_enable_slapd = no ; then
 elif test $ol_enable_ldbm = no ; then
        dnl SLAPD without LDBM
 
-       if test $ol_with_ldbm_api != auto ; then
-               AC_MSG_WARN([LDBM disabled, ignoring --with-ldbm-api argument])
+       if test $ol_enable_ldbm_api != auto ; then
+               AC_MSG_WARN([LDBM disabled, ignoring --enable-ldbm-api argument])
        fi
 
-       if test $ol_with_ldbm_type != auto ; then
-               AC_MSG_WARN([LDBM disabled, ignoring --with-ldbm-type argument])
+       if test $ol_enable_ldbm_type != auto ; then
+               AC_MSG_WARN([LDBM disabled, ignoring --enable-ldbm-type argument])
        fi
 
        if test $ol_enable_modules != yes -a \
@@ -411,41 +471,37 @@ elif test $ol_enable_ldbm = no ; then
                fi
        fi
 
-       ol_with_ldbm_api=no
-       ol_with_ldbm_type=no
+       ol_enable_ldbm_api=no
+       ol_enable_ldbm_type=no
 
        if test $ol_enable_bdb != no -o $ol_enable_hdb != no; then
-               ol_with_ldbm_api=berkeley
+               ol_enable_ldbm_api=berkeley
        fi
 
 else
        dnl SLAPD with LDBM
-       if test $ol_with_ldbm_api = gdbm -a \
-               $ol_with_ldbm_type = btree ; then
+       if test $ol_enable_ldbm_api = gdbm -a \
+               $ol_enable_ldbm_type = btree ; then
                AC_MSG_ERROR([GDBM only supports LDBM type hash])
        fi
-       if test $ol_with_ldbm_api = mdbm -a \
-               $ol_with_ldbm_type = btree ; then
+       if test $ol_enable_ldbm_api = mdbm -a \
+               $ol_enable_ldbm_type = btree ; then
                AC_MSG_ERROR([MDBM only supports LDBM type hash])
        fi
-       if test $ol_with_ldbm_api = ndbm -a \
-               $ol_with_ldbm_type = btree ; then
+       if test $ol_enable_ldbm_api = ndbm -a \
+               $ol_enable_ldbm_type = btree ; then
                AC_MSG_ERROR([NDBM only supports LDBM type hash])
        fi
 
        if test $ol_enable_bdb != no -o $ol_enable_hdb != no ; then
-               if test $ol_with_ldbm_api = auto ; then
-                       ol_with_ldbm_api=berkeley
-               elif test $ol_with_ldbm_api != berkeley ; then
+               if test $ol_enable_ldbm_api = auto ; then
+                       ol_enable_ldbm_api=berkeley
+               elif test $ol_enable_ldbm_api != berkeley ; then
                        AC_MSG_ERROR([LDBM API not compatible with BDB/HDB])
                fi
        fi
 fi
 
-if test $ol_enable_chain != no -a $ol_enable_ldap = no ; then
-       AC_MSG_ERROR([--enable-chain requires --enable-ldap])
-fi
-
 if test $ol_enable_meta = yes -a $ol_enable_ldap = no ; then
        AC_MSG_ERROR([--enable-meta requires --enable-ldap])
 fi
@@ -520,22 +576,28 @@ BUILD_RELAY=no
 BUILD_SHELL=no
 BUILD_SQL=no
 
-BUILD_CHAIN=no
+BUILD_ACCESSLOG=no
 BUILD_DENYOP=no
 BUILD_DYNGROUP=no
+BUILD_DYNLIST=no
+BUILD_GLUE=no
 BUILD_LASTMOD=no
 BUILD_PPOLICY=no
 BUILD_PROXYCACHE=no
 BUILD_REFINT=no
+BUILD_RETCODE=no
 BUILD_RWM=no
+BUILD_SYNCPROV=no
+BUILD_TRANSLUCENT=no
 BUILD_UNIQUE=no
 
+SLAPD_STATIC_OVERLAYS=
 SLAPD_DYNAMIC_OVERLAYS=
 
 SLAPD_MODULES_LDFLAGS=
 SLAPD_MODULES_CPPFLAGS=
 
-SLAPD_STATIC_BACKENDS=
+SLAPD_STATIC_BACKENDS=back-ldif
 SLAPD_DYNAMIC_BACKENDS=
 
 SLAPD_PERL_LDFLAGS=
@@ -658,18 +720,9 @@ fi
 AC_PROG_CPP
 
 dnl ----------------------------------------------------------------
-dnl Checks for UNIX Variants
-dnl AC_AIX
-dnl AC_ISC_POSIX
-dnl AC_MINIX
-
-dnl ----------------------------------------------------------------
-dnl Checks for system services
-AC_CYGWIN
-AC_MINGW32
+dnl Checks for file extensions
 AC_EXEEXT
 AC_OBJEXT
-
 AC_DEFINE_UNQUOTED(EXEEXT, "${EXEEXT}", [defined to be the EXE extension])
 
 dnl ----------------------------------------------------------------
@@ -678,8 +731,8 @@ AC_CHECK_LIB(be, be_app, [LIBS="$LIBS -lbe -lroot -lnet"], :, [-lroot -lnet])
 
 dnl ----------------------------------------------------------------
 dnl OpenLDAP requires STDC features
-AM_PROG_CC_STDC
-if test "X${am_cv_prog_cc_stdc}" = "Xno" ; then
+AC_PROG_CC
+if test "X${ac_cv_prog_cc_stdc}" = "Xno" ; then
        AC_MSG_ERROR([OpenLDAP requires compiler to support STDC constructs.])
 fi
 
@@ -710,6 +763,7 @@ esac
 dnl ----------------------------------------------------------------
 dnl Check for module support
 ol_link_modules=no
+WITH_MODULES_ENABLED=no
 if test $ol_enable_modules != no ; then
        AC_CHECK_HEADERS(ltdl.h)
 
@@ -726,6 +780,7 @@ if test $ol_enable_modules != no ; then
                AC_MSG_ERROR([could not locate libtool -lltdl])
        fi
        ol_link_modules=yes
+       WITH_MODULES_ENABLED=yes
 
 else
        for i in $Backends; do
@@ -754,17 +809,13 @@ fi
 
 AC_HEADER_DIRENT
 AC_HEADER_SYS_WAIT
-AM_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL
-if test $am_cv_sys_posix_termios = yes ; then
-       AC_DEFINE(HAVE_POSIX_TERMIOS,1,
-               [define if you have POSIX termios])
-fi
+AC_HEADER_TIOCGWINSZ
 
-AC_CHECK_HEADERS(      \
+AC_CHECK_HEADERS(              \
        arpa/inet.h             \
-       arpa/nameser.h  \
+       arpa/nameser.h          \
        assert.h                \
-       bits/types.h    \
+       bits/types.h            \
        conio.h                 \
        crypt.h                 \
        direct.h                \
@@ -777,13 +828,12 @@ AC_CHECK_HEADERS( \
        libutil.h               \
        limits.h                \
        locale.h                \
-       netinet/tcp.h   \
+       netinet/tcp.h           \
        malloc.h                \
        memory.h                \
        psap.h                  \
        pwd.h                   \
        process.h               \
-       resolv.h                \
        sgtty.h                 \
        shadow.h                \
        stddef.h                \
@@ -795,47 +845,62 @@ AC_CHECK_HEADERS( \
        sys/errno.h             \
        sys/ioctl.h             \
        sys/param.h             \
-       sys/resource.h  \
-       sys/select.h    \
-       sys/socket.h    \
+       sys/resource.h          \
+       sys/select.h            \
+       sys/socket.h            \
        sys/stat.h              \
-       sys/syslog.h    \
+       sys/syslog.h            \
        sys/time.h              \
        sys/types.h             \
-       sys/ucred.h             \
        sys/uio.h               \
        syslog.h                \
        termios.h               \
        unistd.h                \
+       utime.h                 \
        winsock.h               \
        winsock2.h              \
 )
 
+AC_CHECK_HEADERS( resolv.h, [], [],
+[$ac_includes_default]
+#include <netinet/in.h>
+)
+
+AC_CHECK_HEADERS(sys/ucred.h, [], [],
+[$ac_includes_default
+#ifdef HAVE_SYS_PARAM_H
+#include <sys/param.h>
+#endif
+])
 
 dnl ----------------------------------------------------------------
 dnl Checks for libraries
 
+AC_CHECK_FUNCS( sigaction sigset )
+
 dnl HP-UX requires -lV3
 dnl this is not needed on newer versions of HP-UX
-AC_CHECK_LIB(V3, sigset)
+if test $ac_cv_func_sigaction = no && test $ac_cv_func_sigaction = no ; then
+       AC_CHECK_LIB(V3, sigset)
+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
-if test "$ac_cv_header_winsock_h" = yes; then
+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_TRY_LINK([#include <winsock.h>
-                       ],
-                       [
+       AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <winsock.h>
+                       ]], [[
                        socket(0,0,0);
                        select(0,NULL,NULL,NULL,NULL);
                        closesocket(0);
                        gethostname(NULL,0);
-                       ],
-                       ol_cv_winsock=yes, ol_cv_winsock=no)
+                       ]])],[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])
@@ -884,6 +949,19 @@ dnl AC_SYS_RESTARTABLE_SYSCALLS
 
 dnl ----------------------------------------------------------------
 AC_CHECK_FUNCS( poll )
+AC_CHECK_HEADERS( poll.h )
+
+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)
+{
+       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)])
+fi
 
 dnl ----------------------------------------------------------------
 # strerror checks
@@ -927,15 +1005,13 @@ if test $have_uuid = no ; then
        AC_MSG_CHECKING(to see if -lrpcrt4 is needed for win32 UUID support)
        save_LIBS="$LIBS"
        LIBS="$LIBS -lrpcrt4"
-       AC_TRY_LINK([
+       AC_LINK_IFELSE([AC_LANG_PROGRAM([[
                int __stdcall UuidCreate(void *);
                int __stdcall UuidToStringA(void *,void **);
-               ],
-               [
+               ]], [[
                UuidCreate(0);
                UuidToStringA(0,0);
-               ],
-               need_rpcrt=yes, need_rpcrt=no)
+               ]])],[need_rpcrt=yes],[need_rpcrt=no])
        if test $need_rpcrt = yes; then
                SLAPD_LIBS="$SLAPD_LIBS -lrpcrt4"
        fi
@@ -945,51 +1021,28 @@ fi
 
 dnl ----------------------------------------------------------------
 dnl Check for resolver routines
-dnl      need to check for both res_query and __res_query
-dnl   need to check -lc, -lbind, and -lresolv
-ol_link_dnssrv=no
-AC_CHECK_FUNC(res_query,:)
-if test $ac_cv_func_res_query = no ; then 
-       AC_CHECK_FUNC(__res_query,:)
-       ac_cv_func_res_query=$ac_cv_func___res_query
-fi
-
-if test $ac_cv_func_res_query = no ; then 
-       AC_CHECK_LIB(bind, res_query)
-       ac_cv_func_res_query=$ac_cv_lib_bind_res_query
-fi
-
-if test $ac_cv_func_res_query = no ; then 
-       AC_CHECK_LIB(bind, __res_query)
-       ac_cv_func_res_query=$ac_cv_lib_bind___res_query
-fi
-
-if test $ac_cv_func_res_query = no ; then 
-       AC_CHECK_LIB(resolv, res_query)
-       ac_cv_func_res_query=$ac_cv_lib_resolv_res_query
-fi
-
-if test $ac_cv_func_res_query = no ; then 
-       AC_CHECK_LIB(resolv, __res_query)
-       ac_cv_func_res_query=$ac_cv_lib_resolv___res_query
-fi
+OL_RESOLVER_LINK
 
-if test $ac_cv_func_res_query = no ; then 
-       AC_CHECK_LIB(resolv, _res_9_query)
-       ac_cv_func_res_query=$ac_cv_lib_resolv_res_9_query
-fi
-
-if test "$ac_cv_func_res_query" = yes ; then
+ol_link_dnssrv=no
+if test "$ol_cv_lib_resolver" != no ; then
        AC_DEFINE(HAVE_RES_QUERY,1,
                [define if you have res_query()])
 
-       if test $ol_enable_dnssrv != no ; then
+       if test "$ol_enable_dnssrv" != no ; then
                ol_link_dnssrv=yes
        fi
+
+       if test "$ol_cv_lib_resolver" != yes ; then
+               LIBS="$ol_cv_lib_resolver $LIBS"
+       fi
 fi
 
-if test "$ol_enable_dnssrv" != no -a "$ol_link_dnssrv" = no ; then
-       AC_MSG_ERROR([DNSSRV requires res_query()])
+if test "$ol_enable_dnssrv" = yes -o "$ol_enable_dnssrv" = mod ; then
+       if test "$ol_link_dnssrv" = no ; then
+               AC_MSG_ERROR([DNSSRV requires res_query()])
+       fi
+else
+       ol_enable_dnssrv=no
 fi
 
 AC_CHECK_FUNCS( hstrerror )
@@ -1015,13 +1068,12 @@ elif test $ol_enable_ipv6 != no ; then
 
 
        AC_CACHE_CHECK([struct sockaddr_storage],ol_cv_struct_sockaddr_storage,[
-               AC_TRY_COMPILE([
+               AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
 #include <sys/types.h>
 #include <sys/socket.h>
-],[
+]], [[
                        struct sockaddr_storage ss;
-],                     [ol_cv_struct_sockaddr_storage=yes],
-                       [ol_cv_struct_sockaddr_storage=no])])
+]])],[ol_cv_struct_sockaddr_storage=yes],[ol_cv_struct_sockaddr_storage=no])])
 
        if test $ol_cv_inet6_addrstrlen = yes \
                -a $ol_cv_struct_sockaddr_storage = yes ; then
@@ -1148,13 +1200,13 @@ if test $ol_link_krb5 = yes -a \( $ol_with_kerberos = yes -o \
                                dnl save the flags
                                save_LIBS="$LIBS"
                                LIBS="$KRB4_LIBS $KRB5_LIBS $LIBS"
-                               AC_TRY_LINK([
+                               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)
+]])],[ol_cv_var_des_debug=yes],[ol_cv_var_des_debug=no])
                                dnl restore the LIBS
                                LIBS="$save_LIBS"
                        ])
@@ -1257,10 +1309,17 @@ if test $ol_with_tls != no ; then
                                TLS_LIBS="-lssl -lcrypto"
                        fi
                fi
+               OL_SSL_COMPAT
+               if test $ol_cv_ssl_crl_compat = no ; then
+                       ol_link_ssl=no
+                else 
+                       AC_DEFINE(HAVE_OPENSSL_CRL, 1, 
+                               [define if you have OpenSSL with CRL checking capability])
+               fi
        fi
 
 else
-       AC_WARN([TLS data protection not supported!])
+       AC_MSG_WARN([TLS data protection not supported!])
 fi
 
 WITH_TLS=no
@@ -1269,18 +1328,18 @@ if test $ol_link_tls = yes ; then
        WITH_TLS=yes
 
 elif test $ol_with_tls = auto ; then
-       AC_WARN([Could not locate TLS/SSL package])
-       AC_WARN([TLS data protection not supported!])
+       AC_MSG_WARN([Could not locate TLS/SSL package])
+       AC_MSG_WARN([TLS data protection not supported!])
 
 elif test $ol_with_tls != no ; then
-       AC_ERROR([Could not locate TLS/SSL package])
+       AC_MSG_ERROR([Could not locate TLS/SSL package])
 fi
 
 dnl ----------------------------------------------------------------
 dnl LAN Manger password checking requires DES from OpenSSL
 if test $ol_enable_lmpasswd != no; then
        if test $ol_link_tls != yes ; then
-               AC_ERROR([LAN Manager passwords require OpenSSL])
+               AC_MSG_ERROR([LAN Manager passwords require OpenSSL])
        fi
 
        AC_DEFINE(SLAPD_LMHASH, 1, [define to support LAN Manager passwords])
@@ -1370,12 +1429,12 @@ if test $ol_with_threads = auto -o $ol_with_threads = yes \
                dnl pthread_create in $LIBS
                AC_CACHE_CHECK([for pthread_create in default libraries],
                        ol_cv_pthread_create,[
-               AC_TRY_RUN(OL_PTHREAD_TEST_PROGRAM,
-                       [ol_cv_pthread_create=yes],
-                       [ol_cv_pthread_create=no],
-                       [AC_TRY_LINK(OL_PTHREAD_TEST_INCLUDES,OL_PTHREAD_TEST_FUNCTION,
+                       AC_RUN_IFELSE([OL_PTHREAD_TEST_PROGRAM],
                                [ol_cv_pthread_create=yes],
-                               [ol_cv_pthread_create=no])])])
+                               [ol_cv_pthread_create=no],
+                               [AC_TRY_LINK(OL_PTHREAD_TEST_INCLUDES,OL_PTHREAD_TEST_FUNCTION,
+                                       [ol_cv_pthread_create=yes],
+                                       [ol_cv_pthread_create=no])])])
 
                if test $ol_cv_pthread_create != no ; then
                        ol_link_threads=posix
@@ -1451,15 +1510,12 @@ dnl                     [ol_cv_pthread_lpthread_lexc])
                        AC_CACHE_CHECK([for pthread_detach with <pthread.h>],
                                [ol_cv_func_pthread_detach], [
                                dnl save the flags
-                               AC_TRY_LINK([
+                               AC_LINK_IFELSE([AC_LANG_PROGRAM([[
 #include <pthread.h>
 #ifndef NULL
 #define NULL (void*)0
 #endif
-],
-                                       [pthread_detach(NULL);],
-                                       [ol_cv_func_pthread_detach=yes],
-                                       [ol_cv_func_pthread_detach=no])
+]], [[pthread_detach(NULL);]])],[ol_cv_func_pthread_detach=yes],[ol_cv_func_pthread_detach=no])
                        ])
 
                        if test $ol_cv_func_pthread_detach = no ; then
@@ -1486,7 +1542,7 @@ dnl                       [ol_cv_pthread_lpthread_lexc])
 
                        AC_CACHE_CHECK([if pthread_create() works],
                                ol_cv_pthread_create_works,[
-                       AC_TRY_RUN(OL_PTHREAD_TEST_PROGRAM,
+                       AC_RUN_IFELSE([OL_PTHREAD_TEST_PROGRAM],
                                [ol_cv_pthread_create_works=yes],
                                [ol_cv_pthread_create_works=no],
                                [dnl assume yes
@@ -1500,7 +1556,7 @@ dnl                       [ol_cv_pthread_lpthread_lexc])
                        if test $ol_with_yielding_select = auto ; then
                                AC_CACHE_CHECK([if select yields when using pthreads],
                                        ol_cv_pthread_select_yields,[
-                               AC_TRY_RUN([
+                               AC_RUN_IFELSE([AC_LANG_SOURCE([[
 #include <sys/types.h>
 #include <sys/time.h>
 #include <unistd.h>
@@ -1573,10 +1629,7 @@ int main(argc, argv)
 #endif
 
        exit(2);
-}],
-                               [ol_cv_pthread_select_yields=no],
-                               [ol_cv_pthread_select_yields=yes],
-                               [ol_cv_pthread_select_yields=cross])])
+}]])],[ol_cv_pthread_select_yields=no],[ol_cv_pthread_select_yields=yes],[ol_cv_pthread_select_yields=cross])])
 
                                if test $ol_cv_pthread_select_yields = cross ; then
                                        AC_MSG_ERROR([crossing compiling: use --with-yielding_select=yes|no|manual])
@@ -1619,9 +1672,9 @@ if test $ol_with_threads = auto -o $ol_with_threads = yes \
                                dnl save the flags
                                save_LIBS="$LIBS"
                                LIBS="-all_load $LIBS"
-                               AC_TRY_LINK([#include <mach/cthreads.h>],[
+                               AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <mach/cthreads.h>]], [[
                                        cthread_fork((void *)0, (void *)0);
-                                       ], ol_cv_cthread_all_load=yes, ol_cv_cthread_all_load=no)
+                                       ]])],[ol_cv_cthread_all_load=yes],[ol_cv_cthread_all_load=no])
                                dnl restore the LIBS
                                LIBS="$save_LIBS"
                        ])
@@ -1765,18 +1818,14 @@ if test $ol_link_threads != no -a $ol_link_threads != nt ; then
        dnl If it does, we must link with thread support.
        AC_CACHE_CHECK([for thread specific errno],
                [ol_cv_errno_thread_specific], [
-               AC_TRY_LINK([#include <errno.h>], [errno = 0;],
-                       [ol_cv_errno_thread_specific=yes],
-                       [ol_cv_errno_thread_specific=no])
+               AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <errno.h>]], [[errno = 0;]])],[ol_cv_errno_thread_specific=yes],[ol_cv_errno_thread_specific=no])
        ])
 
        dnl The h_errno declaration may dependent upon _REENTRANT.
        dnl If it does, we must link with thread support.
        AC_CACHE_CHECK([for thread specific h_errno],
                [ol_cv_h_errno_thread_specific], [
-               AC_TRY_LINK([#include <netdb.h>], [h_errno = 0;],
-                       [ol_cv_h_errno_thread_specific=yes],
-                       [ol_cv_h_errno_thread_specific=no])
+               AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <netdb.h>]], [[h_errno = 0;]])],[ol_cv_h_errno_thread_specific=yes],[ol_cv_h_errno_thread_specific=no])
        ])
 
        if test $ol_cv_errno_thread_specific != yes \
@@ -1852,7 +1901,8 @@ if test $ol_link_threads = no ; then
 fi
 
 if test $ol_link_threads != no ; then
-       AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE,1)
+       AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE,1,
+               [define to 1 if library is thread safe])
 fi
 
 dnl ----------------------------------------------------------------
@@ -1884,11 +1934,11 @@ fi
 dnl ----------------------------------------------------------------
 ol_link_ldbm=no 
 
-if test $ol_with_ldbm_api = auto \
-       -o $ol_with_ldbm_api = berkeley \
-       -o $ol_with_ldbm_api = bcompat ; then
+if test $ol_enable_ldbm_api = auto \
+       -o $ol_enable_ldbm_api = berkeley \
+       -o $ol_enable_ldbm_api = bcompat ; then
 
-       if test $ol_with_ldbm_api = bcompat; then \
+       if test $ol_enable_ldbm_api = bcompat; then \
                OL_BERKELEY_COMPAT_DB
        else
                OL_BERKELEY_DB
@@ -1899,9 +1949,9 @@ if test $ol_with_ldbm_api = auto \
                        [define this if Berkeley DB is available])
 
                ol_link_ldbm=berkeley
-               ol_with_ldbm_api=berkeley
+               ol_enable_ldbm_api=berkeley
 
-               if test $ol_with_ldbm_type = hash ; then
+               if test $ol_enable_ldbm_type = hash ; then
                        AC_DEFINE(LDBM_USE_DBHASH,1,
                                [define this to use DBHASH w/ LDBM backend])
                else
@@ -1929,29 +1979,29 @@ if test $ol_enable_bdb != no -o $ol_enable_hdb != no; then
        fi
 fi
 
-if test $ol_link_ldbm = no -a $ol_with_ldbm_type = btree ; then
+if test $ol_link_ldbm = no -a $ol_enable_ldbm_type = btree ; then
        AC_MSG_WARN([Could not find LDBM with BTREE support])
-       ol_with_ldbm_api=none
+       ol_enable_ldbm_api=none
 fi
 
-if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = mdbm ; then
+if test $ol_enable_ldbm_api = auto -o $ol_enable_ldbm_api = mdbm ; then
        OL_MDBM
 
        if test $ol_cv_mdbm = yes ; then
                ol_link_ldbm=mdbm
-               ol_with_ldbm_api=mdbm
+               ol_enable_ldbm_api=mdbm
                if test $ol_cv_lib_mdbm != yes ; then
                        LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_mdbm"
                fi
        fi
 fi
 
-if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = gdbm ; then
+if test $ol_enable_ldbm_api = auto -o $ol_enable_ldbm_api = gdbm ; then
        OL_GDBM
 
        if test $ol_cv_gdbm = yes ; then
                ol_link_ldbm=gdbm
-               ol_with_ldbm_api=gdbm
+               ol_enable_ldbm_api=gdbm
 
                if test $ol_cv_lib_gdbm != yes ; then
                        LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_gdbm"
@@ -1959,12 +2009,12 @@ if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = gdbm ; then
        fi
 fi
 
-if test $ol_with_ldbm_api = ndbm ; then
+if test $ol_enable_ldbm_api = ndbm ; then
        OL_NDBM
 
        if test $ol_cv_ndbm = yes ; then
                ol_link_ldbm=ndbm
-               ol_with_ldbm_api=ndbm
+               ol_enable_ldbm_api=ndbm
 
                if test $ol_cv_lib_ndbm != yes ; then
                        LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_ndbm"
@@ -2000,15 +2050,15 @@ if test $ol_enable_wrappers != no ; then
                AC_MSG_CHECKING([for TCP wrappers library])
                save_LIBS="$LIBS"
                LIBS="$LIBS -lwrap"
-               AC_TRY_LINK([
+               AC_LINK_IFELSE([AC_LANG_PROGRAM([[
 #include <tcpd.h>
 int allow_severity = 0;
 int deny_severity  = 0;
 
 struct request_info *req;
-               ],[
+               ]], [[
 hosts_access(req)
-               ],[AC_MSG_RESULT([-lwrap])
+               ]])],[AC_MSG_RESULT([-lwrap])
                have_wrappers=yes
                LIBS="$save_LIBS"],[
                dnl try with -lnsl
@@ -2026,8 +2076,7 @@ hosts_access(req)
                LIBS="$save_LIBS -lnsl"],[
                AC_MSG_RESULT(no)
                have_wrappers=no
-               LIBS=$save_LIBS])],[
-               have_wrappers=no])],[have_wrappers=no])
+               LIBS=$save_LIBS])])],[have_wrappers=no])
 
        if test $have_wrappers = yes ; then
                AC_DEFINE(HAVE_TCPD,1, [define if you have -lwrap])
@@ -2049,13 +2098,6 @@ if test $ol_enable_syslog != no ; then
        ol_enable_syslog=$ac_cv_func_openlog
 fi
 
-dnl ----------------------------------------------------------------
-dnl dmalloc support (deprecated in favor of -DCSRIMALLOC support)
-dnl if test $ol_enable_dmalloc != no ; then
-dnl    AC_CHECK_HEADERS(dmalloc.h)
-dnl    AC_CHECK_LIB(dmalloc, dmalloc_shutdown)
-dnl fi
-
 dnl ----------------------------------------------------------------
 dnl SQL
 ol_link_sql=no
@@ -2064,6 +2106,9 @@ if test $ol_enable_sql != no ; then
                AC_MSG_ERROR([could not locate SQL headers])
        ])
 
+       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"
@@ -2074,6 +2119,8 @@ if test $ol_enable_sql != no ; then
                fi
        fi
 
+       LIBS="$sql_LIBS"
+
        if test $ol_link_sql != no ; then
                SLAPD_SQL_LIBS="$ol_link_sql"
 
@@ -2211,7 +2258,7 @@ if test $ol_enable_proctitle != no ; then
                        [have_setproctitle=yes
                        LUTIL_LIBS="$LUTIL_LIBS -lutil"],
                        [have_setproctitle=no
-                       LIBOBJS="$LIBOBJS setproctitle.o"
+                       AC_LIBOBJ(setproctitle)
                        LIBSRCS="$LIBSRCS setproctitle.c"])])
 
        if test $have_setproctitle = yes ; then
@@ -2333,36 +2380,43 @@ fi
 dnl ----------------------------------------------------------------
 dnl Checks for typedefs, structures, and compiler characteristics.
 
-dnl Checks for long long
-AC_CACHE_CHECK([long long], ol_cv_type_long_long, [
-       AC_TRY_COMPILE([], [long long x;],
-               [ol_cv_type_long_long=yes],
-               [ol_cv_type_long_long=no])])
-if test $ol_cv_type_long_long = yes; then
-       AC_DEFINE(HAVE_LONG_LONG, 1, [define if you have 'long long'])
-fi
+AC_CHECK_TYPE(mode_t, int)
+AC_CHECK_TYPE(off_t, long)
+AC_CHECK_TYPE(pid_t, int)
+AC_CHECK_TYPE(ssize_t, [signed int])
+AC_CHECK_TYPE(caddr_t, [char *])
+AC_CHECK_TYPE(size_t, unsigned)
+
+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
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+       ])
 
-AC_TYPE_MODE_T
-AC_TYPE_OFF_T
-AC_TYPE_PID_T
-AM_TYPE_PTRDIFF_T
 AC_TYPE_SIGNAL
-AC_TYPE_SIZE_T
 
-AC_CHECK_TYPE(ssize_t, [signed int])
-AC_CHECK_TYPE(caddr_t, [char *])
+AC_CHECK_TYPE([sig_atomic_t],,
+       [AC_DEFINE_UNQUOTED([sig_atomic_t], [int],
+               [Define to `int' if <signal.h> does not define.])],
+       [$ac_includes_default
+#include <signal.h>
+       ])
 
-OL_TYPE_SOCKLEN_T
-AC_STRUCT_ST_BLKSIZE
-AC_HEADER_TIME
-AC_STRUCT_TM
 AC_TYPE_UID_T
-OL_TYPE_SIG_ATOMIC_T
 
-dnl AC_TYPE_GETGROUPS
-
-OL_STRUCT_PASSWD_PW_GECOS
-OL_STRUCT_PASSWD_PW_PASSWD
+AC_HEADER_TIME
+AC_STRUCT_TM
+AC_CHECK_MEMBERS([struct stat.st_blksize])
+AC_CHECK_MEMBERS([struct passwd.pw_gecos],,,[$ac_includes_default
+#include <pwd.h>])
+AC_CHECK_MEMBERS([struct passwd.pw_passwd],,,[$ac_includes_default
+#include <pwd.h>])
 
 OL_C_UPPER_LOWER
 AC_C_CONST
@@ -2375,29 +2429,33 @@ else
        AC_C_BIGENDIAN
 fi
 
-AC_COMPILE_CHECK_SIZEOF(short) 
-AC_COMPILE_CHECK_SIZEOF(int) 
-AC_COMPILE_CHECK_SIZEOF(long)
-AC_COMPILE_CHECK_SIZEOF(wchar_t)
+AC_CHECK_SIZEOF(short) 
+AC_CHECK_SIZEOF(int) 
+AC_CHECK_SIZEOF(long)
+AC_CHECK_SIZEOF(wchar_t)
 
 if test "$ac_cv_sizeof_int" -lt 4 ; then
        AC_MSG_WARN([OpenLDAP requires 'int' to be 32 bits or greater.])
 
-       AC_DEFINE(LBER_INT_T,long)
+       AC_DEFINE(LBER_INT_T,long,[define to 32-bit or greater integer type])
 else
-       AC_DEFINE(LBER_INT_T,int)
+       AC_DEFINE(LBER_INT_T,int,[define to 32-bit or greater integer type])
 fi
 
-AC_DEFINE(LBER_LEN_T,long)
-AC_DEFINE(LBER_SOCKET_T,int)
-AC_DEFINE(LBER_TAG_T,long)
+AC_DEFINE(LBER_LEN_T,long,[define to large integer type])
+AC_DEFINE(LBER_SOCKET_T,int,[define to socket descriptor type])
+AC_DEFINE(LBER_TAG_T,long,[define to large integer type])
 
 dnl ----------------------------------------------------------------
 dnl Checks for library functions.
 AC_FUNC_MEMCMP
-dnl AM_FUNC_MKTIME dnl checks for sys/time.h and unistd.h
+
+if test $ac_cv_func_memcmp_working = no ; then
+       AC_DEFINE(NEED_MEMCMP_REPLACEMENT,1,
+               [define if memcmp is not 8-bit clean or is otherwise broken])
+fi
+
 AC_FUNC_STRFTIME
-dnl AM_FUNC_STRTOD
 
 OL_FUNC_INET_ATON
 
@@ -2453,9 +2511,7 @@ AC_CHECK_FUNCS(           \
        setsid                  \
        setuid                  \
        seteuid                 \
-       sigaction               \
        signal                  \
-       sigset                  \
        strdup                  \
        strpbrk                 \
        strrchr                 \
@@ -2484,7 +2540,18 @@ if test "$ac_cv_func_getopt" != yes; then
        LIBSRCS="$LIBSRCS getopt.c"
 fi
 if test "$ac_cv_func_getpeereid" != yes; then
-       OL_MSGHDR_MSG_ACCRIGHTS
+       AC_CHECK_MEMBERS([struct msghdr.msg_accrightslen],,,
+               [$ac_includes_default
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif])
+       if test "$ac_cv_member_struct_msghdr_msg_accrightslen" != yes; then
+               AC_CHECK_MEMBERS([struct msghdr.msg_control],,,
+                       [$ac_includes_default
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif])
+       fi
        LIBSRCS="$LIBSRCS getpeereid.c"
 fi
 if test "$ac_cv_func_snprintf" != yes -o "$ac_cv_func_vsnprintf" != yes; then
@@ -2526,14 +2593,16 @@ if test "$ol_enable_syslog" = yes ; then
                [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)
+       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])
 fi
 if test "$ol_enable_referrals" != no ; then
-       AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS,LDAP_VENDOR_VERSION)
+       AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS,LDAP_VENDOR_VERSION,
+               [define to LDAP VENDOR VERSION])
 fi
 if test "$ol_enable_local" != no; then
        AC_DEFINE(LDAP_PF_LOCAL,1,[define to support PF_LOCAL])
@@ -2742,15 +2811,16 @@ if test "$ol_link_sql" != no ; then
        AC_DEFINE_UNQUOTED(SLAPD_SQL,$MFLAG,[define to support SQL backend])
 fi
 
-if test "$ol_enable_chain" != no ; then
-       BUILD_CHAIN=$ol_enable_chain
-       if test "$ol_enable_chain" = mod ; then
+if test "$ol_enable_accesslog" != no ; then
+       BUILD_ACCESSLOG=$ol_enable_accesslog
+       if test "$ol_enable_accesslog" = mod ; then
                MFLAG=SLAPD_MOD_DYNAMIC
-               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS chain.la"
+               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS accesslog.la"
        else
                MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS accesslog.o"
        fi
-       AC_DEFINE_UNQUOTED(SLAPD_OVER_CHAIN,$MFLAG,[define for Dynamic Group overlay])
+       AC_DEFINE_UNQUOTED(SLAPD_OVER_ACCESSLOG,$MFLAG,[define for In-Directory Access Logging overlay])
 fi
 
 if test "$ol_enable_denyop" != no ; then
@@ -2760,6 +2830,7 @@ if test "$ol_enable_denyop" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS denyop.la"
        else
                MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS denyop.o"
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_DENYOP,$MFLAG,[define for Dynamic Group overlay])
 fi
@@ -2771,10 +2842,35 @@ if test "$ol_enable_dyngroup" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS dyngroup.la"
        else
                MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS dyngroup.o"
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_DYNGROUP,$MFLAG,[define for Dynamic Group overlay])
 fi
 
+if test "$ol_enable_dynlist" != no ; then
+       BUILD_DYNLIST=$ol_enable_dynlist
+       if test "$ol_enable_dynlist" = mod ; then
+               MFLAG=SLAPD_MOD_DYNAMIC
+               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS dynlist.la"
+       else
+               MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS dynlist.o"
+       fi
+       AC_DEFINE_UNQUOTED(SLAPD_OVER_DYNLIST,$MFLAG,[define for Dynamic List overlay])
+fi
+
+if test "$ol_enable_glue" != no ; then
+       BUILD_GLUE=$ol_enable_glue
+       if test "$ol_enable_glue" = mod ; then
+               MFLAG=SLAPD_MOD_DYNAMIC
+               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS glue.la"
+       else
+               MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS glue.o"
+       fi
+       AC_DEFINE_UNQUOTED(SLAPD_OVER_GLUE,$MFLAG,[define for Backend Glue overlay])
+fi
+
 if test "$ol_enable_lastmod" != no ; then
        BUILD_LASTMOD=$ol_enable_lastmod
        if test "$ol_enable_lastmod" = mod ; then
@@ -2782,6 +2878,7 @@ if test "$ol_enable_lastmod" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS lastmod.la"
        else
                MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS lastmod.o"
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_LASTMOD,$MFLAG,[define for Last Modification overlay])
 fi
@@ -2793,6 +2890,7 @@ if test "$ol_enable_ppolicy" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS ppolicy.la"
        else
                MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS ppolicy.o"
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_PPOLICY,$MFLAG,[define for Password Policy overlay])
 fi
@@ -2804,6 +2902,7 @@ if test "$ol_enable_proxycache" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS pcache.la"
        else
                MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS pcache.o"
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_PROXYCACHE,$MFLAG,[define for Proxy Cache overlay])
 fi
@@ -2815,10 +2914,23 @@ if test "$ol_enable_refint" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS refint.la"
        else
                MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS refint.o"
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_REFINT,$MFLAG,[define for Referential Integrity overlay])
 fi
 
+if test "$ol_enable_retcode" != no ; then
+       BUILD_RETCODE=$ol_enable_retcode
+       if test "$ol_enable_retcode" = mod ; then
+               MFLAG=SLAPD_MOD_DYNAMIC
+               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS retcode.la"
+       else
+               MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS retcode.o"
+       fi
+       AC_DEFINE_UNQUOTED(SLAPD_OVER_RETCODE,$MFLAG,[define for Referential Integrity overlay])
+fi
+
 if test "$ol_enable_rwm" != no ; then
        BUILD_REWRITE=yes
        BUILD_RWM=$ol_enable_rwm
@@ -2827,10 +2939,35 @@ if test "$ol_enable_rwm" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS rwm.la"
        else
                MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS rwm_x.o"
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_RWM,$MFLAG,[define for Rewrite/Remap overlay])
 fi
 
+if test "$ol_enable_syncprov" != no ; then
+       BUILD_SYNCPROV=$ol_enable_syncprov
+       if test "$ol_enable_syncprov" = mod ; then
+               MFLAG=SLAPD_MOD_DYNAMIC
+               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS syncprov.la"
+       else
+               MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS syncprov.o"
+       fi
+       AC_DEFINE_UNQUOTED(SLAPD_OVER_SYNCPROV,$MFLAG,[define for Syncrepl Provider overlay])
+fi
+
+if test "$ol_enable_translucent" != no ; then
+       BUILD_TRANSLUCENT=$ol_enable_translucent
+       if test "$ol_enable_translucent" = mod ; then
+               MFLAG=SLAPD_MOD_DYNAMIC
+               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS translucent.la"
+       else
+               MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS translucent.o"
+       fi
+       AC_DEFINE_UNQUOTED(SLAPD_OVER_TRANSLUCENT,$MFLAG,[define for Translucent Proxy overlay])
+fi
+
 if test "$ol_enable_unique" != no ; then
        BUILD_UNIQUE=$ol_enable_unique
        if test "$ol_enable_unique" = mod ; then
@@ -2838,6 +2975,7 @@ if test "$ol_enable_unique" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS unique.la"
        else
                MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS unique.o"
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_UNIQUE,$MFLAG,[define for Attribute Uniqueness overlay])
 fi
@@ -2872,16 +3010,11 @@ else
        PLAT=UNIX
 fi
 
-if test -z "$SLAPD_STATIC_BACKENDS"; then
-       SLAPD_NO_STATIC='#'
-else
-       SLAPD_NO_STATIC=
-fi
-
 AC_SUBST(LIBSRCS)
 AC_SUBST(PLAT)
 AC_SUBST(WITH_SASL)
 AC_SUBST(WITH_TLS)
+AC_SUBST(WITH_MODULES_ENABLED)
 AC_SUBST(BUILD_LIBS_DYNAMIC)
 
 AC_SUBST(BUILD_SLAPD)
@@ -2903,14 +3036,19 @@ dnl backends
   AC_SUBST(BUILD_SHELL)
   AC_SUBST(BUILD_SQL)
 dnl overlays
-  AC_SUBST(BUILD_CHAIN)
+  AC_SUBST(BUILD_ACCESSLOG)
   AC_SUBST(BUILD_DENYOP)
   AC_SUBST(BUILD_DYNGROUP)
+  AC_SUBST(BUILD_DYNLIST)
+  AC_SUBST(BUILD_GLUE)
   AC_SUBST(BUILD_LASTMOD)
   AC_SUBST(BUILD_PPOLICY)
   AC_SUBST(BUILD_PROXYCACHE)
   AC_SUBST(BUILD_REFINT)
+  AC_SUBST(BUILD_RETCODE)
   AC_SUBST(BUILD_RWM)
+  AC_SUBST(BUILD_SYNCPROV)
+  AC_SUBST(BUILD_TRANSLUCENT)
   AC_SUBST(BUILD_UNIQUE)
 AC_SUBST(BUILD_SLURPD)
 
@@ -2928,6 +3066,7 @@ AC_SUBST(SLAPD_MODULES_LDFLAGS)
 AC_SUBST(SLAPD_NO_STATIC)
 AC_SUBST(SLAPD_STATIC_BACKENDS)
 AC_SUBST(SLAPD_DYNAMIC_BACKENDS)
+AC_SUBST(SLAPD_STATIC_OVERLAYS)
 AC_SUBST(SLAPD_DYNAMIC_OVERLAYS)
 
 AC_SUBST(PERL_CPPFLAGS)
@@ -2960,48 +3099,102 @@ dnl ----------------------------------------------------------------
 dnl final output
 dnl
 
-AC_OUTPUT( \
-Makefile:build/top.mk:Makefile.in:build/dir.mk \
-doc/Makefile:build/top.mk:doc/Makefile.in:build/dir.mk \
-doc/man/Makefile:build/top.mk:doc/man/Makefile.in:build/dir.mk \
-doc/man/man1/Makefile:build/top.mk:doc/man/man1/Makefile.in:build/man.mk \
-doc/man/man3/Makefile:build/top.mk:doc/man/man3/Makefile.in:build/man.mk \
-doc/man/man5/Makefile:build/top.mk:doc/man/man5/Makefile.in:build/man.mk \
-doc/man/man8/Makefile:build/top.mk:doc/man/man8/Makefile.in:build/man.mk \
-clients/Makefile:build/top.mk:clients/Makefile.in:build/dir.mk \
-clients/tools/Makefile:build/top.mk:clients/tools/Makefile.in:build/rules.mk \
-include/Makefile:build/top.mk:include/Makefile.in \
-libraries/Makefile:build/top.mk:libraries/Makefile.in:build/dir.mk     \
-libraries/liblber/Makefile:build/top.mk:libraries/liblber/Makefile.in:build/lib.mk:build/lib-shared.mk \
-libraries/libldap/Makefile:build/top.mk:libraries/libldap/Makefile.in:build/lib.mk:build/lib-shared.mk \
-libraries/libldap_r/Makefile:build/top.mk:libraries/libldap_r/Makefile.in:build/lib.mk:build/lib-shared.mk     \
-libraries/liblunicode/Makefile:build/top.mk:libraries/liblunicode/Makefile.in:build/lib.mk:build/lib-static.mk \
-libraries/liblutil/Makefile:build/top.mk:libraries/liblutil/Makefile.in:build/lib.mk:build/lib-static.mk       \
-libraries/librewrite/Makefile:build/top.mk:libraries/librewrite/Makefile.in:build/lib.mk:build/lib-static.mk \
-servers/Makefile:build/top.mk:servers/Makefile.in:build/dir.mk \
-servers/slapd/Makefile:build/top.mk:servers/slapd/Makefile.in:build/srv.mk \
-servers/slapd/back-bdb/Makefile:build/top.mk:servers/slapd/back-bdb/Makefile.in:build/mod.mk \
-servers/slapd/back-dnssrv/Makefile:build/top.mk:servers/slapd/back-dnssrv/Makefile.in:build/mod.mk \
-servers/slapd/back-hdb/Makefile:build/top.mk:servers/slapd/back-hdb/Makefile.in:build/mod.mk \
-servers/slapd/back-ldap/Makefile:build/top.mk:servers/slapd/back-ldap/Makefile.in:build/mod.mk \
-servers/slapd/back-ldbm/Makefile:build/top.mk:servers/slapd/back-ldbm/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-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-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 \
-,[
+AC_CONFIG_FILES([Makefile:build/top.mk:Makefile.in:build/dir.mk]
+[doc/Makefile:build/top.mk:doc/Makefile.in:build/dir.mk]
+[doc/man/Makefile:build/top.mk:doc/man/Makefile.in:build/dir.mk]
+[doc/man/man1/Makefile:build/top.mk:doc/man/man1/Makefile.in:build/man.mk]
+[doc/man/man3/Makefile:build/top.mk:doc/man/man3/Makefile.in:build/man.mk]
+[doc/man/man5/Makefile:build/top.mk:doc/man/man5/Makefile.in:build/man.mk]
+[doc/man/man8/Makefile:build/top.mk:doc/man/man8/Makefile.in:build/man.mk]
+[clients/Makefile:build/top.mk:clients/Makefile.in:build/dir.mk]
+[clients/tools/Makefile:build/top.mk:clients/tools/Makefile.in:build/rules.mk]
+[include/Makefile:build/top.mk:include/Makefile.in]
+[libraries/Makefile:build/top.mk:libraries/Makefile.in:build/dir.mk]
+[libraries/liblber/Makefile:build/top.mk:libraries/liblber/Makefile.in:build/lib.mk:build/lib-shared.mk]
+[libraries/libldap/Makefile:build/top.mk:libraries/libldap/Makefile.in:build/lib.mk:build/lib-shared.mk]
+[libraries/libldap_r/Makefile:build/top.mk:libraries/libldap_r/Makefile.in:build/lib.mk:build/lib-shared.mk]
+[libraries/liblunicode/Makefile:build/top.mk:libraries/liblunicode/Makefile.in:build/lib.mk:build/lib-static.mk]
+[libraries/liblutil/Makefile:build/top.mk:libraries/liblutil/Makefile.in:build/lib.mk:build/lib-static.mk]
+[libraries/librewrite/Makefile:build/top.mk:libraries/librewrite/Makefile.in:build/lib.mk:build/lib-shared.mk]
+[servers/Makefile:build/top.mk:servers/Makefile.in:build/dir.mk]
+[servers/slapd/Makefile:build/top.mk:servers/slapd/Makefile.in:build/srv.mk]
+[servers/slapd/back-bdb/Makefile:build/top.mk:servers/slapd/back-bdb/Makefile.in:build/mod.mk]
+[servers/slapd/back-dnssrv/Makefile:build/top.mk:servers/slapd/back-dnssrv/Makefile.in:build/mod.mk]
+[servers/slapd/back-hdb/Makefile:build/top.mk:servers/slapd/back-hdb/Makefile.in:build/mod.mk]
+[servers/slapd/back-ldap/Makefile:build/top.mk:servers/slapd/back-ldap/Makefile.in:build/mod.mk]
+[servers/slapd/back-ldbm/Makefile:build/top.mk:servers/slapd/back-ldbm/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-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-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])
+
+AC_CONFIG_COMMANDS([default],[[
 chmod +x tests/run
 date > stamp-h
+BACKENDSC="servers/slapd/backends.c"
+echo "Making $BACKENDSC"
+rm -f $BACKENDSC
+cat > $BACKENDSC << ENDX
+/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
+ *
+ * Copyright 1998-2005 The OpenLDAP Foundation.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted only as authorized by the OpenLDAP
+ * Public License.
+ *
+ * A copy of this license is available in the file LICENSE in the
+ * top-level directory of the distribution or, alternatively, at
+ * <http://www.OpenLDAP.org/license.html>.
+ */
+/* This file is automatically generated by configure; please do not edit. */
+
+#include "portable.h"
+#include "slap.h"
+
+ENDX
+if test "${STATIC_BACKENDS}"; then
+       for b in config ${STATIC_BACKENDS}; do
+               bb=`echo "${b}" | sed -e 's/back-//'`
+               cat >> $BACKENDSC << ENDX
+extern BI_init ${bb}_back_initialize;
+ENDX
+       done
+
+       cat >> $BACKENDSC << ENDX
+
+BackendInfo slap_binfo[] = {
+ENDX
+
+       for b in config ${STATIC_BACKENDS}; do
+               bb=`echo "${b}" | sed -e 's/back-//'`
+               echo "    Add ${bb} ..."
+               cat >> $BACKENDSC << ENDX
+       { "${bb}", ${bb}_back_initialize },
+ENDX
+       done
+
+       cat >> $BACKENDSC << ENDX
+       { NULL, NULL },
+};
+
+/* end of generated file */
+ENDX
+fi
+
 echo Please run \"make depend\" to build dependencies
-])
+]],[[STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS"]])
+AC_OUTPUT