dnl $OpenLDAP$
dnl
-dnl Copyright 1998-2002 The OpenLDAP Foundation. All Rights Reserved.
+dnl Copyright 1998-2003 The OpenLDAP Foundation. All Rights Reserved.
dnl
dnl Redistribution and use in source and binary forms, with or without
dnl modification, are permitted only as authorized by the OpenLDAP
# $]OpenLDAP[$
# from] translit([$OpenLDAP$], $")] [
-# Copyright 1998-2002 The OpenLDAP Foundation. All Rights Reserved.
+# Copyright 1998-2003 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
# http://www.OpenLDAP.org/license.html or in file LICENSE in the
# top-level directory of the distribution.
-echo "Copyright 1998-2002 The OpenLDAP Foundation, All Rights Reserved."
+echo "Copyright 1998-2003 The OpenLDAP Foundation, All Rights Reserved."
echo " Restrictions apply, see COPYRIGHT and LICENSE files."
])dnl
dnl ----------------------------------------------------------------
TB="`$SHTOOL echo -e '%B' 2>/dev/null`"
TN="`$SHTOOL echo -e '%b' 2>/dev/null`"
-echo "Configuring ${TB}${OL_STRING}${TN} ..."
+OPENLDAP_CVS=""
+if test -d $ac_aux_dir/CVS; then
+ OPENLDAP_CVS="(from CVS sources) "
+fi
+
+echo "Configuring ${TB}${OL_STRING}${TN} ${OPENLDAP_CVS}..."
dnl Determine host platform
dnl we try not to use this for much
dnl General "enable" options
OL_ARG_ENABLE(debug,[ --enable-debug enable debugging], yes)dnl
OL_ARG_ENABLE(syslog,[ --enable-syslog enable syslog support], auto)dnl
+OL_ARG_ENABLE(dynamic,[ --enable-dynamic enable linking built binaries with dynamic libs], no)dnl
OL_ARG_ENABLE(proctitle,[ --enable-proctitle enable proctitle support], yes)dnl
-OL_ARG_ENABLE(cache,[ --enable-cache enable caching (experimental)], no)dnl
-OL_ARG_ENABLE(referrals,[ --enable-referrals enable LDAPv2+ Referrals (experimental)], no)dnl
+dnl OL_ARG_ENABLE(referrals,[ --enable-referrals enable LDAPv2+ Referrals (experimental)], no)dnl
+ol_enable_referrals=${ol_enable_referrals-no}
dnl OL_ARG_ENABLE(kbind,[ --enable-kbind enable LDAPv2+ Kerberos IV bind (deprecated)], no)dnl
ol_enable_kbind=${ol_enable_kbind-no}
OL_ARG_ENABLE(ipv6,[ --enable-ipv6 enable IPv6 support], auto)dnl
OL_ARG_WITH(cyrus_sasl,[ --with-cyrus-sasl with Cyrus SASL support],
auto, [auto yes no] )
-OL_ARG_WITH(fetch,[ --with-fetch with freeBSD fetch URL support],
+OL_ARG_WITH(fetch,[ --with-fetch with fetch(3) URL support],
auto, [auto yes no] )
-OL_ARG_WITH(kerberos,[ --with-kerberos with Kerberos support],
- auto, [auto k5 k5only k425 kth k4 afs yes no])
+dnl OL_ARG_WITH(kerberos,[ --with-kerberos with Kerberos support],
+dnl auto, [auto k5 k5only k425 kth k4 afs yes no])
+ol_with_kerberos=${ol_with_kerberos-auto}
OL_ARG_WITH(readline,[ --with-readline with readline support],
auto, [auto yes no] )
OL_ARG_WITH(threads,[ --with-threads with threads],
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
-OL_ARG_ENABLE(dynamic,[ --enable-dynamic enable linking built binaries with dynamic libs], no)dnl
-OL_ARG_ENABLE(kpasswd,[ --enable-kpasswd enable Kerberos password verification], 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
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_WITH(sql_module,[ --with-sql-module module type static|dynamic], static,
+ [static dynamic])
dnl ----------------------------------------------------------------
dnl SLURPD OPTIONS
AC_ARG_WITH(xxliboptions,[
Library Generation & Linking Options])
AC_ENABLE_STATIC
-dnl AC_DISABLE_SHARED
AC_ENABLE_SHARED
dnl ----------------------------------------------------------------
AC_LIBTOOL_DLOPEN
AC_PROG_LIBTOOL
-AC_PROG_AWK
OL_PROG_LN_H
AC_PROG_LN_S
-AC_PATH_PROG(SENDMAIL, sendmail, /usr/lib/sendmail,
- $PATH:/usr/libexec:/usr/lib:/usr/sbin:/usr/etc:/etc)
-AC_PATH_PROG(EDITOR, vi, /usr/ucb/vi, $PATH:/usr/ucb)
-
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 / /' -e 's/ -lc$//'`"
if test x"$ol_with_perl_module" = "xstatic" ; then
- SLAPD_PERL_LDFLAGS="`$PERLBIN -MExtUtils::Embed -e ldopts|sed -e s/-lc//`"
+ SLAPD_PERL_LDFLAGS="$PERL_LDFLAGS"
else
- MOD_PERL_LDFLAGS="`$PERLBIN -MExtUtils::Embed -e ldopts|sed -e s/-lc//`"
+ MOD_PERL_LDFLAGS="$PERL_LDFLAGS"
fi
dnl should check perl version
ol_link_perl=yes
AC_EXEEXT
AC_OBJEXT
-AC_DEFINE_UNQUOTED( EXEEXT, "${EXEEXT}", [defined to be the EXE extension])
+AC_DEFINE_UNQUOTED(EXEEXT, "${EXEEXT}", [defined to be the EXE extension])
dnl ----------------------------------------------------------------
dnl BeOS requires -lbe -lroot -lnet
sys/resource.h \
sys/select.h \
sys/socket.h \
+ sys/stat.h \
sys/syslog.h \
sys/time.h \
sys/types.h \
+ sys/ucred.h \
+ sys/uio.h \
syslog.h \
termios.h \
unistd.h \
dnl ----------------------------------------------------------------
dnl PF_INET6 support requires getaddrinfo and INET6_ADDRSTRLEN
dnl PF_LOCAL may use getaddrinfo in available
-AC_CHECK_FUNCS( getaddrinfo gai_strerror inet_ntop )
+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
else
have_krb5=no
- AC_MSG_WARN([Unrecongized Kerberos5 Implementation])
+ AC_MSG_WARN([Unrecognized Kerberos5 Implementation])
fi
if test $have_krb5 = yes ; then
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
+ 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],
AC_DEFINE(SLAPD_LMHASH, 1, [define to support LAN Manager passwords])
fi
-dnl ----------------------------------------------------------------
-dnl Tests for reentrant functions necessary to build a
-dnl thread_safe -lldap.
-AC_CHECK_FUNCS( \
- ctime_r \
- gethostbyname_r gethostbyaddr_r \
-)
-
-if test "$ac_cv_func_ctime_r" = no ; then
- ol_cv_func_ctime_r_nargs=0
-else
- OL_FUNC_CTIME_R_NARGS
-dnl OL_FUNC_CTIME_R_TYPE
-fi
-
-if test "$ac_cv_func_gethostbyname_r" = yes ; then
- OL_FUNC_GETHOSTBYNAME_R_NARGS
-else
- ol_cv_func_gethostbyname_r_nargs=0
-fi
-
-if test "$ac_cv_func_gethostbyaddr_r" = yes ; then
- OL_FUNC_GETHOSTBYADDR_R_NARGS
-else
- ol_cv_func_gethostbyaddr_r_nargs=0
-fi
-
-if test "$ac_cv_func_ctime_r" = yes \
- -a "$ol_cv_func_ctime_r_nargs" -ge 2 \
- -a "$ol_cv_func_ctime_r_nargs" -le 3 \
- -a "$ac_cv_func_gethostbyname_r" = yes \
- -a "$ol_cv_func_gethostbyname_r_nargs" -ge 5 \
- -a "$ol_cv_func_gethostbyname_r_nargs" -le 6 \
- -a "$ac_cv_func_gethostbyaddr_r" = yes \
- -a "$ol_cv_func_gethostbyaddr_r_nargs" -ge 5 \
- -a "$ol_cv_func_gethostbyaddr_r_nargs" -le 6 \
- ; then
-
- AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_REENTRANT,1)
-fi
-
dnl ----------------------------------------------------------------
dnl Threads?
ol_link_threads=no
fi
dnl When in thread environment, use
-dnl #if defined( HAVE_REENTRANT_FUNCTIONS ) \
-dnl || defined( HAVE_FUNC_R )
+dnl #if defined( HAVE_REENTRANT_FUNCTIONS ) || defined( HAVE_FUNC_R )
dnl func_r(...);
dnl #else
dnl # if defined( HAVE_THREADS )
dnl _POSIX_THREAD_SAFE_FUNCTIONS
dnl _POSIX_THREADSAFE_FUNCTIONS
dnl
-dnl and is currently defined in lthread.h
+dnl and is currently defined in <ldap_pvt_thread.h>
dnl
-dnl HAVE_THREADS is defined by lthread.h iff -UNO_THREADS
+dnl HAVE_THREADS is defined by <ldap_pvt_thread.h> iff -UNO_THREADS
dnl
-dnl libldap/*.c should only include <lthread.h> iff
+dnl libldap/*.c should only include <ldap_pvt_thread.h> iff
dnl LDAP_R_COMPILE is defined. ie:
dnl #ifdef LDAP_R_COMPILE
-dnl # include LDAP_R_COMPILE
+dnl # include <ldap_pvt_thread.h>
dnl #endif
dnl
dnl LDAP_R_COMPILE is defined by libldap_r/Makefile.in
AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE,1)
fi
+dnl ----------------------------------------------------------------
+dnl Tests for reentrant functions necessary to build -lldap_r
+AC_CHECK_FUNCS( \
+ ctime_r \
+ gethostbyname_r gethostbyaddr_r \
+)
+
+if test "$ac_cv_func_ctime_r" = no ; then
+ ol_cv_func_ctime_r_nargs=0
+else
+ OL_FUNC_CTIME_R_NARGS
+dnl OL_FUNC_CTIME_R_TYPE
+fi
+
+if test "$ac_cv_func_gethostbyname_r" = yes ; then
+ OL_FUNC_GETHOSTBYNAME_R_NARGS
+else
+ ol_cv_func_gethostbyname_r_nargs=0
+fi
+
+if test "$ac_cv_func_gethostbyaddr_r" = yes ; then
+ OL_FUNC_GETHOSTBYADDR_R_NARGS
+else
+ ol_cv_func_gethostbyaddr_r_nargs=0
+fi
+
dnl ----------------------------------------------------------------
ol_link_ldbm=no
fi
dnl ----------------------------------------------------------------
+
if test $ol_enable_dynamic = yes -a $enable_shared = yes ; then
BUILD_LIBS_DYNAMIC=shared
AC_DEFINE(LDAP_LIBS_DYNAMIC, 1, [define if LDAP libs are dynamic])
+ LTSTATIC=""
else
BUILD_LIBS_DYNAMIC=static
+ LTSTATIC="-static"
fi
+AC_SUBST(LTSTATIC)dnl
dnl ----------------------------------------------------------------
if test $ol_enable_wrappers != no ; then
dnl SQL
ol_link_sql=no
if test $ol_enable_sql != no ; then
+ AC_CHECK_HEADERS(sql.h sqlext.h,[],[
+ AC_MSG_ERROR([could not locate SQL headers])
+ ])
+
AC_CHECK_LIB(iodbc,SQLDriverConnect,[have_iodbc=yes],[have_iodbc=no])
if test $have_iodbc = yes ; then
ol_link_sql="-liodbc"
wait4 \
write \
send \
+ sendmsg \
sendto \
)
dnl We actually may need to replace more than this.
-AC_REPLACE_FUNCS(getopt)
+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
+ OL_MSGHDR_MSG_ACCRIGHTS
+ 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; then
AC_DEFINE(snprintf, ber_pvt_snprintf, [define to snprintf routine])
AC_DEFINE(LDAP_SYSLOG,1,
[define this to add syslog code])
fi
-if test "$ol_enable_cache" = no ; then
- AC_DEFINE(LDAP_NOCACHE,1,
- [define this to remove -lldap cache support])
-fi
if test "$ol_link_kbind" != no ; then
AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND,LDAP_VENDOR_VERSION)
fi
AC_DEFINE(SLAPD_META,1,[define to support LDAP Metadirectory backend])
BUILD_SLAPD=yes
BUILD_META=yes
- BUILD_LDAP=yes
BUILD_REWRITE=yes
if test "$ol_with_meta_module" != static ; then
AC_DEFINE(SLAPD_META_DYNAMIC,1,