]> git.sur5r.net Git - openldap/blobdiff - configure.in
handle compare in frontend if backend couldn't handle it (and returned SLAP_CB_CONTIN...
[openldap] / configure.in
index c931ce07e884a5b7b76e669a03e57e5217372d3f..6bf73baa507358262acf2311c1e7672740639a8c 100644 (file)
@@ -1,7 +1,7 @@
 dnl $OpenLDAP$
 dnl This work is part of OpenLDAP Software <http://www.openldap.org/>.
 dnl
-dnl Copyright 1998-2004 The OpenLDAP Foundation.
+dnl Copyright 1998-2005 The OpenLDAP Foundation.
 dnl All rights reserved.
 dnl
 dnl Redistribution and use in source and binary forms, with or without
@@ -23,7 +23,7 @@ define([AC_INIT_BINSH],
 
 # 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
@@ -34,7 +34,7 @@ define([AC_INIT_BINSH],
 # 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 ----------------------------------------------------------------
@@ -242,8 +242,8 @@ OL_ARG_ENABLE(sql,[    --enable-sql   enable sql backend no|yes|mod],
 
 dnl ----------------------------------------------------------------
 dnl SLAPD Overlay Options
-Overlays="chain denyop dyngroup lastmod ppolicy proxycache rwm \
-       refint unique"
+Overlays="chain denyop dyngroup glue lastmod ppolicy proxycache rwm \
+       refint syncprov unique"
 
 AC_ARG_WITH(xxslapoverlays,[
 SLAPD Overlay Options:])
@@ -256,6 +256,8 @@ 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(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],
        no, [no yes mod])
 OL_ARG_ENABLE(ppolicy,[    --enable-ppolicy      Password Policy overlay no|yes|mod],
@@ -266,6 +268,8 @@ OL_ARG_ENABLE(refint,[    --enable-refint     Referential Integrity overlay no|yes
        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],
+       yes, [no yes mod])
 OL_ARG_ENABLE(unique,[    --enable-unique       Attribute Uniqueness overlay no|yes|mod],
        no, [no yes mod])
 
@@ -523,11 +527,13 @@ BUILD_SQL=no
 BUILD_CHAIN=no
 BUILD_DENYOP=no
 BUILD_DYNGROUP=no
+BUILD_GLUE=no
 BUILD_LASTMOD=no
 BUILD_PPOLICY=no
 BUILD_PROXYCACHE=no
 BUILD_REFINT=no
 BUILD_RWM=no
+BUILD_SYNCPROV=no
 BUILD_UNIQUE=no
 
 SLAPD_DYNAMIC_OVERLAYS=
@@ -710,6 +716,7 @@ esac
 dnl ----------------------------------------------------------------
 dnl Check for module support
 ol_link_modules=no
+WITH_MODULES_ENABLED=no
 if test $ol_enable_modules != no ; then
        AC_CHECK_HEADERS(ltdl.h)
 
@@ -726,6 +733,7 @@ if test $ol_enable_modules != no ; then
                AC_MSG_ERROR([could not locate libtool -lltdl])
        fi
        ol_link_modules=yes
+       WITH_MODULES_ENABLED=yes
 
 else
        for i in $Backends; do
@@ -886,6 +894,20 @@ dnl ----------------------------------------------------------------
 AC_CHECK_FUNCS( poll )
 AC_CHECK_HEADERS( poll.h )
 
+dnl ----------------------------------------------------------------
+AC_CHECK_HEADERS( sys/epoll.h )
+if test "${ac_cv_header_sys_epoll_h}" = yes; then
+AC_MSG_CHECKING(for epoll system call)
+AC_TRY_RUN(
+int main(int argc, char *argv[])
+{
+       int epfd = epoll_create(256);
+       exit (epfd == -1 ? 1 : 0);
+}, [AC_MSG_RESULT(yes)
+AC_DEFINE(HAVE_EPOLL,1, [define if your system supports epoll])],
+AC_MSG_RESULT(no),AC_MSG_RESULT(no))
+fi
+
 dnl ----------------------------------------------------------------
 # strerror checks
 OL_STRERROR
@@ -1258,6 +1280,13 @@ if test $ol_with_tls != no ; then
                                TLS_LIBS="-lssl -lcrypto"
                        fi
                fi
+               OL_SSL_COMPAT
+               if test $ol_cv_ssl_crl_compat = no ; then
+                       ol_link_ssl=no
+                else 
+                       AC_DEFINE(HAVE_OPENSSL_CRL, 1, 
+                               [define if you have OpenSSL with CRL checking capability])
+               fi
        fi
 
 else
@@ -2776,6 +2805,17 @@ if test "$ol_enable_dyngroup" != no ; then
        AC_DEFINE_UNQUOTED(SLAPD_OVER_DYNGROUP,$MFLAG,[define for Dynamic Group 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
+       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
@@ -2832,6 +2872,17 @@ if test "$ol_enable_rwm" != no ; then
        AC_DEFINE_UNQUOTED(SLAPD_OVER_RWM,$MFLAG,[define for Rewrite/Remap overlay])
 fi
 
+if test "$ol_enable_syncprov" != no ; then
+       BUILD_SYNCPROV=$ol_enable_syncprov
+       if test "$ol_enable_syncprov" = mod ; then
+               MFLAG=SLAPD_MOD_DYNAMIC
+               SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS syncprov.la"
+       else
+               MFLAG=SLAPD_MOD_STATIC
+       fi
+       AC_DEFINE_UNQUOTED(SLAPD_OVER_SYNCPROV,$MFLAG,[define for Syncrepl Provider overlay])
+fi
+
 if test "$ol_enable_unique" != no ; then
        BUILD_UNIQUE=$ol_enable_unique
        if test "$ol_enable_unique" = mod ; then
@@ -2873,16 +2924,11 @@ else
        PLAT=UNIX
 fi
 
-if test -z "$SLAPD_STATIC_BACKENDS"; then
-       SLAPD_NO_STATIC='#'
-else
-       SLAPD_NO_STATIC=
-fi
-
 AC_SUBST(LIBSRCS)
 AC_SUBST(PLAT)
 AC_SUBST(WITH_SASL)
 AC_SUBST(WITH_TLS)
+AC_SUBST(WITH_MODULES_ENABLED)
 AC_SUBST(BUILD_LIBS_DYNAMIC)
 
 AC_SUBST(BUILD_SLAPD)
@@ -2907,11 +2953,13 @@ dnl overlays
   AC_SUBST(BUILD_CHAIN)
   AC_SUBST(BUILD_DENYOP)
   AC_SUBST(BUILD_DYNGROUP)
+  AC_SUBST(BUILD_GLUE)
   AC_SUBST(BUILD_LASTMOD)
   AC_SUBST(BUILD_PPOLICY)
   AC_SUBST(BUILD_PROXYCACHE)
   AC_SUBST(BUILD_REFINT)
   AC_SUBST(BUILD_RWM)
+  AC_SUBST(BUILD_SYNCPROV)
   AC_SUBST(BUILD_UNIQUE)
 AC_SUBST(BUILD_SLURPD)
 
@@ -3004,5 +3052,57 @@ tests/progs/Makefile:build/top.mk:tests/progs/Makefile.in:build/rules.mk \
 ,[
 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 ${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 ${STATIC_BACKENDS}; do
+               bb=`echo "${b}" | sed -e 's/back-//'`
+               echo "    Add ${bb} ..."
+               cat >> $BACKENDSC << ENDX
+       { "${bb}", ${bb}_back_initialize },
+ENDX
+       done
+
+       cat >> $BACKENDSC << ENDX
+       { NULL, NULL },
+};
+
+/* end of generated file */
+ENDX
+fi
+
 echo Please run \"make depend\" to build dependencies
-])
+],[STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS"])