]> git.sur5r.net Git - openldap/blobdiff - configure.in
Add valsort overlay
[openldap] / configure.in
index d9b2f865d5bce23593176d09da46bc49308f9e90..5bb273375cf646eaddfa45dbbcc703f4ca0f19e2 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-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
 dnl All rights reserved.
 dnl
 dnl Redistribution and use in source and binary forms, with or without
@@ -23,7 +23,7 @@ define([AC_INIT_BINSH],
 
 # This work is part of OpenLDAP Software <http://www.openldap.org/>.
 #
 
 # This work is part of OpenLDAP Software <http://www.openldap.org/>.
 #
-# Copyright 1998-2004 The OpenLDAP Foundation.
+# Copyright 1998-2005 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
@@ -34,7 +34,7 @@ define([AC_INIT_BINSH],
 # top-level directory of the distribution or, alternatively, at
 # <http://www.OpenLDAP.org/license.html>.
 
 # 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 "Copyright 1998-2005 The OpenLDAP Foundation. All rights reserved."
 echo " Restrictions apply, see COPYRIGHT and LICENSE files."
 ])dnl
 dnl ----------------------------------------------------------------
 echo " Restrictions apply, see COPYRIGHT and LICENSE files."
 ])dnl
 dnl ----------------------------------------------------------------
@@ -193,7 +193,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(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     
 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     
@@ -208,68 +208,93 @@ AC_ARG_WITH(xxslapbackends,[
 SLAPD Backend Options:])
 
 OL_ARG_ENABLE(backends,[    --enable-backends    enable all available backends no|yes|mod],
 SLAPD Backend Options:])
 
 OL_ARG_ENABLE(backends,[    --enable-backends    enable all available backends no|yes|mod],
-       no, [no yes mod])dnl
+       --, [no yes mod])dnl
+test -n "$ol_enable_backends" && ol_dflt_backends="$ol_enable_backends"
 OL_ARG_ENABLE(bdb,[    --enable-bdb      enable Berkeley DB backend no|yes|mod],
 OL_ARG_ENABLE(bdb,[    --enable-bdb      enable Berkeley DB backend no|yes|mod],
-       yes, [no yes mod])dnl
+       ${ol_dflt_backends-yes}, [no yes mod])dnl
 OL_ARG_ENABLE(dnssrv,[    --enable-dnssrv        enable dnssrv backend no|yes|mod],
 OL_ARG_ENABLE(dnssrv,[    --enable-dnssrv        enable dnssrv backend no|yes|mod],
-       no, [no yes mod])dnl
+       ${ol_dflt_backends-no}, [no yes mod])dnl
 OL_ARG_ENABLE(hdb,[    --enable-hdb      enable Hierarchical DB backend no|yes|mod],
 OL_ARG_ENABLE(hdb,[    --enable-hdb      enable Hierarchical DB backend no|yes|mod],
-       no, [no yes mod])dnl
+       ${ol_dflt_backends-yes}, [no yes mod])dnl
 OL_ARG_ENABLE(ldap,[    --enable-ldap    enable ldap backend no|yes|mod],
 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_dflt_backends-no}, [no yes mod])dnl
+OL_ARG_ENABLE(ldbm,[    --enable-ldbm    enable ldbm backend no|yes|mod],
+       ${ol_dflt_backends-no}, [no yes mod])dnl
 OL_ARG_WITH(ldbm_api,[      --with-ldbm-api     with LDBM API auto|berkeley|bcompat|mdbm|gdbm],
        auto, [auto berkeley bcompat mdbm gdbm])
 OL_ARG_WITH(ldbm_type,[      --with-ldbm-type    use LDBM type auto|btree|hash],
        auto, [auto btree hash])
 OL_ARG_ENABLE(meta,[    --enable-meta    enable metadirectory backend no|yes|mod],
 OL_ARG_WITH(ldbm_api,[      --with-ldbm-api     with LDBM API auto|berkeley|bcompat|mdbm|gdbm],
        auto, [auto berkeley bcompat mdbm gdbm])
 OL_ARG_WITH(ldbm_type,[      --with-ldbm-type    use LDBM type auto|btree|hash],
        auto, [auto btree hash])
 OL_ARG_ENABLE(meta,[    --enable-meta    enable metadirectory backend no|yes|mod],
-       no, [no yes mod])dnl
+       ${ol_dflt_backends-no}, [no yes mod])dnl
 OL_ARG_ENABLE(monitor,[    --enable-monitor      enable monitor backend no|yes|mod],
 OL_ARG_ENABLE(monitor,[    --enable-monitor      enable monitor backend no|yes|mod],
-       yes, [no yes mod])dnl
+       ${ol_dflt_backends-yes}, [no yes mod])dnl
 OL_ARG_ENABLE(null,[    --enable-null    enable null backend no|yes|mod],
 OL_ARG_ENABLE(null,[    --enable-null    enable null backend no|yes|mod],
-       no, [no yes mod])dnl
+       ${ol_dflt_backends-no}, [no yes mod])dnl
 OL_ARG_ENABLE(passwd,[    --enable-passwd        enable passwd backend no|yes|mod],
 OL_ARG_ENABLE(passwd,[    --enable-passwd        enable passwd backend no|yes|mod],
-       no, [no yes mod])dnl
+       ${ol_dflt_backends-no}, [no yes mod])dnl
 OL_ARG_ENABLE(perl,[    --enable-perl    enable perl backend no|yes|mod],
 OL_ARG_ENABLE(perl,[    --enable-perl    enable perl backend no|yes|mod],
-       no, [no yes mod])dnl
+       ${ol_dflt_backends-no}, [no yes mod])dnl
 OL_ARG_ENABLE(relay,[    --enable-relay          enable relay backend no|yes|mod],
 OL_ARG_ENABLE(relay,[    --enable-relay          enable relay backend no|yes|mod],
-       yes, [no yes mod])dnl
+       ${ol_dflt_backends-yes}, [no yes mod])dnl
 OL_ARG_ENABLE(shell,[    --enable-shell          enable shell backend no|yes|mod],
 OL_ARG_ENABLE(shell,[    --enable-shell          enable shell backend no|yes|mod],
-       no, [no yes mod])dnl
+       ${ol_dflt_backends-no}, [no yes mod])dnl
 OL_ARG_ENABLE(sql,[    --enable-sql      enable sql backend no|yes|mod],
 OL_ARG_ENABLE(sql,[    --enable-sql      enable sql backend no|yes|mod],
-       no, [no yes mod])dnl
+       ${ol_dflt_backends-no}, [no yes mod])dnl
 
 dnl ----------------------------------------------------------------
 dnl SLAPD Overlay Options
 
 dnl ----------------------------------------------------------------
 dnl SLAPD Overlay Options
-Overlays="chain denyop dyngroup lastmod ppolicy proxycache rwm \
-       refint syncprov unique"
+Overlays="accesslog \
+       denyop \
+       dyngroup \
+       dynlist \
+       glue \
+       lastmod \
+       ppolicy \
+       proxycache \
+       refint \
+       retcode \
+       rwm \
+       syncprov \
+       translucent \
+       unique \
+       valsort"
 
 AC_ARG_WITH(xxslapoverlays,[
 SLAPD Overlay Options:])
 
 OL_ARG_ENABLE(overlays,[    --enable-overlays    enable all available overlays no|yes|mod],
 
 AC_ARG_WITH(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])
+       --, [no yes mod])dnl
+test -n "$ol_enable_overlays" && ol_dflt_overlays="$ol_enable_overlays"
+OL_ARG_ENABLE(accesslog,[    --enable-accesslog          In-Directory Access Logging overlay no|yes|mod],
+       ${ol_dflt_overlays-no}, [no yes mod])
 OL_ARG_ENABLE(denyop,[    --enable-denyop        Deny Operation overlay no|yes|mod],
 OL_ARG_ENABLE(denyop,[    --enable-denyop        Deny Operation overlay no|yes|mod],
-       no, [no yes mod])
+       ${ol_dflt_overlays-no}, [no yes mod])
 OL_ARG_ENABLE(dyngroup,[    --enable-dyngroup    Dynamic Group overlay no|yes|mod],
 OL_ARG_ENABLE(dyngroup,[    --enable-dyngroup    Dynamic Group overlay no|yes|mod],
-       no, [no yes mod])
+       ${ol_dflt_overlays-no}, [no yes mod])
+OL_ARG_ENABLE(dynlist,[    --enable-dynlist      Dynamic List overlay no|yes|mod],
+       ${ol_dflt_overlays-no}, [no yes mod])
+OL_ARG_ENABLE(glue,[    --enable-glue    Backend Glue overlay no|yes|mod],
+       ${ol_dflt_overlays-yes}, [no yes mod])
 OL_ARG_ENABLE(lastmod,[    --enable-lastmod      Last Modification overlay no|yes|mod],
 OL_ARG_ENABLE(lastmod,[    --enable-lastmod      Last Modification overlay no|yes|mod],
-       no, [no yes mod])
+       ${ol_dflt_overlays-no}, [no yes mod])
 OL_ARG_ENABLE(ppolicy,[    --enable-ppolicy      Password Policy overlay no|yes|mod],
 OL_ARG_ENABLE(ppolicy,[    --enable-ppolicy      Password Policy overlay no|yes|mod],
-       no, [no yes mod])
+       ${ol_dflt_overlays-no}, [no yes mod])
 OL_ARG_ENABLE(proxycache,[    --enable-proxycache        Proxy Cache overlay no|yes|mod],
 OL_ARG_ENABLE(proxycache,[    --enable-proxycache        Proxy Cache overlay no|yes|mod],
-       no, [no yes mod])
+       ${ol_dflt_overlays-no}, [no yes mod])
 OL_ARG_ENABLE(refint,[    --enable-refint        Referential Integrity overlay no|yes|mod],
 OL_ARG_ENABLE(refint,[    --enable-refint        Referential Integrity overlay no|yes|mod],
-       no, [no yes mod])
+       ${ol_dflt_overlays-no}, [no yes mod])
+OL_ARG_ENABLE(retcode,[    --enable-retcode      Return Code testing overlay no|yes|mod],
+       ${ol_dflt_overlays-no}, [no yes mod])
 OL_ARG_ENABLE(rwm,[    --enable-rwm              Rewrite/Remap overlay no|yes|mod],
 OL_ARG_ENABLE(rwm,[    --enable-rwm              Rewrite/Remap overlay no|yes|mod],
-       no, [no yes mod])
-OL_ARG_ENABLE(syncprov,[    --enable-syncprov            Syncrepl Provider overlay no|yes|mod],
-       yes, [no yes mod])
+       ${ol_dflt_overlays-no}, [no yes mod])
+OL_ARG_ENABLE(syncprov,[    --enable-syncprov    Syncrepl Provider overlay no|yes|mod],
+       ${ol_dflt_overlays-yes}, [no yes mod])
+OL_ARG_ENABLE(translucent,[    --enable-translucent  Translucent Proxy overlay no|yes|mod],
+       ${ol_dflt_overlays-no}, [no yes mod])
 OL_ARG_ENABLE(unique,[    --enable-unique       Attribute Uniqueness overlay no|yes|mod],
 OL_ARG_ENABLE(unique,[    --enable-unique       Attribute Uniqueness overlay no|yes|mod],
-       no, [no yes mod])
+       ${ol_dflt_overlays-no}, [no yes mod])
+OL_ARG_ENABLE(valsort,[    --enable-valsort      Value Sorting overlay no|yes|mod],
+       ${ol_dflt_overlays-no}, [no yes mod])
 
 
 dnl ----------------------------------------------------------------
 
 
 dnl ----------------------------------------------------------------
@@ -286,36 +311,15 @@ AC_ENABLE_SHARED
 
 dnl ----------------------------------------------------------------
 
 
 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
 # 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])
                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
        for i in $Backends; do
                eval "ol_tmp=\$ol_enable_$i"
                if test $ol_tmp != no ; then
@@ -351,9 +355,9 @@ if test $ol_enable_slapd = no ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-rewrite argument])
        fi
        dnl overlays
                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])
                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
        for i in $Overlays; do
                eval "ol_tmp=\$ol_enable_$i"
                if test $ol_tmp != no ; then
@@ -365,8 +369,8 @@ if test $ol_enable_slapd = no ; then
        # force settings to no
        ol_enable_slapi=no
 
        # 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_modules=no
        ol_enable_multimaster=no
        ol_enable_rlookups=no
@@ -444,10 +448,6 @@ else
        fi
 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
 if test $ol_enable_meta = yes -a $ol_enable_ldap = no ; then
        AC_MSG_ERROR([--enable-meta requires --enable-ldap])
 fi
@@ -522,22 +522,29 @@ BUILD_RELAY=no
 BUILD_SHELL=no
 BUILD_SQL=no
 
 BUILD_SHELL=no
 BUILD_SQL=no
 
-BUILD_CHAIN=no
+BUILD_ACCESSLOG=no
 BUILD_DENYOP=no
 BUILD_DYNGROUP=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_LASTMOD=no
 BUILD_PPOLICY=no
 BUILD_PROXYCACHE=no
 BUILD_REFINT=no
+BUILD_RETCODE=no
 BUILD_RWM=no
 BUILD_RWM=no
+BUILD_SYNCPROV=no
+BUILD_TRANSLUCENT=no
 BUILD_UNIQUE=no
 BUILD_UNIQUE=no
+BUILD_VALSORT=no
 
 
+SLAPD_STATIC_OVERLAYS=
 SLAPD_DYNAMIC_OVERLAYS=
 
 SLAPD_MODULES_LDFLAGS=
 SLAPD_MODULES_CPPFLAGS=
 
 SLAPD_DYNAMIC_OVERLAYS=
 
 SLAPD_MODULES_LDFLAGS=
 SLAPD_MODULES_CPPFLAGS=
 
-SLAPD_STATIC_BACKENDS=
+SLAPD_STATIC_BACKENDS=back-ldif
 SLAPD_DYNAMIC_BACKENDS=
 
 SLAPD_PERL_LDFLAGS=
 SLAPD_DYNAMIC_BACKENDS=
 
 SLAPD_PERL_LDFLAGS=
@@ -712,6 +719,7 @@ esac
 dnl ----------------------------------------------------------------
 dnl Check for module support
 ol_link_modules=no
 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)
 
 if test $ol_enable_modules != no ; then
        AC_CHECK_HEADERS(ltdl.h)
 
@@ -728,6 +736,7 @@ if test $ol_enable_modules != no ; then
                AC_MSG_ERROR([could not locate libtool -lltdl])
        fi
        ol_link_modules=yes
                AC_MSG_ERROR([could not locate libtool -lltdl])
        fi
        ol_link_modules=yes
+       WITH_MODULES_ENABLED=yes
 
 else
        for i in $Backends; do
 
 else
        for i in $Backends; do
@@ -762,11 +771,11 @@ if test $am_cv_sys_posix_termios = yes ; then
                [define if you have POSIX termios])
 fi
 
                [define if you have POSIX termios])
 fi
 
-AC_CHECK_HEADERS(      \
+AC_CHECK_HEADERS(              \
        arpa/inet.h             \
        arpa/inet.h             \
-       arpa/nameser.h  \
+       arpa/nameser.h          \
        assert.h                \
        assert.h                \
-       bits/types.h    \
+       bits/types.h            \
        conio.h                 \
        crypt.h                 \
        direct.h                \
        conio.h                 \
        crypt.h                 \
        direct.h                \
@@ -779,7 +788,7 @@ AC_CHECK_HEADERS(   \
        libutil.h               \
        limits.h                \
        locale.h                \
        libutil.h               \
        limits.h                \
        locale.h                \
-       netinet/tcp.h   \
+       netinet/tcp.h           \
        malloc.h                \
        memory.h                \
        psap.h                  \
        malloc.h                \
        memory.h                \
        psap.h                  \
@@ -797,11 +806,11 @@ AC_CHECK_HEADERS( \
        sys/errno.h             \
        sys/ioctl.h             \
        sys/param.h             \
        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/stat.h              \
-       sys/syslog.h    \
+       sys/syslog.h            \
        sys/time.h              \
        sys/types.h             \
        sys/ucred.h             \
        sys/time.h              \
        sys/types.h             \
        sys/ucred.h             \
@@ -809,22 +818,28 @@ AC_CHECK_HEADERS( \
        syslog.h                \
        termios.h               \
        unistd.h                \
        syslog.h                \
        termios.h               \
        unistd.h                \
+       utime.h                 \
        winsock.h               \
        winsock2.h              \
 )
 
        winsock.h               \
        winsock2.h              \
 )
 
-
 dnl ----------------------------------------------------------------
 dnl Checks for libraries
 
 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
 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
 
 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
 AC_CACHE_CHECK([for winsock], [ol_cv_winsock],
 save_LIBS="$LIBS"
 for curlib in ws2_32 wsock32; do
@@ -962,51 +977,28 @@ fi
 
 dnl ----------------------------------------------------------------
 dnl Check for resolver routines
 
 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
-
-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
+OL_RESOLVER_LINK
 
 
-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()])
 
        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
                ol_link_dnssrv=yes
        fi
+
+       if test "$ol_cv_lib_resolver" != yes ; then
+               LIBS="$ol_cv_lib_resolver $LIBS"
+       fi
 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 )
 fi
 
 AC_CHECK_FUNCS( hstrerror )
@@ -2088,6 +2080,9 @@ if test $ol_enable_sql != no ; then
                AC_MSG_ERROR([could not locate SQL headers])
        ])
 
                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"
        AC_CHECK_LIB(iodbc,SQLDriverConnect,[have_iodbc=yes],[have_iodbc=no])
        if test $have_iodbc = yes ; then
                ol_link_sql="-liodbc"
@@ -2098,6 +2093,8 @@ if test $ol_enable_sql != no ; then
                fi
        fi
 
                fi
        fi
 
+       LIBS="$sql_LIBS"
+
        if test $ol_link_sql != no ; then
                SLAPD_SQL_LIBS="$ol_link_sql"
 
        if test $ol_link_sql != no ; then
                SLAPD_SQL_LIBS="$ol_link_sql"
 
@@ -2419,6 +2416,12 @@ AC_DEFINE(LBER_TAG_T,long)
 dnl ----------------------------------------------------------------
 dnl Checks for library functions.
 AC_FUNC_MEMCMP
 dnl ----------------------------------------------------------------
 dnl Checks for library functions.
 AC_FUNC_MEMCMP
+
+if test $ac_cv_func_memcmp_clean = no ; then
+       AC_DEFINE(NEED_MEMCMP_REPLACEMENT,1,
+               [define if memcmp is not 8-bit clean or is otherwise broken])
+fi
+
 dnl AM_FUNC_MKTIME dnl checks for sys/time.h and unistd.h
 AC_FUNC_STRFTIME
 dnl AM_FUNC_STRTOD
 dnl AM_FUNC_MKTIME dnl checks for sys/time.h and unistd.h
 AC_FUNC_STRFTIME
 dnl AM_FUNC_STRTOD
@@ -2477,9 +2480,7 @@ AC_CHECK_FUNCS(           \
        setsid                  \
        setuid                  \
        seteuid                 \
        setsid                  \
        setuid                  \
        seteuid                 \
-       sigaction               \
        signal                  \
        signal                  \
-       sigset                  \
        strdup                  \
        strpbrk                 \
        strrchr                 \
        strdup                  \
        strpbrk                 \
        strrchr                 \
@@ -2509,6 +2510,9 @@ if test "$ac_cv_func_getopt" != yes; then
 fi
 if test "$ac_cv_func_getpeereid" != yes; then
        OL_MSGHDR_MSG_ACCRIGHTS
 fi
 if test "$ac_cv_func_getpeereid" != yes; then
        OL_MSGHDR_MSG_ACCRIGHTS
+       if test "$ac_cv_func_getpeereid" != yes; then
+               OL_MSGHDR_MSG_CONTROL
+       fi
        LIBSRCS="$LIBSRCS getpeereid.c"
 fi
 if test "$ac_cv_func_snprintf" != yes -o "$ac_cv_func_vsnprintf" != yes; then
        LIBSRCS="$LIBSRCS getpeereid.c"
 fi
 if test "$ac_cv_func_snprintf" != yes -o "$ac_cv_func_vsnprintf" != yes; then
@@ -2738,7 +2742,7 @@ if test "$ol_enable_relay" != no ; then
 fi
 
 if test "$ol_enable_shell" != no ; then
 fi
 
 if test "$ol_enable_shell" != no ; then
-       if test "$ol_link_thread" != no ; then
+       if test "$ol_link_threads" != no ; then
                AC_MSG_WARN([Use of --without-threads is recommended with back-shell])
        fi
        BUILD_SLAPD=yes
                AC_MSG_WARN([Use of --without-threads is recommended with back-shell])
        fi
        BUILD_SLAPD=yes
@@ -2766,15 +2770,16 @@ if test "$ol_link_sql" != no ; then
        AC_DEFINE_UNQUOTED(SLAPD_SQL,$MFLAG,[define to support SQL backend])
 fi
 
        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
                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
        else
                MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS accesslog.o"
        fi
        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
 fi
 
 if test "$ol_enable_denyop" != no ; then
@@ -2784,6 +2789,7 @@ if test "$ol_enable_denyop" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS denyop.la"
        else
                MFLAG=SLAPD_MOD_STATIC
                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
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_DENYOP,$MFLAG,[define for Dynamic Group overlay])
 fi
@@ -2795,10 +2801,35 @@ if test "$ol_enable_dyngroup" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS dyngroup.la"
        else
                MFLAG=SLAPD_MOD_STATIC
                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
 
        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
 if test "$ol_enable_lastmod" != no ; then
        BUILD_LASTMOD=$ol_enable_lastmod
        if test "$ol_enable_lastmod" = mod ; then
@@ -2806,6 +2837,7 @@ if test "$ol_enable_lastmod" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS lastmod.la"
        else
                MFLAG=SLAPD_MOD_STATIC
                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
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_LASTMOD,$MFLAG,[define for Last Modification overlay])
 fi
@@ -2817,6 +2849,7 @@ if test "$ol_enable_ppolicy" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS ppolicy.la"
        else
                MFLAG=SLAPD_MOD_STATIC
                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
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_PPOLICY,$MFLAG,[define for Password Policy overlay])
 fi
@@ -2828,6 +2861,7 @@ if test "$ol_enable_proxycache" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS pcache.la"
        else
                MFLAG=SLAPD_MOD_STATIC
                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
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_PROXYCACHE,$MFLAG,[define for Proxy Cache overlay])
 fi
@@ -2839,10 +2873,23 @@ if test "$ol_enable_refint" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS refint.la"
        else
                MFLAG=SLAPD_MOD_STATIC
                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
 
        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
 if test "$ol_enable_rwm" != no ; then
        BUILD_REWRITE=yes
        BUILD_RWM=$ol_enable_rwm
@@ -2851,6 +2898,7 @@ if test "$ol_enable_rwm" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS rwm.la"
        else
                MFLAG=SLAPD_MOD_STATIC
                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
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_RWM,$MFLAG,[define for Rewrite/Remap overlay])
 fi
@@ -2862,10 +2910,23 @@ if test "$ol_enable_syncprov" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS syncprov.la"
        else
                MFLAG=SLAPD_MOD_STATIC
                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
 
        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
 if test "$ol_enable_unique" != no ; then
        BUILD_UNIQUE=$ol_enable_unique
        if test "$ol_enable_unique" = mod ; then
@@ -2873,10 +2934,23 @@ if test "$ol_enable_unique" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS unique.la"
        else
                MFLAG=SLAPD_MOD_STATIC
                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
 
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_UNIQUE,$MFLAG,[define for Attribute Uniqueness overlay])
 fi
 
+if test "$ol_enable_valsort" != no ; then
+       BUILD_VALSORT=$ol_enable_valsort
+       if test "$ol_enable_valsort" = mod ; then
+               MFLAG=SLAPD_MOD_DYNAMIC
+               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS valsort.la"
+       else
+               MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS valsort.o"
+       fi
+       AC_DEFINE_UNQUOTED(SLAPD_OVER_VALSORT,$MFLAG,[define for Value Sorting overlay])
+fi
+
 if test "$ol_enable_slurpd" != no -a "$ol_link_threads" != no -a \
        $BUILD_SLAPD = yes ; then
        BUILD_SLURPD=yes
 if test "$ol_enable_slurpd" != no -a "$ol_link_threads" != no -a \
        $BUILD_SLAPD = yes ; then
        BUILD_SLURPD=yes
@@ -2907,62 +2981,6 @@ else
        PLAT=UNIX
 fi
 
        PLAT=UNIX
 fi
 
-if test -z "$SLAPD_STATIC_BACKENDS"; then
-       SLAPD_NO_STATIC='#'
-else
-       SLAPD_NO_STATIC=
-fi
-
-dnl Generate static backend header file
-BACKEND_HEADER=servers/slapd/backend.h
-cat > $BACKEND_HEADER << EOF
-/* 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>.
- */
-/* This file is automatically generated by configure; please do not edit.
- */
-
-EOF
-
-for b in $SLAPD_STATIC_BACKENDS; do
-       bb=`echo "$b" | sed -e 's;back-;;'`
-       
-       cat >> $BACKEND_HEADER << EOF
-extern BI_init ${bb}_back_initialize;
-EOF
-done
-
-cat >> $BACKEND_HEADER << EOF
-
-static BackendInfo binfo[[]] = {
-EOF
-
-for b in $SLAPD_STATIC_BACKENDS; do
-       bb=`echo "$b" | sed -e 's;back-;;'`
-       
-       cat >> $BACKEND_HEADER << EOF
-       { "$bb", ${bb}_back_initialize },
-EOF
-done
-
-cat >> $BACKEND_HEADER << EOF
-       { NULL, NULL }
-};
-
-/* end of generated file */
-EOF
-dnl done generating static backend header file
-
 AC_SUBST(LIBSRCS)
 AC_SUBST(PLAT)
 AC_SUBST(WITH_SASL)
 AC_SUBST(LIBSRCS)
 AC_SUBST(PLAT)
 AC_SUBST(WITH_SASL)
@@ -2989,16 +3007,21 @@ dnl backends
   AC_SUBST(BUILD_SHELL)
   AC_SUBST(BUILD_SQL)
 dnl overlays
   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_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_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_RWM)
   AC_SUBST(BUILD_SYNCPROV)
+  AC_SUBST(BUILD_TRANSLUCENT)
   AC_SUBST(BUILD_UNIQUE)
   AC_SUBST(BUILD_UNIQUE)
+  AC_SUBST(BUILD_VALSORT)
 AC_SUBST(BUILD_SLURPD)
 
 AC_SUBST(LDAP_LIBS)
 AC_SUBST(BUILD_SLURPD)
 
 AC_SUBST(LDAP_LIBS)
@@ -3015,6 +3038,7 @@ AC_SUBST(SLAPD_MODULES_LDFLAGS)
 AC_SUBST(SLAPD_NO_STATIC)
 AC_SUBST(SLAPD_STATIC_BACKENDS)
 AC_SUBST(SLAPD_DYNAMIC_BACKENDS)
 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)
 AC_SUBST(SLAPD_DYNAMIC_OVERLAYS)
 
 AC_SUBST(PERL_CPPFLAGS)
@@ -3064,7 +3088,7 @@ libraries/libldap/Makefile:build/top.mk:libraries/libldap/Makefile.in:build/lib.
 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/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 \
+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/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 \
@@ -3072,6 +3096,7 @@ servers/slapd/back-dnssrv/Makefile:build/top.mk:servers/slapd/back-dnssrv/Makefi
 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-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-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 \
@@ -3090,5 +3115,57 @@ tests/progs/Makefile:build/top.mk:tests/progs/Makefile.in:build/rules.mk \
 ,[
 chmod +x tests/run
 date > stamp-h
 ,[
 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
 echo Please run \"make depend\" to build dependencies
-])
+],[STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS"])