]> git.sur5r.net Git - openldap/blobdiff - configure.in
drop stored procedures
[openldap] / configure.in
index 26e9108ef4dc62dc919fe3f29b751df721875469..eb1f52fb7c3c792b8aa5629421b39198ece7783c 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 ----------------------------------------------------------------
@@ -214,7 +214,7 @@ OL_ARG_ENABLE(bdb,[    --enable-bdb   enable Berkeley DB backend no|yes|mod],
 OL_ARG_ENABLE(dnssrv,[    --enable-dnssrv        enable dnssrv backend no|yes|mod],
        no, [no yes mod])dnl
 OL_ARG_ENABLE(hdb,[    --enable-hdb      enable Hierarchical DB backend no|yes|mod],
 OL_ARG_ENABLE(dnssrv,[    --enable-dnssrv        enable dnssrv backend no|yes|mod],
        no, [no yes mod])dnl
 OL_ARG_ENABLE(hdb,[    --enable-hdb      enable Hierarchical DB backend no|yes|mod],
-       no, [no yes mod])dnl
+       yes, [no yes mod])dnl
 OL_ARG_ENABLE(ldap,[    --enable-ldap    enable ldap backend no|yes|mod],
        no, [no yes mod])dnl
 OL_ARG_ENABLE(ldbm,[    --enable-ldbm    enable ldbm backend no|yes|mod], no,
 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,
@@ -242,20 +242,22 @@ OL_ARG_ENABLE(sql,[    --enable-sql         enable sql backend no|yes|mod],
 
 dnl ----------------------------------------------------------------
 dnl SLAPD Overlay Options
 
 dnl ----------------------------------------------------------------
 dnl SLAPD Overlay Options
-Overlays="chain denyop dyngroup glue lastmod ppolicy proxycache rwm \
-       refint syncprov 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],
        no, [no yes mod])dnl
 
 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],
+OL_ARG_ENABLE(accesslog,[    --enable-accesslog          In-Directory Access Logging overlay no|yes|mod],
        no, [no yes mod])
 OL_ARG_ENABLE(denyop,[    --enable-denyop        Deny Operation overlay no|yes|mod],
        no, [no yes mod])
 OL_ARG_ENABLE(dyngroup,[    --enable-dyngroup    Dynamic Group overlay no|yes|mod],
        no, [no yes mod])
        no, [no yes mod])
 OL_ARG_ENABLE(denyop,[    --enable-denyop        Deny Operation overlay no|yes|mod],
        no, [no yes mod])
 OL_ARG_ENABLE(dyngroup,[    --enable-dyngroup    Dynamic Group overlay no|yes|mod],
        no, [no yes mod])
+OL_ARG_ENABLE(dynlist,[    --enable-dynlist      Dynamic List overlay no|yes|mod],
+       no, [no yes mod])
 OL_ARG_ENABLE(glue,[    --enable-glue    Backend Glue overlay no|yes|mod],
        yes, [no yes mod])
 OL_ARG_ENABLE(lastmod,[    --enable-lastmod      Last Modification overlay no|yes|mod],
 OL_ARG_ENABLE(glue,[    --enable-glue    Backend Glue overlay no|yes|mod],
        yes, [no yes mod])
 OL_ARG_ENABLE(lastmod,[    --enable-lastmod      Last Modification overlay no|yes|mod],
@@ -266,10 +268,14 @@ OL_ARG_ENABLE(proxycache,[    --enable-proxycache   Proxy Cache overlay no|yes|m
        no, [no yes mod])
 OL_ARG_ENABLE(refint,[    --enable-refint        Referential Integrity overlay no|yes|mod],
        no, [no yes mod])
        no, [no yes mod])
 OL_ARG_ENABLE(refint,[    --enable-refint        Referential Integrity overlay no|yes|mod],
        no, [no yes mod])
+OL_ARG_ENABLE(retcode,[    --enable-retcode      Return Code testing overlay no|yes|mod],
+       no, [no yes mod])
 OL_ARG_ENABLE(rwm,[    --enable-rwm              Rewrite/Remap overlay no|yes|mod],
        no, [no yes mod])
 OL_ARG_ENABLE(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],
+OL_ARG_ENABLE(syncprov,[    --enable-syncprov    Syncrepl Provider overlay no|yes|mod],
        yes, [no yes mod])
        yes, [no yes mod])
+OL_ARG_ENABLE(translucent,[    --enable-translucent  Translucent Proxy overlay no|yes|mod],
+       no, [no yes mod])
 OL_ARG_ENABLE(unique,[    --enable-unique       Attribute Uniqueness overlay no|yes|mod],
        no, [no yes mod])
 
 OL_ARG_ENABLE(unique,[    --enable-unique       Attribute Uniqueness overlay no|yes|mod],
        no, [no yes mod])
 
@@ -446,10 +452,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
@@ -524,24 +526,28 @@ 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_GLUE=no
 BUILD_LASTMOD=no
 BUILD_PPOLICY=no
 BUILD_PROXYCACHE=no
 BUILD_REFINT=no
+BUILD_RETCODE=no
 BUILD_RWM=no
 BUILD_SYNCPROV=no
 BUILD_RWM=no
 BUILD_SYNCPROV=no
+BUILD_TRANSLUCENT=no
 BUILD_UNIQUE=no
 
 BUILD_UNIQUE=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=
@@ -819,18 +825,23 @@ AC_CHECK_HEADERS( \
        winsock2.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
@@ -968,51 +979,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
+OL_RESOLVER_LINK
 
 
-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
-
-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 )
@@ -2094,6 +2082,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"
@@ -2104,6 +2095,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"
 
@@ -2425,6 +2418,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
@@ -2483,9 +2482,7 @@ AC_CHECK_FUNCS(           \
        setsid                  \
        setuid                  \
        seteuid                 \
        setsid                  \
        setuid                  \
        seteuid                 \
-       sigaction               \
        signal                  \
        signal                  \
-       sigset                  \
        strdup                  \
        strpbrk                 \
        strrchr                 \
        strdup                  \
        strpbrk                 \
        strrchr                 \
@@ -2515,6 +2512,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
@@ -2772,15 +2772,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
@@ -2790,6 +2791,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
@@ -2801,10 +2803,23 @@ 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
 if test "$ol_enable_glue" != no ; then
        BUILD_GLUE=$ol_enable_glue
        if test "$ol_enable_glue" = mod ; then
@@ -2812,6 +2827,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
@@ -2823,6 +2839,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
@@ -2834,6 +2851,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
@@ -2845,6 +2863,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
@@ -2856,10 +2875,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
@@ -2868,6 +2900,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
@@ -2879,10 +2912,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
@@ -2890,6 +2936,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
@@ -2924,62 +2971,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)
@@ -3006,16 +2997,19 @@ 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_GLUE)
   AC_SUBST(BUILD_LASTMOD)
   AC_SUBST(BUILD_PPOLICY)
   AC_SUBST(BUILD_PROXYCACHE)
   AC_SUBST(BUILD_REFINT)
+  AC_SUBST(BUILD_RETCODE)
   AC_SUBST(BUILD_RWM)
   AC_SUBST(BUILD_SYNCPROV)
   AC_SUBST(BUILD_RWM)
   AC_SUBST(BUILD_SYNCPROV)
+  AC_SUBST(BUILD_TRANSLUCENT)
   AC_SUBST(BUILD_UNIQUE)
 AC_SUBST(BUILD_SLURPD)
 
   AC_SUBST(BUILD_UNIQUE)
 AC_SUBST(BUILD_SLURPD)
 
@@ -3033,6 +3027,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)
@@ -3082,7 +3077,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 \
@@ -3090,6 +3085,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 \
@@ -3108,5 +3104,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"])