dnl ================================================================
dnl Configure.in for OpenLDAP
AC_INIT(build/version)dnl
+
+# set unset (borrowed from autoconf 2.14a)
+if (unset FOO) >/dev/null 2>&1; then
+ ol_unset=unset
+else
+ ol_unset=false
+fi
+# unset CDPATH
+$ol_unset CDPATH || test "${CDPATH+set}" != set || CDPATH=: && export CDPATH
+
AC_CONFIG_AUX_DIR(build)dnl
OL_VERSION=`cat $ac_aux_dir/version`
OL_ARG_ENABLE(referrals,[ --enable-referrals enable V2 Referrals extension], yes)dnl
OL_ARG_ENABLE(kbind,[ --enable-kbind enable V2 Kerberos IV bind], auto)dnl
OL_ARG_ENABLE(cldap,[ --enable-cldap enable connectionless ldap], no)dnl
-OL_ARG_ENABLE(ldapi,[ --enable-ldapi enable domain socket (PF_LOCAL) ldap], no)dnl
+OL_ARG_ENABLE(ipv6,[ --enable-ipv6 enable IPv6 support], auto)dnl
+OL_ARG_ENABLE(unix,[ --enable-unix enable UNIX domain socket support], auto)dnl
OL_ARG_ENABLE(x_compile,[ --enable-x-compile enable cross compiling],
no, [yes no])dnl
OL_ARG_ENABLE(dynamic,[ --enable-dynamic enable linking built binaries with dynamic libs], no)dnl
dnl SLAPD Backend options
-OL_ARG_ENABLE(bdb2,[ --enable-bdb2 enable bdb2 backend], no)dnl
-OL_ARG_WITH(bdb2_module,[ --with-bdb2-module module type], static,
- [static dynamic])
-OL_ARG_ENABLE(dnssrv,[ --enable-dnssrv enable bdb2 backend], no)dnl
+OL_ARG_ENABLE(dnssrv,[ --enable-dnssrv enable dnssrv backend], no)dnl
OL_ARG_WITH(dnssrv_module,[ --with-dnssrv-module module type], static,
[static dynamic])
OL_ARG_ENABLE(ldap,[ --enable-ldap enable ldap backend], no)dnl
# validate options
if test $ol_enable_slapd = no ; then
dnl SLAPD was specificallly disabled
- if test $ol_enable_bdb2 = yes ; then
- AC_MSG_WARN([slapd disabled, ignoring --enable-bdb2 argument])
- fi
if test $ol_enable_dnssrv = yes ; then
AC_MSG_WARN([slapd disabled, ignoring --enable-dnssrv 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_bdb2_module != static ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-bdb2-module argument])
- fi
if test $ol_with_dnssrv_module != static ; then
AC_MSG_WARN([slapd disabled, ignoring --with-dnssrv-module argument])
fi
fi
# force settings to no
- ol_enable_bdb2=no
ol_enable_dnssrv=no
ol_enable_ldap=no
ol_enable_ldbm=no
ol_with_ldbm_api=no
ol_with_ldbm_type=no
- ol_with_bdb2_module=static
ol_with_dnssrv_module=static
ol_with_ldap_module=static
ol_with_ldbm_module=static
AC_MSG_WARN([LDBM disabled, ignoring --with-ldbm-module argument])
fi
- if test $ol_enable_bdb2 = yes ; then
- AC_MSG_ERROR([BDB2 requires --enable-ldbm])
- fi
-
if test $ol_enable_modules != yes -a \
$ol_enable_dnssrv = no -a \
$ol_enable_ldap = no -a \
ol_with_ldbm_type=no
ol_with_ldbm_module=static
-elif test $ol_enable_bdb2 = yes ; then
- dnl SLAPD with BDB2
-
- if test $ol_with_ldbm_api != auto -a \
- $ol_with_ldbm_api != berkeley ; then
- AC_MSG_ERROR([BDB2 requires LDBM API berkeley or auto])
- fi
-
- ol_with_ldbm_api=db2
-
else
dnl SLAPD with LDBM
-
- if test $ol_enable_bdb2 != no ; then
- if test $ol_with_ldbm_api != auto -a \
- $ol_with_ldbm_api != berkeley ; then
- AC_MSG_WARN([BDB2 requires LDBM api berkeley or auto])
- ol_enable_bdb2=no
- fi
- fi
-
if test $ol_with_ldbm_api = gdbm -a \
$ol_with_ldbm_type = btree ; then
AC_MSG_ERROR([GDBM only supports LDBM type hash])
BUILD_QUIPU=no
BUILD_THREAD=no
-BUILD_BDB2=no
BUILD_DNSSRV=no
BUILD_LDAP=no
BUILD_LDBM=no
BUILD_SQL=no
BUILD_TCL=no
-BUILD_BDB2_DYNAMIC=static
BUILD_DNSSRV_DYNAMIC=static
BUILD_LDAP_DYNAMIC=static
BUILD_LDBM_DYNAMIC=static
AC_DEFINE(HAVE_AIX_SECURITY,1,[define if you have AIX security lib])
])
+
+dnl ----------------------------------------------------------------
+dnl PF_INET6 support requires getaddrinfo
+dnl PF_UNIX may use getaddrinfo in available
+AC_CHECK_FUNCS( getaddrinfo )
+
+if test $ac_cv_func_getaddrinfo = no ; then
+ if test $ol_enable_ipv6 = yes ; then
+ AC_MSG_ERROR([IPv6 support requires getaddrinfo()])
+ fi
+ ol_enable_ipv6=no
+fi
+
+if test $ol_enable_unix != no ; then
+ AC_CHECK_HEADERS( sys/un.h )
+
+ if test $ol_enable_unix = auto ; then
+ ol_enable_unix=$ac_cv_header_sys_un_h
+ elif test $ac_cv_header_sys_un_h = no ; then
+ AC_MSG_ERROR([UNIX domain support requires sys/un.h])
+ fi
+fi
+
dnl ----------------------------------------------------------------
dnl Check for module support
ol_link_modules=no
fi
ol_link_modules=yes
else
- ol_with_bdb2_module=static
ol_with_dnssrv_module=static
ol_with_ldap_module=static
ol_with_ldbm_module=static
fi
dnl Check functions for compatibility
- AC_CHECK_FUNCS(pthread_kill)
+ AC_CHECK_FUNCS(pthread_kill pthread_rwlock_destroy)
dnl Check for pthread_detach with <pthread.h> inclusion
dnl as it's symbol may have been mangled.
ol_enable_ldbm=no
fi
-dnl ----------------------------------------------------------------
-ol_link_bdb2=no
-if test $ol_enable_bdb2 != no ; then
- if test $ol_enable_bdb2 = yes -a $ol_link_ldbm != berkeley ; then
- AC_MSG_ERROR(BDB2 requires LDBM BerkeleyDB 2)
- elif test $ol_link_ldbm = berkeley ; then
- ol_link_bdb2=$ol_link_ldbm
- fi
-fi
-
dnl ----------------------------------------------------------------
if test $ol_enable_dynamic = yes -a $enable_shared = yes ; then
LINK_BINS_DYNAMIC="yes"
if test "$ol_enable_cldap" != no ; then
AC_DEFINE(LDAP_CONNECTIONLESS,1,[define to support CLDAP])
fi
-if test "$ol_enable_ldapi" != no; then
- AC_DEFINE(USE_PF_LOCAL,1,[define to support PF_LOCAL transport])
+if test "$ol_enable_unix" != no; then
+ AC_DEFINE(LDAP_PF_UNIX,1,[define to support PF_UNIX])
+fi
+if test "$ol_enable_ipv6" != no; then
+ AC_DEFINE(LDAP_PF_INET6,1,[define to support PF_INET6])
fi
-
if test "$ol_enable_cleartext" != no ; then
AC_DEFINE(SLAPD_CLEARTEXT,1,[define to support cleartext passwords])
fi
SLAPD_MODULES_LDFLAGS="-dlopen self"
fi
-if test "$ol_link_bdb2" != no ; then
- AC_DEFINE(SLAPD_BDB2,1,[define to support BDB2 backend])
- BUILD_SLAPD=yes
- BUILD_BDB2=yes
- if test "$ol_with_bdb2_module" != static ; then
- AC_DEFINE(SLAPD_BDB2_DYNAMIC,1,
- [define to support dynamic BDB2 backend])
- BUILD_BDB2=mod
- BUILD_BDB2_DYNAMIC=shared
- SLAPD_MODULES_LIST="$SLAPD_MODULES_LIST -dlopen \$(SLAP_DIR)back-bdb2/back_bdb2.la"
- fi
-fi
-
if test "$ol_link_dnssrv" != no ; then
AC_DEFINE(SLAPD_DNSSRV,1,[define to support DNS SRV backend])
BUILD_SLAPD=yes
AC_SUBST(DYN_EXT)
AC_SUBST(BUILD_SLAPD)
- AC_SUBST(BUILD_BDB2)
AC_SUBST(BUILD_DNSSRV)
AC_SUBST(BUILD_LDAP)
AC_SUBST(BUILD_LDBM)
AC_SUBST(BUILD_SHELL)
AC_SUBST(BUILD_SQL)
AC_SUBST(BUILD_TCL)
- AC_SUBST(BUILD_BDB2_DYNAMIC)
AC_SUBST(BUILD_DNSSRV_DYNAMIC)
AC_SUBST(BUILD_LDAP_DYNAMIC)
AC_SUBST(BUILD_LDBM_DYNAMIC)
clients/mail500/Makefile:build/top.mk:clients/mail500/Makefile.in:build/rules.mk \
clients/rcpt500/Makefile:build/top.mk:clients/rcpt500/Makefile.in:build/rules.mk \
clients/ud/Makefile:build/top.mk:clients/ud/Makefile.in:build/rules.mk \
+clients/maildap/Makefile:build/top.mk:clients/maildap/Makefile.in:build/rules.mk \
clients/tools/Makefile:build/top.mk:clients/tools/Makefile.in:build/rules.mk \
include/Makefile:build/top.mk:include/Makefile.in \
libraries/Makefile:build/top.mk:libraries/Makefile.in:build/dir.mk \
libraries/liblutil/Makefile:build/top.mk:libraries/liblutil/Makefile.in:build/lib.mk:build/lib-static.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-bdb2/Makefile:build/top.mk:servers/slapd/back-bdb2/Makefile.in:build/mod.mk \
servers/slapd/back-dnssrv/Makefile:build/top.mk:servers/slapd/back-dnssrv/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 \