define([AC_CACHE_SAVE], )dnl
dnl ================================================================
dnl Configure.in for OpenLDAP
-AC_INIT(build/version)dnl
+AC_INIT(build/version.sh)dnl
# set unset (borrowed from autoconf 2.14a)
if (unset FOO) >/dev/null 2>&1; then
AC_CONFIG_AUX_DIR(build)dnl
-OL_VERSION=`cat $ac_aux_dir/version`
-if test -z "$OL_VERSION"; then
+eval `$ac_aux_dir/version.sh`
+if test -z "$OL_STRING"; then
AC_MSG_ERROR([could not determine version])
fi
-echo "Configuring OpenLDAP $OL_VERSION ..."
+echo "Configuring $OL_STRING ..."
dnl Determine host platform
dnl we try not to use this for much
OL_ARG_ENABLE(proctitle,[ --enable-proctitle enable proctitle support], yes)dnl
OL_ARG_ENABLE(cache,[ --enable-cache enable caching], yes)dnl
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(kbind,[ --enable-kbind enable V2 Kerberos IV bind], no)dnl
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],
OL_ARG_ENABLE(slapd,[ --enable-slapd enable building slapd], yes)dnl
OL_ARG_ENABLE(cleartext,[ --enable-cleartext enable cleartext passwords], yes)dnl
OL_ARG_ENABLE(crypt,[ --enable-crypt enable crypt(3) passwords], auto)dnl
-OL_ARG_ENABLE(kpasswd,[ --enable-kpasswd enable kerberos password verification], no)dnl
+OL_ARG_ENABLE(kpasswd,[ --enable-kpasswd enable Kerberos password verification], 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
OL_ARG_ENABLE(multimaster,[ --enable-multimaster enable multimaster replication], no)dnl
if test $ol_with_kerberos = no ; then
AC_MSG_ERROR([options require --with-kerberos])
fi
+ ol_with_kerberos=yes
elif test $ol_enable_kbind = no -o $ol_enable_kpasswd = no ; then
- if test $ol_with_kerberos != auto ; then
+ if test $ol_with_kerberos != no -a $ol_with_kerberos != auto ; then
AC_MSG_WARN([Kerberos detection enabled unnecessarily]);
- else
- ol_with_kerberos=no
fi
+ ol_with_kerberos=no
fi
if test $ol_enable_spasswd = yes ; then
ol_link_krb5=no
ol_link_krb4=no
-if test $ol_with_kerberos = auto -o $ol_with_kerberos = k5 \
- -o $ol_with_kerberos = k5only -o $ol_with_kerberos = k425 ; then
+if test $ol_with_kerberos = yes -o $ol_with_kerberos = auto \
+ -o $ol_with_kerberos = k5 -o $ol_with_kerberos = k5only \
+ -o $ol_with_kerberos = k425 ; then
AC_CHECK_HEADERS(krb5.h)
fi
fi
-if test $ol_link_krb5 = yes -a \
- \( $ol_with_kerberos = auto -o $ol_with_kerberos = k425 \) ; then
+if test $ol_link_krb5 = yes -a \( $ol_with_kerberos = yes -o \
+ $ol_with_kerberos = auto -o $ol_with_kerberos = k425 \) ; then
AC_CHECK_HEADERS(kerberosIV/krb.h kerberosIV/des.h)
else
have_425=no
- AC_MSG_WARN([Unrecongized Kerberos5 Implementation])
+ AC_MSG_WARN([Unrecongized Kerberos V Implementation])
fi
if test $have_k425 = yes ; then
ol_with_kerberos=found
fi
-if test $ol_with_kerberos = auto -o $ol_with_kerberos = k4 \
- -o $ol_with_kerberos = kth ; then
+if test $ol_with_kerberos = yes -o $ol_with_kerberos = auto \
+ -o $ol_with_kerberos = k4 -o $ol_with_kerberos = kth ; then
AC_CHECK_HEADERS(krb.h des.h krb-archaeology.h )
fi
if test $ol_link_krb4 = yes -a $ol_enable_kpasswd != no ; then
- ol_link_kpasswd=yes;
+ ol_link_kpasswd=yes
+fi
+
+if test $ol_link_krb4 = yes -a $ol_enable_kbind != no ; then
+ ol_link_kbind=yes
+
+elif test $ol_enable_kbind = yes ; then
+ AC_MSG_ERROR([Kerberos IV detection failed])
fi
if test $ol_link_krb4 = yes -o $ol_link_krb5 = yes ; then
AC_DEFINE(HAVE_KERBEROS, 1, [define if you have Kerberos])
elif test $ol_with_kerberos != auto -a $ol_with_kerberos != no ; then
- AC_MSG_ERROR([Kerberos detection failed.])
+ AC_MSG_ERROR([Kerberos detection failed])
fi
dnl ----------------------------------------------------------------
dnl TLS/SSL
ol_link_tls=no
if test $ol_with_tls != no ; then
-
AC_CHECK_HEADERS(openssl/ssl.h ssl.h)
if test $ac_cv_header_openssl_ssl_h = yes -o $ac_cv_header_ssl_h = yes ; then
fi
fi
fi
+
+else
+ AC_WARN([TLS privacy protection not supported!])
fi
if test $ol_link_tls = yes ; then
AC_DEFINE(HAVE_TLS, 1, [define if you have TLS])
-fi
+
+elif test $ol_with_tls = auto ; then
+ AC_WARN([Could not locate TLS/SSL package])
+ AC_WARN([TLS privacy protection not supported!])
+
+elif test $ol_with_tls != no ; then
+ AC_ERROR([Could not locate TLS/SSL package])
+fi
dnl ----------------------------------------------------------------
dnl Tests for reentrant functions necessary to build a
dnl AC_CHECK_HEADERS(dmalloc.h)
dnl AC_CHECK_LIB(dmalloc, dmalloc_shutdown)
dnl fi
+
+dnl ----------------------------------------------------------------
+dnl SQL
+ol_link_sql=no
+if test $ol_enable_sql != no ; then
+ AC_CHECK_LIB(iodbc,SQLDriverConnect,[have_iodbc=yes],[have_iodbc=no])
+ if test $have_iodbc = yes ; then
+ ol_link_sql="-liodbc"
+ else
+ AC_CHECK_LIB(odbc,SQLDriverConnect,[have_odbc=yes],[have_odbc=no])
+ if test $have_odbc = yes ; then
+ ol_link_sql="-lodbc"
+ fi
+ fi
+
+ if test $ol_link_sql != no ; then
+ SLAPD_SQL_LIBS="$ol_link_sql"
+
+ elif test $ol_enable_sql != auto ; then
+ AC_MSG_ERROR([could not locate suitable ODBC library])
+ fi
+fi
+
dnl ----------------------------------------------------------------
dnl TCL
if test $ol_enable_tcl != no ; then
ol_link_sasl=no
ol_link_spasswd=no
if test $ol_with_cyrus_sasl != no ; then
- AC_CHECK_HEADER(sasl.h)
+ AC_CHECK_HEADERS(sasl.h)
if test $ac_cv_header_sasl_h = yes ; then
AC_CHECK_LIB(sasl, sasl_client_init,
fi
fi
- if test $ol_link_sasl = no -a $ol_with_cyrus_sasl = yes ; then
- AC_MSG_ERROR(no suitable API for --with-cyrus-sasl=$ol_with_cyrus_sasl)
+ if test $ol_link_sasl = no ; then
+ if test $ol_with_cyrus_sasl != auto ; then
+ AC_MSG_ERROR([Could not locate Cyrus SASL])
+ else
+ AC_MSG_WARN([Could not locate Cyrus SASL])
+ AC_MSG_WARN([SASL authentication not supported!])
+ if test $ol_link_tls = no ; then
+ AC_MSG_WARN([Strong authentication not supported!])
+ fi
+ fi
+ fi
+else
+ AC_MSG_WARN([SASL authentication not supported!])
+ if test $ol_link_tls = no ; then
+ AC_MSG_WARN([Strong authentication not supported!])
fi
fi
AC_DEFINE(LDAP_SYSLOG,1,
[define this to add syslog code])
fi
-if test "$ol_enable_libui" = yes ; then
- AC_DEFINE(LDAP_LIBUI,1,
- [define this for LDAP User Interface support])
-fi
if test "$ol_enable_cache" = no ; then
AC_DEFINE(LDAP_NOCACHE,1,
[define this to remove -lldap cache support])
if test "$ol_enable_referrals" != no ; then
AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS,LDAP_VENDOR_VERSION)
fi
-if test "$ol_enable_cldap" != no ; then
- AC_DEFINE(LDAP_CONNECTIONLESS,1,[define to support CLDAP])
-fi
if test "$ol_enable_local" != no; then
AC_DEFINE(LDAP_PF_LOCAL,1,[define to support PF_LOCAL])
fi
fi
fi
-if test "$ol_enable_sql" != no ; then
+if test "$ol_link_sql" != no ; then
AC_DEFINE(SLAPD_SQL,1,[define to support SQL backend])
BUILD_SLAPD=yes
BUILD_SQL=yes
- SLAPD_SQL_LIBS=-liodbc
if test "$ol_with_sql_module" != static; then
AC_DEFINE(SLAPD_SQL_DYNAMIC,1,
[define to support dynamic SQL backend])