2 dnl This work is part of OpenLDAP Software <http://www.openldap.org/>.
4 dnl Copyright 1998-2016 The OpenLDAP Foundation.
5 dnl All rights reserved.
7 dnl Redistribution and use in source and binary forms, with or without
8 dnl modification, are permitted only as authorized by the OpenLDAP
11 dnl A copy of this license is available in the file LICENSE in the
12 dnl top-level directory of the distribution or, alternatively, at
13 dnl <http://www.OpenLDAP.org/license.html>.
15 dnl ----------------------------------------------------------------
16 dnl Disable config.cache!
17 define([AC_CACHE_LOAD], )dnl
18 define([AC_CACHE_SAVE], )dnl
19 dnl ----------------------------------------------------------------
20 dnl Disable libtool 1.5 support for languages we don't use
21 define([AC_LIBTOOL_LANG_CXX_CONFIG], [:])dnl
22 define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
23 define([AC_LIBTOOL_LANG_GCJ_CONFIG], [:])dnl
24 dnl ================================================================
25 dnl Configure.in for OpenLDAP
26 AC_COPYRIGHT([[Copyright 1998-2016 The OpenLDAP Foundation. All rights reserved.
27 Restrictions apply, see COPYRIGHT and LICENSE files.]])
29 AC_INIT([OpenLDAP],,[http://www.openldap.org/its/])
30 m4_define([AC_PACKAGE_BUGREPORT],[<http://www.openldap.org/its/>])
31 AC_CONFIG_SRCDIR(build/version.sh)dnl
32 dnl ----------------------------------------------------------------
33 dnl OpenLDAP Autoconf Macros
34 builtin(include, build/openldap.m4)dnl
35 dnl ================================================================
37 AC_CONFIG_AUX_DIR(build)dnl
39 eval `$ac_aux_dir/version.sh`
40 if test -z "$OL_STRING"; then
41 AC_MSG_ERROR([could not determine version])
44 if test -f "$ac_aux_dir/shtool" && test ! -d $ac_aux_dir/shtool; then
45 ac_cv_shtool="$ac_aux_dir/shtool"
47 AC_MSG_ERROR([no shtool found in $ac_aux_dir])
50 SHTOOL="$ac_cv_shtool"
51 dnl AC_SUBST(SHTOOL)dnl
55 TB="`$SHTOOL echo -e '%B' 2>/dev/null`"
56 TN="`$SHTOOL echo -e '%b' 2>/dev/null`"
60 if test -d $ac_aux_dir/../.git; then
61 OPENLDAP_REPO="(from Git clone) "
62 elif test -d $ac_aux_dir/CVS; then
63 OPENLDAP_REPO="(from CVS checkout) "
66 echo "Configuring ${TB}${OL_STRING}${TN} ${OPENLDAP_REPO}..."
68 dnl Determine host platform
69 dnl we try not to use this for much
70 AC_CANONICAL_TARGET([])
72 AM_INIT_AUTOMAKE([$OL_PACKAGE],[$OL_VERSION], [no defines])dnl
75 AC_DEFINE_UNQUOTED(OPENLDAP_PACKAGE,"$PACKAGE",Package)
76 AC_DEFINE_UNQUOTED(OPENLDAP_VERSION,"$VERSION",Version)
78 AC_DEFINE_UNQUOTED(LDAP_VENDOR_VERSION,$OL_API_INC,Version)
79 AC_DEFINE_UNQUOTED(LDAP_VENDOR_VERSION_MAJOR,$OL_MAJOR,Major)
80 AC_DEFINE_UNQUOTED(LDAP_VENDOR_VERSION_MINOR,$OL_MINOR,Minor)
81 AC_DEFINE_UNQUOTED(LDAP_VENDOR_VERSION_PATCH,$OL_PATCH,Patch)
83 OPENLDAP_LIBRELEASE=$OL_API_LIB_RELEASE
84 AC_SUBST(OPENLDAP_LIBRELEASE)dnl
86 OPENLDAP_LIBVERSION=$OL_API_LIB_VERSION
87 AC_SUBST(OPENLDAP_LIBVERSION)dnl
89 OPENLDAP_RELEASE_DATE="$OL_RELEASE_DATE"
90 AC_SUBST(OPENLDAP_RELEASE_DATE)dnl
92 dnl We use autoconf features new to 2.59. Later versions like won't work.
93 dnl aclocal.m4 should be built using aclocal from automake 1.5
94 dnl libtool 1.5 should be installed.
95 AC_PREREQ(2.59)dnl Required Autoconf version
98 /* begin of portable.h.pre */
99 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
101 * Copyright 1998-2016 The OpenLDAP Foundation
102 * All rights reserved.
104 * Redistribution and use in source and binary forms, with or without
105 * modification, are permitted only as authorized by the OpenLDAP
108 * A copy of this license is available in the file LICENSE in the
109 * top-level directory of the distribution or, alternatively, at
110 * <http://www.OpenLDAP.org/license.html>.
113 #ifndef _LDAP_PORTABLE_H
114 #define _LDAP_PORTABLE_H
116 /* define this if needed to get reentrant functions */
124 /* define this if needed to get threadsafe functions */
138 #ifndef _SGI_MP_SOURCE
139 #undef _SGI_MP_SOURCE
142 /* end of portable.h.pre */
145 /* begin of portable.h.post */
148 /* don't suck in all of the win32 api */
149 # define WIN32_LEAN_AND_MEAN 1
152 #ifndef LDAP_NEEDS_PROTOTYPES
153 /* force LDAP_P to always include prototypes */
154 #define LDAP_NEEDS_PROTOTYPES 1
158 #if (LDAP_VENDOR_VERSION == 000000) && !defined(LDAP_DEVEL)
161 #if defined(LDAP_DEVEL) && !defined(LDAP_TEST)
171 /* ASCII/EBCDIC converting replacements for stdio funcs
172 * vsnprintf and snprintf are used too, but they are already
173 * checked by the configure script
175 #define fputs ber_pvt_fputs
176 #define fgets ber_pvt_fgets
177 #define printf ber_pvt_printf
178 #define fprintf ber_pvt_fprintf
179 #define vfprintf ber_pvt_vfprintf
180 #define vsprintf ber_pvt_vsprintf
183 #include "ac/fdset.h"
185 #include "ldap_cdefs.h"
186 #include "ldap_features.h"
188 #include "ac/assert.h"
189 #include "ac/localize.h"
191 #endif /* _LDAP_PORTABLE_H */
192 /* end of portable.h.post */
195 AC_CONFIG_HEADERS([include/portable.h:include/portable.hin])
196 AC_CONFIG_HEADERS([include/ldap_features.h:include/ldap_features.hin])
197 AC_CONFIG_HEADERS([include/lber_types.h:include/lber_types.hin])
199 dnl ================================================================
201 AC_MSG_CHECKING(configure arguments)
202 AC_PREFIX_DEFAULT(/usr/local)
205 AC_SUBST(top_builddir)dnl
207 dnl ----------------------------------------------------------------
209 ldap_subdir="/openldap"
212 [ --with-subdir=DIR change default subdirectory used for installs],
219 ldap_subdir="$withval"
222 ldap_subdir="/$withval"
227 AC_SUBST(ldap_subdir)dnl
229 dnl ----------------------------------------------------------------
230 dnl General "enable" options
231 dnl set default to traditional to enable the original debug style
232 OL_ARG_ENABLE(debug,[ --enable-debug enable debugging], yes, [no yes traditional])dnl
233 OL_ARG_ENABLE(dynamic,[ --enable-dynamic enable linking built binaries with dynamic libs], no)dnl
234 OL_ARG_ENABLE(syslog,[ --enable-syslog enable syslog support], auto)dnl
235 OL_ARG_ENABLE(proctitle,[ --enable-proctitle enable proctitle support], yes)dnl
236 dnl OL_ARG_ENABLE(referrals,[ --enable-referrals enable LDAPv2+ Referrals (experimental)], no)dnl
237 ol_enable_referrals=${ol_enable_referrals-no}
238 OL_ARG_ENABLE(ipv6,[ --enable-ipv6 enable IPv6 support], auto)dnl
239 OL_ARG_ENABLE(local,[ --enable-local enable AF_LOCAL (AF_UNIX) socket support], auto)dnl
241 dnl ----------------------------------------------------------------
242 dnl General "with" options
243 OL_ARG_WITH(cyrus_sasl,[ --with-cyrus-sasl with Cyrus SASL support],
244 auto, [auto yes no] )
245 OL_ARG_WITH(fetch,[ --with-fetch with fetch(3) URL support],
246 auto, [auto yes no] )
247 OL_ARG_WITH(threads,[ --with-threads with threads],
248 auto, [auto nt posix mach pth lwp yes no manual] )
249 OL_ARG_WITH(tls,[ --with-tls with TLS/SSL support auto|openssl|gnutls|moznss],
250 auto, [auto openssl gnutls moznss yes no] )
251 OL_ARG_WITH(yielding_select,
252 [ --with-yielding-select with implicitly yielding select],
253 auto, [auto yes no manual] )
255 [ --with-mp with multiple precision statistics auto|longlong|long|bignum|gmp],
256 auto, [auto longlong long bignum gmp yes no])
258 [ --with-odbc with specific ODBC support iodbc|unixodbc|odbc32|auto],
259 auto, [auto iodbc unixodbc odbc32] )
261 dnl ----------------------------------------------------------------
263 dnl ----------------------------------------------------------------
265 dnl ----------------------------------------------------------------
267 AC_ARG_ENABLE(xxslapdoptions,[
268 SLAPD (Standalone LDAP Daemon) Options:])
269 OL_ARG_ENABLE(slapd,[ --enable-slapd enable building slapd], yes)dnl
270 OL_ARG_ENABLE(dynacl,[ --enable-dynacl enable run-time loadable ACL support (experimental)], no)dnl
271 OL_ARG_ENABLE(aci,[ --enable-aci enable per-object ACIs (experimental)], no, [no yes mod])dnl
272 OL_ARG_ENABLE(cleartext,[ --enable-cleartext enable cleartext passwords], yes)dnl
273 OL_ARG_ENABLE(crypt,[ --enable-crypt enable crypt(3) passwords], no)dnl
274 OL_ARG_ENABLE(lmpasswd,[ --enable-lmpasswd enable LAN Manager passwords], no)dnl
275 OL_ARG_ENABLE(spasswd,[ --enable-spasswd enable (Cyrus) SASL password verification], no)dnl
276 OL_ARG_ENABLE(modules,[ --enable-modules enable dynamic module support], no)dnl
277 OL_ARG_ENABLE(rewrite,[ --enable-rewrite enable DN rewriting in back-ldap and rwm overlay], auto)dnl
278 OL_ARG_ENABLE(rlookups,[ --enable-rlookups enable reverse lookups of client hostnames], no)dnl
279 OL_ARG_ENABLE(slapi,[ --enable-slapi enable SLAPI support (experimental)], no)dnl
280 OL_ARG_ENABLE(slp,[ --enable-slp enable SLPv2 support], no)dnl
281 OL_ARG_ENABLE(wrappers,[ --enable-wrappers enable tcp wrapper support], no)dnl
283 dnl ----------------------------------------------------------------
284 dnl SLAPD Backend Options
302 AC_ARG_ENABLE(xxslapbackends,[
303 SLAPD Backend Options:])
305 OL_ARG_ENABLE(backends,[ --enable-backends enable all available backends],
307 OL_ARG_ENABLE(bdb,[ --enable-bdb enable Berkeley DB backend],
308 no, [no yes mod], ol_enable_backends)dnl
309 OL_ARG_ENABLE(dnssrv,[ --enable-dnssrv enable dnssrv backend],
310 no, [no yes mod], ol_enable_backends)dnl
311 OL_ARG_ENABLE(hdb,[ --enable-hdb enable Hierarchical DB backend],
312 no, [no yes mod], ol_enable_backends)dnl
313 OL_ARG_ENABLE(ldap,[ --enable-ldap enable ldap backend],
314 no, [no yes mod], ol_enable_backends)dnl
315 OL_ARG_ENABLE(mdb,[ --enable-mdb enable mdb database backend],
316 yes, [no yes mod], ol_enable_backends)dnl
317 OL_ARG_ENABLE(meta,[ --enable-meta enable metadirectory backend],
318 no, [no yes mod], ol_enable_backends)dnl
319 OL_ARG_ENABLE(monitor,[ --enable-monitor enable monitor backend],
320 yes, [no yes mod], ol_enable_backends)dnl
321 OL_ARG_ENABLE(ndb,[ --enable-ndb enable MySQL NDB Cluster backend],
322 no, [no yes mod], ol_enable_backends)dnl
323 OL_ARG_ENABLE(null,[ --enable-null enable null backend],
324 no, [no yes mod], ol_enable_backends)dnl
325 OL_ARG_ENABLE(passwd,[ --enable-passwd enable passwd backend],
326 no, [no yes mod], ol_enable_backends)dnl
327 OL_ARG_ENABLE(perl,[ --enable-perl enable perl backend],
328 no, [no yes mod], ol_enable_backends)dnl
329 OL_ARG_ENABLE(relay,[ --enable-relay enable relay backend],
330 yes, [no yes mod], ol_enable_backends)dnl
331 OL_ARG_ENABLE(shell,[ --enable-shell enable shell backend],
332 no, [no yes mod], ol_enable_backends)dnl
333 OL_ARG_ENABLE(sock,[ --enable-sock enable sock backend],
334 no, [no yes mod], ol_enable_backends)dnl
335 OL_ARG_ENABLE(sql,[ --enable-sql enable sql backend],
336 no, [no yes mod], ol_enable_backends)dnl
337 OL_ARG_ENABLE(wt,[ --enable-wt enable WiredTiger backend],
338 no, [no yes mod], ol_enable_backends)dnl
340 dnl ----------------------------------------------------------------
341 dnl SLAPD Overlay Options
342 Overlays="accesslog \
363 AC_ARG_ENABLE(xxslapoverlays,[
364 SLAPD Overlay Options:])
366 OL_ARG_ENABLE(overlays,[ --enable-overlays enable all available overlays],
368 OL_ARG_ENABLE(accesslog,[ --enable-accesslog In-Directory Access Logging overlay],
369 no, [no yes mod], ol_enable_overlays)
370 OL_ARG_ENABLE(auditlog,[ --enable-auditlog Audit Logging overlay],
371 no, [no yes mod], ol_enable_overlays)
372 OL_ARG_ENABLE(collect,[ --enable-collect Collect overlay],
373 no, [no yes mod], ol_enable_overlays)
374 OL_ARG_ENABLE(constraint,[ --enable-constraint Attribute Constraint overlay],
375 no, [no yes mod], ol_enable_overlays)
376 OL_ARG_ENABLE(dds,[ --enable-dds Dynamic Directory Services overlay],
377 no, [no yes mod], ol_enable_overlays)
378 OL_ARG_ENABLE(deref,[ --enable-deref Dereference overlay],
379 no, [no yes mod], ol_enable_overlays)
380 OL_ARG_ENABLE(dyngroup,[ --enable-dyngroup Dynamic Group overlay],
381 no, [no yes mod], ol_enable_overlays)
382 OL_ARG_ENABLE(dynlist,[ --enable-dynlist Dynamic List overlay],
383 no, [no yes mod], ol_enable_overlays)
384 OL_ARG_ENABLE(memberof,[ --enable-memberof Reverse Group Membership overlay],
385 no, [no yes mod], ol_enable_overlays)
386 OL_ARG_ENABLE(ppolicy,[ --enable-ppolicy Password Policy overlay],
387 no, [no yes mod], ol_enable_overlays)
388 OL_ARG_ENABLE(proxycache,[ --enable-proxycache Proxy Cache overlay],
389 no, [no yes mod], ol_enable_overlays)
390 OL_ARG_ENABLE(refint,[ --enable-refint Referential Integrity overlay],
391 no, [no yes mod], ol_enable_overlays)
392 OL_ARG_ENABLE(retcode,[ --enable-retcode Return Code testing overlay],
393 no, [no yes mod], ol_enable_overlays)
394 OL_ARG_ENABLE(rwm,[ --enable-rwm Rewrite/Remap overlay],
395 no, [no yes mod], ol_enable_overlays)
396 OL_ARG_ENABLE(seqmod,[ --enable-seqmod Sequential Modify overlay],
397 no, [no yes mod], ol_enable_overlays)
398 OL_ARG_ENABLE(sssvlv,[ --enable-sssvlv ServerSideSort/VLV overlay],
399 no, [no yes mod], ol_enable_overlays)
400 OL_ARG_ENABLE(syncprov,[ --enable-syncprov Syncrepl Provider overlay],
401 yes, [no yes mod], ol_enable_overlays)
402 OL_ARG_ENABLE(translucent,[ --enable-translucent Translucent Proxy overlay],
403 no, [no yes mod], ol_enable_overlays)
404 OL_ARG_ENABLE(unique,[ --enable-unique Attribute Uniqueness overlay],
405 no, [no yes mod], ol_enable_overlays)
406 OL_ARG_ENABLE(valsort,[ --enable-valsort Value Sorting overlay],
407 no, [no yes mod], ol_enable_overlays)
409 dnl ----------------------------------------------------------------
410 AC_ARG_ENABLE(xxliboptions,[
411 Library Generation & Linking Options])
415 dnl ----------------------------------------------------------------
418 if test $ol_enable_slapd = no ; then
419 dnl SLAPD was specificallly disabled
420 if test $ol_enable_slapi = yes ; then
421 AC_MSG_WARN([slapd disabled, ignoring --enable-slapi argument])
423 case "$ol_enable_backends" in yes | mod)
424 AC_MSG_WARN([slapd disabled, ignoring --enable-backends argument])
426 for i in $Backends; do
427 eval "ol_tmp=\$ol_enable_$i"
428 if test $ol_tmp != no ; then
429 AC_MSG_WARN([slapd disabled, ignoring --enable-$i argument])
430 eval "ol_enable_$i=no"
433 if test $ol_enable_modules = yes ; then
434 AC_MSG_WARN([slapd disabled, ignoring --enable-modules argument])
436 if test $ol_enable_wrappers = yes ; then
437 AC_MSG_WARN([slapd disabled, ignoring --enable-wrappers argument])
439 if test $ol_enable_rlookups = yes ; then
440 AC_MSG_WARN([slapd disabled, ignoring --enable-rlookups argument])
442 if test $ol_enable_dynacl = yes ; then
443 AC_MSG_WARN([slapd disabled, ignoring --enable-dynacl argument])
445 if test $ol_enable_aci != no ; then
446 AC_MSG_WARN([slapd disabled, ignoring --enable-aci argument])
448 if test $ol_enable_rewrite = yes ; then
449 AC_MSG_WARN([slapd disabled, ignoring --enable-rewrite argument])
452 case "$ol_enable_overlays" in yes | mod)
453 AC_MSG_WARN([slapd disabled, ignoring --enable-overlays argument])
455 for i in $Overlays; do
456 eval "ol_tmp=\$ol_enable_$i"
457 if test $ol_tmp != no ; then
458 AC_MSG_WARN([slapd disabled, ignoring --enable-$i argument])
459 eval "ol_enable_$i=no"
463 # force settings to no
469 ol_enable_rlookups=no
472 ol_enable_wrappers=no
476 elif test $ol_enable_modules != yes &&
477 test $ol_enable_bdb = no &&
478 test $ol_enable_dnssrv = no &&
479 test $ol_enable_hdb = no &&
480 test $ol_enable_ldap = no &&
481 test $ol_enable_mdb = no &&
482 test $ol_enable_meta = no &&
483 test $ol_enable_monitor = no &&
484 test $ol_enable_ndb = no &&
485 test $ol_enable_null = no &&
486 test $ol_enable_passwd = no &&
487 test $ol_enable_perl = no &&
488 test $ol_enable_relay = no &&
489 test $ol_enable_shell = no &&
490 test $ol_enable_sock = no &&
491 test $ol_enable_sql = no &&
492 test $ol_enable_wt = no ; then
495 if test $ol_enable_slapd = yes ; then
496 AC_MSG_ERROR([slapd requires a backend])
498 AC_MSG_WARN([skipping slapd, no backend specified])
503 if test $ol_enable_meta/$ol_enable_ldap = yes/no ; then
504 AC_MSG_ERROR([--enable-meta requires --enable-ldap])
507 if test $ol_enable_lmpasswd = yes ; then
508 if test $ol_with_tls = no ; then
509 AC_MSG_ERROR([LAN Manager passwords require OpenSSL])
513 if test $ol_enable_spasswd = yes ; then
514 if test $ol_with_cyrus_sasl = no ; then
515 AC_MSG_ERROR([options require --with-cyrus-sasl])
517 ol_with_cyrus_sasl=yes
522 dnl ----------------------------------------------------------------
579 SLAPD_STATIC_OVERLAYS=
580 SLAPD_DYNAMIC_OVERLAYS=
582 SLAPD_MODULES_LDFLAGS=
583 SLAPD_MODULES_CPPFLAGS=
585 SLAPD_STATIC_BACKENDS=back-ldif
586 SLAPD_DYNAMIC_BACKENDS=
609 dnl ================================================================
610 dnl Checks for programs
612 AC_DEFINE(HAVE_MKVERSION, 1, [define this if you have mkversion])
614 dnl ----------------------------------------------------------------
616 dnl Determine which C translator to use
619 dnl AIX Thread requires we use cc_r or xlc_r.
620 dnl But only do this IF AIX and CC is not set
621 dnl and threads are auto|yes|posix.
623 dnl If we find cc_r|xlc_r, force pthreads and assume
624 dnl pthread_create is in $LIBS (ie: don't bring in
625 dnl any additional thread libraries)
626 dnl If we do not find cc_r|xlc_r, disable threads
630 *-*-aix*) dnl all AIX is not a good idea.
631 if test -z "$CC" ; then
632 case "$ol_with_threads" in
633 auto | yes | posix) ol_aix_threads=yes ;;
639 if test $ol_aix_threads = yes ; then
640 if test -z "${CC}" ; then
641 AC_CHECK_PROGS(CC,cc_r xlc_r cc)
643 if test "$CC" = cc ; then
644 dnl no CC! don't allow --with-threads
645 if test $ol_with_threads != auto ; then
646 AC_MSG_ERROR([--with-threads requires cc_r (or other suitable compiler) on AIX])
648 AC_MSG_WARN([disabling threads, no cc_r on AIX])
654 case ${CC} in cc_r | xlc_r)
655 ol_with_threads=posix
656 ol_cv_pthread_create=yes
661 if test -z "${CC}"; then
662 AC_CHECK_PROGS(CC,cc gcc,missing)
664 if test "${CC}" = "missing" ; then
665 AC_MSG_ERROR([Unable to locate cc(1) or suitable replacement. Check PATH or set CC.])
669 if test -z "${AR}"; then
670 AC_CHECK_PROGS(AR,ar gar,missing)
672 if test "${AR}" = "missing" ; then
673 AC_MSG_ERROR([Unable to locate ar(1) or suitable replacement. Check PATH or set AR.])
681 dnl ----------------------------------------------------------------
684 if test $ol_enable_perl != no ; then
685 AC_PATH_PROG(PERLBIN, perl, /usr/bin/perl)
687 if test "no$PERLBIN" = "no" ; then
688 if test $ol_enable_perl = yes ; then
689 AC_MSG_ERROR([could not locate perl])
693 PERL_CPPFLAGS="`$PERLBIN -MExtUtils::Embed -e ccopts`"
694 PERL_LDFLAGS="`$PERLBIN -MExtUtils::Embed -e ldopts|sed -e 's/ -lc / /' -e 's/ -lc$//'`"
696 if test x"$ol_enable_perl" = "xyes" ; then
697 SLAPD_PERL_LDFLAGS="$PERL_LDFLAGS"
699 MOD_PERL_LDFLAGS="$PERL_LDFLAGS"
701 dnl should check perl version
709 dnl ----------------------------------------------------------------
710 dnl Checks for Windows NT
712 *mingw32* ) ac_cv_mingw32=yes ;;
713 *cygwin* ) ac_cv_cygwin=yes ;;
714 *interix* ) ac_cv_interix=yes ;;
717 dnl ----------------------------------------------------------------
718 dnl Checks for file extensions
721 AC_DEFINE_UNQUOTED(EXEEXT, "${EXEEXT}", [defined to be the EXE extension])
723 dnl ----------------------------------------------------------------
724 dnl BeOS requires -lbe -lroot -lnet
725 AC_CHECK_LIB(be, be_app, [LIBS="$LIBS -lbe -lroot -lnet"], :, [-lroot -lnet])
727 dnl ----------------------------------------------------------------
728 dnl OpenLDAP requires STDC features
730 if test "X${ac_cv_prog_cc_stdc}" = "Xno" ; then
731 AC_MSG_ERROR([OpenLDAP requires compiler to support STDC constructs.])
734 dnl ----------------------------------------------------------------
735 dnl Check cc depend flags
737 if test "${ol_cv_mkdep}" = no ; then
738 # this will soon become an error
739 AC_MSG_WARN([do not know how to generate dependencies])
742 dnl ----------------------------------------------------------------
743 dnl Check for AIX security library
744 AC_CHECK_LIB(s, afopen, [
746 AC_DEFINE(HAVE_AIX_SECURITY,1,[define if you have AIX security lib])
749 dnl ----------------------------------------------------------------
750 dnl Check for IBM OS/390
754 AC_DEFINE(BOTH_STRINGS_H,1,[define to use both <string.h> and <strings.h>])
758 dnl ----------------------------------------------------------------
759 dnl Check for module support
761 WITH_MODULES_ENABLED=no
762 if test $ol_enable_modules != no ; then
763 AC_CHECK_HEADERS(ltdl.h)
765 if test $ac_cv_header_ltdl_h = no ; then
766 AC_MSG_ERROR([could not locate libtool ltdl.h])
769 AC_CHECK_LIB(ltdl, lt_dlinit, [
771 AC_DEFINE(HAVE_LIBLTDL,1,[define if you have libtool -ltdl])
774 if test "$ac_cv_lib_ltdl_lt_dlinit" = no ; then
775 AC_MSG_ERROR([could not locate libtool -lltdl])
778 WITH_MODULES_ENABLED=yes
781 for i in $Backends; do
782 eval "ol_tmp=\$ol_enable_$i"
783 if test $ol_tmp = mod ; then
784 AC_MSG_WARN([building static $i backend])
785 eval "ol_enable_$i=yes"
788 for i in $Overlays; do
789 eval "ol_tmp=\$ol_enable_$i"
790 if test $ol_tmp = mod ; then
791 AC_MSG_WARN([building static $i overlay])
792 eval "ol_enable_$i=yes"
797 dnl ----------------------------------------------------------------
798 dnl Checks for header files.
801 if test $ol_cv_header_stdc != yes; then
802 AC_MSG_WARN([could not locate Standard C compliant headers])
859 dnl Only check Winsock on MinGW
860 if test "$ac_cv_mingw32" = yes \
861 -o "$ac_cv_interix" = yes \
862 -o "$ol_cv_msvc" = yes
864 AC_CHECK_HEADERS( winsock.h winsock2.h )
867 AC_CHECK_HEADERS( resolv.h, [], [],
868 [$ac_includes_default
869 #include <netinet/in.h>
872 AC_CHECK_HEADERS( netinet/tcp.h, [], [],
873 [$ac_includes_default
874 #include <netinet/in.h>
877 AC_CHECK_HEADERS( sys/ucred.h, [], [],
878 [$ac_includes_default
879 #ifdef HAVE_SYS_PARAM_H
880 #include <sys/param.h>
884 dnl ----------------------------------------------------------------
885 dnl Checks for libraries
887 AC_CHECK_FUNCS( sigaction sigset )
889 dnl HP-UX requires -lV3
890 dnl this is not needed on newer versions of HP-UX
891 if test $ac_cv_func_sigaction = no && test $ac_cv_func_sigaction = no ; then
892 AC_CHECK_LIB(V3, sigset)
895 if test $ol_cv_msvc = yes ; then
899 dnl The following is INTENTIONALLY scripted out because shell does not
900 dnl support variable names with the '@' character, which is what
901 dnl autoconf would try to generate if one merely used AC_SEARCH_LIBS
902 if test "$ac_cv_header_winsock_h" = yes; then
903 AC_CACHE_CHECK([for winsock], [ol_cv_winsock],[
905 for curlib in none ws2_32 wsock32; do
906 if test $curlib != none ; then
907 LIBS="$save_LIBS -l$curlib"
909 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <winsock.h>
912 select(0,NULL,NULL,NULL,NULL);
915 ]])],[ol_cv_winsock=$curlib],[ol_cv_winsock=no])
917 test "$ol_cv_winsock" != no && break
922 if test $ol_cv_winsock != no ; then
923 AC_DEFINE(HAVE_WINSOCK, 1, [define if you have winsock])
924 ac_cv_func_socket=yes
925 ac_cv_func_select=yes
926 ac_cv_func_closesocket=yes
927 ac_cv_func_gethostname=yes
929 if test $ol_cv_winsock != none -a $ol_cv_winsock != yes ; then
930 LIBS="$LIBS -l$ol_cv_winsock"
933 if test $ol_cv_winsock = ws2_32 -o $ol_cv_winsock = yes ; then
934 AC_DEFINE(HAVE_WINSOCK2, 1, [define if you have winsock2])
940 dnl Likely combinations:
941 dnl -lsocket [ -lnsl_s | -lnsl ]
944 AC_CHECK_FUNC(socket, :, [
945 dnl hopefully we won't include too many libraries
946 AC_CHECK_LIB(socket, main)
947 AC_CHECK_LIB(net, socket)
948 AC_CHECK_LIB(nsl_s, main)
949 AC_CHECK_LIB(nsl, main)
950 AC_CHECK_LIB(inet, socket)
951 AC_CHECK_LIB(gen, main)
955 AC_CHECK_FUNC(select, :, AC_MSG_ERROR([select() required.]))
957 if test "${ac_cv_header_winsock_h}" != yes; then
959 dnl (if this detection becomes permenent, it and the select() detection
960 dnl should be done before the yielding select test)
961 AC_FUNC_SELECT_ARGTYPES
964 dnl check to see if system call automatically restart
965 dnl AC_SYS_RESTARTABLE_SYSCALLS
967 dnl ----------------------------------------------------------------
968 AC_CHECK_FUNCS( poll )
969 if test $ac_cv_func_poll = yes; then
970 AC_CHECK_HEADERS( poll.h sys/poll.h )
973 dnl ----------------------------------------------------------------
974 AC_CHECK_HEADERS( sys/epoll.h )
975 if test "${ac_cv_header_sys_epoll_h}" = yes; then
976 AC_MSG_CHECKING(for epoll system call)
977 AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(int argc, char **argv)
979 int epfd = epoll_create(256);
980 exit (epfd == -1 ? 1 : 0);
981 }]])],[AC_MSG_RESULT(yes)
982 AC_DEFINE(HAVE_EPOLL,1, [define if your system supports epoll])],[AC_MSG_RESULT(no)],[AC_MSG_RESULT(no)])
985 dnl ----------------------------------------------------------------
986 AC_CHECK_HEADERS( sys/devpoll.h )
987 dnl "/dev/poll" needs <sys/poll.h> as well...
988 if test "${ac_cv_header_sys_devpoll_h}" = yes \
989 -a "${ac_cv_header_poll_h}" = yes ; \
991 AC_MSG_CHECKING(for /dev/poll)
992 AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(int argc, char **argv)
994 int devpollfd = open("/dev/poll", /* O_RDWR */ 2);
995 exit (devpollfd == -1 ? 1 : 0);
996 }]])],[AC_MSG_RESULT(yes)
997 AC_DEFINE(HAVE_DEVPOLL,1, [define if your system supports /dev/poll])],[AC_MSG_RESULT(no)],[AC_MSG_RESULT(no)])
1000 dnl ----------------------------------------------------------------
1003 dnl ----------------------------------------------------------------
1004 dnl require POSIX regex
1005 AC_CHECK_HEADERS( regex.h, [], [],
1006 [$ac_includes_default
1007 #ifdef HAVE_SYS_TYPES_H
1008 #include <sys/types.h>
1012 if test "$ac_cv_header_regex_h" != yes ; then
1013 AC_MSG_ERROR([POSIX regex.h required.])
1015 AC_SEARCH_LIBS(regfree, [regex gnuregex],
1016 :, AC_MSG_ERROR([POSIX regex required.]))
1019 if test "$ol_cv_c_posix_regex" = no ; then
1020 AC_MSG_ERROR([broken POSIX regex!])
1023 dnl ----------------------------------------------------------------
1027 AC_CHECK_HEADERS(sys/uuid.h)
1028 dnl The HAVE_UUID_TO_STR code path also needs uuid_create
1029 if test $ac_cv_header_sys_uuid_h = yes ; then
1031 AC_SEARCH_LIBS([uuid_to_str], [uuid], [have_uuid=yes], :)
1032 AC_SEARCH_LIBS([uuid_create], [uuid], :, [have_uuid=no])
1035 if test $have_uuid = yes ; then
1036 AC_DEFINE(HAVE_UUID_TO_STR,1,
1037 [define if you have uuid_to_str()])
1039 test "$ac_cv_search_uuid_to_str" = "none required" || \
1040 SLAPD_LIBS="$SLAPD_LIBS $ac_cv_search_uuid_to_str"
1044 dnl Look for uuid_generate
1045 dnl The HAVE_UUID_GENERATE code path also needs uuid_unparse_lower
1046 if test $have_uuid = no ; then
1047 AC_CHECK_HEADERS(uuid/uuid.h)
1048 if test $ac_cv_header_uuid_uuid_h = yes ; then
1050 AC_SEARCH_LIBS([uuid_generate], [uuid], [have_uuid=yes], :)
1051 AC_SEARCH_LIBS([uuid_unparse_lower], [uuid], :, [have_uuid=no])
1054 if test $have_uuid = yes ; then
1055 AC_DEFINE(HAVE_UUID_GENERATE,1,
1056 [define if you have uuid_generate()])
1058 test "$ac_cv_search_uuid_generate" = "none required" || \
1059 SLAPD_LIBS="$SLAPD_LIBS $ac_cv_search_uuid_generate"
1064 dnl For windows, check for the need of RPCRT for UUID function support
1065 if test $have_uuid = no ; then
1066 AC_MSG_CHECKING(to see if -lrpcrt4 is needed for win32 UUID support)
1068 LIBS="$LIBS -lrpcrt4"
1069 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
1070 int __stdcall UuidCreate(void *);
1071 int __stdcall UuidToStringA(void *,void **);
1075 ]])],[need_rpcrt=yes],[need_rpcrt=no])
1076 if test $need_rpcrt = yes; then
1077 SLAPD_LIBS="$SLAPD_LIBS -lrpcrt4"
1080 AC_MSG_RESULT($need_rpcrt)
1083 dnl ----------------------------------------------------------------
1084 dnl Check for resolver routines
1088 if test "$ol_cv_lib_resolver" != no ; then
1089 AC_DEFINE(HAVE_RES_QUERY,1,
1090 [define if you have res_query()])
1092 if test "$ol_enable_dnssrv" != no ; then
1096 if test "$ol_cv_lib_resolver" != yes ; then
1097 LIBS="$ol_cv_lib_resolver $LIBS"
1101 if test "$ol_enable_dnssrv" = yes || test "$ol_enable_dnssrv" = mod ; then
1102 if test "$ol_link_dnssrv" = no ; then
1103 AC_MSG_ERROR([DNSSRV requires res_query()])
1109 AC_CHECK_FUNCS( hstrerror )
1111 dnl ----------------------------------------------------------------
1112 dnl PF_INET6 support requires getaddrinfo and INET6_ADDRSTRLEN
1113 dnl PF_LOCAL may use getaddrinfo in available
1114 AC_CHECK_FUNCS( getaddrinfo getnameinfo gai_strerror inet_ntop )
1117 if test $ac_cv_func_getaddrinfo = no || test $ac_cv_func_inet_ntop = no ; then
1118 if test $ol_enable_ipv6 = yes ; then
1119 AC_MSG_ERROR([IPv6 support requires getaddrinfo() and inet_ntop()])
1121 elif test $ol_enable_ipv6 != no ; then
1122 AC_CACHE_CHECK([INET6_ADDRSTRLEN],[ol_cv_inet6_addrstrlen],[
1123 AC_EGREP_CPP(__has_inet6_addrstrlen__,[
1124 # include <netinet/in.h>
1125 # ifdef INET6_ADDRSTRLEN
1126 __has_inet6_addrstrlen__;
1128 ], [ol_cv_inet6_addrstrlen=yes], [ol_cv_inet6_addrstrlen=no])])
1131 AC_CACHE_CHECK([struct sockaddr_storage],ol_cv_struct_sockaddr_storage,[
1132 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
1133 #include <sys/types.h>
1134 #include <sys/socket.h>
1136 struct sockaddr_storage ss;
1137 ]])],[ol_cv_struct_sockaddr_storage=yes],[ol_cv_struct_sockaddr_storage=no])])
1139 if test $ol_cv_inet6_addrstrlen = yes &&
1140 test $ol_cv_struct_sockaddr_storage = yes ; then
1142 elif test $ol_enable_ipv6 = yes &&
1143 test $ol_cv_inet6_addrstrlen = no ; then
1144 AC_MSG_ERROR([IPv6 support requires INET6_ADDRSTRLEN])
1145 elif test $ol_enable_ipv6 = yes &&
1146 test $ol_cv_struct_sockaddr_storage = no ; then
1147 AC_MSG_ERROR([IPv6 support requires struct sockaddr_storage])
1151 if test $ol_enable_local != no ; then
1152 AC_CHECK_HEADERS( sys/un.h )
1154 if test $ol_enable_local = auto ; then
1155 ol_enable_local=$ac_cv_header_sys_un_h
1156 elif test $ac_cv_header_sys_un_h = no ; then
1157 AC_MSG_ERROR([AF_LOCAL domain support requires sys/un.h])
1161 dnl ----------------------------------------------------------------
1164 if test $ol_with_tls = yes ; then
1169 if test $ol_with_tls = openssl || test $ol_with_tls = auto ; then
1170 AC_CHECK_HEADERS(openssl/ssl.h)
1172 if test $ac_cv_header_openssl_ssl_h = yes ; then
1173 AC_CHECK_LIB(ssl, SSL_library_init,
1175 need_rsaref=no], [have_openssl=no],
1178 if test $have_openssl = no ; then
1179 AC_CHECK_LIB(ssl, ssl3_accept,
1181 need_rsaref=yes], [have_openssl=no],
1182 [-lcrypto -lRSAglue -lrsaref])
1185 if test $have_openssl = yes ; then
1189 AC_DEFINE(HAVE_OPENSSL, 1,
1190 [define if you have OpenSSL])
1192 if test $need_rsaref = yes; then
1193 AC_DEFINE(HAVE_RSAREF, 1,
1194 [define if OpenSSL needs RSAref])
1196 TLS_LIBS="-lssl -lcrypto -lRSAglue -lrsaref"
1198 TLS_LIBS="-lssl -lcrypto"
1202 if test $ol_cv_ssl_crl_compat = yes ; then
1203 AC_DEFINE(HAVE_OPENSSL_CRL, 1,
1204 [define if you have OpenSSL with CRL checking capability])
1210 if test $ol_link_tls = no ; then
1211 if test $ol_with_tls = gnutls || test $ol_with_tls = auto ; then
1212 AC_CHECK_HEADERS(gnutls/gnutls.h)
1214 if test $ac_cv_header_gnutls_gnutls_h = yes ; then
1216 [[#include <gnutls/gnutls.h>]
1217 [#if GNUTLS_VERSION_NUMBER < 0x020c00]
1218 [#error "GnuTLS 2.12.0 or newer required"]
1220 , [AC_MSG_FAILURE([GnuTLS is too old])])
1222 AC_CHECK_LIB(gnutls, gnutls_init,
1223 [have_gnutls=yes], [have_gnutls=no])
1225 if test $have_gnutls = yes ; then
1231 AC_DEFINE(HAVE_GNUTLS, 1,
1232 [define if you have GNUtls])
1238 dnl NOTE: caller must specify -I/path/to/nspr4 and -I/path/to/nss3
1239 dnl and -L/path/to/nspr4 libs and -L/path/to/nss3 libs if those libs
1240 dnl are not in the default system location
1241 if test $ol_link_tls = no ; then
1242 if test $ol_with_tls = moznss || test $ol_with_tls = auto ; then
1244 AC_CHECK_HEADERS([nssutil.h])
1245 if test "$ac_cv_header_nssutil_h" = yes ; then
1246 AC_CHECK_LIB([nss3], [NSS_Initialize],
1247 [ have_moznss=yes ], [ have_moznss=no ])
1250 if test "$have_moznss" = yes ; then
1253 AC_DEFINE(HAVE_MOZNSS, 1,
1254 [define if you have MozNSS])
1255 TLS_LIBS="-lssl3 -lsmime3 -lnss3 -lnssutil3 -lplds4 -lplc4 -lnspr4"
1257 if test $ol_with_tls = moznss ; then
1258 AC_MSG_ERROR([MozNSS not found - please specify the location to the NSPR and NSS header files in CPPFLAGS and the location to the NSPR and NSS libraries in LDFLAGS (if not in the system location)])
1265 if test $ol_link_tls = yes ; then
1266 AC_DEFINE(HAVE_TLS, 1, [define if you have TLS])
1268 elif test $ol_with_tls = auto ; then
1269 AC_MSG_WARN([Could not locate TLS/SSL package])
1270 AC_MSG_WARN([TLS data protection not supported!])
1271 elif test $ol_with_tls != no ; then
1272 AC_MSG_ERROR([Could not locate TLS/SSL package])
1274 AC_MSG_WARN([TLS data protection not supported!])
1277 dnl ----------------------------------------------------------------
1278 dnl LAN Manger password checking requires DES from OpenSSL
1279 if test $ol_enable_lmpasswd != no; then
1280 if test $ol_link_tls != yes ; then
1281 AC_MSG_ERROR([LAN Manager passwords require OpenSSL])
1284 AC_DEFINE(SLAPD_LMHASH, 1, [define to support LAN Manager passwords])
1287 dnl ----------------------------------------------------------------
1291 case $ol_with_threads in auto | yes | nt)
1295 if test "$ol_cv_nt_threads" = yes ; then
1297 ol_with_threads=found
1298 ol_with_yielding_select=yes
1300 AC_DEFINE(HAVE_NT_SERVICE_MANAGER,1,[if you have NT Service Manager])
1301 AC_DEFINE(HAVE_NT_EVENT_LOG,1,[if you have NT Event Log])
1304 if test $ol_with_threads = nt ; then
1305 AC_MSG_ERROR([could not locate NT Threads])
1310 case $ol_with_threads in auto | yes | posix)
1312 AC_CHECK_HEADERS(pthread.h)
1314 if test $ac_cv_header_pthread_h = yes ; then
1315 OL_POSIX_THREAD_VERSION
1317 if test $ol_cv_pthread_version != 0 ; then
1318 AC_DEFINE_UNQUOTED(HAVE_PTHREADS,$ol_cv_pthread_version,
1319 [define to pthreads API spec revision])
1321 AC_MSG_ERROR([unknown pthread version])
1324 # consider threads found
1325 ol_with_threads=found
1327 OL_HEADER_LINUX_THREADS
1328 OL_HEADER_GNU_PTH_PTHREAD_H
1330 if test $ol_cv_header_gnu_pth_pthread_h = no ; then
1331 AC_CHECK_HEADERS(sched.h)
1334 dnl Now the hard part, how to link?
1336 dnl currently supported checks:
1338 dnl Check for no flags
1339 dnl pthread_create() in $LIBS
1341 dnl Check special pthread (final) flags
1342 dnl [skipped] pthread_create() with -mt (Solaris) [disabled]
1343 dnl pthread_create() with -kthread (FreeBSD)
1344 dnl pthread_create() with -pthread (FreeBSD/Digital Unix)
1345 dnl pthread_create() with -pthreads (?)
1346 dnl pthread_create() with -mthreads (AIX)
1347 dnl pthread_create() with -thread (?)
1349 dnl Check pthread (final) libraries
1350 dnl pthread_mutex_unlock() in -lpthread -lmach -lexc -lc_r (OSF/1)
1351 dnl pthread_mutex_lock() in -lpthread -lmach -lexc (OSF/1)
1352 dnl [skipped] pthread_mutex_trylock() in -lpthread -lexc (OSF/1)
1353 dnl pthread_join() -Wl,-woff,85 -lpthread (IRIX)
1354 dnl pthread_create() in -lpthread (many)
1355 dnl pthread_create() in -lc_r (FreeBSD)
1357 dnl Check pthread (draft4) flags (depreciated)
1358 dnl pthread_create() with -threads (OSF/1)
1360 dnl Check pthread (draft4) libraries (depreciated)
1361 dnl pthread_mutex_unlock() in -lpthreads -lmach -lexc -lc_r (OSF/1)
1362 dnl pthread_mutex_lock() in -lpthreads -lmach -lexc (OSF/1)
1363 dnl pthread_mutex_trylock() in -lpthreads -lexc (OSF/1)
1364 dnl pthread_create() in -lpthreads (many)
1367 dnl pthread_create in $LIBS
1368 AC_CACHE_CHECK([for pthread_create in default libraries],
1369 ol_cv_pthread_create,[
1370 AC_RUN_IFELSE([OL_PTHREAD_TEST_PROGRAM],
1371 [ol_cv_pthread_create=yes],
1372 [ol_cv_pthread_create=no],
1373 [AC_TRY_LINK(OL_PTHREAD_TEST_INCLUDES,OL_PTHREAD_TEST_FUNCTION,
1374 [ol_cv_pthread_create=yes],
1375 [ol_cv_pthread_create=no])])])
1377 if test $ol_cv_pthread_create != no ; then
1378 ol_link_threads=posix
1382 dnl OL_PTHREAD_TRY([-mt], [ol_cv_pthread_mt])
1383 OL_PTHREAD_TRY([-kthread], [ol_cv_pthread_kthread])
1384 OL_PTHREAD_TRY([-pthread], [ol_cv_pthread_pthread])
1385 OL_PTHREAD_TRY([-pthreads], [ol_cv_pthread_pthreads])
1386 OL_PTHREAD_TRY([-mthreads], [ol_cv_pthread_mthreads])
1387 OL_PTHREAD_TRY([-thread], [ol_cv_pthread_thread])
1389 OL_PTHREAD_TRY([-lpthread -lmach -lexc -lc_r],
1390 [ol_cv_pthread_lpthread_lmach_lexc_lc_r])
1391 OL_PTHREAD_TRY([-lpthread -lmach -lexc],
1392 [ol_cv_pthread_lpthread_lmach_lexc])
1393 dnl OL_PTHREAD_TRY([-lpthread -lexc],
1394 dnl [ol_cv_pthread_lpthread_lexc])
1396 OL_PTHREAD_TRY([-lpthread -Wl,-woff,85],
1397 [ol_cv_pthread_lib_lpthread_woff])
1399 OL_PTHREAD_TRY([-lpthread], [ol_cv_pthread_lpthread])
1400 OL_PTHREAD_TRY([-lc_r], [ol_cv_pthread_lc_r])
1402 OL_PTHREAD_TRY([-threads], [ol_cv_pthread_threads])
1404 OL_PTHREAD_TRY([-lpthreads -lmach -lexc -lc_r],
1405 [ol_cv_pthread_lpthreads_lmach_lexc_lc_r])
1406 OL_PTHREAD_TRY([-lpthreads -lmach -lexc],
1407 [ol_cv_pthread_lpthreads_lmach_lexc])
1408 OL_PTHREAD_TRY([-lpthreads -lexc],
1409 [ol_cv_pthread_lpthreads_lexc])
1411 OL_PTHREAD_TRY([-lpthreads],[ol_cv_pthread_lib_lpthreads])
1413 if test $ol_link_threads != no ; then
1414 LTHREAD_LIBS="$LTHREAD_LIBS $ol_link_pthreads"
1417 save_CPPFLAGS="$CPPFLAGS"
1419 LIBS="$LTHREAD_LIBS $LIBS"
1421 dnl All POSIX Thread (final) implementations should have
1422 dnl sched_yield instead of pthread yield.
1423 dnl check for both, and thr_yield for Solaris
1424 AC_CHECK_FUNCS(sched_yield pthread_yield thr_yield)
1426 if test $ac_cv_func_sched_yield = no &&
1427 test $ac_cv_func_pthread_yield = no &&
1428 test $ac_cv_func_thr_yield = no ; then
1429 dnl Digital UNIX has sched_yield() in -lrt
1430 AC_CHECK_LIB(rt, sched_yield,
1431 [LTHREAD_LIBS="$LTHREAD_LIBS -lrt"
1432 AC_DEFINE(HAVE_SCHED_YIELD,1,
1433 [Define if you have the sched_yield function.])
1434 ac_cv_func_sched_yield=yes],
1435 [ac_cv_func_sched_yield=no])
1437 if test $ac_cv_func_sched_yield = no &&
1438 test $ac_cv_func_pthread_yield = no &&
1439 test "$ac_cv_func_thr_yield" = no ; then
1440 AC_MSG_WARN([could not locate sched_yield() or pthread_yield()])
1443 dnl Check functions for compatibility
1444 AC_CHECK_FUNCS(pthread_kill)
1446 dnl Check for pthread_rwlock_destroy with <pthread.h>
1447 dnl as pthread_rwlock_t may not be defined.
1448 AC_CACHE_CHECK([for pthread_rwlock_destroy with <pthread.h>],
1449 [ol_cv_func_pthread_rwlock_destroy], [
1451 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
1452 #include <pthread.h>
1453 pthread_rwlock_t rwlock;
1454 ]], [[pthread_rwlock_destroy(&rwlock);]])],[ol_cv_func_pthread_rwlock_destroy=yes],[ol_cv_func_pthread_rwlock_destroy=no])
1456 if test $ol_cv_func_pthread_rwlock_destroy = yes ; then
1457 AC_DEFINE(HAVE_PTHREAD_RWLOCK_DESTROY,1,
1458 [define if you have pthread_rwlock_destroy function])
1461 dnl Check for pthread_detach with <pthread.h> inclusion
1462 dnl as it's symbol may have been mangled.
1463 AC_CACHE_CHECK([for pthread_detach with <pthread.h>],
1464 [ol_cv_func_pthread_detach], [
1466 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
1467 #include <pthread.h>
1469 #define NULL (void*)0
1471 ]], [[pthread_detach(NULL);]])],[ol_cv_func_pthread_detach=yes],[ol_cv_func_pthread_detach=no])
1474 if test $ol_cv_func_pthread_detach = no ; then
1475 AC_MSG_ERROR([could not locate pthread_detach()])
1478 AC_DEFINE(HAVE_PTHREAD_DETACH,1,
1479 [define if you have pthread_detach function])
1481 dnl Check for setconcurreny functions
1483 pthread_setconcurrency \
1484 pthread_getconcurrency \
1485 thr_setconcurrency \
1486 thr_getconcurrency \
1489 OL_SYS_LINUX_THREADS
1492 if test $ol_cv_linux_threads = error; then
1493 AC_MSG_ERROR([LinuxThreads header/library mismatch]);
1496 AC_CACHE_CHECK([if pthread_create() works],
1497 ol_cv_pthread_create_works,[
1498 AC_RUN_IFELSE([OL_PTHREAD_TEST_PROGRAM],
1499 [ol_cv_pthread_create_works=yes],
1500 [ol_cv_pthread_create_works=no],
1502 ol_cv_pthread_create_works=yes])])
1504 if test $ol_cv_pthread_create_works = no ; then
1505 AC_MSG_ERROR([pthread_create is not usable, check environment settings])
1508 ol_replace_broken_yield=no
1509 dnl case "$target" in
1511 dnl AC_CHECK_FUNCS(nanosleep)
1512 dnl ol_replace_broken_yield=yes
1516 if test $ol_replace_broken_yield = yes ; then
1517 AC_DEFINE([REPLACE_BROKEN_YIELD],1,
1518 [define if sched_yield yields the entire process])
1521 dnl Check if select causes an yield
1522 if test $ol_with_yielding_select = auto ; then
1523 AC_CACHE_CHECK([if select yields when using pthreads],
1524 ol_cv_pthread_select_yields,[
1525 AC_RUN_IFELSE([AC_LANG_SOURCE([[
1526 #include <sys/types.h>
1527 #include <sys/time.h>
1529 #include <pthread.h>
1531 #define NULL (void*) 0
1534 static int fildes[2];
1536 static void *task(p)
1548 FD_SET(fildes[0], &rfds);
1550 /* we're not interested in any fds */
1551 i = select(FD_SETSIZE, &rfds, NULL, NULL, &tv);
1558 exit(0); /* if we exit here, the select blocked the whole process */
1561 int main(argc, argv)
1567 /* create a pipe to select */
1568 if(pipe(&fildes[0])) {
1573 #ifdef HAVE_PTHREAD_SETCONCURRENCY
1574 (void) pthread_setconcurrency(2);
1576 #ifdef HAVE_THR_SETCONCURRENCY
1577 /* Set Solaris LWP concurrency to 2 */
1578 thr_setconcurrency(2);
1582 #if HAVE_PTHREADS < 6
1583 pthread_create(&t, pthread_attr_default, task, NULL);
1585 pthread_create(&t, NULL, task, NULL);
1588 /* make sure task runs first */
1589 #ifdef HAVE_THR_YIELD
1591 #elif defined( HAVE_SCHED_YIELD )
1593 #elif defined( HAVE_PTHREAD_YIELD )
1598 }]])],[ol_cv_pthread_select_yields=no],[ol_cv_pthread_select_yields=yes],[ol_cv_pthread_select_yields=cross])])
1600 if test $ol_cv_pthread_select_yields = cross ; then
1601 AC_MSG_ERROR([crossing compiling: use --with-yielding_select=yes|no|manual])
1604 if test $ol_cv_pthread_select_yields = yes ; then
1605 ol_with_yielding_select=yes
1610 CPPFLAGS="$save_CPPFLAGS"
1613 AC_MSG_ERROR([could not locate usable POSIX Threads])
1617 if test $ol_with_threads = posix ; then
1618 AC_MSG_ERROR([could not locate POSIX Threads])
1623 case $ol_with_threads in auto | yes | mach)
1625 dnl check for Mach CThreads
1626 AC_CHECK_HEADERS(mach/cthreads.h cthreads.h)
1627 if test $ac_cv_header_mach_cthreads_h = yes ; then
1628 ol_with_threads=found
1630 dnl check for cthreads support in current $LIBS
1631 AC_CHECK_FUNC(cthread_fork,[ol_link_threads=yes])
1633 if test $ol_link_threads = no ; then
1635 dnl this test needs work
1636 AC_CACHE_CHECK([for cthread_fork with -all_load],
1637 [ol_cv_cthread_all_load], [
1640 LIBS="-all_load $LIBS"
1641 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <mach/cthreads.h>]], [[
1642 cthread_fork((void *)0, (void *)0);
1643 ]])],[ol_cv_cthread_all_load=yes],[ol_cv_cthread_all_load=no])
1644 dnl restore the LIBS
1648 if test $ol_cv_cthread_all_load = yes ; then
1649 LTHREAD_LIBS="$LTHREAD_LIBS -all_load"
1650 ol_link_threads=mach
1651 ol_with_threads=found
1655 elif test $ac_cv_header_cthreads_h = yes ; then
1656 dnl Hurd variant of Mach Cthreads
1657 dnl uses <cthreads.h> and -lthreads
1659 ol_with_threads=found
1663 LIBS="$LIBS -lthreads"
1664 AC_CHECK_FUNC(cthread_fork,[ol_link_threads=yes])
1667 if test $ol_link_threads = yes ; then
1668 LTHREAD_LIBS="-lthreads"
1669 ol_link_threads=mach
1670 ol_with_threads=found
1672 AC_MSG_ERROR([could not link with Mach CThreads])
1675 elif test $ol_with_threads = mach ; then
1676 AC_MSG_ERROR([could not locate Mach CThreads])
1679 if test $ol_link_threads = mach ; then
1680 AC_DEFINE(HAVE_MACH_CTHREADS,1,
1681 [define if you have Mach Cthreads])
1682 elif test $ol_with_threads = found ; then
1683 AC_MSG_ERROR([could not link with Mach CThreads])
1688 case $ol_with_threads in auto | yes | pth)
1690 AC_CHECK_HEADERS(pth.h)
1692 if test $ac_cv_header_pth_h = yes ; then
1693 AC_CHECK_LIB(pth, pth_version, [have_pth=yes], [have_pth=no])
1695 if test $have_pth = yes ; then
1696 AC_DEFINE(HAVE_GNU_PTH,1,[if you have GNU Pth])
1697 LTHREAD_LIBS="$LTHREAD_LIBS -lpth"
1699 ol_with_threads=found
1701 if test $ol_with_yielding_select = auto ; then
1702 ol_with_yielding_select=yes
1709 case $ol_with_threads in auto | yes | lwp)
1711 dnl check for SunOS5 LWP
1712 AC_CHECK_HEADERS(thread.h synch.h)
1713 if test $ac_cv_header_thread_h = yes &&
1714 test $ac_cv_header_synch_h = yes ; then
1715 AC_CHECK_LIB(thread, thr_create, [have_thr=yes], [have_thr=no])
1717 if test $have_thr = yes ; then
1718 AC_DEFINE(HAVE_THR,1,
1719 [if you have Solaris LWP (thr) package])
1720 LTHREAD_LIBS="$LTHREAD_LIBS -lthread"
1723 if test $ol_with_yielding_select = auto ; then
1724 ol_with_yielding_select=yes
1727 dnl Check for setconcurreny functions
1729 thr_setconcurrency \
1730 thr_getconcurrency \
1737 if test $ol_with_yielding_select = yes ; then
1738 AC_DEFINE(HAVE_YIELDING_SELECT,1,
1739 [define if select implicitly yields])
1742 if test $ol_with_threads = manual ; then
1743 dnl User thinks he can manually configure threads.
1746 AC_MSG_WARN([thread defines and link options must be set manually])
1748 AC_CHECK_HEADERS(pthread.h sched.h)
1749 AC_CHECK_FUNCS(sched_yield pthread_yield)
1750 OL_HEADER_LINUX_THREADS
1752 AC_CHECK_HEADERS(mach/cthreads.h)
1753 AC_CHECK_HEADERS(thread.h synch.h)
1756 if test $ol_link_threads != no && test $ol_link_threads != nt ; then
1757 dnl needed to get reentrant/threadsafe versions
1759 AC_DEFINE(REENTRANT,1)
1760 AC_DEFINE(_REENTRANT,1)
1761 AC_DEFINE(THREAD_SAFE,1)
1762 AC_DEFINE(_THREAD_SAFE,1)
1763 AC_DEFINE(THREADSAFE,1)
1764 AC_DEFINE(_THREADSAFE,1)
1765 AC_DEFINE(_SGI_MP_SOURCE,1)
1767 dnl The errno declaration may dependent upon _REENTRANT.
1768 dnl If it does, we must link with thread support.
1769 AC_CACHE_CHECK([for thread specific errno],
1770 [ol_cv_errno_thread_specific], [
1771 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <errno.h>]], [[errno = 0;]])],[ol_cv_errno_thread_specific=yes],[ol_cv_errno_thread_specific=no])
1774 dnl The h_errno declaration may dependent upon _REENTRANT.
1775 dnl If it does, we must link with thread support.
1776 AC_CACHE_CHECK([for thread specific h_errno],
1777 [ol_cv_h_errno_thread_specific], [
1778 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <netdb.h>]], [[h_errno = 0;]])],[ol_cv_h_errno_thread_specific=yes],[ol_cv_h_errno_thread_specific=no])
1781 if test $ol_cv_errno_thread_specific != yes ||
1782 test $ol_cv_h_errno_thread_specific != yes ; then
1783 LIBS="$LTHREAD_LIBS $LIBS"
1787 dnl When in thread environment, use
1788 dnl #if defined( HAVE_REENTRANT_FUNCTIONS ) || defined( HAVE_FUNC_R )
1791 dnl # if defined( HAVE_THREADS )
1795 dnl # if defined( HAVE_THREADS )
1800 dnl HAVE_REENTRANT_FUNCTIONS is derived from:
1801 dnl _POSIX_REENTRANT_FUNCTIONS
1802 dnl _POSIX_THREAD_SAFE_FUNCTIONS
1803 dnl _POSIX_THREADSAFE_FUNCTIONS
1805 dnl and is currently defined in <ldap_pvt_thread.h>
1807 dnl HAVE_THREADS is defined by <ldap_pvt_thread.h> iff -UNO_THREADS
1809 dnl libldap/*.c should only include <ldap_pvt_thread.h> iff
1810 dnl LDAP_R_COMPILE is defined. ie:
1811 dnl #ifdef LDAP_R_COMPILE
1812 dnl # include <ldap_pvt_thread.h>
1815 dnl LDAP_R_COMPILE is defined by libldap_r/Makefile.in
1816 dnl specifically for compiling the threadsafe version of
1817 dnl the ldap library (-lldap_r).
1819 dnl dnl check for reentrant/threadsafe functions
1821 dnl dnl note: these should only be used when linking
1822 dnl dnl with $LTHREAD_LIBS
1824 dnl save_CPPFLAGS="$CPPFLAGS"
1825 dnl save_LIBS="$LIBS"
1826 dnl LIBS="$LTHREAD_LIBS $LIBS"
1827 dnl AC_CHECK_FUNCS( \
1829 dnl gethostbyaddr_r gethostbyname_r \
1830 dnl feof_unlocked unlocked_feof \
1831 dnl putc_unlocked unlocked_putc \
1832 dnl flockfile ftrylockfile \
1834 dnl CPPFLAGS="$save_CPPFLAGS"
1835 dnl LIBS="$save_LIBS"
1838 if test $ol_link_threads = no ; then
1839 if test $ol_with_threads = yes ; then
1840 AC_MSG_ERROR([no suitable thread support])
1843 if test $ol_with_threads = auto ; then
1844 AC_MSG_WARN([no suitable thread support, disabling threads])
1848 AC_DEFINE(NO_THREADS,1,
1849 [define if you have (or want) no threads])
1856 if test $ol_link_threads != no ; then
1857 AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE,1,
1858 [define to 1 if library is thread safe])
1861 dnl ----------------------------------------------------------------
1862 dnl Tests for reentrant functions necessary to build -lldap_r
1865 gmtime_r localtime_r \
1866 gethostbyname_r gethostbyaddr_r \
1869 if test "$ac_cv_func_ctime_r" = no ; then
1870 ol_cv_func_ctime_r_nargs=0
1872 OL_FUNC_CTIME_R_NARGS
1873 dnl OL_FUNC_CTIME_R_TYPE
1876 if test "$ac_cv_func_gethostbyname_r" = yes ; then
1877 OL_FUNC_GETHOSTBYNAME_R_NARGS
1879 ol_cv_func_gethostbyname_r_nargs=0
1882 if test "$ac_cv_func_gethostbyaddr_r" = yes ; then
1883 OL_FUNC_GETHOSTBYADDR_R_NARGS
1885 ol_cv_func_gethostbyaddr_r_nargs=0
1888 dnl ----------------------------------------------------------------
1891 if test $ol_enable_bdb/$ol_enable_hdb != no/no; then
1894 if test $ol_cv_berkeley_db = no ; then
1895 AC_MSG_ERROR(BDB/HDB: BerkeleyDB not available)
1898 AC_DEFINE(HAVE_BERKELEY_DB,1,
1899 [define this if Berkeley DB is available])
1901 dnl $ol_cv_lib_db should be yes or -ldb
1902 dnl (it could be no, but that would be an error
1903 if test $ol_cv_lib_db != yes ; then
1904 BDB_LIBS="$BDB_LIBS $ol_cv_lib_db"
1907 SLAPD_LIBS="$SLAPD_LIBS \$(BDB_LIBS)"
1912 dnl ----------------------------------------------------------------
1914 if test $ol_enable_dynamic = yes && test $enable_shared = yes ; then
1915 BUILD_LIBS_DYNAMIC=shared
1916 AC_DEFINE(LDAP_LIBS_DYNAMIC, 1, [define if LDAP libs are dynamic])
1919 BUILD_LIBS_DYNAMIC=static
1922 AC_SUBST(LTSTATIC)dnl
1924 dnl ----------------------------------------------------------------
1925 if test $ol_enable_wrappers != no ; then
1926 AC_CHECK_HEADERS(tcpd.h,[
1927 AC_MSG_CHECKING([for TCP wrappers library])
1930 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
1932 int allow_severity = 0;
1933 int deny_severity = 0;
1935 struct request_info *req;
1938 ]])],[AC_MSG_RESULT([-lwrap])
1940 LIBS="$save_LIBS"],[
1945 int allow_severity = 0;
1946 int deny_severity = 0;
1948 struct request_info *req;
1951 ],[AC_MSG_RESULT([-lwrap -lnsl])
1953 LIBS="$save_LIBS -lnsl"],[
1956 LIBS=$save_LIBS])])],[have_wrappers=no])
1958 if test $have_wrappers = yes ; then
1959 AC_DEFINE(HAVE_TCPD,1, [define if you have -lwrap])
1961 elif test $ol_enable_wrappers = yes ; then
1962 AC_MSG_ERROR([could not find TCP wrappers, select apppropriate options or disable])
1964 AC_MSG_WARN([could not find TCP wrappers, support disabled])
1969 dnl ----------------------------------------------------------------
1970 if test $ol_enable_syslog != no ; then
1971 AC_CHECK_FUNC(openlog)
1972 if test $ac_cv_func_openlog = no && test $ol_enable_syslog = yes; then
1973 AC_MSG_ERROR(could not find syslog, select appropriate options or disable)
1975 ol_enable_syslog=$ac_cv_func_openlog
1978 dnl ----------------------------------------------------------------
1981 if test $ol_enable_sql != no ; then
1982 AC_CHECK_HEADERS(sql.h sqlext.h,[],[
1983 AC_MSG_ERROR([could not locate SQL headers])
1987 LIBS="$LTHREAD_LIBS $LIBS"
1989 if test $ol_with_odbc = auto ; then
1990 ol_with_odbc="iodbc unixodbc odbc32"
1993 for odbc in $ol_with_odbc ; do
1994 if test $ol_link_sql = no ; then
1997 AC_CHECK_LIB(iodbc, SQLDriverConnect, [have_iodbc=yes], [have_iodbc=no])
1998 if test $have_iodbc = yes ; then
1999 ol_link_sql="-liodbc"
2004 AC_CHECK_LIB(odbc, SQLDriverConnect, [have_odbc=yes], [have_odbc=no])
2005 if test $have_odbc = yes ; then
2006 ol_link_sql="-lodbc"
2011 AC_CHECK_LIB(odbc32, SQLDriverConnect, [have_odbc32=yes], [have_odbc32=no])
2013 dnl The windows API uses __stdcall which cannot be detected by AC_CHECK_LIB
2014 if test $have_odbc32 = no ; then
2015 AC_MSG_CHECKING([for SQLDriverConnect in -lodbc32 with windows.h])
2017 LIBS="$LIBS -lodbc32"
2018 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <windows.h>
2021 SQLDriverConnect(NULL,NULL,NULL,0,NULL,0,NULL,0);
2022 ]])],[have_odbc32=yes], [have_odbc32=no])
2024 AC_MSG_RESULT($have_odbc32)
2027 if test $have_odbc32 = yes ; then
2028 ol_link_sql="-lodbc32"
2033 AC_MSG_ERROR([unknown ODBC library])
2041 if test $ol_link_sql != no ; then
2042 SLAPD_SQL_LIBS="$ol_link_sql"
2044 elif test $ol_enable_sql != auto ; then
2045 AC_MSG_ERROR([could not locate suitable ODBC library])
2049 dnl ----------------------------------------------------------------
2051 dnl Note: uses C++, but we don't want to add C++ test overhead to
2052 dnl the rest of the libtool machinery.
2054 if test $ol_enable_ndb != no ; then
2055 AC_CHECK_PROG(MYSQL,mysql_config,yes)
2056 if test "$MYSQL" != yes ; then
2057 AC_MSG_ERROR([could not locate mysql_config])
2060 SQL_INC=`mysql_config --include`
2061 SLAPD_NDB_INCS="$SQL_INC $SQL_INC/storage/ndb $SQL_INC/storage/ndb/ndbapi"
2063 save_CPPFLAGS="$CPPFLAGS"
2064 CPPFLAGS="$SLAPD_NDB_INCS"
2065 AC_MSG_CHECKING(for NdbApi.hpp)
2067 [AC_LANG_SOURCE([[#include <NdbApi.hpp>]])],
2069 AC_MSG_ERROR([could not locate NdbApi headers])
2071 CPPFLAGS="$save_CPPFLAGS"
2073 SQL_LIB=`mysql_config --libs_r`
2074 SLAPD_NDB_LIBS="$SQL_LIB -lndbclient -lstdc++"
2076 save_LDFLAGS="$LDFLAGS"
2079 AC_CHECK_LIB(ndbclient,ndb_init,[: ok],[
2080 AC_MSG_ERROR([could not locate ndbclient library])
2083 LDFLAGS="$save_LDFLAGS"
2085 if test "$ol_enable_ndb" = yes ; then
2086 SLAPD_LIBS="$SLAPD_LIBS \$(SLAPD_NDB_LIBS)"
2090 dnl ----------------------------------------------------------------
2093 if test $ol_enable_wt != no ; then
2094 AC_CHECK_PROG(PKGCONFIG,pkg-config,yes)
2095 if test "$PKGCONFIG" != yes ; then
2096 AC_MSG_ERROR([could not locate pkg-config])
2098 WT_INCS=`pkg-config --cflags wiredtiger`
2099 WT_LIBS=`pkg-config --libs wiredtiger`
2101 save_CFLAGS="$CFLAGS"
2102 save_LDFLAGS="$LDFLAGS"
2106 AC_CHECK_HEADERS([wiredtiger.h])
2107 AC_CHECK_LIB(wiredtiger,wiredtiger_version,[: ok],[
2108 AC_MSG_ERROR([could not locate wiredtiger library])
2110 CFLAGS="$save_CFLAGS"
2111 CPPFLAGS="$save_CPPFLAGS"
2112 LDFLAGS="$save_LDFLAGS"
2113 SLAPD_LIBS="$SLAPD_LIBS \$(WT_LIBS)"
2117 dnl ----------------------------------------------------------------
2118 dnl International Components for Unicode
2120 if test "$ol_icu" = no ; then
2121 AC_MSG_WARN([ICU not available])
2125 dnl ----------------------------------------------------------------
2127 dnl Check for Cyrus SASL
2132 if test $ol_with_cyrus_sasl != no ; then
2133 AC_CHECK_HEADERS(sasl/sasl.h sasl.h)
2135 if test $ac_cv_header_sasl_sasl_h = yes ||
2136 test $ac_cv_header_sasl_h = yes; then
2137 AC_CHECK_LIB(sasl2, sasl_client_init,
2138 [ol_link_sasl="-lsasl2"],
2139 [AC_CHECK_LIB(sasl, sasl_client_init,
2140 [ol_link_sasl="-lsasl"])])
2143 if test $ol_link_sasl = no ; then
2144 if test $ol_with_cyrus_sasl != auto ; then
2145 AC_MSG_ERROR([Could not locate Cyrus SASL])
2147 AC_MSG_WARN([Could not locate Cyrus SASL])
2148 AC_MSG_WARN([SASL authentication not supported!])
2149 if test $ol_link_tls = no ; then
2150 AC_MSG_WARN([Strong authentication not supported!])
2155 if test $ol_cv_sasl_compat = no ; then
2157 AC_MSG_ERROR([Cyrus SASL library located but is incompatible])
2160 AC_DEFINE(HAVE_CYRUS_SASL,1,[define if you have Cyrus SASL])
2161 SASL_LIBS="$ol_link_sasl"
2162 if test $ol_enable_spasswd != no ; then
2166 ac_save_LIBS="$LIBS"
2167 LIBS="$LIBS $ol_link_sasl"
2168 AC_CHECK_FUNC(sasl_version, [AC_DEFINE(HAVE_SASL_VERSION,1,
2169 [define if your SASL library has sasl_version()])])
2170 LIBS="$ac_save_LIBS"
2176 AC_MSG_WARN([SASL authentication not supported!])
2177 if test $ol_link_tls = no ; then
2178 AC_MSG_WARN([Strong authentication not supported!])
2182 dnl ----------------------------------------------------------------
2183 dnl Check for entropy sources
2184 if test $cross_compiling != yes && test "$ac_cv_mingw32" != yes ; then
2186 if test -r /dev/urandom ; then
2188 elif test -r /idev/urandom ; then
2189 dev="/idev/urandom";
2190 elif test -r /dev/srandom ; then
2192 elif test -r /dev/random ; then
2194 elif test -r /idev/random ; then
2198 if test $dev != no ; then
2199 AC_DEFINE_UNQUOTED(URANDOM_DEVICE,"$dev",[set to urandom device])
2203 dnl ----------------------------------------------------------------
2205 dnl Check for fetch URL support
2206 dnl should be extended to support other fetch URL APIs
2209 if test $ol_with_fetch != no ; then
2212 if test $ol_cv_lib_fetch != no ; then
2213 LIBS="$LIBS $ol_link_fetch"
2214 ol_link_fetch=freebsd
2216 elif test $ol_with_fetch != auto ; then
2217 AC_MSG_ERROR(no suitable API for --with-fetch=$ol_with_fetch)
2221 dnl ----------------------------------------------------------------
2222 dnl FreeBSD (and others) have crypt(3) in -lcrypt
2223 if test $ol_enable_crypt != no ; then
2225 LIBS="$TLS_LIBS $LIBS"
2227 AC_CHECK_FUNC(crypt, [have_crypt=yes], [
2229 AC_CHECK_LIB(crypt, crypt, [LUTIL_LIBS="$LUTIL_LIBS -lcrypt"
2230 have_crypt=yes], [have_crypt=no])])
2234 if test $have_crypt = yes ; then
2235 AC_DEFINE(HAVE_CRYPT,1, [define if crypt(3) is available])
2237 AC_MSG_WARN([could not find crypt])
2238 if test $ol_enable_crypt = yes ; then
2239 AC_MSG_ERROR([could not find crypt, select appropriate options or disable])
2242 AC_MSG_WARN([disabling crypt support])
2247 dnl ----------------------------------------------------------------
2248 dnl FreeBSD (and others) have setproctitle(3) in -lutil
2249 if test $ol_enable_proctitle != no ; then
2250 AC_CHECK_FUNC(setproctitle, [have_setproctitle=yes], [
2251 AC_CHECK_LIB(util, setproctitle,
2252 [have_setproctitle=yes
2253 LUTIL_LIBS="$LUTIL_LIBS -lutil"],
2254 [have_setproctitle=no
2255 AC_LIBOBJ(setproctitle)
2256 LIBSRCS="$LIBSRCS setproctitle.c"])])
2258 if test $have_setproctitle = yes ; then
2259 AC_DEFINE(HAVE_SETPROCTITLE,1,
2260 [define if setproctitle(3) is available])
2264 dnl ----------------------------------------------------------------
2265 if test $ol_enable_slp != no ; then
2266 AC_CHECK_HEADERS( slp.h )
2268 if test $ac_cv_header_slp_h = yes ; then
2269 AC_CHECK_LIB(slp, SLPOpen, [have_slp=yes], [have_slp=no])
2270 if test $have_slp = yes ; then
2271 AC_DEFINE(HAVE_SLP, 1, [define if you have -lslp])
2272 SLAPD_SLP_LIBS=-lslp
2275 elif test $ol_enable_slp = yes ; then
2276 AC_MSG_ERROR([SLP not found])
2280 dnl ----------------------------------------------------------------
2281 dnl Checks for typedefs, structures, and compiler characteristics.
2283 AC_CHECK_TYPE(mode_t, int)
2284 AC_CHECK_TYPE(off_t, long)
2285 AC_CHECK_TYPE(pid_t, int)
2286 AC_CHECK_TYPE(ssize_t, [signed int])
2287 AC_CHECK_TYPE(caddr_t, [char *])
2288 AC_CHECK_TYPE(size_t, unsigned)
2290 AC_CHECK_TYPES([long long])
2291 AC_CHECK_TYPES([ptrdiff_t])
2294 AC_CHECK_TYPE([socklen_t],,, [$ac_includes_default
2295 #ifdef HAVE_SYS_SOCKET_H
2296 #include <sys/socket.h>
2299 dnl socklen_t-like type in accept(), default socklen_t or int:
2300 dnl - The OS might define socklen_t without using it. POSIX moved from
2301 dnl int to size_t to socklen_t, hoping to stay at a 32-bit type, and
2302 dnl HP-UX now has selectors for what to use.
2303 dnl - On Solaris 2.8 the prototype has void *len, but the default is OK.
2304 AC_MSG_CHECKING([the type of arg 3 to accept()])
2305 AC_CACHE_VAL(ol_cv_type_ber_socklen_t, [
2306 set socklen_t int unsigned "unsigned long" long size_t
2307 test "$ac_cv_type_socklen_t" = yes || shift
2308 ol_cv_type_ber_socklen_t=$1 guessing="guessing "
2309 for lentype in "$@" ; do for addrtype in "struct sockaddr" void ; do
2310 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([$ac_includes_default
2311 #ifdef HAVE_SYS_SOCKET_H
2312 #include <sys/socket.h>
2314 extern int accept(int s, $addrtype *ap, $lentype *lp);
2316 accept(0, (struct sockaddr *) 0, ($lentype *) 0);
2317 ])], [ol_cv_type_ber_socklen_t=$lentype guessing= ; break 2])
2319 AC_MSG_RESULT([$guessing$ol_cv_type_ber_socklen_t *])
2320 AC_DEFINE_UNQUOTED(ber_socklen_t, $ol_cv_type_ber_socklen_t,
2321 [Define to the type of arg 3 for `accept'.])
2323 dnl Modules should use ber_socklen_t, not socklen_t. Define socklen_t
2324 dnl for the time being anyway, for backwards compatibility.
2325 if test "$ac_cv_type_socklen_t" != yes; then
2326 AC_DEFINE_UNQUOTED([socklen_t], [$ol_cv_type_ber_socklen_t],
2327 [Define like ber_socklen_t if <sys/socket.h> does not define.])
2333 AC_CHECK_TYPE([sig_atomic_t],,
2334 [AC_DEFINE_UNQUOTED([sig_atomic_t], [int],
2335 [Define to `int' if <signal.h> does not define.])],
2336 [$ac_includes_default
2344 AC_CHECK_MEMBERS([struct stat.st_blksize])
2345 AC_CHECK_MEMBERS([struct passwd.pw_gecos],,,[$ac_includes_default
2347 AC_CHECK_MEMBERS([struct passwd.pw_passwd],,,[$ac_includes_default
2354 if test $cross_compiling = yes ; then
2355 AC_MSG_WARN([Crossing compiling... all bets are off!])
2356 AC_DEFINE(CROSS_COMPILING, 1, [define if cross compiling])
2361 AC_CHECK_SIZEOF(short)
2362 AC_CHECK_SIZEOF(int)
2363 AC_CHECK_SIZEOF(long)
2364 AC_CHECK_SIZEOF(long long)
2365 AC_CHECK_SIZEOF(wchar_t)
2367 if test "$ac_cv_sizeof_int" -lt 4 ; then
2368 AC_MSG_WARN([OpenLDAP requires 'int' to be 32 bits or greater.])
2370 AC_DEFINE(LBER_INT_T,long,[define to 32-bit or greater integer type])
2372 AC_DEFINE(LBER_INT_T,int,[define to 32-bit or greater integer type])
2375 AC_DEFINE(LBER_LEN_T,long,[define to large integer type])
2376 AC_DEFINE(LBER_SOCKET_T,int,[define to socket descriptor type])
2377 AC_DEFINE(LBER_TAG_T,long,[define to large integer type])
2379 dnl ----------------------------------------------------------------
2380 dnl Check for multiple precision support
2381 if test $ol_with_mp = longlong || test $ol_with_mp = auto ; then
2382 if test $ac_cv_sizeof_long_long -gt 4 ; then
2384 AC_DEFINE(USE_MP_LONG_LONG,1,[define to use 'long long' for MP])
2385 elif test $ol_with_mp = longlong ; then
2386 AC_MSG_ERROR([long long unusable for multiple precision])
2389 if test $ol_with_mp = long || test $ol_with_mp = auto ; then
2390 if test $ac_cv_sizeof_long -gt 4 ; then
2392 AC_DEFINE(USE_MP_LONG,1,[define to use 'long' for MP])
2393 elif test $ol_with_mp = long ; then
2394 AC_MSG_ERROR([long unusable for multiple precision])
2397 if test $ol_with_mp = bignum || test $ol_with_mp = auto ; then
2398 AC_CHECK_HEADERS(openssl/bn.h)
2399 AC_CHECK_HEADERS(openssl/crypto.h)
2400 if test "$ac_cv_header_openssl_bn_h" = "yes" &&
2401 test "$ac_cv_header_openssl_crypto_h" = "yes" &&
2402 test "$ol_with_tls" = "found" ; then
2404 AC_DEFINE(USE_MP_BIGNUM,1,[define to use OpenSSL BIGNUM for MP])
2405 elif test $ol_with_mp = bignum ; then
2406 AC_MSG_ERROR([bignum not available])
2409 if test $ol_with_mp = gmp || test $ol_with_mp = auto ; then
2410 AC_CHECK_HEADERS(gmp.h)
2411 AC_CHECK_LIB(gmp, __gmpz_add_ui)
2412 if test $ac_cv_header_gmp_h = yes && test $ac_cv_lib_gmp___gmpz_add_ui = yes ; then
2413 AC_DEFINE(USE_MP_GMP,1,[define to use GMP for MP])
2415 elif test $ol_with_mp = gmp ; then
2416 AC_MSG_ERROR([gmp not available])
2419 if test $ol_with_mp = auto ; then
2423 dnl ----------------------------------------------------------------
2424 dnl Checks for library functions.
2427 if test $ac_cv_func_memcmp_working = no ; then
2428 AC_DEFINE(NEED_MEMCMP_REPLACEMENT,1,
2429 [define if memcmp is not 8-bit clean or is otherwise broken])
2436 dnl Check for NT specific routines
2437 AC_CHECK_FUNC(_spawnlp, AC_DEFINE(HAVE_SPAWNLP,1,[if you have spawnlp()]))
2439 AC_CHECK_FUNC(_snprintf, [ac_cv_func_snprintf=yes
2440 AC_DEFINE(snprintf, _snprintf, [define to snprintf routine])
2443 AC_CHECK_FUNCS(vsnprintf _vsnprintf)
2445 if test $ac_cv_func_vsnprintf = no -a $ac_cv_func__vsnprintf = yes ; then
2446 ac_cv_func_vsnprintf=yes
2447 AC_DEFINE(vsnprintf, _vsnprintf, [define to vsnprintf routine])
2452 if test $ac_cv_func_vprintf = yes ; then
2453 dnl check for vsnprintf
2454 AC_CHECK_FUNCS(snprintf vsnprintf)
2516 dnl We actually may need to replace more than this.
2517 AC_REPLACE_FUNCS(getopt getpeereid)
2519 if test "$ac_cv_func_getopt" != yes; then
2520 LIBSRCS="$LIBSRCS getopt.c"
2523 if test "$ac_cv_func_getpeereid" != yes; then
2524 AC_CHECK_FUNCS( getpeerucred )
2525 if test "$ac_cv_func_getpeerucred" != yes ; then
2526 AC_CHECK_MEMBERS([struct msghdr.msg_accrightslen],,,
2527 [$ac_includes_default
2528 #ifdef HAVE_SYS_SOCKET_H
2529 #include <sys/socket.h>
2531 if test "$ac_cv_member_struct_msghdr_msg_accrightslen" != yes; then
2532 AC_CHECK_MEMBERS([struct msghdr.msg_control],,,
2533 [$ac_includes_default
2534 #ifdef HAVE_SYS_SOCKET_H
2535 #include <sys/socket.h>
2538 AC_CHECK_MEMBERS([struct stat.st_fstype, struct stat.st_vfstype])
2539 if test "$ac_cv_member_struct_stat_st_fstype" = yes; then
2540 AC_COMPILE_IFELSE([struct stat st; char *ptr=st.st_fstype;],
2541 AC_DEFINE([HAVE_STRUCT_STAT_ST_FSTYPE_CHAR],1,[define to 1 if st_fstype is char *]),
2542 AC_DEFINE([HAVE_STRUCT_STAT_ST_FSTYPE_INT],1,[define to 1 if st_fstype is int]))
2545 LIBSRCS="$LIBSRCS getpeereid.c"
2548 if test "$ac_cv_func_snprintf" != yes ||
2549 test "$ac_cv_func_vsnprintf" != yes; then
2550 if test "$ac_cv_func_snprintf" != yes; then
2551 AC_DEFINE(snprintf, ber_pvt_snprintf, [define to snprintf routine])
2553 if test "$ac_cv_func_vsnprintf" != yes; then
2554 AC_DEFINE(vsnprintf, ber_pvt_vsnprintf, [define to snprintf routine])
2558 dnl ----------------------------------------------------------------
2559 dnl Sort out defines
2561 if test "$ol_enable_slapi" != no ; then
2562 dnl This check is done also if --enable-modules is used;
2563 dnl it is duplicated here, 'cause it'd be cached anyway
2564 AC_CHECK_HEADERS(ltdl.h)
2566 if test $ac_cv_header_ltdl_h != yes ; then
2567 AC_MSG_ERROR([could not locate <ltdl.h>])
2569 AC_CHECK_LIB(ltdl, lt_dlinit, [
2571 LIBSLAPI=slapi/libslapi.la
2572 AC_DEFINE(HAVE_LIBLTDL,1,[define if you have libtool -ltdl])
2573 ],[AC_MSG_ERROR([could not locate libtool -lltdl])])
2575 AC_DEFINE(LDAP_SLAPI,1, [define this to add SLAPI code])
2578 if test "$ol_enable_debug" != no ; then
2579 if test "$ol_enable_debug" = traditional; then
2580 AC_DEFINE(OLD_DEBUG,1,
2581 [define to use the original debug style])
2583 AC_DEFINE(LDAP_DEBUG,1,
2584 [define this to add debugging code])
2586 if test "$ol_enable_syslog" = yes ; then
2587 AC_DEFINE(LDAP_SYSLOG,1,
2588 [define this to add syslog code])
2590 if test "$ol_enable_proctitle" != no ; then
2591 AC_DEFINE(LDAP_PROCTITLE,1,
2592 [define this for LDAP process title support])
2594 if test "$ol_enable_referrals" != no ; then
2595 AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS,LDAP_VENDOR_VERSION,
2596 [define to LDAP VENDOR VERSION])
2598 if test "$ol_enable_local" != no; then
2599 AC_DEFINE(LDAP_PF_LOCAL,1,[define to support PF_LOCAL])
2601 if test "$ol_link_ipv6" != no; then
2602 AC_DEFINE(LDAP_PF_INET6,1,[define to support PF_INET6])
2604 if test "$ol_enable_cleartext" != no ; then
2605 AC_DEFINE(SLAPD_CLEARTEXT,1,[define to support cleartext passwords])
2607 if test "$ol_enable_crypt" != no ; then
2608 AC_DEFINE(SLAPD_CRYPT,1,[define to support crypt(3) passwords])
2610 if test "$ol_link_spasswd" != no ; then
2611 AC_DEFINE(SLAPD_SPASSWD,1,[define to support SASL passwords])
2613 if test "$ol_enable_rlookups" != no ; then
2614 AC_DEFINE(SLAPD_RLOOKUPS,1,[define to support reverse lookups])
2616 if test "$ol_enable_aci" != no ; then
2617 if test $ol_enable_dynacl = no ; then
2618 ol_enable_dynacl=yes
2619 AC_MSG_WARN([ACIs need dynacl])
2621 if test "$ol_enable_aci" = mod ; then
2622 MFLAG=SLAPD_MOD_DYNAMIC
2623 dnl remove this after moving servers/slapd/aci.c in contrib/slapd-modules/acl
2624 AC_MSG_ERROR([ACI build as dynamic module not supported (yet)])
2626 MFLAG=SLAPD_MOD_STATIC
2628 WITH_ACI_ENABLED=$ol_enable_aci
2629 AC_DEFINE_UNQUOTED(SLAPD_ACI_ENABLED,$MFLAG,[define to support per-object ACIs])
2633 if test "$ol_enable_dynacl" != no ; then
2634 AC_DEFINE(SLAP_DYNACL,1,[define to support run-time loadable ACL])
2637 if test "$ol_link_modules" != no ; then
2638 AC_DEFINE(SLAPD_MODULES,1,[define to support modules])
2640 SLAPD_MODULES_LDFLAGS="-dlopen self"
2643 AC_DEFINE(SLAPD_MOD_STATIC,1,[statically linked module])
2644 AC_DEFINE(SLAPD_MOD_DYNAMIC,2,[dynamically linked module])
2646 dnl back-monitor goes first (well, after back-config)
2647 if test "$ol_enable_monitor" != no ; then
2649 BUILD_MONITOR=$ol_enable_monitor
2650 if test "$ol_enable_monitor" = mod ; then
2651 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-monitor"
2652 MFLAG=SLAPD_MOD_DYNAMIC
2654 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-monitor"
2655 MFLAG=SLAPD_MOD_STATIC
2657 AC_DEFINE_UNQUOTED(SLAPD_MONITOR,$MFLAG,[define to support cn=Monitor backend])
2660 if test "$ol_enable_bdb" != no ; then
2662 BUILD_BDB=$ol_enable_bdb
2663 if test "$ol_enable_bdb" = mod ; then
2664 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-bdb"
2665 MFLAG=SLAPD_MOD_DYNAMIC
2667 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-bdb"
2668 MFLAG=SLAPD_MOD_STATIC
2670 AC_DEFINE_UNQUOTED(SLAPD_BDB,$MFLAG,[define to support BDB backend])
2673 if test "$ol_enable_dnssrv" != no ; then
2675 BUILD_DNSSRV=$ol_enable_dnssrv
2676 if test "$ol_enable_dnssrv" = mod ; then
2677 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-dnssrv"
2678 MFLAG=SLAPD_MOD_DYNAMIC
2680 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-dnssrv"
2681 MFLAG=SLAPD_MOD_STATIC
2683 AC_DEFINE_UNQUOTED(SLAPD_DNSSRV,$MFLAG,[define to support DNS SRV backend])
2686 if test "$ol_enable_hdb" != no ; then
2688 BUILD_HDB=$ol_enable_hdb
2689 if test "$ol_enable_hdb" = mod ; then
2690 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-hdb"
2691 MFLAG=SLAPD_MOD_DYNAMIC
2693 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-hdb"
2694 MFLAG=SLAPD_MOD_STATIC
2696 AC_DEFINE_UNQUOTED(SLAPD_HDB,$MFLAG,[define to support HDB backend])
2699 if test "$ol_enable_ldap" != no ; then
2701 BUILD_LDAP=$ol_enable_ldap
2702 if test "$ol_enable_ldap" = mod ; then
2703 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-ldap"
2704 MFLAG=SLAPD_MOD_DYNAMIC
2706 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-ldap"
2707 MFLAG=SLAPD_MOD_STATIC
2709 AC_DEFINE_UNQUOTED(SLAPD_LDAP,$MFLAG,[define to support LDAP backend])
2712 if test "$ol_enable_mdb" != no ; then
2714 BUILD_MDB=$ol_enable_mdb
2715 if test "$ol_enable_mdb" = mod ; then
2716 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-mdb"
2717 MFLAG=SLAPD_MOD_DYNAMIC
2719 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-mdb"
2720 MFLAG=SLAPD_MOD_STATIC
2722 AC_DEFINE_UNQUOTED(SLAPD_MDB,$MFLAG,[define to support MDB backend])
2725 if test "$ol_enable_meta" != no ; then
2727 BUILD_META=$ol_enable_meta
2729 if test "$ol_enable_meta" = mod ; then
2730 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-meta"
2731 MFLAG=SLAPD_MOD_DYNAMIC
2733 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-meta"
2734 MFLAG=SLAPD_MOD_STATIC
2736 AC_DEFINE_UNQUOTED(SLAPD_META,$MFLAG,[define to support LDAP Metadirectory backend])
2739 if test "$ol_enable_ndb" != no ; then
2741 BUILD_NDB=$ol_enable_ndb
2742 if test "$ol_enable_ndb" = mod ; then
2743 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-ndb"
2744 MFLAG=SLAPD_MOD_DYNAMIC
2746 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-ndb"
2747 MFLAG=SLAPD_MOD_STATIC
2749 AC_DEFINE_UNQUOTED(SLAPD_NDB,$MFLAG,[define to support NDB backend])
2752 if test "$ol_enable_null" != no ; then
2754 BUILD_NULL=$ol_enable_null
2755 if test "$ol_enable_null" = mod ; then
2756 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-null"
2757 MFLAG=SLAPD_MOD_DYNAMIC
2759 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-null"
2760 MFLAG=SLAPD_MOD_STATIC
2762 AC_DEFINE_UNQUOTED(SLAPD_NULL,$MFLAG,[define to support NULL backend])
2765 if test "$ol_enable_passwd" != no ; then
2767 BUILD_PASSWD=$ol_enable_passwd
2768 if test "$ol_enable_passwd" = mod ; then
2769 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-passwd"
2770 MFLAG=SLAPD_MOD_DYNAMIC
2772 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-passwd"
2773 MFLAG=SLAPD_MOD_STATIC
2775 AC_DEFINE_UNQUOTED(SLAPD_PASSWD,$MFLAG,[define to support PASSWD backend])
2778 if test "$ol_link_perl" != no ; then
2780 BUILD_PERL=$ol_enable_perl
2781 if test "$ol_enable_perl" = mod ; then
2782 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-perl"
2783 MFLAG=SLAPD_MOD_DYNAMIC
2785 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-perl"
2786 MFLAG=SLAPD_MOD_STATIC
2788 AC_DEFINE_UNQUOTED(SLAPD_PERL,$MFLAG,[define to support PERL backend])
2791 if test "$ol_enable_relay" != no ; then
2793 BUILD_RELAY=$ol_enable_relay
2794 if test "$ol_enable_relay" = mod ; then
2795 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-relay"
2796 MFLAG=SLAPD_MOD_DYNAMIC
2798 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-relay"
2799 MFLAG=SLAPD_MOD_STATIC
2801 AC_DEFINE_UNQUOTED(SLAPD_RELAY,$MFLAG,[define to support relay backend])
2804 if test "$ol_enable_shell" != no ; then
2805 if test "$ol_link_threads" != no ; then
2806 AC_MSG_WARN([Use of --without-threads is recommended with back-shell])
2809 BUILD_SHELL=$ol_enable_shell
2810 if test "$ol_enable_shell" = mod ; then
2811 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-shell"
2812 MFLAG=SLAPD_MOD_DYNAMIC
2814 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-shell"
2815 MFLAG=SLAPD_MOD_STATIC
2817 AC_DEFINE_UNQUOTED(SLAPD_SHELL,$MFLAG,[define to support SHELL backend])
2820 if test "$ol_enable_sock" != no ; then
2822 BUILD_SOCK=$ol_enable_sock
2823 if test "$ol_enable_sock" = mod ; then
2824 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-sock"
2825 MFLAG=SLAPD_MOD_DYNAMIC
2827 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-sock"
2828 MFLAG=SLAPD_MOD_STATIC
2830 AC_DEFINE_UNQUOTED(SLAPD_SOCK,$MFLAG,[define to support SOCK backend])
2833 if test "$ol_link_sql" != no ; then
2835 BUILD_SQL=$ol_enable_sql
2836 if test "$ol_enable_sql" = mod; then
2837 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-sql"
2838 MFLAG=SLAPD_MOD_DYNAMIC
2840 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-sql"
2841 MFLAG=SLAPD_MOD_STATIC
2843 AC_DEFINE_UNQUOTED(SLAPD_SQL,$MFLAG,[define to support SQL backend])
2846 if test "$ol_link_wt" != no ; then
2848 BUILD_WT=$ol_enable_wt
2849 if test "$ol_enable_wt" = mod; then
2850 SLAPD_DYNAMIC_BACKENDS="$SLAPD_DYNAMIC_BACKENDS back-wt"
2851 MFLAG=SLAPD_MOD_DYNAMIC
2853 SLAPD_STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS back-wt"
2854 MFLAG=SLAPD_MOD_STATIC
2856 AC_DEFINE_UNQUOTED(SLAPD_WT,$MFLAG,[define to support WiredTiger backend])
2859 if test "$ol_enable_accesslog" != no ; then
2860 BUILD_ACCESSLOG=$ol_enable_accesslog
2861 if test "$ol_enable_accesslog" = mod ; then
2862 MFLAG=SLAPD_MOD_DYNAMIC
2863 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS accesslog.la"
2865 MFLAG=SLAPD_MOD_STATIC
2866 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS accesslog.o"
2868 AC_DEFINE_UNQUOTED(SLAPD_OVER_ACCESSLOG,$MFLAG,[define for In-Directory Access Logging overlay])
2871 if test "$ol_enable_auditlog" != no ; then
2872 BUILD_AUDITLOG=$ol_enable_auditlog
2873 if test "$ol_enable_auditlog" = mod ; then
2874 MFLAG=SLAPD_MOD_DYNAMIC
2875 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS auditlog.la"
2877 MFLAG=SLAPD_MOD_STATIC
2878 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS auditlog.o"
2880 AC_DEFINE_UNQUOTED(SLAPD_OVER_AUDITLOG,$MFLAG,[define for Audit Logging overlay])
2883 if test "$ol_enable_collect" != no ; then
2884 BUILD_COLLECT=$ol_enable_collect
2885 if test "$ol_enable_collect" = mod ; then
2886 MFLAG=SLAPD_MOD_DYNAMIC
2887 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS collect.la"
2889 MFLAG=SLAPD_MOD_STATIC
2890 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS collect.o"
2892 AC_DEFINE_UNQUOTED(SLAPD_OVER_COLLECT,$MFLAG,[define for Collect overlay])
2895 if test "$ol_enable_constraint" != no ; then
2896 BUILD_CONSTRAINT=$ol_enable_constraint
2897 if test "$ol_enable_constraint" = mod ; then
2898 MFLAG=SLAPD_MOD_DYNAMIC
2899 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS constraint.la"
2901 MFLAG=SLAPD_MOD_STATIC
2902 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS constraint.o"
2904 AC_DEFINE_UNQUOTED(SLAPD_OVER_CONSTRAINT,$MFLAG,[define for Attribute Constraint overlay])
2907 if test "$ol_enable_dds" != no ; then
2908 BUILD_DDS=$ol_enable_dds
2909 if test "$ol_enable_dds" = mod ; then
2910 MFLAG=SLAPD_MOD_DYNAMIC
2911 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS dds.la"
2913 MFLAG=SLAPD_MOD_STATIC
2914 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS dds.o"
2916 AC_DEFINE_UNQUOTED(SLAPD_OVER_DDS,$MFLAG,[define for Dynamic Directory Services overlay])
2919 if test "$ol_enable_deref" != no ; then
2920 BUILD_DEREF=$ol_enable_deref
2921 if test "$ol_enable_deref" = mod ; then
2922 MFLAG=SLAPD_MOD_DYNAMIC
2923 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS deref.la"
2925 MFLAG=SLAPD_MOD_STATIC
2926 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS deref.o"
2928 AC_DEFINE_UNQUOTED(SLAPD_OVER_DEREF,$MFLAG,[define for Dynamic Directory Services overlay])
2931 if test "$ol_enable_dyngroup" != no ; then
2932 BUILD_DYNGROUP=$ol_enable_dyngroup
2933 if test "$ol_enable_dyngroup" = mod ; then
2934 MFLAG=SLAPD_MOD_DYNAMIC
2935 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS dyngroup.la"
2937 MFLAG=SLAPD_MOD_STATIC
2938 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS dyngroup.o"
2940 AC_DEFINE_UNQUOTED(SLAPD_OVER_DYNGROUP,$MFLAG,[define for Dynamic Group overlay])
2943 if test "$ol_enable_dynlist" != no ; then
2944 BUILD_DYNLIST=$ol_enable_dynlist
2945 if test "$ol_enable_dynlist" = mod ; then
2946 MFLAG=SLAPD_MOD_DYNAMIC
2947 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS dynlist.la"
2949 MFLAG=SLAPD_MOD_STATIC
2950 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS dynlist.o"
2952 AC_DEFINE_UNQUOTED(SLAPD_OVER_DYNLIST,$MFLAG,[define for Dynamic List overlay])
2955 if test "$ol_enable_memberof" != no ; then
2956 BUILD_MEMBEROF=$ol_enable_memberof
2957 if test "$ol_enable_memberof" = mod ; then
2958 MFLAG=SLAPD_MOD_DYNAMIC
2959 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS memberof.la"
2961 MFLAG=SLAPD_MOD_STATIC
2962 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS memberof.o"
2964 AC_DEFINE_UNQUOTED(SLAPD_OVER_MEMBEROF,$MFLAG,[define for Reverse Group Membership overlay])
2967 if test "$ol_enable_ppolicy" != no ; then
2968 BUILD_PPOLICY=$ol_enable_ppolicy
2969 if test "$ol_enable_ppolicy" = mod ; then
2970 MFLAG=SLAPD_MOD_DYNAMIC
2971 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS ppolicy.la"
2973 MFLAG=SLAPD_MOD_STATIC
2974 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS ppolicy.o"
2976 AC_DEFINE_UNQUOTED(SLAPD_OVER_PPOLICY,$MFLAG,[define for Password Policy overlay])
2979 if test "$ol_enable_proxycache" != no ; then
2980 BUILD_PROXYCACHE=$ol_enable_proxycache
2981 if test "$ol_enable_proxycache" = mod ; then
2982 MFLAG=SLAPD_MOD_DYNAMIC
2983 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS pcache.la"
2985 MFLAG=SLAPD_MOD_STATIC
2986 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS pcache.o"
2988 AC_DEFINE_UNQUOTED(SLAPD_OVER_PROXYCACHE,$MFLAG,[define for Proxy Cache overlay])
2991 if test "$ol_enable_refint" != no ; then
2992 BUILD_REFINT=$ol_enable_refint
2993 if test "$ol_enable_refint" = mod ; then
2994 MFLAG=SLAPD_MOD_DYNAMIC
2995 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS refint.la"
2997 MFLAG=SLAPD_MOD_STATIC
2998 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS refint.o"
3000 AC_DEFINE_UNQUOTED(SLAPD_OVER_REFINT,$MFLAG,[define for Referential Integrity overlay])
3003 if test "$ol_enable_retcode" != no ; then
3004 BUILD_RETCODE=$ol_enable_retcode
3005 if test "$ol_enable_retcode" = mod ; then
3006 MFLAG=SLAPD_MOD_DYNAMIC
3007 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS retcode.la"
3009 MFLAG=SLAPD_MOD_STATIC
3010 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS retcode.o"
3012 AC_DEFINE_UNQUOTED(SLAPD_OVER_RETCODE,$MFLAG,[define for Referential Integrity overlay])
3015 if test "$ol_enable_rwm" != no ; then
3017 BUILD_RWM=$ol_enable_rwm
3018 if test "$ol_enable_rwm" = mod ; then
3019 MFLAG=SLAPD_MOD_DYNAMIC
3020 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS rwm.la"
3022 MFLAG=SLAPD_MOD_STATIC
3023 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS rwm_x.o"
3025 AC_DEFINE_UNQUOTED(SLAPD_OVER_RWM,$MFLAG,[define for Rewrite/Remap overlay])
3028 if test "$ol_enable_seqmod" != no ; then
3029 BUILD_SEQMOD=$ol_enable_seqmod
3030 if test "$ol_enable_seqmod" = mod ; then
3031 MFLAG=SLAPD_MOD_DYNAMIC
3032 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS seqmod.la"
3034 MFLAG=SLAPD_MOD_STATIC
3035 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS seqmod.o"
3037 AC_DEFINE_UNQUOTED(SLAPD_OVER_SEQMOD,$MFLAG,[define for Sequential Modify overlay])
3040 if test "$ol_enable_sssvlv" != no ; then
3041 BUILD_SSSVLV=$ol_enable_sssvlv
3042 if test "$ol_enable_sssvlv" = mod ; then
3043 MFLAG=SLAPD_MOD_DYNAMIC
3044 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS sssvlv.la"
3046 MFLAG=SLAPD_MOD_STATIC
3047 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS sssvlv.o"
3049 AC_DEFINE_UNQUOTED(SLAPD_OVER_SSSVLV,$MFLAG,[define for ServerSideSort/VLV overlay])
3052 if test "$ol_enable_syncprov" != no ; then
3053 BUILD_SYNCPROV=$ol_enable_syncprov
3054 if test "$ol_enable_syncprov" = mod ; then
3055 MFLAG=SLAPD_MOD_DYNAMIC
3056 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS syncprov.la"
3058 MFLAG=SLAPD_MOD_STATIC
3059 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS syncprov.o"
3061 AC_DEFINE_UNQUOTED(SLAPD_OVER_SYNCPROV,$MFLAG,[define for Syncrepl Provider overlay])
3064 if test "$ol_enable_translucent" != no ; then
3065 BUILD_TRANSLUCENT=$ol_enable_translucent
3066 if test "$ol_enable_translucent" = mod ; then
3067 MFLAG=SLAPD_MOD_DYNAMIC
3068 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS translucent.la"
3070 MFLAG=SLAPD_MOD_STATIC
3071 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS translucent.o"
3073 AC_DEFINE_UNQUOTED(SLAPD_OVER_TRANSLUCENT,$MFLAG,[define for Translucent Proxy overlay])
3076 if test "$ol_enable_unique" != no ; then
3077 BUILD_UNIQUE=$ol_enable_unique
3078 if test "$ol_enable_unique" = mod ; then
3079 MFLAG=SLAPD_MOD_DYNAMIC
3080 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS unique.la"
3082 MFLAG=SLAPD_MOD_STATIC
3083 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS unique.o"
3085 AC_DEFINE_UNQUOTED(SLAPD_OVER_UNIQUE,$MFLAG,[define for Attribute Uniqueness overlay])
3088 if test "$ol_enable_valsort" != no ; then
3089 BUILD_VALSORT=$ol_enable_valsort
3090 if test "$ol_enable_valsort" = mod ; then
3091 MFLAG=SLAPD_MOD_DYNAMIC
3092 SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS valsort.la"
3094 MFLAG=SLAPD_MOD_STATIC
3095 SLAPD_STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS valsort.o"
3097 AC_DEFINE_UNQUOTED(SLAPD_OVER_VALSORT,$MFLAG,[define for Value Sorting overlay])
3100 if test "$ol_enable_rewrite" != no ; then
3101 AC_DEFINE(ENABLE_REWRITE,1,[define to enable rewriting in back-ldap and back-meta])
3105 if test "$ol_enable_slapi" != no ; then
3106 AC_DEFINE(ENABLE_SLAPI,1,[define to enable slapi library])
3108 SLAPD_SLAPI_DEPEND=libslapi.a
3111 dnl ----------------------------------------------------------------
3114 dnl For Windows build, we don't want to include -dlopen flags.
3115 dnl They hurt more than they help.
3118 if test "$ac_cv_mingw32" = yes -o $ol_cv_msvc = yes ; then
3120 SLAPD_MODULES_LDFLAGS=
3129 AC_SUBST(WITH_MODULES_ENABLED)
3130 AC_SUBST(WITH_ACI_ENABLED)
3131 AC_SUBST(BUILD_THREAD)
3132 AC_SUBST(BUILD_LIBS_DYNAMIC)
3134 AC_SUBST(BUILD_SLAPD)
3136 AC_SUBST(BUILD_SLAPI)
3137 AC_SUBST(SLAPD_SLAPI_DEPEND)
3140 AC_SUBST(BUILD_DNSSRV)
3142 AC_SUBST(BUILD_LDAP)
3144 AC_SUBST(BUILD_META)
3145 AC_SUBST(BUILD_MONITOR)
3147 AC_SUBST(BUILD_NULL)
3148 AC_SUBST(BUILD_PASSWD)
3149 AC_SUBST(BUILD_RELAY)
3150 AC_SUBST(BUILD_PERL)
3151 AC_SUBST(BUILD_SHELL)
3152 AC_SUBST(BUILD_SOCK)
3156 AC_SUBST(BUILD_ACCESSLOG)
3157 AC_SUBST(BUILD_AUDITLOG)
3158 AC_SUBST(BUILD_COLLECT)
3159 AC_SUBST(BUILD_CONSTRAINT)
3161 AC_SUBST(BUILD_DENYOP)
3162 AC_SUBST(BUILD_DEREF)
3163 AC_SUBST(BUILD_DYNGROUP)
3164 AC_SUBST(BUILD_DYNLIST)
3165 AC_SUBST(BUILD_LASTMOD)
3166 AC_SUBST(BUILD_MEMBEROF)
3167 AC_SUBST(BUILD_PPOLICY)
3168 AC_SUBST(BUILD_PROXYCACHE)
3169 AC_SUBST(BUILD_REFINT)
3170 AC_SUBST(BUILD_RETCODE)
3172 AC_SUBST(BUILD_SEQMOD)
3173 AC_SUBST(BUILD_SSSVLV)
3174 AC_SUBST(BUILD_SYNCPROV)
3175 AC_SUBST(BUILD_TRANSLUCENT)
3176 AC_SUBST(BUILD_UNIQUE)
3177 AC_SUBST(BUILD_VALSORT)
3180 AC_SUBST(SLAPD_LIBS)
3182 AC_SUBST(SLAPD_NDB_LIBS)
3183 AC_SUBST(SLAPD_NDB_INCS)
3184 AC_SUBST(LTHREAD_LIBS)
3185 AC_SUBST(LUTIL_LIBS)
3188 AC_SUBST(SLAPD_MODULES_CPPFLAGS)
3189 AC_SUBST(SLAPD_MODULES_LDFLAGS)
3191 AC_SUBST(SLAPD_NO_STATIC)
3192 AC_SUBST(SLAPD_STATIC_BACKENDS)
3193 AC_SUBST(SLAPD_DYNAMIC_BACKENDS)
3194 AC_SUBST(SLAPD_STATIC_OVERLAYS)
3195 AC_SUBST(SLAPD_DYNAMIC_OVERLAYS)
3197 AC_SUBST(PERL_CPPFLAGS)
3198 AC_SUBST(SLAPD_PERL_LDFLAGS)
3199 AC_SUBST(MOD_PERL_LDFLAGS)
3205 AC_SUBST(MODULES_LIBS)
3206 AC_SUBST(SLAPI_LIBS)
3211 AC_SUBST(SLAPD_SLP_LIBS)
3212 AC_SUBST(SLAPD_GMP_LIBS)
3214 AC_SUBST(SLAPD_SQL_LDFLAGS)
3215 AC_SUBST(SLAPD_SQL_LIBS)
3216 AC_SUBST(SLAPD_SQL_INCLUDES)
3221 dnl ----------------------------------------------------------------
3222 dnl final help output
3223 AC_ARG_WITH(xxinstall,[
3224 See INSTALL file for further details.])
3226 dnl ----------------------------------------------------------------
3230 AC_CONFIG_FILES([Makefile:build/top.mk:Makefile.in:build/dir.mk]
3231 [doc/Makefile:build/top.mk:doc/Makefile.in:build/dir.mk]
3232 [doc/man/Makefile:build/top.mk:doc/man/Makefile.in:build/dir.mk]
3233 [doc/man/man1/Makefile:build/top.mk:doc/man/man1/Makefile.in:build/man.mk]
3234 [doc/man/man3/Makefile:build/top.mk:doc/man/man3/Makefile.in:build/man.mk]
3235 [doc/man/man5/Makefile:build/top.mk:doc/man/man5/Makefile.in:build/man.mk]
3236 [doc/man/man8/Makefile:build/top.mk:doc/man/man8/Makefile.in:build/man.mk]
3237 [clients/Makefile:build/top.mk:clients/Makefile.in:build/dir.mk]
3238 [clients/tools/Makefile:build/top.mk:clients/tools/Makefile.in:build/rules.mk]
3239 [include/Makefile:build/top.mk:include/Makefile.in]
3240 [libraries/Makefile:build/top.mk:libraries/Makefile.in:build/dir.mk]
3241 [libraries/liblber/Makefile:build/top.mk:libraries/liblber/Makefile.in:build/lib.mk:build/lib-shared.mk]
3242 [libraries/libldap/Makefile:build/top.mk:libraries/libldap/Makefile.in:build/lib.mk:build/lib-shared.mk]
3243 [libraries/libldap_r/Makefile:build/top.mk:libraries/libldap_r/Makefile.in:build/lib.mk:build/lib-shared.mk]
3244 [libraries/liblunicode/Makefile:build/top.mk:libraries/liblunicode/Makefile.in:build/lib.mk:build/lib-static.mk]
3245 [libraries/liblutil/Makefile:build/top.mk:libraries/liblutil/Makefile.in:build/lib.mk:build/lib-static.mk]
3246 [libraries/librewrite/Makefile:build/top.mk:libraries/librewrite/Makefile.in:build/lib.mk:build/lib-static.mk]
3247 [servers/Makefile:build/top.mk:servers/Makefile.in:build/dir.mk]
3248 [servers/slapd/Makefile:build/top.mk:servers/slapd/Makefile.in:build/srv.mk]
3249 [servers/slapd/back-bdb/Makefile:build/top.mk:servers/slapd/back-bdb/Makefile.in:build/mod.mk]
3250 [servers/slapd/back-dnssrv/Makefile:build/top.mk:servers/slapd/back-dnssrv/Makefile.in:build/mod.mk]
3251 [servers/slapd/back-hdb/Makefile:build/top.mk:servers/slapd/back-hdb/Makefile.in:build/mod.mk]
3252 [servers/slapd/back-ldap/Makefile:build/top.mk:servers/slapd/back-ldap/Makefile.in:build/mod.mk]
3253 [servers/slapd/back-ldif/Makefile:build/top.mk:servers/slapd/back-ldif/Makefile.in:build/mod.mk]
3254 [servers/slapd/back-mdb/Makefile:build/top.mk:servers/slapd/back-mdb/Makefile.in:build/mod.mk]
3255 [servers/slapd/back-meta/Makefile:build/top.mk:servers/slapd/back-meta/Makefile.in:build/mod.mk]
3256 [servers/slapd/back-monitor/Makefile:build/top.mk:servers/slapd/back-monitor/Makefile.in:build/mod.mk]
3257 [servers/slapd/back-ndb/Makefile:build/top.mk:servers/slapd/back-ndb/Makefile.in:build/mod.mk]
3258 [servers/slapd/back-null/Makefile:build/top.mk:servers/slapd/back-null/Makefile.in:build/mod.mk]
3259 [servers/slapd/back-passwd/Makefile:build/top.mk:servers/slapd/back-passwd/Makefile.in:build/mod.mk]
3260 [servers/slapd/back-perl/Makefile:build/top.mk:servers/slapd/back-perl/Makefile.in:build/mod.mk]
3261 [servers/slapd/back-relay/Makefile:build/top.mk:servers/slapd/back-relay/Makefile.in:build/mod.mk]
3262 [servers/slapd/back-shell/Makefile:build/top.mk:servers/slapd/back-shell/Makefile.in:build/mod.mk]
3263 [servers/slapd/back-sock/Makefile:build/top.mk:servers/slapd/back-sock/Makefile.in:build/mod.mk]
3264 [servers/slapd/back-sql/Makefile:build/top.mk:servers/slapd/back-sql/Makefile.in:build/mod.mk]
3265 [servers/slapd/back-wt/Makefile:build/top.mk:servers/slapd/back-wt/Makefile.in:build/mod.mk]
3266 [servers/slapd/shell-backends/Makefile:build/top.mk:servers/slapd/shell-backends/Makefile.in:build/srv.mk]
3267 [servers/slapd/slapi/Makefile:build/top.mk:servers/slapd/slapi/Makefile.in:build/lib.mk:build/lib-shared.mk]
3268 [servers/slapd/overlays/Makefile:build/top.mk:servers/slapd/overlays/Makefile.in:build/lib.mk]
3269 [tests/Makefile:build/top.mk:tests/Makefile.in:build/dir.mk]
3271 [tests/progs/Makefile:build/top.mk:tests/progs/Makefile.in:build/rules.mk])
3273 AC_CONFIG_COMMANDS([default],[[
3276 BACKENDSC="servers/slapd/backends.c"
3277 echo "Making $BACKENDSC"
3279 cat > $BACKENDSC << ENDX
3280 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
3282 * Copyright 1998-2016 The OpenLDAP Foundation.
3283 * All rights reserved.
3285 * Redistribution and use in source and binary forms, with or without
3286 * modification, are permitted only as authorized by the OpenLDAP
3289 * A copy of this license is available in the file LICENSE in the
3290 * top-level directory of the distribution or, alternatively, at
3291 * <http://www.OpenLDAP.org/license.html>.
3293 /* This file is automatically generated by configure; please do not edit. */
3295 #include "portable.h"
3299 if test "${STATIC_BACKENDS}"; then
3300 for b in config ${STATIC_BACKENDS}; do
3301 bb=`echo "${b}" | sed -e 's/back-//'`
3302 cat >> $BACKENDSC << ENDX
3303 extern BI_init ${bb}_back_initialize;
3307 cat >> $BACKENDSC << ENDX
3309 BackendInfo slap_binfo[] = {
3312 for b in config ${STATIC_BACKENDS}; do
3313 bb=`echo "${b}" | sed -e 's/back-//'`
3314 echo " Add ${bb} ..."
3315 cat >> $BACKENDSC << ENDX
3316 { "${bb}", ${bb}_back_initialize },
3320 cat >> $BACKENDSC << ENDX
3324 /* end of generated file */
3327 OVERLAYSC="servers/slapd/overlays/statover.c"
3328 echo "Making $OVERLAYSC"
3330 cat > $OVERLAYSC << ENDX
3331 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
3333 * Copyright 1998-2016 The OpenLDAP Foundation.
3334 * All rights reserved.
3336 * Redistribution and use in source and binary forms, with or without
3337 * modification, are permitted only as authorized by the OpenLDAP
3340 * A copy of this license is available in the file LICENSE in the
3341 * top-level directory of the distribution or, alternatively, at
3342 * <http://www.OpenLDAP.org/license.html>.
3344 /* This file is automatically generated by configure; please do not edit. */
3346 #include "portable.h"
3350 if test "${STATIC_OVERLAYS}"; then
3351 for o in ${STATIC_OVERLAYS}; do
3352 oo=`echo "${o}" | sed -e 's/.o$//' -e 's/_x$//'`
3353 cat >> $OVERLAYSC << ENDX
3354 extern OV_init ${oo}_initialize;
3359 cat >> $OVERLAYSC << ENDX
3361 OverlayInit slap_oinfo[] = {
3364 if test "${STATIC_OVERLAYS}"; then
3365 for o in ${STATIC_OVERLAYS}; do
3366 oo=`echo "${o}" | sed -e 's/.o$//' -e 's/_x$//'`
3367 echo " Add ${oo} ..."
3368 cat >> $OVERLAYSC << ENDX
3369 { "${oo}", ${oo}_initialize },
3374 cat >> $OVERLAYSC << ENDX
3378 /* end of generated file */
3381 if test "${ol_cv_mkdep}" = no; then
3382 echo '(Do not "make depend"; we do not know how to build dependencies)'
3384 echo 'Please run "make depend" to build dependencies'
3387 STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS"
3388 STATIC_OVERLAYS="$SLAPD_STATIC_OVERLAYS"