]> git.sur5r.net Git - openldap/blob - configure.in
9727ea97c3e6f2691df045293d052c13538a4170
[openldap] / configure.in
1 dnl Copyright 1998 The OpenLDAP Foundation.  All Rights Reserved.
2 dnl 
3 dnl Redistribution and use in source and binary forms are permitted only
4 dnl as authorized by the OpenLDAP Public License.  A copy of this
5 dnl license is available at http://www.OpenLDAP.org/license.html or
6 dnl in file LICENSE in the top-level directory of the distribution.
7 dnl ----
8 dnl Configure.in for OpenLDAP
9 dnl
10 AC_INIT(include/ldap.h)
11 dnl
12 dnl
13 AC_PREREQ(2.10)dnl Required Autoconf version
14 dnl Do not use AutoConf 2.12; it produces a configuration script
15 dnl that causes an "internal 2K buffer" error on HPUX when run
16 dnl with /bin/sh.  Autoconf 2.10 seems to be okay.
17 AC_CONFIG_AUX_DIR(build)
18 AC_CONFIG_HEADER(include/portable.h)dnl
19 dnl
20 dnl Start Args
21 AC_MSG_CHECKING(configure arguments)
22 AC_PREFIX_DEFAULT(/usr/local)
23
24 dnl General "enable" options
25 OL_ARG_ENABLE(debug,[  --enable-debug   enable debugging], yes)dnl
26 dnl OL_ARG_ENABLE(syslog,[  --enable-syslog     enable syslog support], auto)dnl
27 OL_ARG_ENABLE(libui,[  --enable-libui   enable library user interface], yes)dnl
28 OL_ARG_ENABLE(cache,[  --enable-cache   enable caching], yes)dnl
29 OL_ARG_ENABLE(dns,[  --enable-dns       enable dns support], no)dnl
30 OL_ARG_ENABLE(referrals,[  --enable-referrals   enable referrals], yes)dnl
31 OL_ARG_ENABLE(cldap,[  --enable-clapd   enable connectionless ldap], no)dnl
32
33 dnl General "with" options
34 OL_ARG_WITH(kerberos,[  --with-kerberos use Kerberos],
35         auto, [auto k5 k4 afs yes no])
36 OL_ARG_WITH(threads,[  --with-threads   use threads],
37         auto, [auto posix dce mach yes no manual] )
38
39 dnl Server options
40
41 dnl LDAPD OPTIONS
42 OL_ARG_ENABLE(ldapd,[  --enable-ldapd   enable building ldapd], no)dnl
43
44 dnl SLAPD OPTIONS
45 OL_ARG_ENABLE(slapd,[  --enable-slapd   enable building slapd], yes)dnl
46 OL_ARG_ENABLE(aclgroup,[    --enable-aclgroup   enable ACL group support], auto)dnl
47 OL_ARG_ENABLE(crypt,[    --enable-crypt enable crypt(3) passwords], auto)dnl
48 OL_ARG_ENABLE(md5,[    --enable-md5     enable MD5 passwords], auto)dnl
49 OL_ARG_ENABLE(sha1,[    --enable-sha1   enable SHA1 passwords], auto)dnl
50 OL_ARG_ENABLE(wrappers,[    --enable-wrappers   enable tcp wrapper support], no)dnl
51 OL_ARG_ENABLE(phonetic,[    --enable-phonetic   enable phonetic/soundex], no)dnl
52 OL_ARG_ENABLE(rlookups,[    --enable-rlookups   enable reverse lookups], auto)dnl
53
54 dnl SLAPD Backend options
55 OL_ARG_ENABLE(ldbm,[    --enable-ldbm   enable ldbm backend], yes)dnl
56 OL_ARG_WITH(ldbm_api,[      --with-ldbm-api     use LDBM API], auto,
57         [auto db2 db gdbm ndbm manual])
58 OL_ARG_WITH(ldbm_type,[      --with-ldbm-type   use LDBM type], auto,
59         [auto btree hash])
60
61 OL_ARG_ENABLE(passwd,[    --enable-passwd       enable passwd backend], no)dnl
62 OL_ARG_ENABLE(shell,[    --enable-shell enable shell backend], no)dnl
63
64 dnl SLURPD OPTIONS
65 OL_ARG_ENABLE(slurpd,[  --enable-slurpd enable building slurpd], auto)dnl
66
67 if test $ol_enable_slapd = no ; then
68         dnl SLAPD was specificallly disabled
69         if test $ol_enable_ldbm = yes ; then
70                 AC_MSG_WARN([slapd disabled, ignoring --enable_ldbm argument]);
71         fi
72         if test $ol_enable_passwd = yes ; then
73                 AC_MSG_WARN([slapd disabled, ignoring --enable_passwd argument]);
74         fi
75         if test $ol_enable_shell = yes ; then
76                 AC_MSG_WARN([slapd disabled, ignoring --enable_shell argument]);
77         fi
78         if test $ol_enable_aclgroup = yes ; then
79                 AC_MSG_WARN([slapd disabled, ignoring --enable_aclgroup argument]);
80         fi
81         if test $ol_enable_crypt = yes ; then
82                 AC_MSG_WARN([slapd disabled, ignoring --enable_crypt argument]);
83         fi
84         if test $ol_enable_md5 = yes ; then
85                 AC_MSG_WARN([slapd disabled, ignoring --enable_md5 argument]);
86         fi
87         if test $ol_enable_sha1 = yes ; then
88                 AC_MSG_WARN([slapd disabled, ignoring --enable_sha1 argument]);
89         fi
90         if test $ol_enable_wrappers = yes ; then
91                 AC_MSG_WARN([slapd disabled, ignoring --enable_wrappers argument]);
92         fi
93         if test $ol_enable_phonetic = yes ; then
94                 AC_MSG_WARN([slapd disabled, ignoring --enable_phonetic argument]);
95         fi
96         if test $ol_enable_rlookups = yes ; then
97                 AC_MSG_WARN([slapd disabled, ignoring --enable_rlookups argument]);
98         fi
99         if test $ol_with_ldbm_api != auto ; then
100                 AC_MSG_WARN([slapd disabled, ignoring --with_ldbm_api argument]);
101         fi
102         if test $ol_with_ldbm_type != auto ; then
103                 AC_MSG_WARN([slapd disabled, ignoring --with_ldbm_type argument]);
104         fi
105         if test $ol_enable_slurpd = yes ; then
106                 AC_MSG_ERROR([slurpd requires slapd]);
107         fi
108
109         # force settings to no
110         ol_enable_ldbm=no
111         ol_enable_shell=no
112         ol_enable_passwd=no
113         ol_enable_aclgroup=no
114         ol_enable_crypt=no
115         ol_enable_md5=no
116         ol_enable_sha1=no
117         ol_enable_wrappers=no
118         ol_enable_phonetic=no
119         ol_enable_rlookups=no
120         ol_with_ldbm_api=no
121         ol_with_ldbm_type=no
122         ol_enable_slurpd=no
123
124 elif test $ol_enable_ldbm = no ; then
125         dnl SLAPD without LDBM
126
127         if test $ol_with_ldbm_api != auto ; then
128                 AC_MSG_WARN([LDBM disabled, ignoring --with_ldbm_api argument]);
129         fi
130
131         if test $ol_with_ldbm_type != auto ; then
132                 AC_MSG_WARN([LDBM disabled, ignoring --with_ldbm_type argument]);
133         fi
134
135         if test $ol_enable_passwd = no -a $ol_enable_shell = no ; then
136                 AC_MSG_ERROR([slapd requires a backend]);
137         fi
138
139         ol_with_ldbm_api=no
140         ol_with_ldbm_type=no
141
142 else
143         dnl SLAPD with LDBM
144
145         if test $ol_with_ldbm_api = gdbm -a \
146                 $ol_with_ldbm_type = btree ; then
147                 AC_MSG_ERROR([GDBM only supports LDBM type hash]);
148         fi
149         if test $ol_with_ldbm_api = ndbm -a \
150                 $ol_with_ldbm_type = btree ; then
151                 AC_MSG_ERROR([NDBM only supports LDBM type hash]);
152         fi
153 fi
154
155 if test $ol_enable_slurpd = yes ; then
156         dnl SLURPD was specifically enabled
157         if test $ol_with_threads = no ; then
158                 AC_MSG_ERROR([slurpd requires threads]);
159         fi
160 fi
161
162 AC_MSG_RESULT(done)
163
164 ## Initialize vars
165 LDAP_DEFS=
166 LDAP_LIBS=
167 LDBM_DEFS=
168 LDBM_LIBS=
169 LTHREAD_DEFS=
170 LTHREAD_LIBS=
171 LUTIL_DEFS=
172 LUTIL_LIBS=
173
174 LDAPD_DEFS=
175 LDAPD_LIBS=
176 SLAPD_DEFS=
177 SLAPD_LIBS=
178 SLURPD_DEFS=
179 SLURPD_LIBS=
180
181 BUILD_LDAPD=no
182 BUILD_SLAPD=no
183 BUILD_SLURPD=no
184
185 BUILD_LDBM=no
186 BUILD_PASSWD=no
187 BUILD_SHELL=no
188
189 dnl ----------------------------------------------------------------
190 dnl Checks for programs
191
192 AC_PROG_CC
193 AC_PROG_GCC_TRADITIONAL
194
195 AC_PROG_LN_S
196 AC_PROG_INSTALL
197 AC_PROG_RANLIB
198 AC_PROG_MAKE_SET
199
200 AC_PATH_PROG(SENDMAIL, sendmail, /usr/lib/sendmail,
201         $PATH:/usr/libexec:/usr/lib:/usr/sbin:/usr/etc:/etc)
202 AC_PATH_PROG(EDITOR, vi, /usr/ucb/vi, $PATH:/usr/ucb)
203 AC_PATH_PROG(FINGER, finger, /usr/ucb/finger, $PATH:/usr/ucb)
204
205 dnl ----------------------------------------------------------------
206 dnl Checks for libraries
207
208 AC_CHECK_FUNC(socket, :,  
209 [       AC_CHECK_LIB(nsl, gethostname)
210         AC_CHECK_LIB(socket, socket)
211         AC_CHECK_LIB(inet, socket)
212 ])
213
214 ol_link_threads=no
215 if test $ol_with_threads = auto -o $ol_with_threads = posix ; then
216         AC_CHECK_HEADERS(pthread.h sched.h)
217
218         if test "$ac_cv_header_pthread_h" = yes ; then
219                 OL_POSIX_THREAD_VERSION
220
221                 if test $ol_cv_pthread_version = final ; then
222                         LTHREAD_DEFS="$LTHREAD_DEFS -DPOSIX_THREADS"
223                 elif test $ol_cv_pthread_version = draft4 ; then
224                         LTHREAD_DEFS="$LTHREAD_DEFS -DTHREAD_MIT_PTHREADS"
225                 else
226                         AC_MSG_ERROR([unknown pthread version])
227                 fi
228
229                 # consider threads found
230                 ol_with_threads=found
231
232                 OL_LINUX_THREADS
233
234                 if test $ol_cv_linux_threads = yes ; then
235 dnl                     AC_DEFINE(HAVE_LINUX_THREADS,1)
236                         LTHREAD_DEFS="$LTHREAD_DEFS -DHAVE_LINUX_THREADS"
237                 fi
238
239                 dnl Now the hard part, how to link
240
241                 dnl A few platforms have pthread support in standard libraries
242                 AC_CHECK_FUNC(pthread_create,[ol_link_threads=yes])
243
244                 if test $ol_link_threads = no ; then
245                         dnl try -pthread
246                         AC_CACHE_CHECK([for pthread_create with -pthread],
247                                 [ol_cv_pthread_flag], [
248                                 dnl save the CPPFLAGS
249                                 save_LIBS="$LIBS"
250                                 LIBS="-pthread $LIBS"
251                                 AC_TRY_LINK([#include <pthread.h>],[
252                                         pthread_create((pthread_t*) 0,
253                                                 (pthread_attr_t*) 0, 0, 0);
254                                         ], ol_cv_pthread_flag=yes, ol_cv_pthread_flag=no)
255                                 dnl restore the LIBS
256                                 LIBS="$save_LIBS"
257                         ])
258
259                         if test $ol_cv_pthread_flag = yes ; then
260                                 LTHREAD_LIBS="$LTHREAD_LIBS -pthread"
261                                 ol_link_threads=posix
262                         fi
263                 fi
264
265                 if test $ol_link_threads = no ; then
266                         dnl try -lpthread
267                         save_LIBS="$LIBS"
268                         AC_CHECK_LIB(pthread, pthread_create, [
269                                 ol_link_threads=posix
270                                 LTHREAD_LIBS="$LTHREAD_LIBS -lpthread"])
271                         LIBS="$save_LIBS"
272                 fi
273
274                 if test $ol_link_threads = no ; then
275                         dnl try -lc_r
276                         save_LIBS="$LIBS"
277                         AC_CHECK_LIB(c_r, pthread_create, [
278                                 ol_link_threads=posix
279                                 LTHREAD_LIBS="$LTHREAD_LIBS -lc_r"])
280                         LIBS="$save_LIBS"
281                 fi
282
283                 if test $ol_link_threads = no ; then
284                         dnl try DEC Threads
285                         save_LIBS="$LIBS"
286                         AC_CHECK_LIB(pthread, pthread_create, [
287                                 ol_link_threads=posix
288                                 LTHREAD_DEFS="$LTHREAD_DEFS -DDEC_THREADS"
289                                 LTHREAD_LIBS="$LTHREAD_LIBS -lpthread -lmach -lexc -lc"],,
290                                 [-lmach -lexc -lc])
291                         LIBS="$save_LIBS"
292                 fi
293
294                 if test $ol_link_threads != no ; then
295                         dnl All POSIX Thread (final) implementations should have
296                         dnl sched_yield instead of pthread yield.
297                         dnl check for both
298                         save_LIBS="$LIBS"
299                         LIBS="$LTHREAD_LIBS $LIBS"
300                         AC_CHECK_FUNCS(sched_yield pthread_yield)
301                         LIBS="$save_LIBS"
302
303                         if test $ac_cv_func_sched_yield = no -a \
304                                 $ac_cv_func_pthread_yield = no ; then
305
306                                 AC_MSG_WARN([could not locate sched_yield() or pthread_yield()])
307                                 AC_MSG_ERROR([POSIX Threads are not usable])
308                         fi
309                 else
310                         AC_MSG_ERROR([could not link with POSIX Threads])
311                 fi
312         fi
313
314         if test $ol_with_threads = posix ; then
315                 AC_MSG_ERROR([could not locate POSIX Threads])
316         fi
317 fi
318
319 if test $ol_with_threads = manual ; then
320         dnl User thinks he can manually configure threads.
321         $ol_link_threads=yes
322
323         AC_MSG_WARN([thread defines and link options must be set manually])
324
325         AC_CHECK_HEADERS(pthread.h sched.h)
326         AC_CHECK_FUNCS(sched_yield pthread_yield)
327         OL_LINUX_THREADS
328 fi
329
330 if test $ol_link_threads = no ; then
331         if test $ol_with_threads = yes ; then
332                 AC_MSG_ERROR([no suitable thread support])
333         fi
334
335         if test $ol_with_threads = auto ; then
336                 AC_MSG_WARN([no suitable thread support, disabling threads])
337                 $ol_with_threads = no
338         fi
339
340         LTHREAD_DEFS="-DNO_THREADS"
341         LTHREAD_LIBS=""
342 fi
343
344 ol_link_ldbm=no 
345 if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = db2 ; then
346         OL_BERKELEY_DB2
347
348         if test $ol_cv_berkeley_db2 = yes ; then
349                 ol_link_ldbm=db2
350                 ol_with_ldbm_api=db2
351
352                 LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_DB2"
353
354                 if test $ol_with_ldbm_type = hash ; then
355                         LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_DBHASH"
356                 else
357                         LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_DBBTREE"
358                 fi
359
360                 dnl $ol_cv_lib_db2 should be yes or -ldb
361                 dnl (it could be no, but that would be an error
362                 if test $ol_cv_lib_db2 != yes ; then
363                         LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_db2"
364                 fi
365         fi
366 fi
367
368 if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = db ; then
369         OL_BERKELEY_DB
370
371         if test $ol_cv_berkeley_db = yes ; then
372                 ol_link_ldbm=db
373                 ol_with_ldbm_api=db
374
375                 if test $ac_cv_header_db_185_h = yes ; then
376                         LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_DB2_COMPAT185"
377                 fi
378
379                 if test $ol_with_ldbm_type = hash ; then
380                         LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_DBHASH"
381                 else
382                         LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_DBBTREE"
383                 fi
384
385                 dnl $ol_cv_lib_db should be yes or -ldb
386                 dnl (it could be no, but that would be an error
387                 if test $ol_cv_lib_db != yes ; then
388                         LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_db"
389                 fi
390         fi
391 fi
392
393 if test $ol_with_ldbm_api = manual ; then
394         dnl User thinks he can manually configure LDBM api.
395         $ol_link_ldbm=yes
396
397         AC_MSG_WARN([LDBM defines and link options must be set manually])
398
399         AC_CHECK_HEADERS(db.h db_185.h gdbm.h ndbm.h)
400 fi
401
402 if test $ol_link_ldbm = no -a $ol_with_ldbm_type = btree ; then
403         AC_MSG_WARN(Could not find LDBM with BTREE support);
404         $ol_with_ldbm_api=none
405 fi
406
407 if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = gdbm ; then
408         OL_GDBM
409
410         if test $ol_cv_gdbm = yes ; then
411                 ol_link_ldbm=gdbm
412                 ol_with_ldbm_api=gdbm
413
414                 LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_GDBM"
415
416                 if test $ol_cv_lib_gdbm != yes ; then
417                         LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_gdbm"
418                 fi
419         fi
420 fi
421
422 if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = ndbm ; then
423         OL_NDBM
424
425         if test $ol_cv_ndbm = yes ; then
426                 ol_link_ldbm=ndbm
427                 ol_with_ldbm_api=ndbm
428
429                 if test $ol_with_ldbm_api = ndbm ; then
430                         AC_WARN([Attempting to use NDBM.  Functionality will be limited.])
431                 fi
432
433                 LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_NDBM"
434
435                 if test $ol_cv_lib_ndbm != yes ; then
436                         LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_ndbm"
437                 fi
438         fi
439 fi
440
441 if test $ol_link_ldbm = no -a $ol_enable_ldbm != no ; then
442         AC_MSG_WARN(could not find suitable LDBM backend)
443         if test $ol_enable_ldbm = yes ; then
444                 AC_MSG_ERROR(select appropriate LDBM options or disable)
445         fi
446
447         AC_MSG_WARN(disabling LDBM)
448         $ol_enable_ldbm=no
449 fi
450
451 if test $ol_enable_wrappers = yes ; then
452         AC_CHECK_LIB(wrap, hosts_access,
453                 [have_wrappers=yes], [have_wrappers=no])
454
455         if test $have_wrappers = yes ; then
456 dnl             LIBTCPD="-lwrap"
457 dnl             AC_DEFINE(HAVE_TCPD)
458                 SLAPD_DEFS="$SLAPD_DEFS -DTCP_WRAPPERS"
459                 SLAPD_LIBS="$SLAPD_LIBS -lwrap"
460         else
461                 AC_MSG_WARN(could not find -lwrap)
462                 if test $ol_enable_wrappers = yes ; then
463                         AC_MSG_ERROR(could not find wrappers, select appropriate options or disable)
464                 fi
465
466                 AC_MSG_WARN(disabling wrappers support)
467                 ol_enable_wrappers=no
468         fi
469
470 fi
471
472 # ud needs termcap (should insert check here)
473 ol_link_termcap=no
474
475 TERMCAP_DEFS=
476 TERMCAP_LIBS=
477
478 AC_CHECK_HEADERS(termcap.h ncurses.h)
479
480 if test $ol_link_termcap = no ; then
481         AC_CHECK_LIB(termcap, tputs, [have_termcap=yes], [have_termcap=no])
482         if test $have_termcap = yes ; then
483                 ol_link_termcap=yes
484                 TERMCAP_LIBS=-ltermcap
485         fi
486 fi
487
488 if test $ol_link_termcap = no ; then
489         AC_CHECK_LIB(ncurses, initscr, [have_ncurses=yes], [have_ncurses=no])
490         if test $have_ncurses = yes ; then
491                 ol_link_termcap=yes
492                 TERMCAP_LIBS=-lncurses
493         fi
494 fi
495
496 if test $ol_link_termcap = no ; then
497         TERMCAP_DEFS="-DNOTERMCAP"
498         TERMCAP_LIBS=
499 fi
500
501 AC_SUBST(TERMCAP_DEFS)
502 AC_SUBST(TERMCAP_LIBS)
503
504 # FreeBSD (and others) have crypt(3) in -lcrypt
505 if test $ol_enable_crypt != no ; then
506         AC_CHECK_FUNC(crypt, [have_crypt=yes], [
507                 AC_CHECK_LIB(crypt, crypt, [LUTIL_LIBS="$LUTIL_LIBS -lcrypt"
508                         have_crypt=yes], [have_crypt=no])])
509
510         if test $have_crypt = yes ; then
511 dnl             AC_DEFINE(SLAPD_CRYPT,1)
512                 LUTIL_DEFS="$LUTIL_DEFS -DLDAP_CRYPT"
513         else
514                 AC_MSG_WARN(could not find crypt)
515                 if test $ol_enable_crypt = yes ; then
516                         AC_MSG_ERROR(could not find crypt, select appropriate options or disable)
517                 fi
518
519                 AC_MSG_WARN(disabling crypt support)
520                 ol_enable_crypt=no
521         fi
522 fi
523
524 dnl ----------------------------------------------------------------
525 dnl Checks for header files.
526 AC_HEADER_STDC
527 AC_HEADER_DIRENT
528 AC_HEADER_SYS_WAIT
529 AC_CHECK_HEADERS( \
530         stddef.h        \
531         fcntl.h         \
532         filio.h         \
533         limits.h        \
534         malloc.h        \
535         sgtty.h         \
536         sys/file.h      \
537         sys/ioctl.h     \
538         sys/time.h      \
539         syslog.h        \
540         termio.h        \
541         unistd.h        \
542 )
543
544 dnl ----------------------------------------------------------------
545 dnl Checks for typedefs, structures, and compiler characteristics.
546 AC_TYPE_GETGROUPS
547 AC_TYPE_MODE_T
548 AC_TYPE_OFF_T
549 AC_TYPE_PID_T
550 AC_TYPE_SIGNAL
551 AC_TYPE_SIZE_T
552 AC_TYPE_UID_T
553 AC_STRUCT_ST_BLKSIZE
554 AC_HEADER_TIME
555 AC_STRUCT_TM
556
557 dnl AC_C_BIGENDIAN
558 AC_C_CONST
559
560 dnl ----------------------------------------------------------------
561 dnl Checks for library functions.
562 AC_FUNC_MEMCMP
563 AC_FUNC_STRFTIME
564 AC_FUNC_VPRINTF
565 AC_FUNC_WAIT3
566
567 AC_CHECK_FUNCS(         \
568         flock                   \
569         gethostname             \
570         gettimeofday    \
571         getdtablesize   \
572         lockf                   \
573         memcpy                  \
574         mktime                  \
575         select                  \
576         setpwfile               \
577         setsid                  \
578         signal                  \
579         sigset                  \
580         socket                  \
581         strerror                \
582         strstr                  \
583         strrchr                 \
584         strsep                  \
585         strtod                  \
586         strtol                  \
587         strtoul                 \
588         sysconf                 \
589 )
590
591 AC_REPLACE_FUNCS(strdup)
592
593 dnl ----------------------------------------------------------------
594 # Check Configuration
595 OL_SYS_ERRLIST
596
597 dnl ----------------------------------------------------------------
598 dnl Sort out defines
599
600 if test $ol_enable_debug != no ; then
601         LDAP_DEFS="$LDAP_DEFS -DLDAP_DEBUG"
602 fi
603 dnl     if test $ol_enable_syslog != no ; then
604 dnl             LDAP_DEFS="$LDAP_DEFS -DLDAP_SYSLOG"
605 dnl     fi
606 if test $ol_enable_libui = no ; then
607         LDAP_DEFS="$LDAP_DEFS -DNO_USERINTERFACE"
608 fi
609 if test $ol_enable_cache = no ; then
610         LDAP_DEFS="$LDAP_DEFS -DNO_CACHE"
611 fi
612 if test $ol_enable_dns != no ; then
613         LDAP_DEFS="$LDAP_DEFS -DLDAP_DNS"
614 fi
615 if test $ol_enable_referrals != no ; then
616         LDAP_DEFS="$LDAP_DEFS -DLDAP_REFERRALS"
617 fi
618 if test $ol_enable_cldap != no ; then
619         LDAP_DEFS="$LDAP_DEFS -DCLDAP"
620 fi
621
622 if test $ol_enable_aclgroup != no ; then
623         AC_DEFINE(SLAPD_ACLGROUP,1)
624         SLAPD_DEFS="$SLAPD_DEFS -DACLGROUP"
625 fi
626
627 if test $ol_enable_md5 != no ; then
628 dnl     AC_DEFINE(SLAPD_MD5,1)
629         LUTIL_DEFS="$LUTIL_DEFS -DLDAP_MD5"
630 fi
631
632 if test $ol_enable_sha1 != no ; then
633 dnl     AC_DEFINE(SLAPD_SHA1,1)
634         LUTIL_DEFS="$LUTIL_DEFS -DLDAP_SHA1"
635 fi
636
637 if test $ol_enable_phonetic != no ; then
638         AC_DEFINE(SLAPD_PHONETIC,1)
639         SLAPD_DEFS="$SLAPD_DEFS -DSOUNDEX"
640 fi
641
642 if test $ol_enable_rlookups != no ; then
643         AC_DEFINE(SLAPD_RLOOKUPS,1)
644         SLAPD_DEFS="$SLAPD_DEFS -DREVERSE_LOOKUPS"
645 fi
646
647 if test $ol_link_ldbm != no ; then
648 dnl     AC_DEFINE(SLAPD_LDBM,1)
649         BUILD_SLAPD=yes
650         BUILD_LDBM=yes
651         LDBM_DEFS="-DLDAP_LDBM $LDBM_DEFS"
652 fi
653
654 if test $ol_enable_passwd != no ; then
655 dnl     AC_DEFINE(SLAPD_PASSWD,1)
656         BUILD_SLAPD=yes
657         BUILD_PASSWD=yes
658         SLAPD_DEFS="-DLDAP_PASSWD $SLAPD_DEFS"
659 fi
660
661 if test $ol_enable_shell != no ; then
662 dnl     AC_DEFINE(SLAPD_SHELL,1)
663         BUILD_SLAPD=yes
664         BUILD_SHELL=yes
665         SLAPD_DEFS="-DLDAP_SHELL $SLAPD_DEFS"
666 fi
667
668 if test $ol_enable_slurpd != no -a $ol_link_threads != no -a \
669         $BUILD_SLAPD = yes ; then
670         BUILD_SLURPD=yes
671 fi
672
673 dnl ----------------------------------------------------------------
674
675 AC_SUBST(BUILD_LDAPD)
676 AC_SUBST(BUILD_SLAPD)
677   AC_SUBST(BUILD_LDBM)
678   AC_SUBST(BUILD_PASSWD)
679   AC_SUBST(BUILD_SHELL)
680 AC_SUBST(BUILD_SLURPD)
681
682
683 AC_SUBST(LDAP_DEFS)
684 AC_SUBST(LDAP_LIBS)
685 AC_SUBST(LDAPD_DEFS)
686 AC_SUBST(LDAPD_LIBS)
687 AC_SUBST(SLAPD_DEFS)
688 AC_SUBST(SLAPD_LIBS)
689 AC_SUBST(SLURPD_DEFS)
690 AC_SUBST(SLURPD_LIBS)
691 AC_SUBST(LDBM_DEFS)
692 AC_SUBST(LDBM_LIBS)
693 AC_SUBST(LTHREAD_DEFS)
694 AC_SUBST(LTHREAD_LIBS)
695 AC_SUBST(LUTIL_DEFS)
696 AC_SUBST(LUTIL_LIBS)
697
698 dnl ----------------------------------------------------------------
699 dnl final output
700 dnl
701
702 dnl AC_OUTPUT( \
703 dnl contrib/Makefile:build/top.mk:contrib/Makefile.in:build/dir.mk \
704 dnl contrib/saucer/Makefile:build/top.mk:contrib/saucer/Makefile.in:build/rules.mk \
705 dnl contrib/whois++/Makefile:build/top.mk:contrib/whois++/Makefile.in:build/rules.mk \
706 dnl [date > stamp-h])
707
708 AC_OUTPUT( \
709 Makefile:build/top.mk:Makefile.in:build/dir.mk \
710 doc/Makefile:build/top.mk:doc/Makefile.in:build/dir.mk \
711 doc/man/Makefile:build/top.mk:doc/man/Makefile.in:build/dir.mk \
712 doc/man/man1/Makefile:build/top.mk:doc/man/man1/Makefile.in:build/man.mk \
713 doc/man/man3/Makefile:build/top.mk:doc/man/man3/Makefile.in:build/man.mk \
714 doc/man/man5/Makefile:build/top.mk:doc/man/man5/Makefile.in:build/man.mk \
715 doc/man/man8/Makefile:build/top.mk:doc/man/man8/Makefile.in:build/man.mk \
716 clients/Makefile:build/top.mk:clients/Makefile.in:build/dir.mk \
717 clients/finger/Makefile:build/top.mk:clients/finger/Makefile.in:build/rules.mk \
718 clients/fax500/Makefile:build/top.mk:clients/fax500/Makefile.in:build/rules.mk \
719 clients/gopher/Makefile:build/top.mk:clients/gopher/Makefile.in:build/rules.mk \
720 clients/mail500/Makefile:build/top.mk:clients/mail500/Makefile.in:build/rules.mk \
721 clients/rcpt500/Makefile:build/top.mk:clients/rcpt500/Makefile.in:build/rules.mk \
722 clients/ud/Makefile:build/top.mk:clients/ud/Makefile.in:build/rules.mk \
723 clients/tools/Makefile:build/top.mk:clients/tools/Makefile.in:build/rules.mk \
724 include/Makefile:build/top.mk:include/Makefile.in \
725 libraries/Makefile:build/top.mk:libraries/Makefile.in:build/dir.mk      \
726 libraries/libavl/Makefile:build/top.mk:libraries/libavl/Makefile.in:build/lib.mk \
727 libraries/liblber/Makefile:build/top.mk:libraries/liblber/Makefile.in:build/lib.mk \
728 libraries/libldap/Makefile:build/top.mk:libraries/libldap/Makefile.in:build/lib.mk \
729 libraries/libldbm/Makefile:build/top.mk:libraries/libldbm/Makefile.in:build/lib.mk \
730 libraries/libldif/Makefile:build/top.mk:libraries/libldif/Makefile.in:build/lib.mk \
731 libraries/liblthread/Makefile:build/top.mk:libraries/liblthread/Makefile.in:build/lib.mk \
732 libraries/liblutil/Makefile:build/top.mk:libraries/liblutil/Makefile.in:build/lib.mk \
733 servers/Makefile:build/top.mk:servers/Makefile.in:build/dir.mk \
734 servers/ldapd/Makefile:build/top.mk:servers/ldapd/Makefile.in:build/srv.mk \
735 servers/slapd/Makefile:build/top.mk:servers/slapd/Makefile.in:build/srv.mk \
736 servers/slapd/back-ldbm/Makefile:build/top.mk:servers/slapd/back-ldbm/Makefile.in:build/srv.mk \
737 servers/slapd/back-passwd/Makefile:build/top.mk:servers/slapd/back-passwd/Makefile.in:build/srv.mk \
738 servers/slapd/back-shell/Makefile:build/top.mk:servers/slapd/back-shell/Makefile.in:build/srv.mk \
739 servers/slapd/shell-backends/Makefile:build/top.mk:servers/slapd/shell-backends/Makefile.in:build/srv.mk \
740 servers/slapd/tools/Makefile:build/top.mk:servers/slapd/tools/Makefile.in \
741 servers/slurpd/Makefile:build/top.mk:servers/slurpd/Makefile.in:build/srv.mk \
742 tests/Makefile:build/top.mk:tests/Makefile.in \
743 ,[date > stamp-h])