dnl top-level directory of the distribution or, alternatively, at
dnl <http://www.OpenLDAP.org/license.html>.
dnl
-dnl ----------------------------------------------------------------
-dnl
-dnl Redefine AC_INIT_BINSH to provide RCS IDs and copyright notice
-dnl at top of generated configure script. Prints simple copyright.
-define([AC_INIT_BINSH],
-[[#! /bin/sh
-# $]OpenLDAP[$
-# from] translit([$OpenLDAP$], $")] [
-
-# This work is part of OpenLDAP Software <http://www.openldap.org/>.
-#
-# 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
-# <http://www.OpenLDAP.org/license.html>.
-
-echo "Copyright 1998-2005 The OpenLDAP Foundation. All rights reserved."
-echo " Restrictions apply, see COPYRIGHT and LICENSE files."
-])dnl
-dnl ----------------------------------------------------------------
-dnl OpenLDAP Autoconf Macros
-dnl $OpenLDAP$
-dnl This work is part of OpenLDAP Software <http://www.openldap.org/>.
-dnl
-dnl Copyright 1998-2005 The OpenLDAP Foundation.
-dnl 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
-dnl Public License.
-dnl
-dnl A copy of this license is available in the file LICENSE in the
-dnl top-level directory of the distribution or, alternatively, at
-dnl <http://www.OpenLDAP.org/license.html>.
-builtin(include, build/openldap.m4)dnl
-
dnl ----------------------------------------------------------------
dnl Disable config.cache!
define([AC_CACHE_LOAD], )dnl
define([AC_CACHE_SAVE], )dnl
dnl ================================================================
dnl Configure.in for OpenLDAP
-AC_INIT
-AC_CONFIG_SRCDIR([build/version.sh])dnl
-
-# set unset (borrowed from autoconf 2.49c)
-if (OL_FOO=OL_FOO; unset OL_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_COPYRIGHT([[Copyright 1998-2005 The OpenLDAP Foundation. All rights reserved.
+Restrictions apply, see COPYRIGHT and LICENSE files.]])
+AC_REVISION([$OpenLDAP$])
+AC_INIT([OpenLDAP],,[http://www.openldap.org/its/])
+AC_CONFIG_SRCDIR(build/version.sh)dnl
+dnl ----------------------------------------------------------------
+dnl OpenLDAP Autoconf Macros
+builtin(include, build/openldap.m4)dnl
+dnl ================================================================
AC_CONFIG_AUX_DIR(build)dnl
OPENLDAP_RELEASE_DATE="$OL_RELEASE_DATE"
AC_SUBST(OPENLDAP_RELEASE_DATE)dnl
-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.3 should be installed.
+dnl We use autoconf features new to 2.59. Later versions like won't work.
+dnl aclocal.m4 should be built using aclocal from automake 1.5
+dnl libtool 1.5 should be installed.
AC_PREREQ(2.59)dnl Required Autoconf version
-AC_CONFIG_HEADER(include/portable.h include/ldap_features.h include/lber_types.h)dnl
+AH_TOP([
+/* begin of portable.h.pre */
+/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
+ *
+ * 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
+ * <http://www.OpenLDAP.org/license.html>.
+ */
+
+#ifndef _LDAP_PORTABLE_H
+#define _LDAP_PORTABLE_H
+
+/* define this if needed to get reentrant functions */
+#ifndef REENTRANT
+#undef REENTRANT
+#endif
+#ifndef _REENTRANT
+#undef _REENTRANT
+#endif
+
+/* define this if needed to get threadsafe functions */
+#ifndef THREADSAFE
+#undef THREADSAFE
+#endif
+#ifndef _THREADSAFE
+#undef _THREADSAFE
+#endif
+#ifndef THREAD_SAFE
+#undef THREAD_SAFE
+#endif
+#ifndef _THREAD_SAFE
+#undef _THREAD_SAFE
+#endif
+
+#ifndef _SGI_MP_SOURCE
+#undef _SGI_MP_SOURCE
+#endif
+
+/* end of portable.h.pre */
+])
+AH_BOTTOM([
+/* begin of portable.h.post */
+
+#ifdef _WIN32
+ /* don't suck in all of the win32 api */
+# define WIN32_LEAN_AND_MEAN 1
+#endif
+
+#ifndef LDAP_NEEDS_PROTOTYPES
+/* force LDAP_P to always include prototypes */
+#define LDAP_NEEDS_PROTOTYPES 1
+#endif
+
+#ifndef LDAP_REL_ENG
+#if (LDAP_VENDOR_VERSION == 000000) && !defined(LDAP_DEVEL)
+#define LDAP_DEVEL
+#endif
+#if defined(LDAP_DEVEL) && !defined(LDAP_TEST)
+#define LDAP_TEST
+#endif
+#endif
+
+#ifdef HAVE_STDDEF_H
+# include <stddef.h>
+#endif
+
+#ifdef HAVE_EBCDIC
+/* ASCII/EBCDIC converting replacements for stdio funcs
+ * vsnprintf and snprintf are used too, but they are already
+ * checked by the configure script
+ */
+#define fputs ber_pvt_fputs
+#define fgets ber_pvt_fgets
+#define printf ber_pvt_printf
+#define fprintf ber_pvt_fprintf
+#define vfprintf ber_pvt_vfprintf
+#define vsprintf ber_pvt_vsprintf
+#endif
+
+#include "ac/fdset.h"
+
+#include "ldap_cdefs.h"
+#include "ldap_features.h"
+
+#include "ac/assert.h"
+#include "ac/localize.h"
+
+#endif /* _LDAP_PORTABLE_H */
+/* end of portable.h.post */
+])
+
+AC_CONFIG_HEADERS([include/portable.h:include/portable.hin])
+AC_CONFIG_HEADERS([include/ldap_features.h:include/ldap_features.hin])
+AC_CONFIG_HEADERS([include/lber_types.h:include/lber_types.hin])
dnl ================================================================
dnl Start Args
dnl ----------------------------------------------------------------
dnl General "with" options
-dnl OL_ARG_ENABLE(dmalloc,[ --enable-dmalloc enable debug malloc support], no)dnl
-
OL_ARG_WITH(cyrus_sasl,[ --with-cyrus-sasl with Cyrus SASL support],
auto, [auto yes no] )
OL_ARG_WITH(fetch,[ --with-fetch with fetch(3) URL support],
dnl ----------------------------------------------------------------
dnl SLAPD OPTIONS
-AC_ARG_WITH(xxslapdoptions,[
+AC_ARG_ENABLE(xxslapdoptions,[
SLAPD (Standalone LDAP Daemon) Options:])
OL_ARG_ENABLE(slapd,[ --enable-slapd enable building slapd], yes)dnl
OL_ARG_ENABLE(aci,[ --enable-aci enable per-object ACIs (experimental)], no)dnl
Backends="bdb dnssrv hdb ldap ldbm meta monitor null \
passwd perl relay shell sql"
-AC_ARG_WITH(xxslapbackends,[
+AC_ARG_ENABLE(xxslapbackends,[
SLAPD Backend Options:])
-OL_ARG_ENABLE(backends,[ --enable-backends enable all available backends no|yes|mod],
+OL_ARG_ENABLE(backends,[ --enable-backends enable all available backends],
--, [no yes mod])dnl
-test -n "$ol_enable_backends" && ol_dflt_backends="$ol_enable_backends"
-OL_ARG_ENABLE(bdb,[ --enable-bdb enable Berkeley DB backend no|yes|mod],
- ${ol_dflt_backends-yes}, [no yes mod])dnl
-OL_ARG_ENABLE(dnssrv,[ --enable-dnssrv enable dnssrv backend no|yes|mod],
- ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(hdb,[ --enable-hdb enable Hierarchical DB backend no|yes|mod],
- ${ol_dflt_backends-yes}, [no yes mod])dnl
-OL_ARG_ENABLE(ldap,[ --enable-ldap enable ldap backend no|yes|mod],
- ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(ldbm,[ --enable-ldbm enable ldbm backend no|yes|mod],
- ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_WITH(ldbm_api,[ --with-ldbm-api with LDBM API auto|berkeley|bcompat|mdbm|gdbm],
+OL_ARG_ENABLE(bdb,[ --enable-bdb enable Berkeley DB backend],
+ yes, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(dnssrv,[ --enable-dnssrv enable dnssrv backend],
+ no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(hdb,[ --enable-hdb enable Hierarchical DB backend],
+ yes, [no yes mod], ol_enable_backends)dnl
+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
+OL_ARG_ENABLE(ldbm_api,[ --enable-ldbm-api use LDBM API],
auto, [auto berkeley bcompat mdbm gdbm])
-OL_ARG_WITH(ldbm_type,[ --with-ldbm-type use LDBM type auto|btree|hash],
+OL_ARG_ENABLE(ldbm_type,[ --enable-ldbm-type use LDBM type],
auto, [auto btree hash])
-OL_ARG_ENABLE(meta,[ --enable-meta enable metadirectory backend no|yes|mod],
- ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(monitor,[ --enable-monitor enable monitor backend no|yes|mod],
- ${ol_dflt_backends-yes}, [no yes mod])dnl
-OL_ARG_ENABLE(null,[ --enable-null enable null backend no|yes|mod],
- ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(passwd,[ --enable-passwd enable passwd backend no|yes|mod],
- ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(perl,[ --enable-perl enable perl backend no|yes|mod],
- ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(relay,[ --enable-relay enable relay backend no|yes|mod],
- ${ol_dflt_backends-yes}, [no yes mod])dnl
-OL_ARG_ENABLE(shell,[ --enable-shell enable shell backend no|yes|mod],
- ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(sql,[ --enable-sql enable sql backend no|yes|mod],
- ${ol_dflt_backends-no}, [no yes mod])dnl
+OL_ARG_ENABLE(meta,[ --enable-meta enable metadirectory backend],
+ no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(monitor,[ --enable-monitor enable monitor backend],
+ yes, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(null,[ --enable-null enable null backend],
+ no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(passwd,[ --enable-passwd enable passwd backend],
+ no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(perl,[ --enable-perl enable perl backend],
+ no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(relay,[ --enable-relay enable relay backend],
+ yes, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(shell,[ --enable-shell enable shell backend],
+ no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(sql,[ --enable-sql enable sql backend],
+ no, [no yes mod], ol_enable_backends)dnl
dnl ----------------------------------------------------------------
dnl SLAPD Overlay Options
Overlays="accesslog denyop dyngroup dynlist glue lastmod ppolicy proxycache \
refint retcode rwm syncprov translucent unique"
-AC_ARG_WITH(xxslapoverlays,[
+AC_ARG_ENABLE(xxslapoverlays,[
SLAPD Overlay Options:])
-OL_ARG_ENABLE(overlays,[ --enable-overlays enable all available overlays no|yes|mod],
+OL_ARG_ENABLE(overlays,[ --enable-overlays enable all available overlays],
--, [no yes mod])dnl
-test -n "$ol_enable_overlays" && ol_dflt_overlays="$ol_enable_overlays"
-OL_ARG_ENABLE(accesslog,[ --enable-accesslog In-Directory Access Logging overlay no|yes|mod],
- ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(denyop,[ --enable-denyop Deny Operation overlay no|yes|mod],
- ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(dyngroup,[ --enable-dyngroup Dynamic Group overlay no|yes|mod],
- ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(dynlist,[ --enable-dynlist Dynamic List overlay no|yes|mod],
- ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(glue,[ --enable-glue Backend Glue overlay no|yes|mod],
- ${ol_dflt_overlays-yes}, [no yes mod])
-OL_ARG_ENABLE(lastmod,[ --enable-lastmod Last Modification overlay no|yes|mod],
- ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(ppolicy,[ --enable-ppolicy Password Policy overlay no|yes|mod],
- ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(proxycache,[ --enable-proxycache Proxy Cache overlay no|yes|mod],
- ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(refint,[ --enable-refint Referential Integrity overlay no|yes|mod],
- ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(retcode,[ --enable-retcode Return Code testing overlay no|yes|mod],
- ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(rwm,[ --enable-rwm Rewrite/Remap overlay no|yes|mod],
- ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(syncprov,[ --enable-syncprov Syncrepl Provider overlay no|yes|mod],
- ${ol_dflt_overlays-yes}, [no yes mod])
-OL_ARG_ENABLE(translucent,[ --enable-translucent Translucent Proxy overlay no|yes|mod],
- ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(unique,[ --enable-unique Attribute Uniqueness overlay no|yes|mod],
- ${ol_dflt_overlays-no}, [no yes mod])
-
+OL_ARG_ENABLE(accesslog,[ --enable-accesslog In-Directory Access Logging overlay],
+ no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(denyop,[ --enable-denyop Deny Operation overlay],
+ no, [no yes mod], ol_enable_overlays)
+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],
+ no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(proxycache,[ --enable-proxycache Proxy Cache overlay],
+ no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(refint,[ --enable-refint Referential Integrity overlay],
+ no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(retcode,[ --enable-retcode Return Code testing overlay],
+ no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(rwm,[ --enable-rwm Rewrite/Remap overlay],
+ no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(syncprov,[ --enable-syncprov Syncrepl Provider overlay],
+ yes, [no yes mod], ol_enable_overlays)
+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)
dnl ----------------------------------------------------------------
dnl SLURPD OPTIONS
-AC_ARG_WITH(xxslurpdoptions,[
+AC_ARG_ENABLE(xxslurpdoptions,[
SLURPD (Replication Daemon) Options:])
OL_ARG_ENABLE(slurpd,[ --enable-slurpd enable building slurpd], auto)dnl
dnl ----------------------------------------------------------------
-AC_ARG_WITH(xxliboptions,[
+AC_ARG_ENABLE(xxliboptions,[
Library Generation & Linking Options])
AC_ENABLE_STATIC
AC_ENABLE_SHARED
if test $ol_enable_aci = yes ; then
AC_MSG_WARN([slapd disabled, ignoring --enable-aci argument])
fi
- if test $ol_with_ldbm_api != auto ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-ldbm-api argument])
+ if test $ol_enable_ldbm_api != auto ; then
+ AC_MSG_WARN([slapd disabled, ignoring --enable-ldbm-api argument])
fi
- if test $ol_with_ldbm_type != auto ; then
- AC_MSG_WARN([slapd disabled, ignoring --with-ldbm-type argument])
+ if test $ol_enable_ldbm_type != auto ; then
+ AC_MSG_WARN([slapd disabled, ignoring --enable-ldbm-type argument])
fi
if test $ol_enable_slurpd = yes ; then
AC_MSG_ERROR([slurpd requires slapd])
ol_enable_aci=no
ol_enable_wrappers=no
- ol_with_ldbm_api=no
- ol_with_ldbm_type=no
+ ol_enable_ldbm_api=no
+ ol_enable_ldbm_type=no
ol_enable_slurpd=no
elif test $ol_enable_ldbm = no ; then
dnl SLAPD without LDBM
- if test $ol_with_ldbm_api != auto ; then
- AC_MSG_WARN([LDBM disabled, ignoring --with-ldbm-api argument])
+ if test $ol_enable_ldbm_api != auto ; then
+ AC_MSG_WARN([LDBM disabled, ignoring --enable-ldbm-api argument])
fi
- if test $ol_with_ldbm_type != auto ; then
- AC_MSG_WARN([LDBM disabled, ignoring --with-ldbm-type argument])
+ if test $ol_enable_ldbm_type != auto ; then
+ AC_MSG_WARN([LDBM disabled, ignoring --enable-ldbm-type argument])
fi
if test $ol_enable_modules != yes -a \
fi
fi
- ol_with_ldbm_api=no
- ol_with_ldbm_type=no
+ ol_enable_ldbm_api=no
+ ol_enable_ldbm_type=no
if test $ol_enable_bdb != no -o $ol_enable_hdb != no; then
- ol_with_ldbm_api=berkeley
+ ol_enable_ldbm_api=berkeley
fi
else
dnl SLAPD with LDBM
- if test $ol_with_ldbm_api = gdbm -a \
- $ol_with_ldbm_type = btree ; then
+ if test $ol_enable_ldbm_api = gdbm -a \
+ $ol_enable_ldbm_type = btree ; then
AC_MSG_ERROR([GDBM only supports LDBM type hash])
fi
- if test $ol_with_ldbm_api = mdbm -a \
- $ol_with_ldbm_type = btree ; then
+ if test $ol_enable_ldbm_api = mdbm -a \
+ $ol_enable_ldbm_type = btree ; then
AC_MSG_ERROR([MDBM only supports LDBM type hash])
fi
- if test $ol_with_ldbm_api = ndbm -a \
- $ol_with_ldbm_type = btree ; then
+ if test $ol_enable_ldbm_api = ndbm -a \
+ $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_with_ldbm_api = auto ; then
- ol_with_ldbm_api=berkeley
- elif test $ol_with_ldbm_api != berkeley ; then
+ if test $ol_enable_ldbm_api = auto ; then
+ ol_enable_ldbm_api=berkeley
+ elif test $ol_enable_ldbm_api != berkeley ; then
AC_MSG_ERROR([LDBM API not compatible with BDB/HDB])
fi
fi
AC_PROG_CPP
dnl ----------------------------------------------------------------
-dnl Checks for UNIX Variants
-dnl AC_AIX
-dnl AC_ISC_POSIX
-dnl AC_MINIX
-
-dnl ----------------------------------------------------------------
-dnl Checks for system services
-AC_CANONICAL_HOST()
-AC_DIAGNOSE([obsolete],[AC_CYGWIN is obsolete: use AC_CANONICAL_HOST and $host_os])case $host_os in
- *cygwin* ) CYGWIN=yes;;
- * ) CYGWIN=no;;
-esac
-
-AC_CANONICAL_HOST()
-AC_DIAGNOSE([obsolete],[AC_MINGW32 is obsolete: use AC_CANONICAL_HOST and $host_os])case $host_os in
- *mingw32* ) MINGW32=yes;;
- * ) MINGW32=no;;
-esac
-
+dnl Checks for file extensions
AC_EXEEXT
AC_OBJEXT
-
AC_DEFINE_UNQUOTED(EXEEXT, "${EXEEXT}", [defined to be the EXE extension])
dnl ----------------------------------------------------------------
dnl ----------------------------------------------------------------
dnl OpenLDAP requires STDC features
-AC_PROG_CC()
-AC_DIAGNOSE([obsolete],[AM_PROG_CC_STDC:
- your code should no longer depend upon `am_cv_prog_cc_stdc', but upon
- `ac_cv_prog_cc_stdc'. Remove this warning and the assignment when
- you adjust the code. You can also remove the above call to
- AC_PROG_CC if you already called it elsewhere.])
-am_cv_prog_cc_stdc=$ac_cv_prog_cc_stdc
-
-if test "X${am_cv_prog_cc_stdc}" = "Xno" ; then
+AC_PROG_CC
+if test "X${ac_cv_prog_cc_stdc}" = "Xno" ; then
AC_MSG_ERROR([OpenLDAP requires compiler to support STDC constructs.])
fi
psap.h \
pwd.h \
process.h \
- resolv.h \
sgtty.h \
shadow.h \
stddef.h \
sys/syslog.h \
sys/time.h \
sys/types.h \
- sys/ucred.h \
sys/uio.h \
syslog.h \
termios.h \
winsock2.h \
)
+AC_CHECK_HEADERS( resolv.h, [], [],
+[$ac_includes_default]
+#include <netinet/in.h>
+)
+
+AC_CHECK_HEADERS(sys/ucred.h, [], [],
+[$ac_includes_default
+#ifdef HAVE_SYS_PARAM_H
+#include <sys/param.h>
+#endif
+])
+
dnl ----------------------------------------------------------------
dnl Checks for libraries
dnl pthread_create in $LIBS
AC_CACHE_CHECK([for pthread_create in default libraries],
ol_cv_pthread_create,[
- AC_RUN_IFELSE([AC_LANG_SOURCE([[OL_PTHREAD_TEST_PROGRAM]])],[ol_cv_pthread_create=yes],[ol_cv_pthread_create=no],[_au_changequote([,])AC_TRY_LINK(OL_PTHREAD_TEST_INCLUDES,OL_PTHREAD_TEST_FUNCTION,
+ AC_RUN_IFELSE([OL_PTHREAD_TEST_PROGRAM],
[ol_cv_pthread_create=yes],
- [ol_cv_pthread_create=no])])])
+ [ol_cv_pthread_create=no],
+ [AC_TRY_LINK(OL_PTHREAD_TEST_INCLUDES,OL_PTHREAD_TEST_FUNCTION,
+ [ol_cv_pthread_create=yes],
+ [ol_cv_pthread_create=no])])])
if test $ol_cv_pthread_create != no ; then
ol_link_threads=posix
AC_CACHE_CHECK([if pthread_create() works],
ol_cv_pthread_create_works,[
- AC_RUN_IFELSE([AC_LANG_SOURCE([[OL_PTHREAD_TEST_PROGRAM]])],[ol_cv_pthread_create_works=yes],[ol_cv_pthread_create_works=no],[dnl assume yes
+ AC_RUN_IFELSE([OL_PTHREAD_TEST_PROGRAM],
+ [ol_cv_pthread_create_works=yes],
+ [ol_cv_pthread_create_works=no],
+ [dnl assume yes
ol_cv_pthread_create_works=yes])])
if test $ol_cv_pthread_create_works = no ; then
fi
if test $ol_link_threads != no ; then
- AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE,1)
+ AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE,1,
+ [define to 1 if library is thread safe])
fi
dnl ----------------------------------------------------------------
dnl ----------------------------------------------------------------
ol_link_ldbm=no
-if test $ol_with_ldbm_api = auto \
- -o $ol_with_ldbm_api = berkeley \
- -o $ol_with_ldbm_api = bcompat ; then
+if test $ol_enable_ldbm_api = auto \
+ -o $ol_enable_ldbm_api = berkeley \
+ -o $ol_enable_ldbm_api = bcompat ; then
- if test $ol_with_ldbm_api = bcompat; then \
+ if test $ol_enable_ldbm_api = bcompat; then \
OL_BERKELEY_COMPAT_DB
else
OL_BERKELEY_DB
[define this if Berkeley DB is available])
ol_link_ldbm=berkeley
- ol_with_ldbm_api=berkeley
+ ol_enable_ldbm_api=berkeley
- if test $ol_with_ldbm_type = hash ; then
+ if test $ol_enable_ldbm_type = hash ; then
AC_DEFINE(LDBM_USE_DBHASH,1,
[define this to use DBHASH w/ LDBM backend])
else
fi
fi
-if test $ol_link_ldbm = no -a $ol_with_ldbm_type = btree ; then
+if test $ol_link_ldbm = no -a $ol_enable_ldbm_type = btree ; then
AC_MSG_WARN([Could not find LDBM with BTREE support])
- ol_with_ldbm_api=none
+ ol_enable_ldbm_api=none
fi
-if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = mdbm ; then
+if test $ol_enable_ldbm_api = auto -o $ol_enable_ldbm_api = mdbm ; then
OL_MDBM
if test $ol_cv_mdbm = yes ; then
ol_link_ldbm=mdbm
- ol_with_ldbm_api=mdbm
+ ol_enable_ldbm_api=mdbm
if test $ol_cv_lib_mdbm != yes ; then
LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_mdbm"
fi
fi
fi
-if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = gdbm ; then
+if test $ol_enable_ldbm_api = auto -o $ol_enable_ldbm_api = gdbm ; then
OL_GDBM
if test $ol_cv_gdbm = yes ; then
ol_link_ldbm=gdbm
- ol_with_ldbm_api=gdbm
+ ol_enable_ldbm_api=gdbm
if test $ol_cv_lib_gdbm != yes ; then
LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_gdbm"
fi
fi
-if test $ol_with_ldbm_api = ndbm ; then
+if test $ol_enable_ldbm_api = ndbm ; then
OL_NDBM
if test $ol_cv_ndbm = yes ; then
ol_link_ldbm=ndbm
- ol_with_ldbm_api=ndbm
+ ol_enable_ldbm_api=ndbm
if test $ol_cv_lib_ndbm != yes ; then
LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_ndbm"
LIBS="$save_LIBS"],[
dnl try with -lnsl
LIBS="$LIBS -lnsl"
- _au_changequote([,])AC_TRY_LINK([
+ AC_TRY_LINK([
#include <tcpd.h>
int allow_severity = 0;
int deny_severity = 0;
ol_enable_syslog=$ac_cv_func_openlog
fi
-dnl ----------------------------------------------------------------
-dnl dmalloc support (deprecated in favor of -DCSRIMALLOC support)
-dnl if test $ol_enable_dmalloc != no ; then
-dnl AC_CHECK_HEADERS(dmalloc.h)
-dnl AC_CHECK_LIB(dmalloc, dmalloc_shutdown)
-dnl fi
-
dnl ----------------------------------------------------------------
dnl SQL
ol_link_sql=no
dnl ----------------------------------------------------------------
dnl Checks for typedefs, structures, and compiler characteristics.
-dnl Checks for long long
-AC_CACHE_CHECK([long long], ol_cv_type_long_long, [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[long long x;]])],[ol_cv_type_long_long=yes],[ol_cv_type_long_long=no])])
-if test $ol_cv_type_long_long = yes; then
- AC_DEFINE(HAVE_LONG_LONG, 1, [define if you have 'long long'])
-fi
+AC_CHECK_TYPE(mode_t, int)
+AC_CHECK_TYPE(off_t, long)
+AC_CHECK_TYPE(pid_t, int)
+AC_CHECK_TYPE(ssize_t, [signed int])
+AC_CHECK_TYPE(caddr_t, [char *])
+AC_CHECK_TYPE(size_t, unsigned)
-AC_TYPE_MODE_T
-AC_TYPE_OFF_T
-AC_TYPE_PID_T
+AC_CHECK_TYPES([long long])
AC_CHECK_TYPES([ptrdiff_t])
+
+AC_CHECK_TYPE([socklen_t],,
+ [AC_DEFINE_UNQUOTED([socklen_t], [int],
+ [Define to `int' if <sys/socket.h> does not define.])],
+ [$ac_includes_default
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+ ])
+
AC_TYPE_SIGNAL
-AC_TYPE_SIZE_T
-AC_CHECK_TYPE(ssize_t, [signed int])
-AC_CHECK_TYPE(caddr_t, [char *])
+AC_CHECK_TYPE([sig_atomic_t],,
+ [AC_DEFINE_UNQUOTED([sig_atomic_t], [int],
+ [Define to `int' if <signal.h> does not define.])],
+ [$ac_includes_default
+#include <signal.h>
+ ])
-OL_TYPE_SOCKLEN_T
-AC_DIAGNOSE([obsolete],[AC_STRUCT_ST_BLKSIZE:
- your code should no longer depend upon `HAVE_ST_BLKSIZE', but
- `HAVE_STRUCT_STAT_ST_BLKSIZE'. Remove this warning and
- the `AC_DEFINE' when you adjust the code.])
-AC_CHECK_MEMBERS([struct stat.st_blksize],[AC_DEFINE(HAVE_ST_BLKSIZE, 1,
- [Define to 1 if your `struct stat' has
- `st_blksize'. Deprecated, use
- `HAVE_STRUCT_STAT_ST_BLKSIZE' instead.])])
+AC_TYPE_UID_T
AC_HEADER_TIME
AC_STRUCT_TM
-AC_TYPE_UID_T
-OL_TYPE_SIG_ATOMIC_T
-
-dnl AC_TYPE_GETGROUPS
-
-OL_STRUCT_PASSWD_PW_GECOS
-OL_STRUCT_PASSWD_PW_PASSWD
+AC_CHECK_MEMBERS([struct stat.st_blksize])
+AC_CHECK_MEMBERS([struct passwd.pw_gecos],,,[$ac_includes_default
+#include <pwd.h>])
+AC_CHECK_MEMBERS([struct passwd.pw_passwd],,,[$ac_includes_default
+#include <pwd.h>])
OL_C_UPPER_LOWER
AC_C_CONST
AC_C_BIGENDIAN
fi
-AC_COMPILE_CHECK_SIZEOF(short)
-AC_COMPILE_CHECK_SIZEOF(int)
-AC_COMPILE_CHECK_SIZEOF(long)
-AC_COMPILE_CHECK_SIZEOF(wchar_t)
+AC_CHECK_SIZEOF(short)
+AC_CHECK_SIZEOF(int)
+AC_CHECK_SIZEOF(long)
+AC_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.])
- AC_DEFINE(LBER_INT_T,long)
+ AC_DEFINE(LBER_INT_T,long,[define to 32-bit or greater integer type])
else
- AC_DEFINE(LBER_INT_T,int)
+ AC_DEFINE(LBER_INT_T,int,[define to 32-bit or greater integer type])
fi
-AC_DEFINE(LBER_LEN_T,long)
-AC_DEFINE(LBER_SOCKET_T,int)
-AC_DEFINE(LBER_TAG_T,long)
+AC_DEFINE(LBER_LEN_T,long,[define to large integer type])
+AC_DEFINE(LBER_SOCKET_T,int,[define to socket descriptor type])
+AC_DEFINE(LBER_TAG_T,long,[define to large integer type])
dnl ----------------------------------------------------------------
dnl Checks for library functions.
[define if memcmp is not 8-bit clean or is otherwise broken])
fi
-dnl AC_FUNC_MKTIME([]) dnl checks for sys/time.h and unistd.h
AC_FUNC_STRFTIME
-dnl AC_FUNC_STRTOD([])
OL_FUNC_INET_ATON
LIBSRCS="$LIBSRCS getopt.c"
fi
if test "$ac_cv_func_getpeereid" != yes; then
- OL_MSGHDR_MSG_ACCRIGHTS
- if test "$ac_cv_func_getpeereid" != yes; then
- OL_MSGHDR_MSG_CONTROL
+ AC_CHECK_MEMBERS([struct msghdr.msg_accrightslen],,,
+ [$ac_includes_default
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif])
+ 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 <sys/socket.h>
+#endif])
fi
LIBSRCS="$LIBSRCS getpeereid.c"
fi
[define this to add syslog code])
fi
if test "$ol_link_kbind" != no ; then
- AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND,LDAP_VENDOR_VERSION)
+ AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND,LDAP_VENDOR_VERSION,
+ [define to LDAP VENDOR VERSION])
fi
if test "$ol_enable_proctitle" != no ; then
AC_DEFINE(LDAP_PROCTITLE,1,
[define this for LDAP process title support])
fi
if test "$ol_enable_referrals" != no ; then
- AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS,LDAP_VENDOR_VERSION)
+ AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS,LDAP_VENDOR_VERSION,
+ [define to LDAP VENDOR VERSION])
fi
if test "$ol_enable_local" != no; then
AC_DEFINE(LDAP_PF_LOCAL,1,[define to support PF_LOCAL])
dnl final output
dnl
-AC_CONFIG_FILES([\
-Makefile:build/top.mk:Makefile.in:build/dir.mk \
-doc/Makefile:build/top.mk:doc/Makefile.in:build/dir.mk \
-doc/man/Makefile:build/top.mk:doc/man/Makefile.in:build/dir.mk \
-doc/man/man1/Makefile:build/top.mk:doc/man/man1/Makefile.in:build/man.mk \
-doc/man/man3/Makefile:build/top.mk:doc/man/man3/Makefile.in:build/man.mk \
-doc/man/man5/Makefile:build/top.mk:doc/man/man5/Makefile.in:build/man.mk \
-doc/man/man8/Makefile:build/top.mk:doc/man/man8/Makefile.in:build/man.mk \
-clients/Makefile:build/top.mk:clients/Makefile.in:build/dir.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/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/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 \
-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 \
-servers/slapd/back-dnssrv/Makefile:build/top.mk:servers/slapd/back-dnssrv/Makefile.in:build/mod.mk \
-servers/slapd/back-hdb/Makefile:build/top.mk:servers/slapd/back-hdb/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 \
-servers/slapd/back-ldif/Makefile:build/top.mk:servers/slapd/back-ldif/Makefile.in:build/mod.mk \
-servers/slapd/back-meta/Makefile:build/top.mk:servers/slapd/back-meta/Makefile.in:build/mod.mk \
-servers/slapd/back-monitor/Makefile:build/top.mk:servers/slapd/back-monitor/Makefile.in:build/mod.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/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/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 \
-tests/progs/Makefile:build/top.mk:tests/progs/Makefile.in:build/rules.mk \
-])
+AC_CONFIG_FILES([Makefile:build/top.mk:Makefile.in:build/dir.mk]
+[doc/Makefile:build/top.mk:doc/Makefile.in:build/dir.mk]
+[doc/man/Makefile:build/top.mk:doc/man/Makefile.in:build/dir.mk]
+[doc/man/man1/Makefile:build/top.mk:doc/man/man1/Makefile.in:build/man.mk]
+[doc/man/man3/Makefile:build/top.mk:doc/man/man3/Makefile.in:build/man.mk]
+[doc/man/man5/Makefile:build/top.mk:doc/man/man5/Makefile.in:build/man.mk]
+[doc/man/man8/Makefile:build/top.mk:doc/man/man8/Makefile.in:build/man.mk]
+[clients/Makefile:build/top.mk:clients/Makefile.in:build/dir.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/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/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]
+[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]
+[servers/slapd/back-dnssrv/Makefile:build/top.mk:servers/slapd/back-dnssrv/Makefile.in:build/mod.mk]
+[servers/slapd/back-hdb/Makefile:build/top.mk:servers/slapd/back-hdb/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]
+[servers/slapd/back-ldif/Makefile:build/top.mk:servers/slapd/back-ldif/Makefile.in:build/mod.mk]
+[servers/slapd/back-meta/Makefile:build/top.mk:servers/slapd/back-meta/Makefile.in:build/mod.mk]
+[servers/slapd/back-monitor/Makefile:build/top.mk:servers/slapd/back-monitor/Makefile.in:build/mod.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/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/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]
+[tests/progs/Makefile:build/top.mk:tests/progs/Makefile.in:build/rules.mk])
+
AC_CONFIG_COMMANDS([default],[[
chmod +x tests/run
date > stamp-h
cat >> $BACKENDSC << ENDX
-BackendInfo slap_binfo[[]] = {
+BackendInfo slap_binfo[] = {
ENDX
for b in config ${STATIC_BACKENDS}; do