]> git.sur5r.net Git - openldap/blob - configure.in
Add support for manual specification of LDBM and Thread flags.
[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 #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], auto)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 ol_link_threads=no
209 if test $ol_with_threads = auto -o $ol_with_threads = posix ; then
210         AC_CHECK_HEADERS(pthread.h sched.h)
211
212         if test "$ac_cv_header_pthread_h" = yes ; then
213                 OL_POSIX_THREAD_VERSION
214
215                 if test $ol_cv_pthread_version = final ; then
216                         LTHREAD_DEFS="$LTHREAD_DEFS -DPOSIX_THREADS"
217                 elif test $ol_cv_pthread_version = draft4 ; then
218                         LTHREAD_DEFS="$LTHREAD_DEFS -DTHREAD_MIT_PTHREADS"
219                 else
220                         AC_MSG_ERROR([unknown pthread version])
221                 fi
222
223                 # consider threads found
224                 ol_with_threads=found
225
226                 OL_LINUX_THREADS
227
228                 if test $ol_cv_linux_threads = yes ; then
229 dnl                     AC_DEFINE(HAVE_LINUX_THREADS,1)
230                         LTHREAD_DEFS="$LTHREAD_DEFS -DHAVE_LINUX_THREADS"
231                 fi
232
233                 dnl Now the hard part, how to link
234
235                 dnl A few platforms have pthread support in standard libraries
236                 AC_CHECK_FUNC(pthread_create,[ol_link_threads=yes])
237
238                 if test $ol_link_threads = no ; then
239                         dnl try -pthread
240                         AC_CACHE_CHECK([for pthread_create with -pthread],
241                                 [ol_cv_pthread_flag], [
242                                 dnl save the CPPFLAGS
243                                 save_LIBS="$LIBS"
244                                 LIBS="-pthread $LIBS"
245                                 AC_TRY_LINK([#include <pthread.h>],[
246                                         pthread_create((pthread_t*) 0,
247                                                 (pthread_attr_t*) 0, 0, 0);
248                                         ], ol_cv_pthread_flag=yes, ol_cv_pthread_flag=no)
249                                 dnl restore the LIBS
250                                 LIBS="$save_LIBS"
251                         ])
252
253                         if test $ol_cv_pthread_flag = yes ; then
254                                 LTHREAD_LIBS="$LTHREAD_LIBS -pthread"
255                                 ol_link_threads=posix
256                         fi
257                 fi
258
259                 if test $ol_link_threads = no ; then
260                         dnl try -lpthread
261                         save_LIBS="$LIBS"
262                         AC_CHECK_LIB(pthread, pthread_create, [
263                                 ol_link_threads=posix
264                                 LTHREAD_LIBS="$LTHREAD_LIBS -lpthread"])
265                         LIBS="$save_LIBS"
266                 fi
267
268                 if test $ol_link_threads = no ; then
269                         dnl try -lc_r
270                         save_LIBS="$LIBS"
271                         AC_CHECK_LIB(c_r, pthread_create, [
272                                 ol_link_threads=posix
273                                 LTHREAD_LIBS="$LTHREAD_LIBS -lc_r"])
274                         LIBS="$save_LIBS"
275                 fi
276
277                 if test $ol_link_threads = no ; then
278                         dnl try DEC Threads
279                         save_LIBS="$LIBS"
280                         AC_CHECK_LIB(pthread, pthread_create, [
281                                 ol_link_threads=posix
282                                 LTHREAD_DEFS="$LTHREAD_DEFS -DDEC_THREADS"
283                                 LTHREAD_LIBS="$LTHREAD_LIBS -lpthread -lmach -lexc -lc"],,
284                                 [-lmach -lexc -lc])
285                         LIBS="$save_LIBS"
286                 fi
287
288                 if test $ol_link_threads != no ; then
289                         dnl All POSIX Thread (final) implementations should have sched_yield
290                         AC_CHECK_FUNC(sched_yield)
291                 else
292                         AC_MSG_ERROR([could not link with POSIX Threads])
293                 fi
294         fi
295
296         if test $ol_with_threads = posix ; then
297                 AC_MSG_ERROR([could not locate POSIX Threads])
298         fi
299 fi
300
301 if test $ol_with_threads = manual ; then
302         dnl User thinks he can manually configure threads.
303         $ol_link_threads=yes
304
305         AC_MSG_WARN([thread defines and link options must be set manually])
306
307         AC_CHECK_HEADERS(pthread.h sched.h)
308         AC_CHECK_FUNC(sched_yield)
309         OL_LINUX_THREADS
310 fi
311
312 if test $ol_link_threads = no ; then
313         if test $ol_with_threads = yes ; then
314                 AC_MSG_ERROR([no suitable thread support])
315         fi
316
317         if test $ol_with_threads = auto ; then
318                 AC_MSG_WARN([no suitable thread support, disabling threads])
319                 $ol_with_threads = no
320         fi
321
322         LTHREAD_DEFS="-DNO_THREADS"
323         LTHREAD_LIBS=""
324 fi
325
326 ol_link_ldbm=no 
327 if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = db2 ; then
328         OL_BERKELEY_DB2
329
330         if test $ol_cv_berkeley_db2 = yes ; then
331                 ol_link_ldbm=db2
332                 ol_with_ldbm_api=db2
333
334                 LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_DB2"
335
336                 if test $ol_with_ldbm_type = hash ; then
337                         LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_DBHASH"
338                 else
339                         LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_DBBTREE"
340                 fi
341
342                 dnl $ol_cv_lib_db2 should be yes or -ldb
343                 dnl (it could be no, but that would be an error
344                 if test $ol_cv_lib_db2 != yes ; then
345                         LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_db2"
346                 fi
347         fi
348 fi
349
350 if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = db ; then
351         OL_BERKELEY_DB
352
353         if test $ol_cv_berkeley_db = yes ; then
354                 ol_link_ldbm=db
355                 ol_with_ldbm_api=db
356
357                 if test $ac_cv_header_db_185_h = yes ; then
358                         LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_DB2_COMPAT185"
359                 fi
360
361                 if test $ol_with_ldbm_type = hash ; then
362                         LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_DBHASH"
363                 else
364                         LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_DBBTREE"
365                 fi
366
367                 dnl $ol_cv_lib_db should be yes or -ldb
368                 dnl (it could be no, but that would be an error
369                 if test $ol_cv_lib_db != yes ; then
370                         LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_db"
371                 fi
372         fi
373 fi
374
375 if test $ol_with_ldbm_api = manual ; then
376         dnl User thinks he can manually configure LDBM api.
377         $ol_link_ldbm=yes
378
379         AC_MSG_WARN([LDBM defines and link options must be set manually])
380
381         AC_CHECK_HEADERS(db.h db_185.h gdbm.h ndbm.h)
382 fi
383
384 if test $ol_link_ldbm = no -a $ol_with_ldbm_type = btree ; then
385         AC_MSG_WARN(Could not find LDBM with BTREE support);
386         $ol_with_ldbm_api=none
387 fi
388
389 if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = gdbm ; then
390         OL_GDBM
391
392         if test $ol_cv_gdbm = yes ; then
393                 ol_link_ldbm=gdbm
394                 ol_with_ldbm_api=gdbm
395
396                 LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_GDBM"
397
398                 if test $ol_cv_lib_gdbm != yes ; then
399                         LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_gdbm"
400                 fi
401         fi
402 fi
403
404 if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = ndbm ; then
405         OL_NDBM
406
407         if test $ol_cv_ndbm = yes ; then
408                 ol_link_ldbm=ndbm
409                 ol_with_ldbm_api=ndbm
410
411                 if test $ol_with_ldbm_api = ndbm ; then
412                         AC_WARN([Attempting to use NDBM.  Functionality will be limited.])
413                 fi
414
415                 LDBM_DEFS="$LDBM_DEFS -DLDBM_USE_NDBM"
416
417                 if test $ol_cv_lib_ndbm != yes ; then
418                         LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_ndbm"
419                 fi
420         fi
421 fi
422
423 if test $ol_link_ldbm = no -a $ol_enable_ldbm != no ; then
424         AC_MSG_WARN(could not find suitable LDBM backend)
425         if test $ol_enable_ldbm = yes ; then
426                 AC_MSG_ERROR(select appropriate LDBM options or disable)
427         fi
428
429         AC_MSG_WARN(disabling LDBM)
430         $ol_enable_ldbm=no
431 fi
432
433 if test $ol_enable_wrappers = yes ; then
434         AC_CHECK_LIB(wrap, hosts_access,
435                 [have_wrappers=yes], [have_wrappers=no])
436
437         if test $have_wrappers = yes ; then
438 dnl             LIBTCPD="-lwrap"
439 dnl             AC_DEFINE(HAVE_TCPD)
440                 SLAPD_DEFS="$SLAPD_DEFS -DTCP_WRAPPERS"
441                 SLAPD_LIBS="$SLAPD_LIBS -lwrap"
442         else
443                 AC_MSG_WARN(could not find -lwrap)
444                 if test $ol_enable_wrappers = yes ; then
445                         AC_MSG_ERROR(could not find wrappers, select appropriate options or disable)
446                 fi
447
448                 AC_MSG_WARN(disabling wrappers support)
449                 ol_enable_wrappers=no
450         fi
451
452 fi
453
454 # ud needs termcap (should insert check here)
455 LIBTERMCAP="-ltermcap"
456 AC_SUBST(LIBTERMCAP)
457
458 # FreeBSD (and others) have crypt(3) in -lcrypt
459 if test $ol_enable_crypt != no ; then
460         AC_CHECK_FUNC(crypt, [have_crypt=yes], [
461                 AC_CHECK_LIB(crypt, crypt, [LUTIL_LIBS="$LUTIL_LIBS -lcrypt"
462                         have_crypt=yes], [have_crypt=no])])
463
464         if test $have_crypt = yes ; then
465 dnl             AC_DEFINE(SLAPD_CRYPT,1)
466                 LUTIL_DEFS="$LUTIL_DEFS -DLDAP_CRYPT"
467         else
468                 AC_MSG_WARN(could not find crypt)
469                 if test $ol_enable_crypt = yes ; then
470                         AC_MSG_ERROR(could not find crypt, select appropriate options or disable)
471                 fi
472
473                 AC_MSG_WARN(disabling crypt support)
474                 ol_enable_crypt=no
475         fi
476 fi
477
478 dnl ----------------------------------------------------------------
479 dnl Checks for header files.
480 AC_HEADER_STDC
481 AC_HEADER_DIRENT
482 AC_HEADER_SYS_WAIT
483 AC_CHECK_HEADERS( \
484         stddef.h        \
485         fcntl.h         \
486         limits.h        \
487         malloc.h        \
488         sgtty.h         \
489         sys/file.h      \
490         sys/ioctl.h     \
491         sys/time.h      \
492         syslog.h        \
493         termio.h        \
494         unistd.h        \
495 )
496
497 dnl ----------------------------------------------------------------
498 dnl Checks for typedefs, structures, and compiler characteristics.
499 AC_TYPE_GETGROUPS
500 AC_TYPE_MODE_T
501 AC_TYPE_OFF_T
502 AC_TYPE_PID_T
503 AC_TYPE_SIGNAL
504 AC_TYPE_SIZE_T
505 AC_TYPE_UID_T
506 AC_STRUCT_ST_BLKSIZE
507 AC_HEADER_TIME
508 AC_STRUCT_TM
509
510 dnl AC_C_BIGENDIAN
511 AC_C_CONST
512
513 dnl ----------------------------------------------------------------
514 dnl Checks for library functions.
515 AC_FUNC_MEMCMP
516 AC_TYPE_SIGNAL
517 AC_FUNC_STRFTIME
518 AC_FUNC_VPRINTF
519 AC_FUNC_WAIT3
520
521 AC_CHECK_FUNCS(         \
522         gethostname             \
523         gettimeofday    \
524         mktime                  \
525         select                  \
526         socket                  \
527         strdup                  \
528         strerror                \
529         strstr                  \
530         strrchr                 \
531         strtod                  \
532         strtol                  \
533         strtoul                 \
534         strsep                  \
535         memcpy                  \
536 )
537
538 AC_REPLACE_FUNCS(strdup)
539
540 dnl ----------------------------------------------------------------
541 # Check Configuration
542 OL_SYS_ERRLIST
543
544 dnl ----------------------------------------------------------------
545 dnl Sort out defines
546
547 if test $ol_enable_debug != no ; then
548         LDAP_DEFS="$LDAP_DEFS -DLDAP_DEBUG"
549 fi
550 #if test $ol_enable_syslog != no ; then
551 #       LDAP_DEFS="$LDAP_DEFS -DLDAP_SYSLOG"
552 #fi
553 if test $ol_enable_libui = no ; then
554         LDAP_DEFS="$LDAP_DEFS -DNO_USERINTERFACE"
555 fi
556 if test $ol_enable_cache = no ; then
557         LDAP_DEFS="$LDAP_DEFS -DNO_CACHE"
558 fi
559 if test $ol_enable_dns != no ; then
560         LDAP_DEFS="$LDAP_DEFS -DLDAP_DNS"
561 fi
562 if test $ol_enable_referrals != no ; then
563         LDAP_DEFS="$LDAP_DEFS -DLDAP_REFERRALS"
564 fi
565 if test $ol_enable_cldap != no ; then
566         LDAP_DEFS="$LDAP_DEFS -DCLDAP"
567 fi
568
569 if test $ol_enable_aclgroup != no ; then
570         AC_DEFINE(SLAPD_ACLGROUP,1)
571         SLAPD_DEFS="$SLAPD_DEFS -DACLGROUP"
572 fi
573
574 if test $ol_enable_md5 != no ; then
575 dnl     AC_DEFINE(SLAPD_MD5,1)
576         LUTIL_DEFS="$LUTIL_DEFS -DLDAP_MD5"
577 fi
578
579 if test $ol_enable_sha1 != no ; then
580 dnl     AC_DEFINE(SLAPD_SHA1,1)
581         LUTIL_DEFS="$LUTIL_DEFS -DLDAP_SHA1"
582 fi
583
584 if test $ol_enable_phonetic != no ; then
585         AC_DEFINE(SLAPD_PHONETIC,1)
586         SLAPD_DEFS="$SLAPD_DEFS -DSOUNDEX"
587 fi
588
589 if test $ol_enable_rlookups != no ; then
590         AC_DEFINE(SLAPD_RLOOKUPS,1)
591         SLAPD_DEFS="$SLAPD_DEFS -DREVERSE_LOOKUPS"
592 fi
593
594 if test $ol_link_ldbm != no ; then
595 dnl     AC_DEFINE(SLAPD_LDBM,1)
596         BUILD_SLAPD=yes
597         BUILD_LDBM=yes
598         LDBM_DEFS="-DLDAP_LDBM $LDBM_DEFS"
599 fi
600
601 if test $ol_enable_passwd != no ; then
602 dnl     AC_DEFINE(SLAPD_PASSWD,1)
603         BUILD_SLAPD=yes
604         BUILD_PASSWD=yes
605         SLAPD_DEFS="-DLDAP_PASSWD $SLAPD_DEFS"
606 fi
607
608 if test $ol_enable_shell != no ; then
609 dnl     AC_DEFINE(SLAPD_SHELL,1)
610         BUILD_SLAPD=yes
611         BUILD_SHELL=yes
612         SLAPD_DEFS="-DLDAP_SHELL $SLAPD_DEFS"
613 fi
614
615 if test $ol_enable_slurpd != no -a $ol_link_threads != no -a \
616         $BUILD_SLAPD = yes ; then
617         BUILD_SLURPD=yes
618 fi
619
620 dnl ----------------------------------------------------------------
621
622 AC_SUBST(BUILD_LDAPD)
623 AC_SUBST(BUILD_SLAPD)
624   AC_SUBST(BUILD_LDBM)
625   AC_SUBST(BUILD_PASSWD)
626   AC_SUBST(BUILD_SHELL)
627 AC_SUBST(BUILD_SLURPD)
628
629
630 AC_SUBST(LDAP_DEFS)
631 AC_SUBST(LDAP_LIBS)
632 AC_SUBST(LDAPD_DEFS)
633 AC_SUBST(LDAPD_LIBS)
634 AC_SUBST(SLAPD_DEFS)
635 AC_SUBST(SLAPD_LIBS)
636 AC_SUBST(SLURPD_DEFS)
637 AC_SUBST(SLURPD_LIBS)
638 AC_SUBST(LDBM_DEFS)
639 AC_SUBST(LDBM_LIBS)
640 AC_SUBST(LTHREAD_DEFS)
641 AC_SUBST(LTHREAD_LIBS)
642 AC_SUBST(LUTIL_DEFS)
643 AC_SUBST(LUTIL_LIBS)
644
645 dnl ----------------------------------------------------------------
646 dnl final output
647 dnl
648
649 dnl AC_OUTPUT( \
650 dnl contrib/Makefile:build/top.mk:contrib/Makefile.in:build/dir.mk \
651 dnl contrib/saucer/Makefile:build/top.mk:contrib/saucer/Makefile.in:build/rules.mk \
652 dnl contrib/whois++/Makefile:build/top.mk:contrib/whois++/Makefile.in:build/rules.mk \
653 dnl [date > stamp-h])
654
655 AC_OUTPUT( \
656 Makefile:build/top.mk:Makefile.in:build/dir.mk \
657 doc/Makefile:build/top.mk:doc/Makefile.in:build/dir.mk \
658 doc/man/Makefile:build/top.mk:doc/man/Makefile.in:build/dir.mk \
659 doc/man/man1/Makefile:build/top.mk:doc/man/man1/Makefile.in:build/man.mk \
660 doc/man/man3/Makefile:build/top.mk:doc/man/man3/Makefile.in:build/man.mk \
661 doc/man/man5/Makefile:build/top.mk:doc/man/man5/Makefile.in:build/man.mk \
662 doc/man/man8/Makefile:build/top.mk:doc/man/man8/Makefile.in:build/man.mk \
663 clients/Makefile:build/top.mk:clients/Makefile.in:build/dir.mk \
664 clients/finger/Makefile:build/top.mk:clients/finger/Makefile.in:build/rules.mk \
665 clients/fax500/Makefile:build/top.mk:clients/fax500/Makefile.in:build/rules.mk \
666 clients/gopher/Makefile:build/top.mk:clients/gopher/Makefile.in:build/rules.mk \
667 clients/mail500/Makefile:build/top.mk:clients/mail500/Makefile.in:build/rules.mk \
668 clients/rcpt500/Makefile:build/top.mk:clients/rcpt500/Makefile.in:build/rules.mk \
669 clients/ud/Makefile:build/top.mk:clients/ud/Makefile.in:build/rules.mk \
670 clients/tools/Makefile:build/top.mk:clients/tools/Makefile.in:build/rules.mk \
671 include/Makefile:build/top.mk:include/Makefile.in \
672 libraries/Makefile:build/top.mk:libraries/Makefile.in:build/dir.mk      \
673 libraries/libavl/Makefile:build/top.mk:libraries/libavl/Makefile.in:build/lib.mk \
674 libraries/liblber/Makefile:build/top.mk:libraries/liblber/Makefile.in:build/lib.mk \
675 libraries/libldap/Makefile:build/top.mk:libraries/libldap/Makefile.in:build/lib.mk \
676 libraries/libldbm/Makefile:build/top.mk:libraries/libldbm/Makefile.in:build/lib.mk \
677 libraries/libldif/Makefile:build/top.mk:libraries/libldif/Makefile.in:build/lib.mk \
678 libraries/liblthread/Makefile:build/top.mk:libraries/liblthread/Makefile.in:build/lib.mk \
679 libraries/liblutil/Makefile:build/top.mk:libraries/liblutil/Makefile.in:build/lib.mk \
680 servers/Makefile:build/top.mk:servers/Makefile.in:build/dir.mk \
681 servers/ldapd/Makefile:build/top.mk:servers/ldapd/Makefile.in:build/srv.mk \
682 servers/slapd/Makefile:build/top.mk:servers/slapd/Makefile.in:build/srv.mk \
683 servers/slapd/back-ldbm/Makefile:build/top.mk:servers/slapd/back-ldbm/Makefile.in:build/srv.mk \
684 servers/slapd/back-passwd/Makefile:build/top.mk:servers/slapd/back-passwd/Makefile.in:build/srv.mk \
685 servers/slapd/back-shell/Makefile:build/top.mk:servers/slapd/back-shell/Makefile.in:build/srv.mk \
686 servers/slapd/shell-backends/Makefile:build/top.mk:servers/slapd/shell-backends/Makefile.in:build/srv.mk \
687 servers/slapd/tools/Makefile:build/top.mk:servers/slapd/tools/Makefile.in \
688 servers/slurpd/Makefile:build/top.mk:servers/slurpd/Makefile.in:build/srv.mk \
689 tests/Makefile:build/top.mk:tests/Makefile.in \
690 ,[date > stamp-h])