]> git.sur5r.net Git - openldap/blobdiff - configure.in
Run autoupdate and rebuild
[openldap] / configure.in
index 07384b14a1f4e13f4a52d516338776f59c603aa9..36f146e7561fd81dc10d858bda0265cf65bb4cb1 100644 (file)
@@ -37,13 +37,31 @@ define([AC_INIT_BINSH],
 echo "Copyright 1998-2005 The OpenLDAP Foundation. All rights reserved."
 echo " Restrictions apply, see COPYRIGHT and LICENSE files."
 ])dnl
 echo "Copyright 1998-2005 The OpenLDAP Foundation. All rights reserved."
 echo " Restrictions apply, see COPYRIGHT and LICENSE files."
 ])dnl
+dnl ----------------------------------------------------------------
+dnl OpenLDAP Autoconf Macros
+dnl $OpenLDAP$
+dnl This work is part of OpenLDAP Software <http://www.openldap.org/>.
+dnl
+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 modification, are permitted only as authorized by the OpenLDAP
+dnl Public License.
+dnl
+dnl A copy of this license is available in the file LICENSE in the
+dnl top-level directory of the distribution or, alternatively, at
+dnl <http://www.OpenLDAP.org/license.html>.
+builtin(include, build/openldap.m4)dnl
+
 dnl ----------------------------------------------------------------
 dnl Disable config.cache!
 define([AC_CACHE_LOAD], )dnl
 define([AC_CACHE_SAVE], )dnl
 dnl ================================================================
 dnl Configure.in for OpenLDAP
 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
+AC_INIT
+AC_CONFIG_SRCDIR([build/version.sh])dnl
 
 # set unset (borrowed from autoconf 2.49c)
 if (OL_FOO=OL_FOO; unset OL_FOO) >/dev/null 2>&1; then
 
 # set unset (borrowed from autoconf 2.49c)
 if (OL_FOO=OL_FOO; unset OL_FOO) >/dev/null 2>&1; then
@@ -82,7 +100,7 @@ echo "Configuring ${TB}${OL_STRING}${TN} ${OPENLDAP_CVS}..."
 
 dnl Determine host platform
 dnl            we try not to use this for much
 
 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
 
 AM_INIT_AUTOMAKE([$OL_PACKAGE],[$OL_VERSION], [no defines])dnl
 AC_SUBST(PACKAGE)dnl
@@ -107,7 +125,7 @@ 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.
 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
+AC_PREREQ(2.59)dnl Required Autoconf version
 
 AC_CONFIG_HEADER(include/portable.h include/ldap_features.h include/lber_types.h)dnl
 
 
 AC_CONFIG_HEADER(include/portable.h include/ldap_features.h include/lber_types.h)dnl
 
@@ -193,7 +211,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,72 +226,78 @@ 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],
-       yes, [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="denyop dyngroup dynlist glue lastmod ppolicy proxycache \
-       refint rwm syncprov translucent unique"
+Overlays="accesslog denyop dyngroup dynlist glue lastmod ppolicy proxycache \
+       refint retcode rwm syncprov translucent unique"
 
 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
+       --, [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_ARG_ENABLE(dynlist,[    --enable-dynlist      Dynamic List overlay no|yes|mod],
-       no, [no yes mod])
+       ${ol_dflt_overlays-no}, [no yes mod])
 OL_ARG_ENABLE(glue,[    --enable-glue    Backend Glue overlay no|yes|mod],
 OL_ARG_ENABLE(glue,[    --enable-glue    Backend Glue overlay no|yes|mod],
-       yes, [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_dflt_overlays-no}, [no yes mod])
 OL_ARG_ENABLE(syncprov,[    --enable-syncprov    Syncrepl Provider overlay no|yes|mod],
 OL_ARG_ENABLE(syncprov,[    --enable-syncprov    Syncrepl Provider overlay no|yes|mod],
-       yes, [no yes mod])
+       ${ol_dflt_overlays-yes}, [no yes mod])
 OL_ARG_ENABLE(translucent,[    --enable-translucent  Translucent Proxy overlay no|yes|mod],
 OL_ARG_ENABLE(translucent,[    --enable-translucent  Translucent Proxy overlay no|yes|mod],
-       no, [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])
 
 
 dnl ----------------------------------------------------------------
 
 
 dnl ----------------------------------------------------------------
@@ -290,36 +314,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
@@ -355,9 +358,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
@@ -369,8 +372,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
@@ -522,7 +525,7 @@ 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_DYNLIST=no
 BUILD_DENYOP=no
 BUILD_DYNGROUP=no
 BUILD_DYNLIST=no
@@ -531,11 +534,13 @@ BUILD_LASTMOD=no
 BUILD_PPOLICY=no
 BUILD_PROXYCACHE=no
 BUILD_REFINT=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
 
 BUILD_RWM=no
 BUILD_SYNCPROV=no
 BUILD_TRANSLUCENT=no
 BUILD_UNIQUE=no
 
+SLAPD_STATIC_OVERLAYS=
 SLAPD_DYNAMIC_OVERLAYS=
 
 SLAPD_MODULES_LDFLAGS=
 SLAPD_DYNAMIC_OVERLAYS=
 
 SLAPD_MODULES_LDFLAGS=
@@ -671,8 +676,18 @@ dnl AC_MINIX
 
 dnl ----------------------------------------------------------------
 dnl Checks for system services
 
 dnl ----------------------------------------------------------------
 dnl Checks for system services
-AC_CYGWIN
-AC_MINGW32
+AC_CANONICAL_HOST()
+AC_DIAGNOSE([obsolete],[AC_CYGWIN is obsolete: use AC_CANONICAL_HOST and $host_os])case $host_os in
+  *cygwin* ) CYGWIN=yes;;
+        * ) CYGWIN=no;;
+esac
+
+AC_CANONICAL_HOST()
+AC_DIAGNOSE([obsolete],[AC_MINGW32 is obsolete: use AC_CANONICAL_HOST and $host_os])case $host_os in
+  *mingw32* ) MINGW32=yes;;
+         * ) MINGW32=no;;
+esac
+
 AC_EXEEXT
 AC_OBJEXT
 
 AC_EXEEXT
 AC_OBJEXT
 
@@ -684,7 +699,14 @@ AC_CHECK_LIB(be, be_app, [LIBS="$LIBS -lbe -lroot -lnet"], :, [-lroot -lnet])
 
 dnl ----------------------------------------------------------------
 dnl OpenLDAP requires STDC features
 
 dnl ----------------------------------------------------------------
 dnl OpenLDAP requires STDC features
-AM_PROG_CC_STDC
+AC_PROG_CC()
+AC_DIAGNOSE([obsolete],[AM_PROG_CC_STDC:
+       your code should no longer depend upon `am_cv_prog_cc_stdc', but upon
+       `ac_cv_prog_cc_stdc'.  Remove this warning and the assignment when
+       you adjust the code.  You can also remove the above call to
+       AC_PROG_CC if you already called it elsewhere.])
+am_cv_prog_cc_stdc=$ac_cv_prog_cc_stdc
+
 if test "X${am_cv_prog_cc_stdc}" = "Xno" ; then
        AC_MSG_ERROR([OpenLDAP requires compiler to support STDC constructs.])
 fi
 if test "X${am_cv_prog_cc_stdc}" = "Xno" ; then
        AC_MSG_ERROR([OpenLDAP requires compiler to support STDC constructs.])
 fi
@@ -768,11 +790,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                \
@@ -785,7 +807,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                  \
@@ -803,11 +825,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             \
@@ -815,6 +837,7 @@ 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              \
 )
@@ -833,20 +856,20 @@ 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
        LIBS="$LIBS -l$curlib"
 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);
                        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])
 
        if test $ol_cv_winsock = yes; then
                AC_DEFINE(HAVE_WINSOCK, 1, [define if you have winsock])
@@ -901,14 +924,12 @@ 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_CHECK_HEADERS( sys/epoll.h )
 if test "${ac_cv_header_sys_epoll_h}" = yes; then
 AC_MSG_CHECKING(for epoll system call)
-AC_TRY_RUN(
-int main(int argc, char *argv[])
+AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(int argc, char *argv)
 {
        int epfd = epoll_create(256);
        exit (epfd == -1 ? 1 : 0);
 {
        int epfd = epoll_create(256);
        exit (epfd == -1 ? 1 : 0);
-}, [AC_MSG_RESULT(yes)
-AC_DEFINE(HAVE_EPOLL,1, [define if your system supports epoll])],
-AC_MSG_RESULT(no),AC_MSG_RESULT(no))
+}]])],[AC_MSG_RESULT(yes)
+AC_DEFINE(HAVE_EPOLL,1, [define if your system supports epoll])],[AC_MSG_RESULT(no)],[AC_MSG_RESULT(no)])
 fi
 
 dnl ----------------------------------------------------------------
 fi
 
 dnl ----------------------------------------------------------------
@@ -953,15 +974,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_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 **);
                int __stdcall UuidCreate(void *);
                int __stdcall UuidToStringA(void *,void **);
-               ],
-               [
+               ]], [[
                UuidCreate(0);
                UuidToStringA(0,0);
                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
        if test $need_rpcrt = yes; then
                SLAPD_LIBS="$SLAPD_LIBS -lrpcrt4"
        fi
@@ -1018,13 +1037,12 @@ elif test $ol_enable_ipv6 != no ; then
 
 
        AC_CACHE_CHECK([struct sockaddr_storage],ol_cv_struct_sockaddr_storage,[
 
 
        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>
 #include <sys/types.h>
 #include <sys/socket.h>
-],[
+]], [[
                        struct sockaddr_storage ss;
                        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
 
        if test $ol_cv_inet6_addrstrlen = yes \
                -a $ol_cv_struct_sockaddr_storage = yes ; then
@@ -1151,13 +1169,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"
                                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;
 #include <kerberosIV/krb.h>
 #include <kerberosIV/des.h>
 extern int des_debug;
-],[
+]], [[
 des_debug = 1;
 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"
                        ])
                                dnl restore the LIBS
                                LIBS="$save_LIBS"
                        ])
@@ -1270,7 +1288,7 @@ if test $ol_with_tls != no ; then
        fi
 
 else
        fi
 
 else
-       AC_WARN([TLS data protection not supported!])
+       AC_MSG_WARN([TLS data protection not supported!])
 fi
 
 WITH_TLS=no
 fi
 
 WITH_TLS=no
@@ -1279,18 +1297,18 @@ if test $ol_link_tls = yes ; then
        WITH_TLS=yes
 
 elif test $ol_with_tls = auto ; 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
 
 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
 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])
        fi
 
        AC_DEFINE(SLAPD_LMHASH, 1, [define to support LAN Manager passwords])
@@ -1380,10 +1398,7 @@ 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,[
                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([AC_LANG_SOURCE([[OL_PTHREAD_TEST_PROGRAM]])],[ol_cv_pthread_create=yes],[ol_cv_pthread_create=no],[_au_changequote([,])AC_TRY_LINK(OL_PTHREAD_TEST_INCLUDES,OL_PTHREAD_TEST_FUNCTION,
                                [ol_cv_pthread_create=yes],
                                [ol_cv_pthread_create=no])])])
 
                                [ol_cv_pthread_create=yes],
                                [ol_cv_pthread_create=no])])])
 
@@ -1461,15 +1476,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_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
 #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
                        ])
 
                        if test $ol_cv_func_pthread_detach = no ; then
@@ -1496,10 +1508,7 @@ dnl                      [ol_cv_pthread_lpthread_lexc])
 
                        AC_CACHE_CHECK([if pthread_create() works],
                                ol_cv_pthread_create_works,[
 
                        AC_CACHE_CHECK([if pthread_create() works],
                                ol_cv_pthread_create_works,[
-                       AC_TRY_RUN(OL_PTHREAD_TEST_PROGRAM,
-                               [ol_cv_pthread_create_works=yes],
-                               [ol_cv_pthread_create_works=no],
-                               [dnl assume yes
+                       AC_RUN_IFELSE([AC_LANG_SOURCE([[OL_PTHREAD_TEST_PROGRAM]])],[ol_cv_pthread_create_works=yes],[ol_cv_pthread_create_works=no],[dnl assume yes
                                ol_cv_pthread_create_works=yes])])
 
                        if test $ol_cv_pthread_create_works = no ; then
                                ol_cv_pthread_create_works=yes])])
 
                        if test $ol_cv_pthread_create_works = no ; then
@@ -1510,7 +1519,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,[
                        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>
 #include <sys/types.h>
 #include <sys/time.h>
 #include <unistd.h>
@@ -1583,10 +1592,7 @@ int main(argc, argv)
 #endif
 
        exit(2);
 #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])
 
                                if test $ol_cv_pthread_select_yields = cross ; then
                                        AC_MSG_ERROR([crossing compiling: use --with-yielding_select=yes|no|manual])
@@ -1629,9 +1635,9 @@ if test $ol_with_threads = auto -o $ol_with_threads = yes \
                                dnl save the flags
                                save_LIBS="$LIBS"
                                LIBS="-all_load $LIBS"
                                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);
                                        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"
                        ])
                                dnl restore the LIBS
                                LIBS="$save_LIBS"
                        ])
@@ -1775,18 +1781,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], [
        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], [
        ])
 
        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 \
        ])
 
        if test $ol_cv_errno_thread_specific != yes \
@@ -2010,20 +2012,20 @@ if test $ol_enable_wrappers != no ; then
                AC_MSG_CHECKING([for TCP wrappers library])
                save_LIBS="$LIBS"
                LIBS="$LIBS -lwrap"
                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;
 #include <tcpd.h>
 int allow_severity = 0;
 int deny_severity  = 0;
 
 struct request_info *req;
-               ],[
+               ]], [[
 hosts_access(req)
 hosts_access(req)
-               ],[AC_MSG_RESULT([-lwrap])
+               ]])],[AC_MSG_RESULT([-lwrap])
                have_wrappers=yes
                LIBS="$save_LIBS"],[
                dnl try with -lnsl
                LIBS="$LIBS -lnsl"
                have_wrappers=yes
                LIBS="$save_LIBS"],[
                dnl try with -lnsl
                LIBS="$LIBS -lnsl"
-               AC_TRY_LINK([
+               _au_changequote([,])AC_TRY_LINK([
 #include <tcpd.h>
 int allow_severity = 0;
 int deny_severity  = 0;
 #include <tcpd.h>
 int allow_severity = 0;
 int deny_severity  = 0;
@@ -2036,8 +2038,7 @@ hosts_access(req)
                LIBS="$save_LIBS -lnsl"],[
                AC_MSG_RESULT(no)
                have_wrappers=no
                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])
 
        if test $have_wrappers = yes ; then
                AC_DEFINE(HAVE_TCPD,1, [define if you have -lwrap])
@@ -2226,7 +2227,7 @@ if test $ol_enable_proctitle != no ; then
                        [have_setproctitle=yes
                        LUTIL_LIBS="$LUTIL_LIBS -lutil"],
                        [have_setproctitle=no
                        [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
                        LIBSRCS="$LIBSRCS setproctitle.c"])])
 
        if test $have_setproctitle = yes ; then
@@ -2350,9 +2351,7 @@ dnl Checks for typedefs, structures, and compiler characteristics.
 
 dnl Checks for long long
 AC_CACHE_CHECK([long long], ol_cv_type_long_long, [
 
 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])])
+       AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[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
 if test $ol_cv_type_long_long = yes; then
        AC_DEFINE(HAVE_LONG_LONG, 1, [define if you have 'long long'])
 fi
@@ -2360,7 +2359,7 @@ fi
 AC_TYPE_MODE_T
 AC_TYPE_OFF_T
 AC_TYPE_PID_T
 AC_TYPE_MODE_T
 AC_TYPE_OFF_T
 AC_TYPE_PID_T
-AM_TYPE_PTRDIFF_T
+AC_CHECK_TYPES([ptrdiff_t])
 AC_TYPE_SIGNAL
 AC_TYPE_SIZE_T
 
 AC_TYPE_SIGNAL
 AC_TYPE_SIZE_T
 
@@ -2368,7 +2367,15 @@ AC_CHECK_TYPE(ssize_t, [signed int])
 AC_CHECK_TYPE(caddr_t, [char *])
 
 OL_TYPE_SOCKLEN_T
 AC_CHECK_TYPE(caddr_t, [char *])
 
 OL_TYPE_SOCKLEN_T
-AC_STRUCT_ST_BLKSIZE
+AC_DIAGNOSE([obsolete],[AC_STRUCT_ST_BLKSIZE:
+       your code should no longer depend upon `HAVE_ST_BLKSIZE', but
+       `HAVE_STRUCT_STAT_ST_BLKSIZE'.  Remove this warning and
+       the `AC_DEFINE' when you adjust the code.])
+AC_CHECK_MEMBERS([struct stat.st_blksize],[AC_DEFINE(HAVE_ST_BLKSIZE, 1,
+                           [Define to 1 if your `struct stat' has
+                            `st_blksize'.  Deprecated, use
+                            `HAVE_STRUCT_STAT_ST_BLKSIZE' instead.])])
+
 AC_HEADER_TIME
 AC_STRUCT_TM
 AC_TYPE_UID_T
 AC_HEADER_TIME
 AC_STRUCT_TM
 AC_TYPE_UID_T
@@ -2411,14 +2418,14 @@ dnl ----------------------------------------------------------------
 dnl Checks for library functions.
 AC_FUNC_MEMCMP
 
 dnl Checks for library functions.
 AC_FUNC_MEMCMP
 
-if test $ac_cv_func_memcmp_clean = no ; then
+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_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
+dnl AC_FUNC_MKTIME([]) dnl checks for sys/time.h and unistd.h
 AC_FUNC_STRFTIME
 AC_FUNC_STRFTIME
-dnl AM_FUNC_STRTOD
+dnl AC_FUNC_STRTOD([])
 
 OL_FUNC_INET_ATON
 
 
 OL_FUNC_INET_ATON
 
@@ -2764,6 +2771,18 @@ 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_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 accesslog.la"
+       else
+               MFLAG=SLAPD_MOD_STATIC
+               SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS accesslog.o"
+       fi
+       AC_DEFINE_UNQUOTED(SLAPD_OVER_ACCESSLOG,$MFLAG,[define for In-Directory Access Logging overlay])
+fi
+
 if test "$ol_enable_denyop" != no ; then
        BUILD_DENYOP=$ol_enable_denyop
        if test "$ol_enable_denyop" = mod ; then
 if test "$ol_enable_denyop" != no ; then
        BUILD_DENYOP=$ol_enable_denyop
        if test "$ol_enable_denyop" = mod ; then
@@ -2771,6 +2790,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
@@ -2782,6 +2802,7 @@ 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
@@ -2793,6 +2814,7 @@ if test "$ol_enable_dynlist" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS dynlist.la"
        else
                MFLAG=SLAPD_MOD_STATIC
                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
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_DYNLIST,$MFLAG,[define for Dynamic List overlay])
 fi
@@ -2804,6 +2826,7 @@ if test "$ol_enable_glue" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS glue.la"
        else
                MFLAG=SLAPD_MOD_STATIC
                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
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_GLUE,$MFLAG,[define for Backend Glue overlay])
 fi
@@ -2815,6 +2838,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
@@ -2826,6 +2850,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
@@ -2837,6 +2862,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
@@ -2848,10 +2874,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
@@ -2860,6 +2899,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
@@ -2871,6 +2911,7 @@ 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
@@ -2882,6 +2923,7 @@ if test "$ol_enable_translucent" != no ; then
                SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS translucent.la"
        else
                MFLAG=SLAPD_MOD_STATIC
                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
        fi
        AC_DEFINE_UNQUOTED(SLAPD_OVER_TRANSLUCENT,$MFLAG,[define for Translucent Proxy overlay])
 fi
@@ -2893,6 +2935,7 @@ 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
@@ -2953,7 +2996,7 @@ 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_DYNLIST)
   AC_SUBST(BUILD_DENYOP)
   AC_SUBST(BUILD_DYNGROUP)
   AC_SUBST(BUILD_DYNLIST)
@@ -2962,6 +3005,7 @@ dnl overlays
   AC_SUBST(BUILD_PPOLICY)
   AC_SUBST(BUILD_PROXYCACHE)
   AC_SUBST(BUILD_REFINT)
   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_RWM)
   AC_SUBST(BUILD_SYNCPROV)
   AC_SUBST(BUILD_TRANSLUCENT)
@@ -2982,6 +3026,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)
@@ -3014,7 +3059,7 @@ dnl ----------------------------------------------------------------
 dnl final output
 dnl
 
 dnl final output
 dnl
 
-AC_OUTPUT( \
+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 \
 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 \
@@ -3031,7 +3076,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 \
@@ -3055,7 +3100,8 @@ servers/slurpd/Makefile:build/top.mk:servers/slurpd/Makefile.in:build/srv.mk \
 tests/Makefile:build/top.mk:tests/Makefile.in:build/dir.mk \
 tests/run \
 tests/progs/Makefile:build/top.mk:tests/progs/Makefile.in:build/rules.mk \
 tests/Makefile:build/top.mk:tests/Makefile.in:build/dir.mk \
 tests/run \
 tests/progs/Makefile:build/top.mk:tests/progs/Makefile.in:build/rules.mk \
-,[
+])
+AC_CONFIG_COMMANDS([default],[[
 chmod +x tests/run
 date > stamp-h
 BACKENDSC="servers/slapd/backends.c"
 chmod +x tests/run
 date > stamp-h
 BACKENDSC="servers/slapd/backends.c"
@@ -3111,4 +3157,5 @@ ENDX
 fi
 
 echo Please run \"make depend\" to build dependencies
 fi
 
 echo Please run \"make depend\" to build dependencies
-],[STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS"])
+]],[[STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS"]])
+AC_OUTPUT