dnl $OpenLDAP$
dnl This work is part of OpenLDAP Software <http://www.openldap.org/>.
dnl
-dnl Copyright 1998-2003 The OpenLDAP Foundation.
+dnl Copyright 1998-2004 The OpenLDAP Foundation.
dnl All rights reserved.
dnl
dnl Redistribution and use in source and binary forms, with or without
# This work is part of OpenLDAP Software <http://www.openldap.org/>.
#
-# Copyright 1998-2003 The OpenLDAP Foundation.
+# Copyright 1998-2004 The OpenLDAP Foundation.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# top-level directory of the distribution or, alternatively, at
# <http://www.OpenLDAP.org/license.html>.
-echo "Copyright 1998-2003 The OpenLDAP Foundation. All rights reserved."
+echo "Copyright 1998-2004 The OpenLDAP Foundation. All rights reserved."
echo " Restrictions apply, see COPYRIGHT and LICENSE files."
])dnl
dnl ----------------------------------------------------------------
AC_DEFINE_UNQUOTED(LDAP_VENDOR_VERSION_MINOR,$OL_MINOR,Minor)
AC_DEFINE_UNQUOTED(LDAP_VENDOR_VERSION_PATCH,$OL_PATCH,Patch)
-OPENLDAP_LIBVERSION=$OL_API_LIB
+OPENLDAP_LIBRELEASE=$OL_API_LIB_RELEASE
+AC_SUBST(OPENLDAP_LIBRELEASE)dnl
+
+OPENLDAP_LIBVERSION=$OL_API_LIB_VERSION
AC_SUBST(OPENLDAP_LIBVERSION)dnl
OPENLDAP_RELEASE_DATE="$OL_RELEASE_DATE"
AC_SUBST(OPENLDAP_RELEASE_DATE)dnl
-dnl We use autoconf features new to 2.13.
+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.2 should be installed.
+dnl libtool 1.4.3 should be installed.
AC_PREREQ(2.13)dnl Required Autoconf version
AC_CONFIG_HEADER(include/portable.h include/ldap_features.h include/lber_types.h)dnl
ol_enable_kbind=${ol_enable_kbind-no}
OL_ARG_ENABLE(ipv6,[ --enable-ipv6 enable IPv6 support], auto)dnl
OL_ARG_ENABLE(local,[ --enable-local enable AF_LOCAL (AF_UNIX) socket support], auto)dnl
-OL_ARG_ENABLE(x_compile,[ --enable-x-compile enable cross compiling],
- no, [yes no])dnl
dnl ----------------------------------------------------------------
dnl General "with" options
OL_ARG_ENABLE(aci,[ --enable-aci enable per-object ACIs (experimental)], no)dnl
OL_ARG_ENABLE(cleartext,[ --enable-cleartext enable cleartext passwords], yes)dnl
OL_ARG_ENABLE(crypt,[ --enable-crypt enable crypt(3) passwords], no)dnl
-dnl OL_ARG_ENABLE(kpasswd,[ --enable-kpasswd enable Kerberos password verification], no)dnl
-ol_enable_kpasswd=${ol_enable_kpasswd-no}
OL_ARG_ENABLE(lmpasswd,[ --enable-lmpasswd enable LAN Manager passwords], no)dnl
OL_ARG_ENABLE(spasswd,[ --enable-spasswd enable (Cyrus) SASL password verification], no)dnl
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 back-meta], no)dnl
+OL_ARG_ENABLE(rewrite,[ --enable-rewrite enable DN rewriting in back-ldap and the 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(wrappers,[ --enable-wrappers enable tcp wrapper support], no)dnl
+dnl ----------------------------------------------------------------
+dnl SLAPD Backend Options
+Backends="bdb dnssrv hdb ldap ldbm meta monitor null \
+ passwd perl relay shell sql"
+
+AC_ARG_WITH(xxslapbackends,[
+SLAPD Backend Options:])
+
+OL_ARG_ENABLE(backends,[ --enable-backends enable all available backends no|yes|mod],
+ no, [no yes mod])dnl
+OL_ARG_ENABLE(bdb,[ --enable-bdb enable Berkeley DB backend no|yes|mod],
+ yes, [no yes mod])dnl
+OL_ARG_ENABLE(dnssrv,[ --enable-dnssrv enable dnssrv backend no|yes|mod],
+ no, [no yes mod])dnl
+OL_ARG_ENABLE(hdb,[ --enable-hdb enable Hierarchical DB backend no|yes|mod],
+ no, [no yes mod])dnl
+OL_ARG_ENABLE(ldap,[ --enable-ldap enable ldap backend no|yes|mod],
+ no, [no yes mod])dnl
+OL_ARG_ENABLE(ldbm,[ --enable-ldbm enable ldbm backend no|yes|mod], no,
+ [no yes mod])dnl
+OL_ARG_WITH(ldbm_api,[ --with-ldbm-api with LDBM API auto|berkeley|bcompat|mdbm|gdbm],
+ 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_ARG_ENABLE(monitor,[ --enable-monitor enable monitor backend no|yes|mod],
+ yes, [no yes mod])dnl
+OL_ARG_ENABLE(null,[ --enable-null enable null backend no|yes|mod],
+ no, [no yes mod])dnl
+OL_ARG_ENABLE(passwd,[ --enable-passwd enable passwd backend no|yes|mod],
+ no, [no yes mod])dnl
+OL_ARG_ENABLE(perl,[ --enable-perl enable perl backend no|yes|mod],
+ no, [no yes mod])dnl
+OL_ARG_ENABLE(relay,[ --enable-relay enable relay backend no|yes|mod],
+ yes, [no yes mod])dnl
+OL_ARG_ENABLE(shell,[ --enable-shell enable shell backend no|yes|mod],
+ no, [no yes mod])dnl
+OL_ARG_ENABLE(sql,[ --enable-sql enable sql backend no|yes|mod],
+ no, [no yes mod])dnl
+
+dnl ----------------------------------------------------------------
+dnl SLAPD Overlay Options
+Overlays="chain denyop dyngroup lastmod ppolicy proxycache rwm \
+ refint 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
+OL_ARG_ENABLE(chain,[ --enable-chain LDAP Chain Response no|yes|mod],
+ no, [no yes mod])
+OL_ARG_ENABLE(denyop,[ --enable-denyop Deny Operation overlay no|yes|mod],
+ no, [no yes mod])
+OL_ARG_ENABLE(dyngroup,[ --enable-dyngroup Dynamic Group overlay no|yes|mod],
+ no, [no yes mod])
+OL_ARG_ENABLE(lastmod,[ --enable-lastmod Last Modification overlay no|yes|mod],
+ no, [no yes mod])
+OL_ARG_ENABLE(ppolicy,[ --enable-ppolicy Password Policy overlay no|yes|mod],
+ no, [no yes mod])
+OL_ARG_ENABLE(proxycache,[ --enable-proxycache Proxy Cache overlay no|yes|mod],
+ no, [no yes mod])
+OL_ARG_ENABLE(refint,[ --enable-refint Referential Integrity overlay no|yes|mod],
+ no, [no yes mod])
+OL_ARG_ENABLE(rwm,[ --enable-rwm Rewrite/Remap overlay no|yes|mod],
+ no, [no yes mod])
+OL_ARG_ENABLE(unique,[ --enable-unique Attribute Uniqueness overlay no|yes|mod],
+ no, [no yes mod])
-dnl SLAPD Backend options
-OL_ARG_ENABLE(bdb,[ --enable-bdb enable Berkeley DB backend], yes)dnl
-OL_ARG_WITH(bdb_module,[ --with-bdb-module module type static|dynamic], static,
- [static dynamic])
-OL_ARG_ENABLE(dnssrv,[ --enable-dnssrv enable dnssrv backend], no)dnl
-OL_ARG_WITH(dnssrv_module,[ --with-dnssrv-module module type static|dynamic], static,
- [static dynamic])
-OL_ARG_ENABLE(hdb,[ --enable-hdb enable Hierarchical DB backend], no)dnl
-OL_ARG_WITH(hdb_module,[ --with-hdb-module module type static|dynamic], static,
- [static dynamic])
-OL_ARG_ENABLE(ldap,[ --enable-ldap enable ldap backend], no)dnl
-OL_ARG_WITH(ldap_module,[ --with-ldap-module module type static|dynamic], static,
- [static dynamic])
-OL_ARG_ENABLE(ldbm,[ --enable-ldbm enable ldbm backend], no)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_module,[ --with-ldbm-module module type static|dynamic], static,
- [static dynamic])
-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)dnl
-OL_ARG_WITH(meta_module,[ --with-meta-module module type static|dynamic], static,
- [static dynamic])
-OL_ARG_ENABLE(monitor,[ --enable-monitor enable monitor backend], yes)dnl
-OL_ARG_WITH(monitor_module,[ --with-monitor-module module type static|dynamic], static,
- [static dynamic])
-OL_ARG_ENABLE(null,[ --enable-null enable null backend], no)dnl
-OL_ARG_WITH(null_module,[ --with-null-module module type static|dynamic], static,
- [static dynamic])
-OL_ARG_ENABLE(passwd,[ --enable-passwd enable passwd backend], no)dnl
-OL_ARG_WITH(passwd_module,[ --with-passwd-module module type static|dynamic], static,
- [static dynamic])
-OL_ARG_ENABLE(perl,[ --enable-perl enable perl backend], no)dnl
-OL_ARG_WITH(perl_module,[ --with-perl-module module type static|dynamic], static,
- [static dynamic])
-OL_ARG_ENABLE(shell,[ --enable-shell enable shell backend], no)dnl
-OL_ARG_WITH(shell_module,[ --with-shell-module module type static|dynamic], static,
- [static dynamic])
-OL_ARG_ENABLE(sql,[ --enable-sql enable sql backend], no)dnl
-OL_ARG_WITH(sql_module,[ --with-sql-module module type static|dynamic], static,
- [static dynamic])
-OL_ARG_ENABLE(tcl,[ --enable-tcl enable tcl backend], no)dnl
-OL_ARG_WITH(tcl_module,[ --with-tcl-module module type static|dynamic], static,
- [static dynamic])
dnl ----------------------------------------------------------------
dnl SLURPD OPTIONS
dnl ----------------------------------------------------------------
dnl General "enable" options
+# Activate any backends that were not explicitly enabled.
+# Note that back_bdb defaults to "yes" so this loop won't touch it.
+if test $ol_enable_backends != no ; then
+ for i in $Backends; do
+ eval "ol_tmp=\$ol_enable_$i"
+ if test $ol_tmp = no ; then
+ eval "ol_enable_$i=$ol_enable_backends"
+ fi
+ done
+fi
+# Activate the overlays
+if test $ol_enable_overlays != no ; then
+ for i in $Overlays; do
+ eval "ol_tmp=\$ol_enable_$i"
+ if test $ol_tmp = no ; then
+ eval "ol_enable_$i=$ol_enable_overlays"
+ fi
+ done
+fi
+
# validate options
if test $ol_enable_slapd = no ; then
dnl SLAPD was specificallly disabled
if test $ol_enable_slapi = yes ; then
AC_MSG_WARN([slapd disabled, ignoring --enable-slapi argument])
fi
- if test $ol_enable_bdb = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-bdb argument])
- fi
- if test $ol_enable_dnssrv = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-dnssrv argument])
- fi
- if test $ol_enable_hdb = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-hdb argument])
- fi
- if test $ol_enable_ldap = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-ldap argument])
- fi
- if test $ol_enable_ldbm = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-ldbm argument])
- fi
- if test $ol_enable_meta = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-meta argument])
- fi
- if test $ol_enable_monitor = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-monitor argument])
- fi
- if test $ol_enable_null = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-null argument])
- fi
- if test $ol_enable_passwd = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-passwd argument])
- fi
- if test $ol_enable_perl = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-perl argument])
- fi
- if test $ol_enable_shell = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-shell argument])
- fi
- if test $ol_enable_tcl = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-tcl argument])
- fi
- if test $ol_enable_sql = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-sql argument])
+ if test $ol_enable_backends != no ; then
+ AC_MSG_WARN([slapd disabled, ignoring --enable-backends argument])
fi
+ for i in $Backends; do
+ eval "ol_tmp=\$ol_enable_$i"
+ if test $ol_tmp != no ; then
+ AC_MSG_WARN([slapd disabled, ignoring --enable-$i argument])
+ eval "ol_enable_$i=no"
+ fi
+ done
if test $ol_enable_modules = yes ; then
AC_MSG_WARN([slapd disabled, ignoring --enable-modules argument])
fi
if test $ol_with_ldbm_type != auto ; then
AC_MSG_WARN([slapd disabled, ignoring --with-ldbm-type argument])
fi
- if test $ol_with_bdb_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-bdb-module argument])
- fi
- if test $ol_with_dnssrv_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-dnssrv-module argument])
- fi
- if test $ol_with_hdb_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-hdb-module argument])
- fi
- if test $ol_with_ldap_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-ldap-module argument])
- fi
- if test $ol_with_ldbm_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-ldbm-module argument])
- fi
- if test $ol_with_meta_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-meta-module argument])
- fi
- if test $ol_with_monitor_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-monitor-module argument])
- fi
- if test $ol_with_null_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-null-module argument])
- fi
- if test $ol_with_passwd_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-passwd-module argument])
- fi
- if test $ol_with_perl_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-perl-module argument])
- fi
- if test $ol_with_shell_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-shell-module argument])
- fi
- if test $ol_with_tcl_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-tcl-module argument])
- fi
- if test $ol_with_sql_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-sql-module argument])
- fi
if test $ol_enable_slurpd = yes ; then
AC_MSG_ERROR([slurpd requires slapd])
fi
if test $ol_enable_rewrite = yes ; then
AC_MSG_WARN([slapd disabled, ignoring --enable-rewrite argument])
fi
+ dnl overlays
+ if test $ol_enable_overlays != no ; then
+ AC_MSG_WARN([slapd disabled, ignoring --enable-overlays argument])
+ fi
+ for i in $Overlays; do
+ eval "ol_tmp=\$ol_enable_$i"
+ if test $ol_tmp != no ; then
+ AC_MSG_WARN([slapd disabled, ignoring --enable-$i argument])
+ eval "ol_enable_$i=no"
+ fi
+ done
# force settings to no
ol_enable_slapi=no
- ol_enable_bdb=no
- ol_enable_dnssrv=no
- ol_enable_hdb=no
- ol_enable_ldap=no
- ol_enable_ldbm=no
- ol_enable_meta=no
- ol_enable_monitor=no
- ol_enable_null=no
- ol_enable_passwd=no
- ol_enable_perl=no
- ol_enable_shell=no
- ol_enable_tcl=no
- ol_enable_sql=no
+ ol_enable_backends=no
+ ol_enable_overlays=no
ol_enable_modules=no
ol_enable_multimaster=no
ol_enable_rlookups=no
ol_enable_aci=no
ol_enable_wrappers=no
- ol_enable_dynamic=no
ol_with_ldbm_api=no
ol_with_ldbm_type=no
- ol_with_bdb_module=static
- ol_with_dnssrv_module=static
- ol_with_hdb_module=static
- ol_with_ldap_module=static
- ol_with_ldbm_module=static
- ol_with_meta_module=static
- ol_with_monitor_module=static
- ol_with_null_module=static
- ol_with_passwd_module=static
- ol_with_perl_module=static
- ol_with_shell_module=static
- ol_with_tcl_module=static
- ol_with_sql_module=static
-
ol_enable_slurpd=no
ol_enable_rewrite=no
AC_MSG_WARN([LDBM disabled, ignoring --with-ldbm-type argument])
fi
- if test $ol_with_ldbm_module != static ; then
- AC_MSG_WARN([LDBM disabled, ignoring --with-ldbm-module argument])
- fi
-
if test $ol_enable_modules != yes -a \
$ol_enable_bdb = no -a \
$ol_enable_dnssrv = no -a \
$ol_enable_null = no -a \
$ol_enable_passwd = no -a \
$ol_enable_perl = no -a \
+ $ol_enable_relay = no -a \
$ol_enable_shell = no -a \
- $ol_enable_sql = no -a \
- $ol_enable_tcl = no ; then
+ $ol_enable_sql = no ; then
if test $ol_enable_slapd = yes ; then
AC_MSG_ERROR([slapd requires a backend])
ol_with_ldbm_api=no
ol_with_ldbm_type=no
- ol_with_ldbm_module=static
if test $ol_enable_bdb != no -o $ol_enable_hdb != no; then
ol_with_ldbm_api=berkeley
AC_MSG_ERROR([NDBM only supports LDBM type hash])
fi
- if test $ol_enable_bdb = yes -o $ol_enable_hdb = yes ; then
+ if test $ol_enable_bdb != no -o $ol_enable_hdb != no ; then
if test $ol_with_ldbm_api = auto ; then
ol_with_ldbm_api=berkeley
elif test $ol_with_ldbm_api != berkeley ; then
AC_MSG_ERROR([LDBM API not compatible with BDB/HDB])
fi
-
- elif test $ol_enable_bdb = auto ; then
- if test $ol_with_ldbm_api != berkeley \
- -o $ol_with_ldbm_api != auto ; then
- AC_MSG_WARN([LDBM API not compatible with BDB, disabling BDB])
- ol_enable_bdb=no
- 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_slurpd = yes ; then
dnl SLURPD was specifically enabled
if test $ol_with_threads = no ; then
fi
fi
-if test $ol_enable_kbind = yes -o $ol_enable_kpasswd = yes ; then
+if test $ol_enable_kbind = yes ; then
if test $ol_with_kerberos = no ; then
AC_MSG_ERROR([options require --with-kerberos])
elif test $ol_with_kerberos = auto ; then
ol_with_kerberos=yes
fi
-elif test $ol_enable_kbind = no -o $ol_enable_kpasswd = no ; then
+elif test $ol_enable_kbind = no ; then
if test $ol_with_kerberos = auto ; then
ol_with_kerberos=no
elif test $ol_with_kerberos != no ; then
BUILD_LDBM=no
BUILD_META=no
BUILD_MONITOR=no
-BUILD_CACHE=no
BUILD_NULL=no
BUILD_PASSWD=no
BUILD_PERL=no
+BUILD_RELAY=no
BUILD_SHELL=no
BUILD_SQL=no
-BUILD_TCL=no
-
-BUILD_BDB_DYNAMIC=static
-BUILD_DNSSRV_DYNAMIC=static
-BUILD_HDB_DYNAMIC=static
-BUILD_LDAP_DYNAMIC=static
-BUILD_LDBM_DYNAMIC=static
-BUILD_META_DYNAMIC=static
-BUILD_MONITOR_DYNAMIC=static
-BUILD_NULL_DYNAMIC=static
-BUILD_PASSWD_DYNAMIC=static
-BUILD_PERL_DYNAMIC=static
-BUILD_SHELL_DYNAMIC=static
-BUILD_TCL_DYNAMIC=static
-BUILD_SQL_DYNAMIC=static
+
+BUILD_CHAIN=no
+BUILD_DENYOP=no
+BUILD_DYNGROUP=no
+BUILD_LASTMOD=no
+BUILD_PPOLICY=no
+BUILD_PROXYCACHE=no
+BUILD_REFINT=no
+BUILD_RWM=no
+BUILD_UNIQUE=no
+
+SLAPD_DYNAMIC_OVERLAYS=
SLAPD_MODULES_LDFLAGS=
SLAPD_MODULES_CPPFLAGS=
SLAPD_SQL_LIBS=
SLAPD_SQL_INCLUDES=
-MOD_TCL_LIB=
KRB4_LIBS=
KRB5_LIBS=
SASL_LIBS=
-TERMCAP_LIBS=
TLS_LIBS=
MODULES_LIBS=
SLAPI_LIBS=
dnl ================================================================
dnl Checks for programs
-AC_PROG_INSTALL
-
AC_DEFINE(HAVE_MKVERSION, 1, [define this if you have mkversion])
dnl ----------------------------------------------------------------
AC_LIBTOOL_DLOPEN
AC_PROG_LIBTOOL
-OL_PROG_LN_H
-AC_PROG_LN_S
-
dnl ----------------------------------------------------------------
dnl Perl
ol_link_perl=no
else
PERL_CPPFLAGS="`$PERLBIN -MExtUtils::Embed -e ccopts`"
- PERL_LDFLAGS="`$PERLBIN -MExtUtils::Embed -e ldopts|sed -e 's/ -lc / /'`"
+ PERL_LDFLAGS="`$PERLBIN -MExtUtils::Embed -e ldopts|sed -e 's/ -lc / /' -e 's/ -lc$//'`"
- if test x"$ol_with_perl_module" = "xstatic" ; then
+ if test x"$ol_enable_perl" = "xyes" ; then
SLAPD_PERL_LDFLAGS="$PERL_LDFLAGS"
else
MOD_PERL_LDFLAGS="$PERL_LDFLAGS"
AC_PROG_CPP
-dnl ----------------------------------------------------------------
-dnl Cross compiling checks
-if test $cross_compiling = yes -a $ol_enable_x_compile = yes; then
- AC_MSG_WARN([cross compiling.... some functionality will be removed.])
-
-elif test $cross_compiling = no -a $ol_enable_x_compile = yes; then
- AC_MSG_WARN([programs compiled here do run here...])
- AC_MSG_ERROR([ if not cross compiling, use --disable-x-compile.])
-
-elif test $cross_compiling = yes -a $ol_enable_x_compile = no; then
- AC_MSG_WARN([programs compiled here do not run here...])
- AC_MSG_ERROR([ if cross compiling, add --enable-x-compile.])
-fi
-
dnl ----------------------------------------------------------------
dnl Checks for UNIX Variants
dnl AC_AIX
AC_MSG_ERROR([could not locate libtool -lltdl])
fi
ol_link_modules=yes
+
else
- ol_with_bdb_module=static
- ol_with_dnssrv_module=static
- ol_with_hdb_module=static
- ol_with_ldap_module=static
- ol_with_ldbm_module=static
- ol_with_meta_module=static
- ol_with_monitor_module=static
- ol_with_null_module=static
- ol_with_passwd_module=static
- ol_with_perl_module=static
- ol_with_shell_module=static
- ol_with_tcl_module=static
- ol_with_sql_module=static
+ for i in $Backends; do
+ eval "ol_tmp=\$ol_enable_$i"
+ if test $ol_tmp = mod ; then
+ AC_MSG_WARN([building static $i backend])
+ eval "ol_enable_$i=yes"
+ fi
+ done
+ for i in $Overlays; do
+ eval "ol_tmp=\$ol_enable_$i"
+ if test $ol_tmp = mod ; then
+ AC_MSG_WARN([building static $i overlay])
+ eval "ol_enable_$i=yes"
+ fi
+ done
fi
dnl ----------------------------------------------------------------
arpa/inet.h \
arpa/nameser.h \
assert.h \
+ bits/types.h \
conio.h \
crypt.h \
direct.h \
dnl ----------------------------------------------------------------
dnl Checks for libraries
-AC_CHECK_FUNC(dlopen, :, [AC_CHECK_LIB(dl, dlopen)])
-
dnl HP-UX requires -lV3
dnl this is not needed on newer versions of HP-UX
AC_CHECK_LIB(V3, sigset)
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
-AC_MSG_CHECKING(for winsock)
+if test "$ac_cv_header_winsock_h" = yes; then
+AC_CACHE_CHECK([for winsock], [ol_cv_winsock],
save_LIBS="$LIBS"
for curlib in ws2_32 wsock32; do
LIBS="$LIBS -l$curlib"
- AC_TRY_LINK([
- char socket@12();
- char select@20();
- char closesocket@4();
- char gethostname@8();
+ AC_TRY_LINK([#include <winsock.h>
],
[
- socket@12();
- select@20();
- closesocket@4();
- gethostname@8();
+ socket(0,0,0);
+ select(0,NULL,NULL,NULL,NULL);
+ closesocket(0);
+ gethostname(NULL,0);
],
- have_winsock=yes, have_winsock=no)
+ ol_cv_winsock=yes, ol_cv_winsock=no)
- if test $have_winsock = yes; then
+ if test $ol_cv_winsock = yes; then
AC_DEFINE(HAVE_WINSOCK, 1, [define if you have winsock])
ac_cv_func_socket=yes
ac_cv_func_select=yes
ac_cv_func_closesocket=yes
ac_cv_func_gethostname=yes
if test $curlib = ws2_32; then
- have_winsock=winsock2
+ ol_cv_winsock=winsock2
AC_DEFINE(HAVE_WINSOCK2, 1,
[define if you have winsock2])
fi
break
fi
LIBS="$save_LIBS"
-done
-AC_MSG_RESULT($have_winsock)
+done)
+fi
dnl Find socket()
dnl Likely combinations:
dnl check to see if system call automatically restart
dnl AC_SYS_RESTARTABLE_SYSCALLS
+dnl ----------------------------------------------------------------
+# strerror checks
+OL_STRERROR
+
dnl ----------------------------------------------------------------
dnl require POSIX regex
AC_CHECK_HEADERS( regex.h )
save_LIBS="$LIBS"
LIBS="$LIBS -lrpcrt4"
AC_TRY_LINK([
- char UuidCreate@4();
- char UuidToStringA@8();
+ int __stdcall UuidCreate(void *);
+ int __stdcall UuidToStringA(void *,void **);
],
[
- UuidCreate@4();
- UuidToStringA@8();
+ UuidCreate(0);
+ UuidToStringA(0,0);
],
need_rpcrt=yes, need_rpcrt=no)
if test $need_rpcrt = yes; then
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
AC_DEFINE(HAVE_RES_QUERY,1,
[define if you have res_query()])
fi
fi
-if test "$ol_enable_dnssrv" = yes -a "$ol_link_dnssrv" = no ; then
+if test "$ol_enable_dnssrv" != no -a "$ol_link_dnssrv" = no ; then
AC_MSG_ERROR([DNSSRV requires res_query()])
fi
+AC_CHECK_FUNCS( hstrerror )
+
dnl ----------------------------------------------------------------
dnl PF_INET6 support requires getaddrinfo and INET6_ADDRSTRLEN
dnl PF_LOCAL may use getaddrinfo in available
dnl ----------------------------------------------------------------
dnl Kerberos
ol_link_kbind=no
-ol_link_kpasswd=no
ol_link_krb5=no
ol_link_krb4=no
AC_DEFINE(HAVE_KRB5, 1,
[define if you have Kerberos V])
- if test $ol_enable_kpasswd != no ; then
- ol_link_kpasswd=yes;
- fi
-
if test $ol_with_kerberos = k5only ; then
ol_with_kerberos=found
fi
fi
fi
-if test $ol_link_krb4 = yes -a $ol_enable_kpasswd != no ; then
- ol_link_kpasswd=yes
-fi
-
if test $ol_link_krb4 = yes -a $ol_enable_kbind != no ; then
ol_link_kbind=yes
fi
fi
-if test $ol_enable_bdb = yes -a $ol_link_ldbm != berkeley ; then
- AC_MSG_ERROR(BDB: BerkeleyDB not available)
-elif test $ol_enable_bdb != no -a $ol_link_ldbm = berkeley ; then
- OL_BDB_COMPAT
-
- if test $ol_cv_bdb_compat = yes ; then
- ol_enable_bdb=yes
- elif test $ol_enable_bdb = yes ; then
- AC_MSG_ERROR(BDB: BerkeleyDB version incompatible)
+if test $ol_enable_bdb != no -o $ol_enable_hdb != no; then
+ if test $ol_link_ldbm != berkeley ; then
+ AC_MSG_ERROR(BDB/HDB: BerkeleyDB not available)
else
- ol_enable_bdb=no
+ OL_BDB_COMPAT
+
+ if test $ol_cv_bdb_compat != yes ; then
+ AC_MSG_ERROR([BDB/HDB: BerkeleyDB version incompatible])
+ fi
fi
fi
-if test $ol_enable_hdb = yes -a $ol_link_ldbm != berkeley ; then
- AC_MSG_ERROR(HDB: BerkeleyDB not available)
-fi
if test $ol_link_ldbm = no -a $ol_with_ldbm_type = btree ; then
- AC_MSG_WARN(Could not find LDBM with BTREE support)
+ AC_MSG_WARN([Could not find LDBM with BTREE support])
ol_with_ldbm_api=none
fi
fi
if test $ol_link_ldbm = no -a $ol_enable_ldbm != no ; then
- AC_MSG_WARN(could not find suitable LDBM backend)
- if test $ol_enable_ldbm = yes ; then
- AC_MSG_ERROR(select appropriate LDBM options or disable)
- fi
+ AC_MSG_ERROR([could not find suitable LDBM backend])
+fi
- AC_MSG_WARN(disabling LDBM)
- ol_enable_ldbm=no
+if test $ol_enable_bdb = yes -o \
+ $ol_enable_hdb = yes -o \
+ $ol_enable_ldbm = yes ; then
+ SLAPD_LIBS="$SLAPD_LIBS \$(LDBM_LIBS)"
fi
dnl ----------------------------------------------------------------
fi
fi
-dnl ----------------------------------------------------------------
-dnl TCL
-if test $ol_enable_tcl != no ; then
- AC_CHECK_HEADERS(tcl.h)
-
- if test $ac_cv_header_tcl_h != yes ; then
- have_tcl=no
- else
- for lib in tcl tcl7.6 tcl8.0 tcl8.2 ; do
- AC_CHECK_LIB($lib,main,
- [have_tcl=yes
- if test x"$ol_with_tcl_module" = "xstatic" ; then
- SLAPD_LIBS="$SLAPD_LIBS -l${lib}"
- else
- MOD_TCL_LIB="-l${lib}"
- fi;break],[have_tcl=no])
- done
- fi
-
- if test $have_tcl != yes ; then
- AC_MSG_WARN([could not find -ltcl])
- if test $ol_enable_tcl = yes ; then
- AC_MSG_ERROR([could not find tcl, select appropriate options or disable])
- fi
-
- ol_enable_tcl=no
- fi
-fi
-
-dnl ----------------------------------------------------------------
-dnl ud needs termcap (should insert check here)
-ol_link_termcap=no
-AC_CHECK_HEADERS(termcap.h ncurses.h)
-
-if test $ol_link_termcap = no ; then
- AC_CHECK_LIB(termcap, tputs, [have_termcap=yes], [have_termcap=no])
- if test $have_termcap = yes ; then
- AC_DEFINE(HAVE_TERMCAP, 1, [define if you have -ltermcap])
- ol_link_termcap=yes
- TERMCAP_LIBS=-ltermcap
- fi
-fi
-
-if test $ol_link_termcap = no ; then
- AC_CHECK_LIB(ncurses, initscr, [have_ncurses=yes], [have_ncurses=no])
- if test $have_ncurses = yes ; then
- AC_DEFINE(HAVE_NCURSES, 1, [define if you have -lncurses])
- ol_link_termcap=yes
- TERMCAP_LIBS=-lncurses
- fi
-fi
-
-if test $ol_link_termcap = no ; then
- AC_DEFINE(NO_TERMCAP,1, [define if you have no termcap support])
- TERMCAP_LIBS=
-fi
-
dnl ----------------------------------------------------------------
dnl
dnl Check for Cyrus SASL
dnl
+WITH_SASL=no
ol_link_sasl=no
ol_link_spasswd=no
if test $ol_with_cyrus_sasl != no ; then
OL_SASL_COMPAT
if test $ol_cv_sasl_compat = no ; then
ol_link_sasl=no
- AC_MSG_ERROR([Cyrus SASL library located but incompatible])
+ AC_MSG_ERROR([Cyrus SASL library located but is incompatible])
fi
AC_DEFINE(HAVE_CYRUS_SASL,1,[define if you have Cyrus SASL])
AC_CHECK_FUNC(sasl_version, [AC_DEFINE(HAVE_SASL_VERSION,1,
[define if your SASL library has sasl_version()])])
LIBS="$ac_save_LIBS"
+
+ WITH_SASL=yes
fi
else
if test $have_crypt = yes ; then
AC_DEFINE(HAVE_CRYPT,1, [define if crypt(3) is available])
else
- AC_MSG_WARN(could not find crypt)
+ AC_MSG_WARN([could not find crypt])
if test $ol_enable_crypt = yes ; then
- AC_MSG_ERROR(could not find crypt, select appropriate options or disable)
+ AC_MSG_ERROR([could not find crypt, select appropriate options or disable])
fi
- AC_MSG_WARN(disabling crypt support)
+ AC_MSG_WARN([disabling crypt support])
ol_enable_crypt=no
fi
fi
OL_C_VOLATILE
if test $cross_compiling = yes ; then
+ AC_MSG_WARN([Crossing compiling... all bets are off!])
AC_DEFINE(CROSS_COMPILING, 1, [define if cross compiling])
else
AC_C_BIGENDIAN
AC_COMPILE_CHECK_SIZEOF(short)
AC_COMPILE_CHECK_SIZEOF(int)
AC_COMPILE_CHECK_SIZEOF(long)
+AC_COMPILE_CHECK_SIZEOF(wchar_t)
if test "$ac_cv_sizeof_int" -lt 4 ; then
AC_MSG_WARN([OpenLDAP requires 'int' to be 32 bits or greater.])
signal \
sigset \
strdup \
- strerror \
strpbrk \
strrchr \
strsep \
fi
fi
-dnl ----------------------------------------------------------------
-# Check Configuration
-OL_SYS_ERRLIST
-
dnl ----------------------------------------------------------------
dnl Sort out defines
if test "$ol_enable_slapi" != no ; then
- dnl This check is donel also if --enable-modules is used;
+ dnl This check is done also if --enable-modules is used;
dnl it is duplicated here, 'cause it'd be cached anyway
AC_CHECK_HEADERS(ltdl.h)
if test "$ol_enable_crypt" != no ; then
AC_DEFINE(SLAPD_CRYPT,1,[define to support crypt(3) passwords])
fi
-if test "$ol_link_kpasswd" != no ; then
- AC_DEFINE(SLAPD_KPASSWD,1,[define to support Kerberos passwords])
-fi
if test "$ol_link_spasswd" != no ; then
AC_DEFINE(SLAPD_SPASSWD,1,[define to support SASL passwords])
fi
SLAPD_MODULES_LDFLAGS="-dlopen self"
fi
+AC_DEFINE(SLAPD_MOD_STATIC,1,[statically linked module])
+AC_DEFINE(SLAPD_MOD_DYNAMIC,2,[dynamically linked module])
+
if test "$ol_enable_bdb" != no ; then
- AC_DEFINE(SLAPD_BDB,1,[define to support BDB backend])
BUILD_SLAPD=yes
- BUILD_BDB=yes
- if test "$ol_with_bdb_module" != static ; then
- AC_DEFINE(SLAPD_BDB_DYNAMIC,1,
- [define to support dynamic BDB backend])
- BUILD_BDB=mod
- BUILD_BDB_DYNAMIC=shared
+ BUILD_BDB=$ol_enable_bdb
+ if test "$ol_enable_bdb" = mod ; then
SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-bdb"
+ MFLAG=SLAPD_MOD_DYNAMIC
else
SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-bdb"
+ MFLAG=SLAPD_MOD_STATIC
fi
+ AC_DEFINE_UNQUOTED(SLAPD_BDB,$MFLAG,[define to support BDB backend])
fi
-if test "$ol_link_dnssrv" != no ; then
- AC_DEFINE(SLAPD_DNSSRV,1,[define to support DNS SRV backend])
+if test "$ol_enable_dnssrv" != no ; then
BUILD_SLAPD=yes
- BUILD_DNSSRV=yes
- if test "$ol_with_dnssrv_module" != static ; then
- AC_DEFINE(SLAPD_DNSSRV_DYNAMIC,1,
- [define to support dynamic DNS SRV backend])
- BUILD_DNSSRV=mod
- BUILD_DNSSRV_DYNAMIC=shared
+ BUILD_DNSSRV=$ol_enable_dnssrv
+ if test "$ol_enable_dnssrv" = mod ; then
SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-dnssrv"
+ MFLAG=SLAPD_MOD_DYNAMIC
else
SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-dnssrv"
+ MFLAG=SLAPD_MOD_STATIC
fi
+ AC_DEFINE_UNQUOTED(SLAPD_DNSSRV,$MFLAG,[define to support DNS SRV backend])
fi
if test "$ol_enable_hdb" != no ; then
- AC_DEFINE(SLAPD_HDB,1,[define to support HDB backend])
BUILD_SLAPD=yes
- BUILD_HDB=yes
- if test "$ol_with_hdb_module" != static ; then
- AC_DEFINE(SLAPD_HDB_DYNAMIC,1,
- [define to support dynamic HDB backend])
- BUILD_HDB=mod
- BUILD_HDB_DYNAMIC=shared
+ BUILD_HDB=$ol_enable_hdb
+ if test "$ol_enable_hdb" = mod ; then
SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-hdb"
+ MFLAG=SLAPD_MOD_DYNAMIC
else
SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-hdb"
+ MFLAG=SLAPD_MOD_STATIC
fi
+ AC_DEFINE_UNQUOTED(SLAPD_HDB,$MFLAG,[define to support HDB backend])
fi
if test "$ol_enable_ldap" != no ; then
- AC_DEFINE(SLAPD_LDAP,1,[define to support LDAP backend])
BUILD_SLAPD=yes
- BUILD_LDAP=yes
- if test "$ol_with_ldap_module" != static ; then
- AC_DEFINE(SLAPD_LDAP_DYNAMIC,1,
- [define to support dynamic LDAP backend])
- BUILD_LDAP=mod
- BUILD_LDAP_DYNAMIC=shared
+ BUILD_LDAP=$ol_enable_ldap
+ if test "$ol_enable_ldap" = mod ; then
SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-ldap"
+ MFLAG=SLAPD_MOD_DYNAMIC
else
SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-ldap"
+ MFLAG=SLAPD_MOD_STATIC
fi
+ AC_DEFINE_UNQUOTED(SLAPD_LDAP,$MFLAG,[define to support LDAP backend])
fi
if test "$ol_link_ldbm" != no -a $ol_enable_ldbm != no; then
- AC_DEFINE(SLAPD_LDBM,1,[define to support LDBM backend])
BUILD_SLAPD=yes
- BUILD_LDBM=yes
- if test "$ol_with_ldbm_module" != static ; then
- AC_DEFINE(SLAPD_LDBM_DYNAMIC,1,
- [define to support dynamic LDBM backend])
- BUILD_LDBM=mod
- BUILD_LDBM_DYNAMIC=shared
+ BUILD_LDBM=$ol_enable_ldbm
+ if test "$ol_enable_ldbm" = mod ; then
SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-ldbm"
+ MFLAG=SLAPD_MOD_DYNAMIC
else
SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-ldbm"
+ MFLAG=SLAPD_MOD_STATIC
fi
+ AC_DEFINE_UNQUOTED(SLAPD_LDBM,$MFLAG,[define to support LDBM backend])
fi
if test "$ol_enable_meta" != no ; then
- if test "$ol_enable_ldap" = no ; then
- AC_MSG_ERROR([need --enable-ldap to use --enable-meta])
- fi
- if test "$ol_enable_rewrite" = no ; then
- AC_MSG_ERROR([need --enable-rewrite to use --enable-meta])
- fi
- AC_DEFINE(SLAPD_META,1,[define to support LDAP Metadirectory backend])
BUILD_SLAPD=yes
- BUILD_META=yes
+ BUILD_META=$ol_enable_meta
BUILD_REWRITE=yes
- if test $ol_enable_ldbm = yes -o \
- $ol_enable_bdb = yes ; then
- BUILD_CACHE=yes
- fi
- if test "$ol_with_meta_module" != static ; then
- AC_DEFINE(SLAPD_META_DYNAMIC,1,
- [define to support dynamic LDAP Metadirectory backend])
- BUILD_META=mod
- BUILD_META_DYNAMIC=shared
+ if test "$ol_enable_meta" = mod ; then
SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-meta"
+ MFLAG=SLAPD_MOD_DYNAMIC
else
SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-meta"
+ MFLAG=SLAPD_MOD_STATIC
fi
+ AC_DEFINE_UNQUOTED(SLAPD_META,$MFLAG,[define to support LDAP Metadirectory backend])
fi
if test "$ol_enable_monitor" != no ; then
- AC_DEFINE(SLAPD_MONITOR,1,[define to support cn=Monitor backend])
BUILD_SLAPD=yes
- BUILD_MONITOR=yes
- if test "$ol_with_monitor_module" != static ; then
- AC_DEFINE(SLAPD_MONITOR_DYNAMIC,1,
- [define to support dynamic cn=Monitor backend])
- BUILD_MONITOR=mod
- BUILD_MONITOR_DYNAMIC=shared
+ BUILD_MONITOR=$ol_enable_monitor
+ if test "$ol_enable_monitor" = mod ; then
SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-monitor"
+ MFLAG=SLAPD_MOD_DYNAMIC
else
SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-monitor"
+ MFLAG=SLAPD_MOD_STATIC
fi
+ AC_DEFINE_UNQUOTED(SLAPD_MONITOR,$MFLAG,[define to support cn=Monitor backend])
fi
if test "$ol_enable_null" != no ; then
- AC_DEFINE(SLAPD_NULL,1,[define to support NULL backend])
BUILD_SLAPD=yes
- BUILD_NULL=yes
- if test "$ol_with_null_module" != static ; then
- AC_DEFINE(SLAPD_NULL_DYNAMIC,1,
- [define to support dynamic NULL backend])
- BUILD_NULL=mod
- BUILD_NULL_DYNAMIC=shared
+ BUILD_NULL=$ol_enable_null
+ if test "$ol_enable_null" = mod ; then
SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-null"
+ MFLAG=SLAPD_MOD_DYNAMIC
else
SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-null"
+ MFLAG=SLAPD_MOD_STATIC
fi
+ AC_DEFINE_UNQUOTED(SLAPD_NULL,$MFLAG,[define to support NULL backend])
fi
if test "$ol_enable_passwd" != no ; then
- AC_DEFINE(SLAPD_PASSWD,1,[define to support PASSWD backend])
BUILD_SLAPD=yes
- BUILD_PASSWD=yes
- if test "$ol_with_passwd_module" != static ; then
- AC_DEFINE(SLAPD_PASSWD_DYNAMIC,1,
- [define to support dynamic PASSWD backend])
- BUILD_PASSWD=mod
- BUILD_PASSWD_DYNAMIC=shared
+ BUILD_PASSWD=$ol_enable_passwd
+ if test "$ol_enable_passwd" = mod ; then
SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-passwd"
+ MFLAG=SLAPD_MOD_DYNAMIC
else
SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-passwd"
+ MFLAG=SLAPD_MOD_STATIC
fi
+ AC_DEFINE_UNQUOTED(SLAPD_PASSWD,$MFLAG,[define to support PASSWD backend])
fi
if test "$ol_link_perl" != no ; then
- AC_DEFINE(SLAPD_PERL,1,[define to support PERL backend])
BUILD_SLAPD=yes
- BUILD_PERL=yes
- if test "$ol_with_perl_module" != static ; then
- AC_DEFINE(SLAPD_PERL_DYNAMIC,1,
- [define to support dynamic PERL backend])
- BUILD_PERL=mod
- BUILD_PERL_DYNAMIC=shared
+ BUILD_PERL=$ol_enable_perl
+ if test "$ol_enable_perl" = mod ; then
SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-perl"
+ MFLAG=SLAPD_MOD_DYNAMIC
else
SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-perl"
+ MFLAG=SLAPD_MOD_STATIC
fi
+ AC_DEFINE_UNQUOTED(SLAPD_PERL,$MFLAG,[define to support PERL backend])
+fi
+
+if test "$ol_enable_relay" != no ; then
+ BUILD_SLAPD=yes
+ BUILD_RELAY=$ol_enable_relay
+ if test "$ol_enable_relay" = mod ; then
+ SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-relay"
+ MFLAG=SLAPD_MOD_DYNAMIC
+ else
+ SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-relay"
+ MFLAG=SLAPD_MOD_STATIC
+ fi
+ AC_DEFINE_UNQUOTED(SLAPD_RELAY,$MFLAG,[define to support relay backend])
fi
if test "$ol_enable_shell" != no ; then
if test "$ol_link_thread" != no ; then
AC_MSG_WARN([Use of --without-threads is recommended with back-shell])
fi
- AC_DEFINE(SLAPD_SHELL,1,[define to support SHELL backend])
BUILD_SLAPD=yes
- BUILD_SHELL=yes
- if test "$ol_with_shell_module" != static ; then
- AC_DEFINE(SLAPD_SHELL_DYNAMIC,1,
- [define to support dynamic SHELL backend])
- BUILD_SHELL=mod
- BUILD_SHELL_DYNAMIC=shared
+ BUILD_SHELL=$ol_enable_shell
+ if test "$ol_enable_shell" = mod ; then
SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-shell"
+ MFLAG=SLAPD_MOD_DYNAMIC
else
SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-shell"
+ MFLAG=SLAPD_MOD_STATIC
fi
+ AC_DEFINE_UNQUOTED(SLAPD_SHELL,$MFLAG,[define to support SHELL backend])
fi
-if test "$ol_enable_tcl" != no ; then
- AC_DEFINE(SLAPD_TCL,1,[define to support TCL backend])
+if test "$ol_link_sql" != no ; then
BUILD_SLAPD=yes
- BUILD_TCL=yes
- if test "$ol_with_tcl_module" != static; then
- AC_DEFINE(SLAPD_TCL_DYNAMIC,1,
- [define to support dynamic TCL backend])
- BUILD_TCL=mod
- BUILD_TCL_DYNAMIC=shared
- SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-tcl"
+ BUILD_SQL=$ol_enable_sql
+ if test "$ol_enable_sql" = mod; then
+ SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-sql"
+ MFLAG=SLAPD_MOD_DYNAMIC
else
- SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-tcl"
+ SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-sql"
+ MFLAG=SLAPD_MOD_STATIC
fi
+ AC_DEFINE_UNQUOTED(SLAPD_SQL,$MFLAG,[define to support SQL backend])
fi
-if test "$ol_link_sql" != no ; then
- AC_DEFINE(SLAPD_SQL,1,[define to support SQL backend])
- BUILD_SLAPD=yes
- BUILD_SQL=yes
- if test "$ol_with_sql_module" != static; then
- AC_DEFINE(SLAPD_SQL_DYNAMIC,1,
- [define to support dynamic SQL backend])
- BUILD_SQL=mod
- BUILD_SQL_DYNAMIC=shared
- SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-sql"
+if test "$ol_enable_chain" != no ; then
+ BUILD_CHAIN=$ol_enable_chain
+ if test "$ol_enable_chain" = mod ; then
+ MFLAG=SLAPD_MOD_DYNAMIC
+ SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS chain.la"
else
- SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-sql"
+ MFLAG=SLAPD_MOD_STATIC
+ fi
+ AC_DEFINE_UNQUOTED(SLAPD_OVER_CHAIN,$MFLAG,[define for Dynamic Group overlay])
+fi
+
+if test "$ol_enable_denyop" != no ; then
+ BUILD_DENYOP=$ol_enable_denyop
+ if test "$ol_enable_denyop" = mod ; then
+ MFLAG=SLAPD_MOD_DYNAMIC
+ SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS denyop.la"
+ else
+ MFLAG=SLAPD_MOD_STATIC
+ fi
+ AC_DEFINE_UNQUOTED(SLAPD_OVER_DENYOP,$MFLAG,[define for Dynamic Group overlay])
+fi
+
+if test "$ol_enable_dyngroup" != no ; then
+ BUILD_DYNGROUP=$ol_enable_dyngroup
+ if test "$ol_enable_dyngroup" = mod ; then
+ MFLAG=SLAPD_MOD_DYNAMIC
+ SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS dyngroup.la"
+ else
+ MFLAG=SLAPD_MOD_STATIC
+ fi
+ AC_DEFINE_UNQUOTED(SLAPD_OVER_DYNGROUP,$MFLAG,[define for Dynamic Group overlay])
+fi
+
+if test "$ol_enable_lastmod" != no ; then
+ BUILD_LASTMOD=$ol_enable_lastmod
+ if test "$ol_enable_lastmod" = mod ; then
+ MFLAG=SLAPD_MOD_DYNAMIC
+ SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS lastmod.la"
+ else
+ MFLAG=SLAPD_MOD_STATIC
+ fi
+ AC_DEFINE_UNQUOTED(SLAPD_OVER_LASTMOD,$MFLAG,[define for Last Modification overlay])
+fi
+
+if test "$ol_enable_ppolicy" != no ; then
+ BUILD_PPOLICY=$ol_enable_ppolicy
+ if test "$ol_enable_ppolicy" = mod ; then
+ MFLAG=SLAPD_MOD_DYNAMIC
+ SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS ppolicy.la"
+ else
+ MFLAG=SLAPD_MOD_STATIC
+ fi
+ AC_DEFINE_UNQUOTED(SLAPD_OVER_PPOLICY,$MFLAG,[define for Password Policy overlay])
+fi
+
+if test "$ol_enable_proxycache" != no ; then
+ BUILD_PROXYCACHE=$ol_enable_proxycache
+ if test "$ol_enable_proxycache" = mod ; then
+ MFLAG=SLAPD_MOD_DYNAMIC
+ SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS pcache.la"
+ else
+ MFLAG=SLAPD_MOD_STATIC
+ fi
+ AC_DEFINE_UNQUOTED(SLAPD_OVER_PROXYCACHE,$MFLAG,[define for Proxy Cache overlay])
+fi
+
+if test "$ol_enable_refint" != no ; then
+ BUILD_REFINT=$ol_enable_refint
+ if test "$ol_enable_refint" = mod ; then
+ MFLAG=SLAPD_MOD_DYNAMIC
+ SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS refint.la"
+ else
+ MFLAG=SLAPD_MOD_STATIC
+ fi
+ AC_DEFINE_UNQUOTED(SLAPD_OVER_REFINT,$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" = mod ; then
+ MFLAG=SLAPD_MOD_DYNAMIC
+ SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS rwm.la"
+ else
+ MFLAG=SLAPD_MOD_STATIC
+ fi
+ AC_DEFINE_UNQUOTED(SLAPD_OVER_RWM,$MFLAG,[define for Rewrite/Remap overlay])
+fi
+
+if test "$ol_enable_unique" != no ; then
+ BUILD_UNIQUE=$ol_enable_unique
+ if test "$ol_enable_unique" = mod ; then
+ MFLAG=SLAPD_MOD_DYNAMIC
+ SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS unique.la"
+ else
+ MFLAG=SLAPD_MOD_STATIC
fi
+ AC_DEFINE_UNQUOTED(SLAPD_OVER_UNIQUE,$MFLAG,[define for Attribute Uniqueness overlay])
fi
if test "$ol_enable_slurpd" != no -a "$ol_link_threads" != no -a \
AC_SUBST(LIBSRCS)
AC_SUBST(PLAT)
+AC_SUBST(WITH_SASL)
AC_SUBST(WITH_TLS)
AC_SUBST(BUILD_LIBS_DYNAMIC)
AC_SUBST(BUILD_SLAPD)
+dnl slapi
AC_SUBST(BUILD_SLAPI)
AC_SUBST(SLAPD_SLAPI_DEPEND)
+dnl backends
AC_SUBST(BUILD_BDB)
AC_SUBST(BUILD_DNSSRV)
AC_SUBST(BUILD_HDB)
AC_SUBST(BUILD_LDBM)
AC_SUBST(BUILD_META)
AC_SUBST(BUILD_MONITOR)
- AC_SUBST(BUILD_CACHE)
AC_SUBST(BUILD_NULL)
AC_SUBST(BUILD_PASSWD)
+ AC_SUBST(BUILD_RELAY)
AC_SUBST(BUILD_PERL)
AC_SUBST(BUILD_SHELL)
AC_SUBST(BUILD_SQL)
- AC_SUBST(BUILD_TCL)
- AC_SUBST(BUILD_BDB_DYNAMIC)
- AC_SUBST(BUILD_DNSSRV_DYNAMIC)
- AC_SUBST(BUILD_HDB_DYNAMIC)
- AC_SUBST(BUILD_LDAP_DYNAMIC)
- AC_SUBST(BUILD_LDBM_DYNAMIC)
- AC_SUBST(BUILD_META_DYNAMIC)
- AC_SUBST(BUILD_MONITOR_DYNAMIC)
- AC_SUBST(BUILD_NULL_DYNAMIC)
- AC_SUBST(BUILD_PASSWD_DYNAMIC)
- AC_SUBST(BUILD_PERL_DYNAMIC)
- AC_SUBST(BUILD_SHELL_DYNAMIC)
- AC_SUBST(BUILD_SQL_DYNAMIC)
- AC_SUBST(BUILD_TCL_DYNAMIC)
+dnl overlays
+ AC_SUBST(BUILD_CHAIN)
+ AC_SUBST(BUILD_DENYOP)
+ AC_SUBST(BUILD_DYNGROUP)
+ AC_SUBST(BUILD_LASTMOD)
+ AC_SUBST(BUILD_PPOLICY)
+ AC_SUBST(BUILD_PROXYCACHE)
+ AC_SUBST(BUILD_REFINT)
+ AC_SUBST(BUILD_RWM)
+ AC_SUBST(BUILD_UNIQUE)
AC_SUBST(BUILD_SLURPD)
AC_SUBST(LDAP_LIBS)
AC_SUBST(LTHREAD_LIBS)
AC_SUBST(LUTIL_LIBS)
AC_SUBST(WRAP_LIBS)
-AC_SUBST(MOD_TCL_LIB)
AC_SUBST(SLAPD_MODULES_CPPFLAGS)
AC_SUBST(SLAPD_MODULES_LDFLAGS)
AC_SUBST(SLAPD_NO_STATIC)
AC_SUBST(SLAPD_STATIC_BACKENDS)
AC_SUBST(SLAPD_DYNAMIC_BACKENDS)
+AC_SUBST(SLAPD_DYNAMIC_OVERLAYS)
AC_SUBST(PERL_CPPFLAGS)
AC_SUBST(SLAPD_PERL_LDFLAGS)
AC_SUBST(KRB4_LIBS)
AC_SUBST(KRB5_LIBS)
AC_SUBST(SASL_LIBS)
-AC_SUBST(TERMCAP_LIBS)
AC_SUBST(TLS_LIBS)
AC_SUBST(MODULES_LIBS)
AC_SUBST(SLAPI_LIBS)
libraries/liblber/Makefile:build/top.mk:libraries/liblber/Makefile.in:build/lib.mk:build/lib-shared.mk \
libraries/libldap/Makefile:build/top.mk:libraries/libldap/Makefile.in:build/lib.mk:build/lib-shared.mk \
libraries/libldap_r/Makefile:build/top.mk:libraries/libldap_r/Makefile.in:build/lib.mk:build/lib-shared.mk \
-libraries/libldbm/Makefile:build/top.mk:libraries/libldbm/Makefile.in:build/lib.mk:build/lib-static.mk \
libraries/liblunicode/Makefile:build/top.mk:libraries/liblunicode/Makefile.in:build/lib.mk:build/lib-static.mk \
libraries/liblutil/Makefile:build/top.mk:libraries/liblutil/Makefile.in:build/lib.mk:build/lib-static.mk \
libraries/librewrite/Makefile:build/top.mk:libraries/librewrite/Makefile.in:build/lib.mk:build/lib-static.mk \
servers/slapd/back-null/Makefile:build/top.mk:servers/slapd/back-null/Makefile.in:build/mod.mk \
servers/slapd/back-passwd/Makefile:build/top.mk:servers/slapd/back-passwd/Makefile.in:build/mod.mk \
servers/slapd/back-perl/Makefile:build/top.mk:servers/slapd/back-perl/Makefile.in:build/mod.mk \
+servers/slapd/back-relay/Makefile:build/top.mk:servers/slapd/back-relay/Makefile.in:build/mod.mk \
servers/slapd/back-shell/Makefile:build/top.mk:servers/slapd/back-shell/Makefile.in:build/mod.mk \
servers/slapd/back-sql/Makefile:build/top.mk:servers/slapd/back-sql/Makefile.in:build/mod.mk \
-servers/slapd/back-tcl/Makefile:build/top.mk:servers/slapd/back-tcl/Makefile.in:build/mod.mk \
servers/slapd/shell-backends/Makefile:build/top.mk:servers/slapd/shell-backends/Makefile.in:build/srv.mk \
servers/slapd/slapi/Makefile:build/top.mk:servers/slapd/slapi/Makefile.in:build/lib.mk:build/lib-shared.mk \
-servers/slapd/tools/Makefile:build/top.mk:servers/slapd/tools/Makefile.in \
+servers/slapd/overlays/Makefile:build/top.mk:servers/slapd/overlays/Makefile.in:build/lib.mk \
servers/slurpd/Makefile:build/top.mk:servers/slurpd/Makefile.in:build/srv.mk \
tests/Makefile:build/top.mk:tests/Makefile.in:build/dir.mk \
tests/run \