X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=configure.in;h=9c42e9c2a03bd8b69e9f0ec22586b64420982ffd;hb=2bb65557268729ab2e25b973e9b3efabe76edaf3;hp=5204449f85c595e2addd835b07f32758a8ae0155;hpb=166048823acb69d05caa521755154fdaf18246e3;p=openldap diff --git a/configure.in b/configure.in index 5204449f85..9c42e9c2a0 100644 --- a/configure.in +++ b/configure.in @@ -16,6 +16,11 @@ dnl ---------------------------------------------------------------- dnl Disable config.cache! define([AC_CACHE_LOAD], )dnl define([AC_CACHE_SAVE], )dnl +dnl ---------------------------------------------------------------- +dnl Disable libtool 1.5 support for languages we don't use +define([AC_LIBTOOL_LANG_CXX_CONFIG], [:])dnl +define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl +define([AC_LIBTOOL_LANG_GCJ_CONFIG], [:])dnl dnl ================================================================ dnl Configure.in for OpenLDAP AC_COPYRIGHT([[Copyright 1998-2005 The OpenLDAP Foundation. All rights reserved. @@ -35,7 +40,7 @@ if test -z "$OL_STRING"; then AC_MSG_ERROR([could not determine version]) fi -if test -f "$ac_aux_dir/shtool" -a ! -d $ac_aux_dir/shtool; then +if test -f "$ac_aux_dir/shtool" && test ! -d $ac_aux_dir/shtool; then ac_cv_shtool="$ac_aux_dir/shtool" else AC_MSG_ERROR([no shtool found in $ac_aux_dir]) @@ -240,7 +245,7 @@ ol_with_kerberos=${ol_with_kerberos-auto} OL_ARG_WITH(threads,[ --with-threads with threads], auto, [auto nt posix mach pth lwp yes no manual] ) OL_ARG_WITH(tls,[ --with-tls with TLS/SSL support], - auto, [auto ssleay openssl yes no] ) + auto, [auto openssl yes no] ) OL_ARG_WITH(yielding_select,[ --with-yielding-select with implicitly yielding select], auto, [auto yes no manual] ) OL_ARG_WITH(multiple_precision,[ --with-multiple-precision @@ -273,8 +278,19 @@ OL_ARG_ENABLE(wrappers,[ --enable-wrappers enable tcp wrapper support], no) dnl ---------------------------------------------------------------- dnl SLAPD Backend Options -Backends="bdb dnssrv hdb ldap ldbm meta monitor null \ - passwd perl relay shell sql" +Backends="bdb \ + dnssrv \ + hdb \ + ldap \ + ldbm \ + meta \ + monitor \ + null \ + passwd \ + perl \ + relay \ + shell \ + sql" AC_ARG_ENABLE(xxslapbackends,[ SLAPD Backend Options:]) @@ -291,8 +307,14 @@ OL_ARG_ENABLE(ldap,[ --enable-ldap enable ldap backend], no, [no yes mod], ol_enable_backends)dnl OL_ARG_ENABLE(ldbm,[ --enable-ldbm enable ldbm backend], no, [no yes mod], ol_enable_backends)dnl +AC_ARG_WITH(ldbm_api,,[ + AC_MSG_WARN([Please use --enable-ldbm-api instead of --with-ldbm-api]) + enable_ldbm_api="$with_ldbm_api"]) OL_ARG_ENABLE(ldbm_api,[ --enable-ldbm-api use LDBM API], auto, [auto berkeley bcompat mdbm gdbm]) +AC_ARG_WITH(ldbm_type,,[ + AC_MSG_WARN([Please use --enable-ldbm-type instead of --with-ldbm-type]) + enable_ldbm_type="$with_ldbm_type"]) OL_ARG_ENABLE(ldbm_type,[ --enable-ldbm-type use LDBM type], auto, [auto btree hash]) OL_ARG_ENABLE(meta,[ --enable-meta enable metadirectory backend], @@ -314,8 +336,20 @@ OL_ARG_ENABLE(sql,[ --enable-sql enable sql backend], dnl ---------------------------------------------------------------- dnl SLAPD Overlay Options -Overlays="accesslog denyop dyngroup dynlist glue lastmod ppolicy proxycache \ - refint retcode rwm syncprov translucent unique" +Overlays="accesslog \ + denyop \ + dyngroup \ + dynlist \ + lastmod \ + ppolicy \ + proxycache \ + refint \ + retcode \ + rwm \ + syncprov \ + translucent \ + unique \ + valsort" AC_ARG_ENABLE(xxslapoverlays,[ SLAPD Overlay Options:]) @@ -330,8 +364,6 @@ OL_ARG_ENABLE(dyngroup,[ --enable-dyngroup Dynamic Group overlay], no, [no yes mod], ol_enable_overlays) OL_ARG_ENABLE(dynlist,[ --enable-dynlist Dynamic List overlay], no, [no yes mod], ol_enable_overlays) -OL_ARG_ENABLE(glue,[ --enable-glue Backend Glue overlay], - yes, [no yes mod], ol_enable_overlays) OL_ARG_ENABLE(lastmod,[ --enable-lastmod Last Modification overlay], no, [no yes mod], ol_enable_overlays) OL_ARG_ENABLE(ppolicy,[ --enable-ppolicy Password Policy overlay], @@ -350,6 +382,8 @@ OL_ARG_ENABLE(translucent,[ --enable-translucent Translucent Proxy overlay], no, [no yes mod], ol_enable_overlays) OL_ARG_ENABLE(unique,[ --enable-unique Attribute Uniqueness overlay], no, [no yes mod], ol_enable_overlays) +OL_ARG_ENABLE(valsort,[ --enable-valsort Value Sorting overlay], + no, [no yes mod], ol_enable_overlays) dnl ---------------------------------------------------------------- dnl SLURPD OPTIONS @@ -449,19 +483,19 @@ elif test $ol_enable_ldbm = no ; then AC_MSG_WARN([LDBM disabled, ignoring --enable-ldbm-type argument]) fi - if test $ol_enable_modules != yes -a \ - $ol_enable_bdb = no -a \ - $ol_enable_dnssrv = no -a \ - $ol_enable_hdb = no -a \ - $ol_enable_ldap = no -a \ - $ol_enable_meta = no -a \ - $ol_enable_monitor = 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 ; then + if test $ol_enable_modules != yes && + test $ol_enable_bdb = no && + test $ol_enable_dnssrv = no && + test $ol_enable_hdb = no && + test $ol_enable_ldap = no && + test $ol_enable_meta = no && + test $ol_enable_monitor = no && + test $ol_enable_null = no && + test $ol_enable_passwd = no && + test $ol_enable_perl = no && + test $ol_enable_relay = no && + test $ol_enable_shell = no && + test $ol_enable_sql = no ; then if test $ol_enable_slapd = yes ; then AC_MSG_ERROR([slapd requires a backend]) @@ -474,26 +508,26 @@ elif test $ol_enable_ldbm = no ; then ol_enable_ldbm_api=no ol_enable_ldbm_type=no - if test $ol_enable_bdb != no -o $ol_enable_hdb != no; then + if test $ol_enable_bdb/$ol_enable_hdb != no/no; then ol_enable_ldbm_api=berkeley fi else dnl SLAPD with LDBM - if test $ol_enable_ldbm_api = gdbm -a \ - $ol_enable_ldbm_type = btree ; then + if test $ol_enable_ldbm_api = gdbm && + test $ol_enable_ldbm_type = btree ; then AC_MSG_ERROR([GDBM only supports LDBM type hash]) fi - if test $ol_enable_ldbm_api = mdbm -a \ - $ol_enable_ldbm_type = btree ; then + if test $ol_enable_ldbm_api = mdbm && + test $ol_enable_ldbm_type = btree ; then AC_MSG_ERROR([MDBM only supports LDBM type hash]) fi - if test $ol_enable_ldbm_api = ndbm -a \ - $ol_enable_ldbm_type = btree ; then + if test $ol_enable_ldbm_api = ndbm && + test $ol_enable_ldbm_type = btree ; then AC_MSG_ERROR([NDBM only supports LDBM type hash]) fi - if test $ol_enable_bdb != no -o $ol_enable_hdb != no ; then + if test $ol_enable_bdb/$ol_enable_hdb != no/no ; then if test $ol_enable_ldbm_api = auto ; then ol_enable_ldbm_api=berkeley elif test $ol_enable_ldbm_api != berkeley ; then @@ -502,7 +536,7 @@ else fi fi -if test $ol_enable_meta = yes -a $ol_enable_ldap = no ; then +if test $ol_enable_meta/$ol_enable_ldap = yes/no ; then AC_MSG_ERROR([--enable-meta requires --enable-ldap]) fi @@ -580,7 +614,6 @@ BUILD_ACCESSLOG=no BUILD_DENYOP=no BUILD_DYNGROUP=no BUILD_DYNLIST=no -BUILD_GLUE=no BUILD_LASTMOD=no BUILD_PPOLICY=no BUILD_PROXYCACHE=no @@ -590,6 +623,7 @@ BUILD_RWM=no BUILD_SYNCPROV=no BUILD_TRANSLUCENT=no BUILD_UNIQUE=no +BUILD_VALSORT=no SLAPD_STATIC_OVERLAYS= SLAPD_DYNAMIC_OVERLAYS= @@ -617,6 +651,7 @@ SLAPI_LIBS= LIBSLAPI= LIBSLAPITOOLS= AUTH_LIBS= +ICU_LIBS= SLAPD_SLP_LIBS= SLAPD_GMP_LIBS= @@ -666,10 +701,11 @@ if test $ol_aix_threads = yes ; then fi fi - if test "${CC}" = "cc_r" -o "${CC}" = "xlc_r" ; then + case ${CC} in cc_r | xlc_r) ol_with_threads=posix ol_cv_pthread_create=yes - fi + ;; + esac fi if test -z "${CC}"; then @@ -719,6 +755,13 @@ fi AC_PROG_CPP +dnl ---------------------------------------------------------------- +dnl Checks for Windows NT +case $host_os in + *mingw32* ) ac_cv_mingw32=yes ;; + *cygwin* ) ac_cv_cygwin=yes ;; +esac + dnl ---------------------------------------------------------------- dnl Checks for file extensions AC_EXEEXT @@ -1037,7 +1080,7 @@ if test "$ol_cv_lib_resolver" != no ; then fi fi -if test "$ol_enable_dnssrv" = yes -o "$ol_enable_dnssrv" = mod ; then +if test "$ol_enable_dnssrv" = yes || test "$ol_enable_dnssrv" = mod ; then if test "$ol_link_dnssrv" = no ; then AC_MSG_ERROR([DNSSRV requires res_query()]) fi @@ -1053,7 +1096,7 @@ dnl PF_LOCAL may use getaddrinfo in available AC_CHECK_FUNCS( getaddrinfo getnameinfo gai_strerror inet_ntop ) ol_link_ipv6=no -if test $ac_cv_func_getaddrinfo = no -o $ac_cv_func_inet_ntop = no ; then +if test $ac_cv_func_getaddrinfo = no || test $ac_cv_func_inet_ntop = no ; then if test $ol_enable_ipv6 = yes ; then AC_MSG_ERROR([IPv6 support requires getaddrinfo() and inet_ntop()]) fi @@ -1075,14 +1118,14 @@ elif test $ol_enable_ipv6 != no ; then struct sockaddr_storage ss; ]])],[ol_cv_struct_sockaddr_storage=yes],[ol_cv_struct_sockaddr_storage=no])]) - if test $ol_cv_inet6_addrstrlen = yes \ - -a $ol_cv_struct_sockaddr_storage = yes ; then + if test $ol_cv_inet6_addrstrlen = yes && + test $ol_cv_struct_sockaddr_storage = yes ; then ol_link_ipv6=yes - elif test $ol_enable_ipv6 = yes \ - -a $ol_cv_inet6_addrstrlen = no ; then + elif test $ol_enable_ipv6 = yes && + test $ol_cv_inet6_addrstrlen = no ; then AC_MSG_ERROR([IPv6 support requires INET6_ADDRSTRLEN]) - elif test $ol_enable_ipv6 = yes \ - -a $ol_cv_struct_sockaddr_storage = no ; then + elif test $ol_enable_ipv6 = yes && + test $ol_cv_struct_sockaddr_storage = no ; then AC_MSG_ERROR([IPv6 support requires struct sockaddr_storage]) fi fi @@ -1103,9 +1146,7 @@ ol_link_kbind=no ol_link_krb5=no ol_link_krb4=no -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 +case $ol_with_kerberos in yes | auto | k5 | k5only | k425) AC_CHECK_HEADERS(krb5.h) @@ -1163,10 +1204,13 @@ if test $ol_with_kerberos = yes -o $ol_with_kerberos = auto \ fi fi -fi + ;; +esac -if test $ol_link_krb5 = yes -a \( $ol_with_kerberos = yes -o \ - $ol_with_kerberos = auto -o $ol_with_kerberos = k425 \) ; then +if test $ol_link_krb5 = yes && + { test $ol_with_kerberos = yes || + test $ol_with_kerberos = auto || + test $ol_with_kerberos = k425; }; then AC_CHECK_HEADERS(kerberosIV/krb.h kerberosIV/des.h) @@ -1225,8 +1269,7 @@ if test $ol_link_krb5 = yes ; then ol_with_kerberos=found fi -if test $ol_with_kerberos = yes -o $ol_with_kerberos = auto \ - -o $ol_with_kerberos = k4 -o $ol_with_kerberos = kth ; then +case $ol_with_kerberos in yes | auto | k4 | kth) AC_CHECK_HEADERS(krb.h des.h krb-archaeology.h ) @@ -1248,19 +1291,20 @@ if test $ol_with_kerberos = yes -o $ol_with_kerberos = auto \ fi fi fi -fi + ;; +esac -if test $ol_link_krb4 = yes -a $ol_enable_kbind != no ; then +if test $ol_link_krb4 = yes && test $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 +if test $ol_link_krb4 = yes || test $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 +elif test $ol_with_kerberos != auto && test $ol_with_kerberos != no ; then AC_MSG_ERROR([Kerberos detection failed]) fi @@ -1269,40 +1313,31 @@ 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 - AC_CHECK_LIB(ssl, SSLeay_add_ssl_algorithms, - [have_ssleay=yes - need_rsaref=no], - [have_ssleay=no], + AC_CHECK_HEADERS(openssl/ssl.h) + + if test $ac_cv_header_openssl_ssl_h = yes ; then + AC_CHECK_LIB(ssl, SSL_library_init, + [have_openssl=yes + need_rsaref=no], [have_openssl=no], [-lcrypto]) - - if test $have_ssleay = no ; then - AC_CHECK_LIB(ssl, SSL_library_init, - [have_ssleay=yes - need_rsaref=no], [have_ssleay=no], - [-lcrypto]) - fi - if test $have_ssleay = no ; then + if test $have_openssl = no ; then AC_CHECK_LIB(ssl, ssl3_accept, - [have_ssleay=yes - need_rsaref=yes], [have_ssleay=no], + [have_openssl=yes + need_rsaref=yes], [have_openssl=no], [-lcrypto -lRSAglue -lrsaref]) fi - if test $have_ssleay = yes ; then + if test $have_openssl = yes ; then ol_with_tls=found ol_link_tls=yes - AC_DEFINE(HAVE_SSLEAY, 1, - [define if you have SSLeay or OpenSSL]) + AC_DEFINE(HAVE_OPENSSL, 1, + [define if you have OpenSSL]) if test $need_rsaref = yes; then AC_DEFINE(HAVE_RSAREF, 1, - [define if you have RSAref]) + [define if OpenSSL needs RSAref]) TLS_LIBS="-lssl -lcrypto -lRSAglue -lrsaref" else @@ -1349,8 +1384,7 @@ dnl ---------------------------------------------------------------- dnl Threads? ol_link_threads=no -if test $ol_with_threads = auto -o $ol_with_threads = yes \ - -o $ol_with_threads = nt ; then +case $ol_with_threads in auto | yes | nt) OL_NT_THREADS @@ -1366,10 +1400,10 @@ if test $ol_with_threads = auto -o $ol_with_threads = yes \ if test $ol_with_threads = nt ; then AC_MSG_ERROR([could not locate NT Threads]) fi -fi + ;; +esac -if test $ol_with_threads = auto -o $ol_with_threads = yes \ - -o $ol_with_threads = posix ; then +case $ol_with_threads in auto | yes | posix) AC_CHECK_HEADERS(pthread.h) @@ -1485,9 +1519,9 @@ dnl [ol_cv_pthread_lpthread_lexc]) dnl check for both, and thr_yield for Solaris AC_CHECK_FUNCS(sched_yield pthread_yield thr_yield) - if test $ac_cv_func_sched_yield = no -a \ - $ac_cv_func_pthread_yield = no -a \ - $ac_cv_func_thr_yield = no ; then + if test $ac_cv_func_sched_yield = no && + test $ac_cv_func_pthread_yield = no && + test $ac_cv_func_thr_yield = no ; then dnl Digital UNIX has sched_yield() in -lrt AC_CHECK_LIB(rt, sched_yield, [LTHREAD_LIBS="$LTHREAD_LIBS -lrt" @@ -1496,9 +1530,9 @@ dnl [ol_cv_pthread_lpthread_lexc]) ac_cv_func_sched_yield=yes], [ac_cv_func_sched_yield=no]) fi - if test $ac_cv_func_sched_yield = no -a \ - $ac_cv_func_pthread_yield = no -a \ - "$ac_cv_func_thr_yield" = no ; then + if test $ac_cv_func_sched_yield = no && + test $ac_cv_func_pthread_yield = no && + test "$ac_cv_func_thr_yield" = no ; then AC_MSG_WARN([could not locate sched_yield() or pthread_yield()]) fi @@ -1651,10 +1685,10 @@ int main(argc, argv) if test $ol_with_threads = posix ; then AC_MSG_ERROR([could not locate POSIX Threads]) fi -fi + ;; +esac -if test $ol_with_threads = auto -o $ol_with_threads = yes \ - -o $ol_with_threads = mach ; then +case $ol_with_threads in auto | yes | mach) dnl check for Mach CThreads AC_CHECK_HEADERS(mach/cthreads.h cthreads.h) @@ -1716,10 +1750,10 @@ if test $ol_with_threads = auto -o $ol_with_threads = yes \ elif test $ol_with_threads = found ; then AC_MSG_ERROR([could not link with Mach CThreads]) fi -fi + ;; +esac -if test $ol_with_threads = auto -o $ol_with_threads = yes \ - -o $ol_with_threads = pth ; then +case $ol_with_threads in auto | yes | pth) AC_CHECK_HEADERS(pth.h) @@ -1737,14 +1771,15 @@ if test $ol_with_threads = auto -o $ol_with_threads = yes \ fi fi fi -fi + ;; +esac -if test $ol_with_threads = auto -o $ol_with_threads = yes \ - -o $ol_with_threads = lwp ; then +case $ol_with_threads in auto | yes | lwp) dnl check for SunOS5 LWP AC_CHECK_HEADERS(thread.h synch.h) - if test $ac_cv_header_thread_h = yes -a $ac_cv_header_synch_h = yes ; then + if test $ac_cv_header_thread_h = yes && + test $ac_cv_header_synch_h = yes ; then AC_CHECK_LIB(thread, thr_create, [have_thr=yes], [have_thr=no]) if test $have_thr = yes ; then @@ -1781,7 +1816,8 @@ if test $ol_with_threads = auto -o $ol_with_threads = yes \ fi fi fi -fi + ;; +esac if test $ol_with_yielding_select = yes ; then AC_DEFINE(HAVE_YIELDING_SELECT,1, @@ -1803,7 +1839,7 @@ if test $ol_with_threads = manual ; then AC_CHECK_HEADERS(thread.h synch.h) fi -if test $ol_link_threads != no -a $ol_link_threads != nt ; then +if test $ol_link_threads != no && test $ol_link_threads != nt ; then dnl needed to get reentrant/threadsafe versions dnl AC_DEFINE(REENTRANT,1) @@ -1828,8 +1864,8 @@ if test $ol_link_threads != no -a $ol_link_threads != nt ; then AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[h_errno = 0;]])],[ol_cv_h_errno_thread_specific=yes],[ol_cv_h_errno_thread_specific=no]) ]) - if test $ol_cv_errno_thread_specific != yes \ - -o $ol_cv_h_errno_thread_specific != yes ; then + if test $ol_cv_errno_thread_specific != yes || + test $ol_cv_h_errno_thread_specific != yes ; then LIBS="$LTHREAD_LIBS $LIBS" LTHREAD_LIBS="" fi @@ -1934,9 +1970,7 @@ fi dnl ---------------------------------------------------------------- ol_link_ldbm=no -if test $ol_enable_ldbm_api = auto \ - -o $ol_enable_ldbm_api = berkeley \ - -o $ol_enable_ldbm_api = bcompat ; then +case $ol_enable_ldbm_api in auto | berkeley | bcompat) if test $ol_enable_ldbm_api = bcompat; then \ OL_BERKELEY_COMPAT_DB @@ -1965,9 +1999,10 @@ if test $ol_enable_ldbm_api = auto \ LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_db" fi fi -fi + ;; +esac -if test $ol_enable_bdb != no -o $ol_enable_hdb != no; then +if test $ol_enable_bdb/$ol_enable_hdb != no/no; then if test $ol_link_ldbm != berkeley ; then AC_MSG_ERROR(BDB/HDB: BerkeleyDB not available) else @@ -1979,12 +2014,12 @@ if test $ol_enable_bdb != no -o $ol_enable_hdb != no; then fi fi -if test $ol_link_ldbm = no -a $ol_enable_ldbm_type = btree ; then +if test $ol_link_ldbm = no && test $ol_enable_ldbm_type = btree ; then AC_MSG_WARN([Could not find LDBM with BTREE support]) ol_enable_ldbm_api=none fi -if test $ol_enable_ldbm_api = auto -o $ol_enable_ldbm_api = mdbm ; then +if test $ol_enable_ldbm_api = auto || test $ol_enable_ldbm_api = mdbm ; then OL_MDBM if test $ol_cv_mdbm = yes ; then @@ -1996,7 +2031,7 @@ if test $ol_enable_ldbm_api = auto -o $ol_enable_ldbm_api = mdbm ; then fi fi -if test $ol_enable_ldbm_api = auto -o $ol_enable_ldbm_api = gdbm ; then +if test $ol_enable_ldbm_api = auto || test $ol_enable_ldbm_api = gdbm ; then OL_GDBM if test $ol_cv_gdbm = yes ; then @@ -2022,19 +2057,19 @@ if test $ol_enable_ldbm_api = ndbm ; then fi fi -if test $ol_link_ldbm = no -a $ol_enable_ldbm != no ; then +if test $ol_link_ldbm = no && test $ol_enable_ldbm != no ; then AC_MSG_ERROR([could not find suitable LDBM backend]) fi -if test $ol_enable_bdb = yes -o \ - $ol_enable_hdb = yes -o \ - $ol_enable_ldbm = yes ; then +if test $ol_enable_bdb = yes || + test $ol_enable_hdb = yes || + test $ol_enable_ldbm = yes ; then SLAPD_LIBS="$SLAPD_LIBS \$(LDBM_LIBS)" fi dnl ---------------------------------------------------------------- -if test $ol_enable_dynamic = yes -a $enable_shared = yes ; then +if test $ol_enable_dynamic = yes && test $enable_shared = yes ; then BUILD_LIBS_DYNAMIC=shared AC_DEFINE(LDAP_LIBS_DYNAMIC, 1, [define if LDAP libs are dynamic]) LTSTATIC="" @@ -2092,7 +2127,7 @@ fi dnl ---------------------------------------------------------------- if test $ol_enable_syslog != no ; then AC_CHECK_FUNC(openlog) - if test $ac_cv_func_openlog = no -a $ol_enable_syslog = yes; then + if test $ac_cv_func_openlog = no && test $ol_enable_syslog = yes; then AC_MSG_ERROR(could not find syslog, select appropriate options or disable) fi ol_enable_syslog=$ac_cv_func_openlog @@ -2129,6 +2164,14 @@ if test $ol_enable_sql != no ; then fi fi +dnl ---------------------------------------------------------------- +dnl International Components for Unicode +OL_ICU +if test "$ol_icu" = no ; then + AC_MSG_WARN([ICU not available]) +else + ICU_LIBS="$ol_icu" +fi dnl ---------------------------------------------------------------- dnl dnl Check for Cyrus SASL @@ -2139,7 +2182,8 @@ ol_link_spasswd=no if test $ol_with_cyrus_sasl != no ; then AC_CHECK_HEADERS(sasl/sasl.h sasl.h) - if test $ac_cv_header_sasl_sasl_h = yes -o $ac_cv_header_sasl_h = yes; then + if test $ac_cv_header_sasl_sasl_h = yes || + test $ac_cv_header_sasl_h = yes; then AC_CHECK_LIB(sasl2, sasl_client_init, [ol_link_sasl="-lsasl2"], [AC_CHECK_LIB(sasl, sasl_client_init, @@ -2187,7 +2231,7 @@ fi dnl ---------------------------------------------------------------- dnl Check for entropy sources -if test $cross_compiling != yes -a "$ac_cv_mingw32" != yes ; then +if test $cross_compiling != yes && test "$ac_cv_mingw32" != yes ; then dev=no if test -r /dev/urandom ; then dev="/dev/urandom"; @@ -2298,18 +2342,18 @@ if test "$ol_with_multiple_precision" != "no" ; then ol_have_bn_h=no ol_have_crypto_h=no - if test "$ac_cv_header_openssl_bn_h" = "yes" \ - -o "$ac_cv_header_bn_h" = "yes" ; then + if test "$ac_cv_header_openssl_bn_h" = "yes" || + test "$ac_cv_header_bn_h" = "yes" ; then ol_have_bn_h=yes fi - if test "$ac_cv_header_openssl_crypto_h" = "yes" \ - -o "$ac_cv_header_crypto_h" = "yes" ; then + if test "$ac_cv_header_openssl_crypto_h" = "yes" || + test "$ac_cv_header_crypto_h" = "yes" ; then ol_have_crypto_h=yes fi - if test "$ol_have_bn_h" = "yes" \ - -a "$ol_have_crypto_h" = "yes" ; then + if test "$ol_have_bn_h" = "yes" && + test "$ol_have_crypto_h" = "yes" ; then ol_have_bignum=yes fi fi @@ -2364,7 +2408,7 @@ if test "$ol_with_multiple_precision" != "no" ; then case "$ol_mp_support" in bignum) AC_DEFINE(HAVE_BIGNUM, 1, - [define if you have SSLeay or OpenSSL's BIGNUM]) + [define if you have OpenSSL's BIGNUM]) ;; gmp) AC_DEFINE(HAVE_GMP, 1, [define if you have -lgmp]) @@ -2496,9 +2540,11 @@ AC_CHECK_FUNCS( \ getspnam \ gettimeofday \ initgroups \ + inet_ntoa_b \ lockf \ memcpy \ memmove \ + memrchr \ mkstemp \ mktemp \ pipe \ @@ -2539,22 +2585,28 @@ AC_REPLACE_FUNCS(getopt getpeereid) if test "$ac_cv_func_getopt" != yes; then LIBSRCS="$LIBSRCS getopt.c" fi + if test "$ac_cv_func_getpeereid" != yes; then - AC_CHECK_MEMBERS([struct msghdr.msg_accrightslen],,, - [$ac_includes_default + AC_CHECK_FUNCS( getpeerucred ) + if test "$ac_cv_func_getpeerucred" != yes ; then + AC_CHECK_MEMBERS([struct msghdr.msg_accrightslen],,, + [$ac_includes_default #ifdef HAVE_SYS_SOCKET_H #include #endif]) - if test "$ac_cv_member_struct_msghdr_msg_accrightslen" != yes; then - AC_CHECK_MEMBERS([struct msghdr.msg_control],,, - [$ac_includes_default + if test "$ac_cv_member_struct_msghdr_msg_accrightslen" != yes; then + AC_CHECK_MEMBERS([struct msghdr.msg_control],,, + [$ac_includes_default #ifdef HAVE_SYS_SOCKET_H #include #endif]) + fi fi LIBSRCS="$LIBSRCS getpeereid.c" fi -if test "$ac_cv_func_snprintf" != yes -o "$ac_cv_func_vsnprintf" != yes; then + +if test "$ac_cv_func_snprintf" != yes || + test "$ac_cv_func_vsnprintf" != yes; then if test "$ac_cv_func_snprintf" != yes; then AC_DEFINE(snprintf, ber_pvt_snprintf, [define to snprintf routine]) fi @@ -2627,6 +2679,9 @@ if test "$ol_enable_rlookups" != no ; then fi if test "$ol_enable_aci" != no ; then AC_DEFINE(SLAPD_ACI_ENABLED,1,[define to support per-object ACIs]) + WITH_ACI_ENABLED=yes +else + WITH_ACI_ENABLED=no fi if test "$ol_link_modules" != no ; then @@ -2690,7 +2745,7 @@ if test "$ol_enable_ldap" != no ; then AC_DEFINE_UNQUOTED(SLAPD_LDAP,$MFLAG,[define to support LDAP backend]) fi -if test "$ol_link_ldbm" != no -a $ol_enable_ldbm != no; then +if test "$ol_link_ldbm" != no && test $ol_enable_ldbm != no; then BUILD_SLAPD=yes BUILD_LDBM=$ol_enable_ldbm if test "$ol_enable_ldbm" = mod ; then @@ -2783,7 +2838,7 @@ if test "$ol_enable_relay" != no ; then fi if test "$ol_enable_shell" != no ; then - if test "$ol_link_thread" != no ; then + if test "$ol_link_threads" != no ; then AC_MSG_WARN([Use of --without-threads is recommended with back-shell]) fi BUILD_SLAPD=yes @@ -2859,18 +2914,6 @@ if test "$ol_enable_dynlist" != no ; then 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 - MFLAG=SLAPD_MOD_DYNAMIC - 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 - if test "$ol_enable_lastmod" != no ; then BUILD_LASTMOD=$ol_enable_lastmod if test "$ol_enable_lastmod" = mod ; then @@ -2980,8 +3023,21 @@ if test "$ol_enable_unique" != no ; then 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 \ - $BUILD_SLAPD = yes ; then +if test "$ol_enable_valsort" != no ; then + BUILD_VALSORT=$ol_enable_valsort + if test "$ol_enable_valsort" = mod ; then + MFLAG=SLAPD_MOD_DYNAMIC + SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS valsort.la" + else + MFLAG=SLAPD_MOD_STATIC + SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS valsort.o" + fi + AC_DEFINE_UNQUOTED(SLAPD_OVER_VALSORT,$MFLAG,[define for Value Sorting overlay]) +fi + +if test "$ol_enable_slurpd" != no && + test "$ol_link_threads" != no && + test $BUILD_SLAPD = yes ; then BUILD_SLURPD=yes fi @@ -3015,6 +3071,7 @@ AC_SUBST(PLAT) AC_SUBST(WITH_SASL) AC_SUBST(WITH_TLS) AC_SUBST(WITH_MODULES_ENABLED) +AC_SUBST(WITH_ACI_ENABLED) AC_SUBST(BUILD_LIBS_DYNAMIC) AC_SUBST(BUILD_SLAPD) @@ -3040,7 +3097,6 @@ dnl overlays 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) @@ -3050,6 +3106,7 @@ dnl overlays AC_SUBST(BUILD_SYNCPROV) AC_SUBST(BUILD_TRANSLUCENT) AC_SUBST(BUILD_UNIQUE) + AC_SUBST(BUILD_VALSORT) AC_SUBST(BUILD_SLURPD) AC_SUBST(LDAP_LIBS) @@ -3082,6 +3139,7 @@ AC_SUBST(SLAPI_LIBS) AC_SUBST(LIBSLAPI) AC_SUBST(LIBSLAPITOOLS) AC_SUBST(AUTH_LIBS) +AC_SUBST(ICU_LIBS) AC_SUBST(SLAPD_SLP_LIBS) AC_SUBST(SLAPD_GMP_LIBS) @@ -3115,7 +3173,7 @@ AC_CONFIG_FILES([Makefile:build/top.mk:Makefile.in:build/dir.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-shared.mk] +[libraries/librewrite/Makefile:build/top.mk:libraries/librewrite/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-bdb/Makefile:build/top.mk:servers/slapd/back-bdb/Makefile.in:build/mod.mk] @@ -3194,7 +3252,63 @@ ENDX /* end of generated file */ ENDX fi +OVERLAYSC="servers/slapd/overlays/statover.c" +echo "Making $OVERLAYSC" +rm -f $OVERLAYSC +cat > $OVERLAYSC << ENDX +/* This work is part of OpenLDAP Software . + * + * 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 + * . + */ +/* This file is automatically generated by configure; please do not edit. */ + +#include "portable.h" +#include "slap.h" + +ENDX +if test "${STATIC_OVERLAYS}"; then + for o in ${STATIC_OVERLAYS}; do + oo=`echo "${o}" | sed -e 's/.o$//' -e 's/_x$//'` + cat >> $OVERLAYSC << ENDX +extern OV_init ${oo}_initialize; +ENDX + done +fi + +cat >> $OVERLAYSC << ENDX + +OverlayInit slap_oinfo[] = { +ENDX + +if test "${STATIC_OVERLAYS}"; then + for o in ${STATIC_OVERLAYS}; do + oo=`echo "${o}" | sed -e 's/.o$//' -e 's/_x$//'` + echo " Add ${oo} ..." + cat >> $OVERLAYSC << ENDX + { "${oo}", ${oo}_initialize }, +ENDX + done +fi + + cat >> $OVERLAYSC << ENDX + { NULL, NULL }, +}; + +/* end of generated file */ +ENDX echo Please run \"make depend\" to build dependencies -]],[[STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS"]]) +]],[[ +STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS" +STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS" +]]) AC_OUTPUT