]> git.sur5r.net Git - openldap/blob - build/openldap.m4
Rework DB_THREAD test
[openldap] / build / openldap.m4
1 dnl $OpenLDAP$
2 dnl
3 dnl Copyright 1998-2000 The OpenLDAP Foundation,  All Rights Reserved.
4 dnl COPYING RESTRICTIONS APPLY, See COPYRIGHT file
5 dnl
6 dnl OpenLDAP Autoconf Macros
7 dnl
8 dnl --------------------------------------------------------------------
9 dnl Restricted form of AC_ARG_ENABLE that limits user options
10 dnl
11 dnl $1 = option name
12 dnl $2 = help-string
13 dnl $3 = default value  (auto)
14 dnl $4 = allowed values (auto yes no)
15 AC_DEFUN([OL_ARG_ENABLE], [# OpenLDAP --enable-$1
16         AC_ARG_ENABLE($1,changequote(<,>)<$2 [>ifelse($3,,auto,$3)<]>changequote([,]),[
17         ol_arg=invalid
18         for ol_val in ifelse($4,,[auto yes no],[$4]) ; do
19                 if test "$enableval" = "$ol_val" ; then
20                         ol_arg="$ol_val"
21                 fi
22         done
23         if test "$ol_arg" = "invalid" ; then
24                 AC_MSG_ERROR(bad value $enableval for --enable-$1)
25         fi
26         ol_enable_$1="$ol_arg"
27 ],
28 [       ol_enable_$1=ifelse($3,,"auto","$3")])dnl
29 dnl AC_VERBOSE(OpenLDAP -enable-$1 $ol_enable_$1)
30 # end --enable-$1
31 ])dnl
32 dnl
33 dnl --------------------------------------------------------------------
34 dnl Restricted form of AC_ARG_WITH that limits user options
35 dnl
36 dnl $1 = option name
37 dnl $2 = help-string
38 dnl $3 = default value (no)
39 dnl $4 = allowed values (yes or no)
40 AC_DEFUN([OL_ARG_WITH], [# OpenLDAP --with-$1
41         AC_ARG_WITH($1,changequote(<,>)<$2 [>ifelse($3,,yes,$3)<]>changequote([,]),[
42         ol_arg=invalid
43         for ol_val in ifelse($4,,[yes no],[$4]) ; do
44                 if test "$withval" = "$ol_val" ; then
45                         ol_arg="$ol_val"
46                 fi
47         done
48         if test "$ol_arg" = "invalid" ; then
49                 AC_MSG_ERROR(bad value $withval for --with-$1)
50         fi
51         ol_with_$1="$ol_arg"
52 ],
53 [       ol_with_$1=ifelse($3,,"no","$3")])dnl
54 dnl AC_VERBOSE(OpenLDAP --with-$1 $ol_with_$1)
55 # end --with-$1
56 ])dnl
57 dnl
58 dnl ====================================================================
59 dnl
60 AC_DEFUN(AC_COMPILE_CHECK_SIZEOF,
61 [changequote(<<, >>)dnl 
62 dnl The name to #define. 
63 define(<<AC_TYPE_NAME>>, translit(sizeof_$1, [a-z *], [A-Z_P]))dnl 
64 dnl The cache variable name. 
65 define(<<AC_CV_NAME>>, translit(ac_cv_sizeof_$1, [ *], [_p]))dnl 
66 changequote([, ])dnl 
67 AC_MSG_CHECKING(size of $1) 
68 AC_CACHE_VAL(AC_CV_NAME, 
69 [for ac_size in 4 8 1 2 16 $2 ; do # List sizes in rough order of prevalence. 
70   AC_TRY_COMPILE([#include "confdefs.h" 
71 #include <sys/types.h> 
72 $2 
73 ], [switch (0) case 0: case (sizeof ($1) == $ac_size):;], AC_CV_NAME=$ac_size) 
74   if test x$AC_CV_NAME != x ; then break; fi 
75 done 
76 ]) 
77 if test x$AC_CV_NAME = x ; then 
78   AC_MSG_ERROR([cannot determine a size for $1]) 
79 fi 
80 AC_MSG_RESULT($AC_CV_NAME) 
81 AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME, [The number of bytes in type $1]) 
82 undefine([AC_TYPE_NAME])dnl 
83 undefine([AC_CV_NAME])dnl 
84 ])
85 dnl ====================================================================
86 dnl check if hard links are supported.
87 dnl
88 AC_DEFUN([OL_PROG_LN_H], [# test for ln hardlink support
89 AC_MSG_CHECKING(whether ln works)
90 AC_CACHE_VAL(ol_cv_prog_LN_H,
91 [rm -f conftest.src conftest.dst
92 echo "conftest" > conftest.src
93 if ln conftest.src conftest.dst 2>/dev/null
94 then
95   ol_cv_prog_LN_H="ln"
96 else
97   ol_cv_prog_LN_H="cp"
98 fi
99 rm -f conftest.src conftest.dst
100 ])dnl
101 LN_H="$ol_cv_prog_LN_H"
102 if test "$ol_cv_prog_LN_H" = "ln"; then
103         AC_MSG_RESULT(yes)
104 else
105         AC_MSG_RESULT(no)
106 fi
107 AC_SUBST(LN_H)dnl
108 ])dnl
109 dnl
110 dnl ====================================================================
111 dnl Check for dependency generation flag
112 AC_DEFUN([OL_MKDEPEND], [# test for make depend flag
113 OL_MKDEP=
114 OL_MKDEP_FLAGS=
115 if test -z "${MKDEP}"; then
116         OL_MKDEP="${CC-cc}"
117         if test -z "${MKDEP_FLAGS}"; then
118                 AC_CACHE_CHECK([for ${OL_MKDEP} depend flag], ol_cv_mkdep, [
119                         ol_cv_mkdep=no
120                         for flag in "-M" "-xM"; do
121                                 cat > conftest.c <<EOF
122  noCode;
123 EOF
124                                 if AC_TRY_COMMAND($OL_MKDEP $flag conftest.c) \
125                                         | egrep '^conftest\.'"${ac_objext}" >/dev/null 2>&1
126                                 then
127                                         if test ! -f conftest."${ac_object}" ; then
128                                                 ol_cv_mkdep=$flag
129                                                 OL_MKDEP_FLAGS="$flag"
130                                                 break
131                                         fi
132                                 fi
133                         done
134                         rm -f conftest*
135                 ])
136         else
137                 cc_cv_mkdep=yes
138                 OL_MKDEP_FLAGS="${MKDEP_FLAGS}"
139         fi
140 else
141         cc_cv_mkdep=yes
142         OL_MKDEP="${MKDEP}"
143         OL_MKDEP_FLAGS="${MKDEP_FLAGS}"
144 fi
145 AC_SUBST(OL_MKDEP)
146 AC_SUBST(OL_MKDEP_FLAGS)
147 ])
148 dnl
149 dnl ====================================================================
150 dnl Check if system uses EBCDIC instead of ASCII
151 AC_DEFUN([OL_CPP_EBCDIC], [# test for EBCDIC
152 AC_CACHE_CHECK([for EBCDIC],ol_cv_cpp_ebcdic,[
153         AC_TRY_CPP([
154 #if !('M' == 0xd4)
155 #include <__ASCII__/generate_error.h>
156 #endif
157 ],
158         [ol_cv_cpp_ebcdic=yes],
159         [ol_cv_cpp_ebcdic=no])])
160 if test $ol_cv_cpp_ebcdic = yes ; then
161         AC_DEFINE(HAVE_EBCDIC,1, [define if system uses EBCDIC instead of ASCII])
162 fi
163 ])
164 dnl
165 dnl --------------------------------------------------------------------
166 dnl OpenLDAP version of STDC header check w/ EBCDIC support
167 AC_DEFUN(OL_HEADER_STDC,
168 [AC_REQUIRE_CPP()dnl
169 AC_REQUIRE([OL_CPP_EBCDIC])dnl
170 AC_CACHE_CHECK([for ANSI C header files], ol_cv_header_stdc,
171 [AC_TRY_CPP([#include <stdlib.h>
172 #include <stdarg.h>
173 #include <string.h>
174 #include <float.h>], ol_cv_header_stdc=yes, ol_cv_header_stdc=no)
175
176 if test $ol_cv_header_stdc = yes; then
177   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
178 AC_EGREP_HEADER(memchr, string.h, , ol_cv_header_stdc=no)
179 fi
180
181 if test $ol_cv_header_stdc = yes; then
182   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
183 AC_EGREP_HEADER(free, stdlib.h, , ol_cv_header_stdc=no)
184 fi
185
186 if test $ol_cv_header_stdc = yes; then
187   # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
188 AC_TRY_RUN([#include <ctype.h>
189 #ifndef HAVE_EBCDIC
190 #       define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
191 #       define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
192 #else
193 #       define ISLOWER(c) (('a' <= (c) && (c) <= 'i') \
194                 || ('j' <= (c) && (c) <= 'r') \
195                 || ('s' <= (c) && (c) <= 'z'))
196 #       define TOUPPER(c)       (ISLOWER(c) ? ((c) | 0x40) : (c))
197 #endif
198 #define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
199 int main () { int i; for (i = 0; i < 256; i++)
200 if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
201 exit (0); }
202 ], , ol_cv_header_stdc=no, :)
203 fi])
204 if test $ol_cv_header_stdc = yes; then
205   AC_DEFINE(STDC_HEADERS)
206 fi
207 ac_cv_header_stdc=disable
208 ])
209 dnl
210 dnl ====================================================================
211 dnl Check if struct passwd has pw_gecos
212 AC_DEFUN([OL_STRUCT_PASSWD_PW_GECOS], [# test for pw_gecos in struct passwd
213 AC_CACHE_CHECK([struct passwd for pw_gecos],ol_cv_struct_passwd_pw_gecos,[
214         AC_TRY_COMPILE([#include <pwd.h>],[
215         struct passwd pwd;
216         pwd.pw_gecos = pwd.pw_name;
217 ],
218         [ol_cv_struct_passwd_pw_gecos=yes],
219         [ol_cv_struct_passwd_pw_gecos=no])])
220 if test $ol_cv_struct_passwd_pw_gecos = yes ; then
221         AC_DEFINE(HAVE_PW_GECOS,1, [define if struct passwd has pw_gecos])
222 fi
223 ])
224 dnl
225 dnl --------------------------------------------------------------------
226 dnl Check if struct passwd has pw_passwd
227 AC_DEFUN([OL_STRUCT_PASSWD_PW_PASSWD], [# test for pw_passwd in struct passwd
228 AC_CACHE_CHECK([struct passwd for pw_passwd],ol_cv_struct_passwd_pw_passwd,[
229         AC_TRY_COMPILE([#include <pwd.h>],[
230         struct passwd pwd;
231         pwd.pw_passwd = pwd.pw_name;
232 ],
233         [ol_cv_struct_passwd_pw_passwd=yes],
234         [ol_cv_struct_passwd_pw_passwd=no])])
235 if test $ol_cv_struct_passwd_pw_passwd = yes ; then
236         AC_DEFINE(HAVE_PW_PASSWD,1, [define if struct passwd has pw_passwd])
237 fi
238 ])
239 dnl
240 dnl ====================================================================
241 dnl Berkeley DB macros
242 dnl
243 dnl --------------------------------------------------------------------
244 dnl Try to link
245 AC_DEFUN([OL_BERKELEY_DB_TRY],
246 [if test $ol_cv_lib_db = no ; then
247         AC_CACHE_CHECK([for Berkeley DB link (]ifelse($2,,default,$2)[)],[$1],
248 [
249         ol_DB_LIB=ifelse($2,,,$2)
250         ol_LIBS=$LIBS
251         LIBS="$ol_DB_LIB $LIBS"
252
253         AC_TRY_LINK([
254 #ifdef HAVE_DB_185_H
255 # include <db_185.h>
256 #else
257 # include <db.h>
258 #endif
259
260 #ifndef DB_VERSION_MAJOR
261 # define DB_VERSION_MAJOR 1
262 #endif
263
264 #ifndef NULL
265 #define NULL ((void*)0)
266 #endif
267 ],[
268 #if DB_VERSION_MAJOR > 1
269         {
270                 char *version;
271                 int major, minor, patch;
272
273                 version = db_version( &major, &minor, &patch );
274
275                 if( major != DB_VERSION_MAJOR ||
276                         minor < DB_VERSION_MINOR )
277                 {
278                         printf("Berkeley DB version mismatch\n"
279                                 "\texpected: %s\n\tgot: %s\n",
280                                 DB_VERSION_STRING, version);
281                         return 1;
282                 }
283         }
284 #endif
285
286 #if DB_VERSION_MAJOR > 2
287         db_env_create( NULL, 0 );
288 #elif DB_VERSION_MAJOR > 1
289         db_appexit( NULL );
290 #else
291         (void) dbopen( NULL, 0, 0, 0, NULL);
292 #endif
293 ],[$1=yes],[$1=no])
294
295         LIBS="$ol_LIBS"
296 ])
297
298         if test $$1 = yes ; then
299                 ol_cv_lib_db=ifelse($2,,yes,$2)
300         fi
301 fi
302 ])
303 dnl
304 dnl --------------------------------------------------------------------
305 dnl Try to locate appropriate library
306 AC_DEFUN([OL_BERKELEY_DB_LINK],
307 [ol_cv_lib_db=no
308 OL_BERKELEY_DB_TRY(ol_cv_db_none)
309 OL_BERKELEY_DB_TRY(ol_cv_db_db,[-ldb])
310 OL_BERKELEY_DB_TRY(ol_cv_db_db3,[-ldb3])
311 OL_BERKELEY_DB_TRY(ol_cv_db_db2,[-ldb2])
312 OL_BERKELEY_DB_TRY(ol_cv_db_db1,[-ldb1])
313 ])
314 dnl
315 dnl --------------------------------------------------------------------
316 dnl Check if Berkeley DB supports DB_THREAD
317 AC_DEFUN([OL_BERKELEY_DB_THREAD],
318 [AC_CACHE_CHECK([for Berkeley DB thread support], [ol_cv_berkeley_db_thread], [
319         ol_LIBS="$LIBS"
320         if test $ol_cv_lib_db != yes ; then
321                 LIBS="$ol_cv_lib_db"
322         fi
323
324         AC_TRY_RUN([
325 #ifdef HAVE_DB_185_H
326         choke me;
327 #else
328 #include <db.h>
329 #endif
330 #ifndef NULL
331 #define NULL ((void *)0)
332 #endif
333 main()
334 {
335         int rc;
336         u_int32_t flags = DB_CREATE | DB_INIT_CDB | DB_INIT_MPOOL |
337 #ifdef DB_PRIVATE
338                 DB_PRIVATE |
339 #endif
340 #ifdef DB_MPOOL_PRIVATE
341                 DB_MPOOL_PRIVATE |
342 #endif
343                 DB_THREAD;
344
345 #if DB_VERSION_MAJOR > 2
346         DB_ENV *env = NULL;
347
348         rc = db_env_create( &env, 0 );
349
350         if( rc ) {
351                 printf("BerkeleyDB: %s\n", db_strerror(rc) );
352                 return rc;
353         }
354
355 #ifdef DB_CDB_ALLDB
356         rc = env->set_flags( env, DB_CDB_ALLDB, 1 );
357
358         if( rc ) {
359                 printf("BerkeleyDB: %s\n", db_strerror(rc) );
360                 return rc;
361         }
362 #endif
363
364 #if (DB_VERSION_MAJOR > 3) || (DB_VERSION_MINOR >= 1)
365         rc = env->open( env, NULL, flags, 0 );
366 #else
367         rc = env->open( env, NULL, NULL, flags, 0 );
368 #endif
369
370         if ( rc == 0 ) {
371                 rc = env->close( env, 0 );
372         }
373
374         if( rc ) {
375                 printf("BerkeleyDB: %s\n", db_strerror(rc) );
376                 return rc;
377         }
378
379 #else
380         DB_ENV env;
381         memset( &env, '\0', sizeof(env) );
382
383         rc = db_appinit( NULL, NULL, &env, flags );
384
385         if( rc == 0 ) {
386                 db_appexit( &env );
387         }
388
389         unlink("__db_mpool.share");
390         unlink("__db_lock.share");
391 #endif
392
393         return rc;
394 }],
395         [ol_cv_berkeley_db_thread=yes],
396         [ol_cv_berkeley_db_thread=no],
397         [ol_cv_berkeley_db_thread=cross])
398
399         LIBS="$ol_LIBS"
400
401         if test $ol_cv_berkeley_db_thread != no ; then
402                 AC_DEFINE(HAVE_BERKELEY_DB_THREAD, 1,
403                         [define if Berkeley DB has DB_THREAD support])
404         fi
405 ])])dnl
406 dnl
407 dnl --------------------------------------------------------------------
408 dnl Find any DB
409 AC_DEFUN([OL_BERKELEY_DB],
410 [ol_cv_berkeley_db=no
411 AC_CHECK_HEADERS(db.h)
412 if test $ac_cv_header_db_h = yes; then
413         OL_BERKELEY_DB_LINK
414         if test "$ol_cv_lib_db" != no ; then
415                 ol_cv_berkeley_db=yes
416                 OL_BERKELEY_DB_THREAD
417         fi
418 fi
419 ])
420 dnl
421 dnl --------------------------------------------------------------------
422 dnl Find old Berkeley DB 1.85/1.86
423 AC_DEFUN([OL_BERKELEY_COMPAT_DB],
424 [ol_cv_berkeley_db=no
425 AC_CHECK_HEADERS(db_185.h db.h)
426 if test $ac_cv_header_db_185_h = yes -o $ac_cv_header_db_h = yes; then
427         AC_CACHE_CHECK([if Berkeley DB header compatibility], [ol_cv_header_db1],[
428                 AC_EGREP_CPP(__db_version_1,[
429 #if HAVE_DB_185_H
430 #       include <db_185.h>
431 #else
432 #       include <db.h>
433 #endif
434
435  /* this check could be improved */
436 #ifndef DB_VERSION_MAJOR
437 #       define DB_VERSION_MAJOR 1
438 #endif
439
440 #if DB_VERSION_MAJOR == 1 
441         __db_version_1
442 #endif
443 ],      [ol_cv_header_db1=yes], [ol_cv_header_db1=no])])
444
445         if test ol_cv_header_db1=yes ; then
446                 OL_BERKELEY_DB_LINK
447                 if test "$ol_cv_lib_db" != no ; then
448                         ol_cv_berkeley_db=yes
449                 fi
450         fi
451 fi
452 ])
453 dnl
454 dnl ====================================================================
455 dnl Check if GDBM library exists
456 dnl Check for gdbm_open in standard libraries or -lgdbm
457 dnl
458 dnl defines ol_cv_lib_gdbm to 'yes' or '-lgdbm' or 'no'
459 dnl             'yes' implies gdbm_open is in $LIBS
460 dnl
461 dnl uses:
462 dnl             AC_CHECK_FUNC(gdbm_open)
463 dnl             AC_CHECK_LIB(gdbm,gdbm_open)
464 dnl
465 AC_DEFUN([OL_LIB_GDBM],
466 [AC_CACHE_CHECK(for GDBM library, [ol_cv_lib_gdbm],
467 [       ol_LIBS="$LIBS"
468         AC_CHECK_FUNC(gdbm_open,[ol_cv_lib_gdbm=yes], [
469                 AC_CHECK_LIB(gdbm,gdbm_open,[ol_cv_lib_gdbm=-lgdbm],[ol_cv_lib_gdbm=no])
470         ])
471         LIBS="$ol_LIBS"
472 ])
473 ])dnl
474 dnl
475 dnl --------------------------------------------------------------------
476 dnl Check if GDBM exists
477 dnl
478 dnl defines ol_cv_gdbm to 'yes' or 'no'
479 dnl 
480 dnl uses:
481 dnl             OL_LIB_GDBM
482 dnl             AC_CHECK_HEADERS(gdbm.h)
483 dnl
484 AC_DEFUN([OL_GDBM],
485 [AC_REQUIRE([OL_LIB_GDBM])
486  AC_CHECK_HEADERS(gdbm.h)
487  AC_CACHE_CHECK(for db, [ol_cv_gdbm], [
488         if test $ol_cv_lib_gdbm = no -o $ac_cv_header_gdbm_h = no ; then
489                 ol_cv_gdbm=no
490         else
491                 ol_cv_gdbm=yes
492         fi
493 ])
494  if test $ol_cv_gdbm = yes ; then
495         AC_DEFINE(HAVE_GDBM,1, [define if GNU DBM is available])
496  fi
497 ])dnl
498 dnl
499 dnl ====================================================================
500 dnl Check if MDBM library exists
501 dnl Check for mdbm_open in standard libraries or -lmdbm
502 dnl
503 dnl defines ol_cv_lib_mdbm to 'yes' or '-lmdbm' or 'no'
504 dnl             'yes' implies mdbm_open is in $LIBS
505 dnl
506 dnl uses:
507 dnl             AC_CHECK_FUNC(mdbm_set_chain)
508 dnl             AC_CHECK_LIB(mdbm,mdbm_set_chain)
509 dnl
510 AC_DEFUN([OL_LIB_MDBM],
511 [AC_CACHE_CHECK(for MDBM library, [ol_cv_lib_mdbm],
512 [       ol_LIBS="$LIBS"
513         AC_CHECK_FUNC(mdbm_set_chain,[ol_cv_lib_mdbm=yes], [
514                 AC_CHECK_LIB(mdbm,mdbm_set_chain,[ol_cv_lib_mdbm=-lmdbm],[ol_cv_lib_mdbm=no])
515         ])
516         LIBS="$ol_LIBS"
517 ])
518 ])dnl
519 dnl
520 dnl --------------------------------------------------------------------
521 dnl Check if MDBM exists
522 dnl
523 dnl defines ol_cv_mdbm to 'yes' or 'no'
524 dnl 
525 dnl uses:
526 dnl             OL_LIB_MDBM
527 dnl             AC_CHECK_HEADERS(mdbm.h)
528 dnl
529 AC_DEFUN([OL_MDBM],
530 [AC_REQUIRE([OL_LIB_MDBM])
531  AC_CHECK_HEADERS(mdbm.h)
532  AC_CACHE_CHECK(for db, [ol_cv_mdbm], [
533         if test $ol_cv_lib_mdbm = no -o $ac_cv_header_mdbm_h = no ; then
534                 ol_cv_mdbm=no
535         else
536                 ol_cv_mdbm=yes
537         fi
538 ])
539  if test $ol_cv_mdbm = yes ; then
540         AC_DEFINE(HAVE_MDBM,1, [define if MDBM is available])
541  fi
542 ])dnl
543 dnl
544 dnl ====================================================================
545 dnl Check if NDBM library exists
546 dnl Check for dbm_open in standard libraries or -lndbm or -ldbm
547 dnl
548 dnl defines ol_cv_lib_ndbm to 'yes' or '-lndbm' or -ldbm or 'no'
549 dnl             'yes' implies ndbm_open is in $LIBS
550 dnl
551 dnl uses:
552 dnl             AC_CHECK_FUNC(dbm_open)
553 dnl             AC_CHECK_LIB(ndbm,dbm_open)
554 dnl             AC_CHECK_LIB(dbm,dbm_open)
555 dnl
556 dnl restrictions:
557 dnl             should also check SVR4 case: dbm_open() in -lucb but that
558 dnl             would requiring dealing with -L/usr/ucblib
559 dnl
560 AC_DEFUN([OL_LIB_NDBM],
561 [AC_CACHE_CHECK(for NDBM library, [ol_cv_lib_ndbm],
562 [       ol_LIBS="$LIBS"
563         AC_CHECK_FUNC(dbm_open,[ol_cv_lib_ndbm=yes], [
564                 AC_CHECK_LIB(ndbm,dbm_open,[ol_cv_lib_ndbm=-lndbm], [
565                         AC_CHECK_LIB(dbm,dbm_open,[ol_cv_lib_ndbm=-ldbm],
566                                 [ol_cv_lib_ndbm=no])dnl
567                 ])
568         ])
569         LIBS="$ol_LIBS"
570 ])
571 ])dnl
572 dnl
573 dnl --------------------------------------------------------------------
574 dnl Check if NDBM exists
575 dnl
576 dnl defines ol_cv_ndbm to 'yes' or 'no'
577 dnl 
578 dnl uses:
579 dnl             OL_LIB_NDBM
580 dnl             AC_CHECK_HEADERS(ndbm.h)
581 dnl
582 dnl restrictions:
583 dnl             Doesn't handle SVR4 case (see above)
584 dnl
585 AC_DEFUN([OL_NDBM],
586 [AC_REQUIRE([OL_LIB_NDBM])
587  AC_CHECK_HEADERS(ndbm.h)
588  AC_CACHE_CHECK(for db, [ol_cv_ndbm], [
589         if test $ol_cv_lib_ndbm = no -o $ac_cv_header_ndbm_h = no ; then
590                 ol_cv_ndbm=no
591         else
592                 ol_cv_ndbm=yes
593         fi
594 ])
595  if test $ol_cv_ndbm = yes ; then
596         AC_DEFINE(HAVE_NDBM,1, [define if NDBM is available])
597  fi
598 ])dnl
599 dnl
600 dnl ====================================================================
601 dnl Check POSIX Thread version 
602 dnl
603 dnl defines ol_cv_posix_version to 'final' or 'draft' or 'unknown'
604 dnl     'unknown' implies that the version could not be detected
605 dnl             or that pthreads.h does exist.  Existance of pthreads.h
606 dnl             should be tested separately.
607 dnl
608 AC_DEFUN([OL_POSIX_THREAD_VERSION],
609 [AC_CACHE_CHECK([POSIX thread version],[ol_cv_pthread_version],[
610         AC_EGREP_CPP(pthread_version_final,[
611 #               include <pthread.h>
612                 /* this check could be improved */
613 #               ifdef PTHREAD_ONCE_INIT
614                         pthread_version_final;
615 #               endif
616         ], ol_pthread_final=yes, ol_pthread_final=no)
617
618         AC_EGREP_CPP(pthread_version_draft4,[
619 #               include <pthread.h>
620                 /* this check could be improved */
621 #               ifdef pthread_once_init
622                         pthread_version_draft4;
623 #               endif
624         ], ol_pthread_draft4=yes, ol_pthread_draft4=no)
625
626         if test $ol_pthread_final = yes -a $ol_pthread_draft4 = no; then
627                 ol_cv_pthread_version=final
628         elif test $ol_pthread_final = no -a $ol_pthread_draft4 = yes; then
629                 ol_cv_pthread_version=draft4
630         else
631                 ol_cv_pthread_version=unknown
632         fi
633 ])
634 ])dnl
635 dnl
636 dnl --------------------------------------------------------------------
637 AC_DEFUN([OL_PTHREAD_TEST_INCLUDES],
638 [/* pthread test headers */
639 #include <pthread.h>
640 #ifndef NULL
641 #define NULL (void*)0
642 #endif
643
644 static void *task(p)
645         void *p;
646 {
647         return (void *) (p == NULL);
648 }
649 ])
650 AC_DEFUN([OL_PTHREAD_TEST_FUNCTION],[
651         /* pthread test function */
652         pthread_t t;
653         int status;
654 #if HAVE_PTHREADS_FINAL && defined(PTHREAD_CREATE_UNDETACHED)
655         /* This system (e.g. AIX) defaults detached; must override */
656         pthread_attr_t attr;
657
658         status = pthread_attr_init(&attr);
659         if( status ) exit( status );
660
661         status = pthread_attr_setdetachstate(&attr,PTHREAD_CREATE_UNDETACHED);
662         if( status ) exit( status );
663
664 #       define  ATTR    &attr
665 #elif defined( HAVE_PTHREADS_D4 )
666 #       define  ATTR    pthread_attr_default
667 #else
668 #       define  ATTR    NULL
669 #endif
670
671         /* make sure pthread_create() isn't just a stub */
672         status = pthread_create(&t, ATTR, task, NULL);
673         if( status ) exit( status );
674
675         /* give the thread a chance to complete...
676      * it should remain joinable and hence detachable
677          */
678         sleep( 1 );
679
680         /* make sure pthread_detach() isn't just a stub */
681 #if HAVE_PTHREADS_D4
682         status = pthread_detach( &t );
683 #else
684         status = pthread_detach( t );
685 #endif
686
687 #ifdef HAVE_LINUX_THREADS
688         pthread_kill_other_threads_np();
689 #endif
690
691         exit( status );
692 ])
693
694 AC_DEFUN([OL_PTHREAD_TEST_PROGRAM],
695 [OL_PTHREAD_TEST_INCLUDES
696
697 int main(argc, argv)
698         int argc;
699         char **argv;
700 {
701 OL_PTHREAD_TEST_FUNCTION
702 }
703 ])
704 dnl --------------------------------------------------------------------
705 AC_DEFUN([OL_PTHREAD_TRY], [# Pthread try link: $1 ($2)
706 if test "$ol_link_threads" = no ; then
707         # try $1
708         AC_CACHE_CHECK([for pthread link with $1], [$2], [
709                 # save the flags
710                 ol_LIBS="$LIBS"
711                 LIBS="$1 $LIBS"
712
713                 AC_TRY_RUN(OL_PTHREAD_TEST_PROGRAM,
714                         [$2=yes], [$2=no],
715                         [AC_TRY_LINK(OL_PTHREAD_TEST_INCLUDES,OL_PTHREAD_TEST_FUNCTION,
716                                 [$2=yes], [$2=no])])
717
718                 # restore the LIBS
719                 LIBS="$ol_LIBS"
720         ])
721
722         if test $$2 = yes ; then
723                 ol_link_pthreads="$1"
724                 ol_link_threads=posix
725         fi
726 fi
727 ])
728 dnl
729 dnl ====================================================================
730 dnl Check GNU Pth pthread Header
731 dnl
732 dnl defines ol_cv_header linux_threads to 'yes' or 'no'
733 dnl             'no' implies pthreads.h is not LinuxThreads or pthreads.h
734 dnl             doesn't exists.  Existance of pthread.h should separately
735 dnl             checked.
736 dnl 
737 AC_DEFUN([OL_HEADER_GNU_PTH_PTHREAD_H], [
738         AC_CACHE_CHECK([for GNU Pth pthread.h],
739                 [ol_cv_header_gnu_pth_pthread_h],
740                 [AC_EGREP_CPP(__gnu_pth__,
741                         [#include <pthread.h>
742 #ifdef _POSIX_THREAD_IS_GNU_PTH
743         __gnu_pth__;
744 #endif
745 ],
746                         [ol_cv_header_gnu_pth_pthread_h=yes],
747                         [ol_cv_header_gnu_pth_pthread_h=no])
748                 ])
749 ])dnl
750 dnl ====================================================================
751 dnl Check for NT Threads
752 AC_DEFUN([OL_NT_THREADS], [
753         AC_CHECK_FUNC(_beginthread)
754
755         if test $ac_cv_func__beginthread = yes ; then
756                 AC_DEFINE(HAVE_NT_THREADS,1,[if you have NT Threads])
757         fi
758 ])
759 dnl ====================================================================
760 dnl Check LinuxThreads Header
761 dnl
762 dnl defines ol_cv_header linux_threads to 'yes' or 'no'
763 dnl             'no' implies pthreads.h is not LinuxThreads or pthreads.h
764 dnl             doesn't exists.  Existance of pthread.h should separately
765 dnl             checked.
766 dnl 
767 AC_DEFUN([OL_HEADER_LINUX_THREADS], [
768         AC_CACHE_CHECK([for LinuxThreads pthread.h],
769                 [ol_cv_header_linux_threads],
770                 [AC_EGREP_CPP(pthread_kill_other_threads_np,
771                         [#include <pthread.h>],
772                         [ol_cv_header_linux_threads=yes],
773                         [ol_cv_header_linux_threads=no])
774                 ])
775         if test $ol_cv_header_linux_threads = yes; then
776                 AC_DEFINE(HAVE_LINUX_THREADS,1,[if you have LinuxThreads])
777         fi
778 ])dnl
779 dnl --------------------------------------------------------------------
780 dnl     Check LinuxThreads Implementation
781 dnl
782 dnl     defines ol_cv_sys_linux_threads to 'yes' or 'no'
783 dnl     'no' implies pthreads implementation is not LinuxThreads.
784 dnl 
785 AC_DEFUN([OL_SYS_LINUX_THREADS], [
786         AC_CHECK_FUNCS(pthread_kill_other_threads_np)
787         AC_CACHE_CHECK([for LinuxThreads implementation],
788                 [ol_cv_sys_linux_threads],
789                 [ol_cv_sys_linux_threads=$ac_cv_func_pthread_kill_other_threads_np])
790 ])dnl
791 dnl
792 dnl --------------------------------------------------------------------
793 dnl Check LinuxThreads consistency
794 AC_DEFUN([OL_LINUX_THREADS], [
795         AC_REQUIRE([OL_HEADER_LINUX_THREADS])
796         AC_REQUIRE([OL_SYS_LINUX_THREADS])
797         AC_CACHE_CHECK([for LinuxThreads consistency], [ol_cv_linux_threads], [
798                 if test $ol_cv_header_linux_threads = yes -a \
799                         $ol_cv_sys_linux_threads = yes; then
800                         ol_cv_linux_threads=yes
801                 elif test $ol_cv_header_linux_threads = no -a \
802                         $ol_cv_sys_linux_threads = no; then
803                         ol_cv_linux_threads=no
804                 else
805                         ol_cv_linux_threads=error
806                 fi
807         ])
808 ])dnl
809 dnl
810 dnl ====================================================================
811 dnl Check for POSIX Regex
812 AC_DEFUN([OL_POSIX_REGEX], [
813 AC_CACHE_CHECK([for compatible POSIX regex],ol_cv_c_posix_regex,[
814         AC_TRY_RUN([
815 #include <sys/types.h>
816 #include <regex.h>
817 static char *pattern, *string;
818 main()
819 {
820         int rc;
821         regex_t re;
822
823         pattern = "^A";
824
825         if(regcomp(&re, pattern, 0)) {
826                 return -1;
827         }
828         
829         string = "ALL MATCH";
830         
831         rc = regexec(&re, string, 0, (void*)0, 0);
832
833         regfree(&re);
834
835         return rc;
836 }],
837         [ol_cv_c_posix_regex=yes],
838         [ol_cv_c_posix_regex=no],
839         [ol_cv_c_posix_regex=cross])])
840 ])
841 dnl
842 dnl ====================================================================
843 dnl Check if toupper() requires islower() to be called first
844 AC_DEFUN([OL_C_UPPER_LOWER],
845 [AC_CACHE_CHECK([if toupper() requires islower()],ol_cv_c_upper_lower,[
846         AC_TRY_RUN([
847 #include <ctype.h>
848 main()
849 {
850         if ('C' == toupper('C'))
851                 exit(0);
852         else
853                 exit(1);
854 }],
855         [ol_cv_c_upper_lower=no],
856         [ol_cv_c_upper_lower=yes],
857         [ol_cv_c_upper_lower=safe])])
858 if test $ol_cv_c_upper_lower != no ; then
859         AC_DEFINE(C_UPPER_LOWER,1, [define if toupper() requires islower()])
860 fi
861 ])
862 dnl
863 dnl ====================================================================
864 dnl Check for declaration of sys_errlist in one of stdio.h and errno.h.
865 dnl Declaration of sys_errlist on BSD4.4 interferes with our declaration.
866 dnl Reported by Keith Bostic.
867 AC_DEFUN([OL_SYS_ERRLIST],
868 [AC_CACHE_CHECK([declaration of sys_errlist],ol_cv_dcl_sys_errlist,[
869         AC_TRY_COMPILE([
870 #include <stdio.h>
871 #include <sys/types.h>
872 #include <errno.h>
873 #ifdef WINNT
874 #include <stdlib.h>
875 #endif ],
876         [char *c = (char *) *sys_errlist],
877         [ol_cv_dcl_sys_errlist=yes
878         ol_cv_have_sys_errlist=yes],
879         [ol_cv_dcl_sys_errlist=no])])
880 #
881 # It's possible (for near-UNIX clones) that sys_errlist doesn't exist
882 if test $ol_cv_dcl_sys_errlist = no ; then
883         AC_DEFINE(DECL_SYS_ERRLIST,1,
884                 [define if sys_errlist is not declared in stdio.h or errno.h])
885
886         AC_CACHE_CHECK([existence of sys_errlist],ol_cv_have_sys_errlist,[
887                 AC_TRY_LINK([#include <errno.h>],
888                         [char *c = (char *) *sys_errlist],
889                         [ol_cv_have_sys_errlist=yes],
890                         [ol_cv_have_sys_errlist=no])])
891 fi
892 if test $ol_cv_have_sys_errlist = yes ; then
893         AC_DEFINE(HAVE_SYS_ERRLIST,1,
894                 [define if you actually have sys_errlist in your libs])
895 fi
896 ])dnl
897 dnl
898 dnl ====================================================================
899 dnl Early MIPS compilers (used in Ultrix 4.2) don't like
900 dnl "int x; int *volatile a = &x; *a = 0;"
901 dnl     -- borrowed from PDKSH
902 AC_DEFUN(OL_C_VOLATILE,
903  [AC_CACHE_CHECK(if compiler understands volatile, ol_cv_c_volatile,
904     [AC_TRY_COMPILE([int x, y, z;],
905       [volatile int a; int * volatile b = x ? &y : &z;
906       /* Older MIPS compilers (eg., in Ultrix 4.2) don't like *b = 0 */
907       *b = 0;], ol_cv_c_volatile=yes, ol_cv_c_volatile=no)])
908   if test $ol_cv_c_volatile = yes; then
909     : 
910   else
911     AC_DEFINE(volatile,,[define as empty if volatile is not supported])
912   fi
913  ])dnl
914 dnl
915 dnl ====================================================================
916 dnl Look for fetch(3)
917 AC_DEFUN([OL_LIB_FETCH],
918 [ol_LIBS=$LIBS
919 LIBS="-lfetch -lcom_err $LIBS"
920 AC_CACHE_CHECK([fetch(3) library],ol_cv_lib_fetch,[
921         AC_TRY_LINK([
922 #include <sys/param.h>
923 #include <stdio.h>
924 #include <fetch.h>],
925         [struct url *u = fetchParseURL("file:///"); ],
926         [ol_cv_lib_fetch=yes],
927         [ol_cv_lib_fetch=no])])
928 LIBS=$ol_LIBS
929 if test $ol_cv_lib_fetch != no ; then
930         ol_link_fetch="-lfetch -lcom_err"
931         AC_DEFINE(HAVE_FETCH,1,
932                 [define if you actually have FreeBSD fetch(3)])
933 fi
934 ])dnl
935 dnl
936 dnl ====================================================================
937 dnl Define sig_atomic_t if not defined in signal.h
938 AC_DEFUN(OL_TYPE_SIG_ATOMIC_T,
939  [AC_CACHE_CHECK(for sig_atomic_t, ol_cv_type_sig_atomic_t,
940     [AC_TRY_COMPILE([#include <signal.h>], [sig_atomic_t atomic;],
941                 ol_cv_type_sig_atomic_t=yes, ol_cv_type_sig_atomic_t=no)])
942   if test $ol_cv_type_sig_atomic_t = no; then
943     AC_DEFINE(sig_atomic_t,int,
944                 [define to atomic type if sig_atomic_t is not available])
945   fi
946  ])dnl
947 dnl
948 dnl ====================================================================
949 dnl Define socklen_t if not defined in sys/types.h or sys/socket.h
950 AC_DEFUN(OL_TYPE_SOCKLEN_T,
951  [AC_CACHE_CHECK(for socklen_t, ol_cv_type_socklen_t,
952     [AC_TRY_COMPILE([
953 #ifdef HAVE_SYS_TYPES_H
954 #include <sys/types.h>
955 #endif
956 #ifdef HAVE_SYS_SOCKET_H
957 #include <sys/socket.h>
958 #endif
959 ], [socklen_t len;],
960                 ol_cv_type_socklen_t=yes, ol_cv_type_socklen_t=no)])
961   if test $ol_cv_type_socklen_t = no; then
962     AC_DEFINE(socklen_t, int,
963                 [define to int if socklen_t is not available])
964   fi
965  ])dnl
966 dnl
967 dnl ====================================================================
968 dnl Define inet_aton is available
969 AC_DEFUN(OL_FUNC_INET_ATON,
970  [AC_CACHE_CHECK([for inet_aton()], ol_cv_func_inet_aton,
971     [AC_TRY_LINK([
972 #ifdef HAVE_SYS_TYPES_H
973 #       include <sys/types.h>
974 #endif
975 #ifdef HAVE_SYS_SOCKET_H
976 #       include <sys/socket.h>
977 #       ifdef HAVE_SYS_SELECT_H
978 #               include <sys/select.h>
979 #       endif
980 #       include <netinet/in.h>
981 #       ifdef HAVE_ARPA_INET_H
982 #               include <arpa/inet.h>
983 #       endif
984 #endif
985 ], [struct in_addr in;
986 int rc = inet_aton( "255.255.255.255", &in );],
987                 ol_cv_func_inet_aton=yes, ol_cv_func_inet_aton=no)])
988   if test $ol_cv_func_inet_aton != no; then
989     AC_DEFINE(HAVE_INET_ATON, 1,
990                 [define to you inet_aton(3) is available])
991   fi
992  ])dnl
993 dnl
994 dnl ====================================================================
995 dnl check no of arguments for ctime_r
996 AC_DEFUN(OL_FUNC_CTIME_R_NARGS,
997  [AC_CACHE_CHECK(number of arguments of ctime_r, ol_cv_func_ctime_r_nargs,
998    [AC_TRY_COMPILE([#include <time.h>],
999                 [time_t ti; char *buffer; ctime_r(&ti,buffer,32);],
1000                         ol_cv_func_ctime_r_nargs3=yes,
1001                         ol_cv_func_ctime_r_nargs3=no)
1002
1003         AC_TRY_COMPILE([#include <time.h>],
1004                 [time_t ti; char *buffer; ctime_r(&ti,buffer);],
1005                         ol_cv_func_ctime_r_nargs2=yes,
1006                         ol_cv_func_ctime_r_nargs2=no)
1007
1008         if test $ol_cv_func_ctime_r_nargs3 = yes -a \
1009                 $ol_cv_func_ctime_r_nargs2 = no ; then
1010
1011                 ol_cv_func_ctime_r_nargs=3
1012
1013         elif test $ol_cv_func_ctime_r_nargs3 = no -a \
1014                 $ol_cv_func_ctime_r_nargs2 = yes ; then
1015
1016                 ol_cv_func_ctime_r_nargs=2
1017
1018         else
1019                 ol_cv_func_ctime_r_nargs=0
1020         fi
1021   ])
1022
1023   if test $ol_cv_func_ctime_r_nargs -gt 1 ; then
1024         AC_DEFINE_UNQUOTED(CTIME_R_NARGS, $ol_cv_func_ctime_r_nargs,
1025                 [set to the number of arguments ctime_r() expects])
1026   fi
1027 ])dnl
1028 dnl
1029 dnl --------------------------------------------------------------------
1030 dnl check return type of ctime_r()
1031 AC_DEFUN(OL_FUNC_CTIME_R_TYPE,
1032  [AC_CACHE_CHECK(return type of ctime_r, ol_cv_func_ctime_r_type,
1033    [AC_TRY_COMPILE([#include <time.h>],
1034                 [extern int (ctime_r)();],
1035                         ol_cv_func_ctime_r_type="int", ol_cv_func_ctime_r_type="charp")
1036         ])
1037   if test $ol_cv_func_ctime_r_type = "int" ; then
1038         AC_DEFINE(CTIME_R_RETURNS_INT,1, [define if ctime_r() returns int])
1039   fi
1040 ])dnl
1041 dnl ====================================================================
1042 dnl check no of arguments for gethostbyname_r
1043 AC_DEFUN(OL_FUNC_GETHOSTBYNAME_R_NARGS,
1044  [AC_CACHE_CHECK(number of arguments of gethostbyname_r,
1045         ol_cv_func_gethostbyname_r_nargs,
1046         [AC_TRY_COMPILE([#include <sys/types.h>
1047 #include <sys/socket.h>
1048 #include <netinet/in.h>
1049 #include <netdb.h>
1050 #define BUFSIZE (sizeof(struct hostent)+10)],
1051                 [struct hostent hent; char buffer[BUFSIZE];
1052                 int bufsize=BUFSIZE;int h_errno;
1053                 (void)gethostbyname_r("segovia.cs.purdue.edu", &hent,
1054                         buffer, bufsize, &h_errno);],
1055                 ol_cv_func_gethostbyname_r_nargs5=yes, 
1056                 ol_cv_func_gethostbyname_r_nargs5=no)
1057
1058         AC_TRY_COMPILE([#include <sys/types.h>
1059 #include <sys/socket.h>
1060 #include <netinet/in.h>
1061 #include <netdb.h>
1062 #define BUFSIZE (sizeof(struct hostent)+10)],
1063                 [struct hostent hent;struct hostent *rhent;
1064                 char buffer[BUFSIZE];
1065                 int bufsize=BUFSIZE;int h_errno;
1066                 (void)gethostbyname_r("localhost", &hent, buffer, bufsize,
1067                         &rhent, &h_errno);],
1068                 ol_cv_func_gethostbyname_r_nargs6=yes,
1069                 ol_cv_func_gethostbyname_r_nargs6=no)
1070
1071         if test $ol_cv_func_gethostbyname_r_nargs5 = yes -a \
1072                 $ol_cv_func_gethostbyname_r_nargs6 = no ; then
1073
1074                 ol_cv_func_gethostbyname_r_nargs=5
1075
1076         elif test $ol_cv_func_gethostbyname_r_nargs5 = no -a \
1077                 $ol_cv_func_gethostbyname_r_nargs6 = yes ; then
1078
1079                 ol_cv_func_gethostbyname_r_nargs=6
1080
1081         else
1082                 ol_cv_func_gethostbyname_r_nargs=0
1083         fi
1084   ])
1085   if test $ol_cv_func_gethostbyname_r_nargs -gt 1 ; then
1086         AC_DEFINE_UNQUOTED(GETHOSTBYNAME_R_NARGS,
1087                 $ol_cv_func_gethostbyname_r_nargs,
1088                 [set to the number of arguments gethostbyname_r() expects])
1089   fi
1090 ])dnl
1091 dnl
1092 dnl check no of arguments for gethostbyaddr_r
1093 AC_DEFUN(OL_FUNC_GETHOSTBYADDR_R_NARGS,
1094  [AC_CACHE_CHECK(number of arguments of gethostbyaddr_r,
1095         [ol_cv_func_gethostbyaddr_r_nargs],
1096         [AC_TRY_COMPILE([#include <sys/types.h>
1097 #include <sys/socket.h>
1098 #include <netinet/in.h>
1099 #include <netdb.h>
1100 #define BUFSIZE (sizeof(struct hostent)+10)],
1101            [struct hostent hent; char buffer[BUFSIZE]; 
1102             struct in_addr add;
1103             size_t alen=sizeof(struct in_addr);
1104             int bufsize=BUFSIZE;int h_errno;
1105                 (void)gethostbyaddr_r( (void *)&(add.s_addr),
1106                         alen, AF_INET, &hent, buffer, bufsize, &h_errno);],
1107                 ol_cv_func_gethostbyaddr_r_nargs7=yes,
1108                 ol_cv_func_gethostbyaddr_r_nargs7=no)
1109
1110         AC_TRY_COMPILE([#include <sys/types.h>
1111 #include <sys/socket.h>
1112 #include <netinet/in.h>
1113 #include <netdb.h>
1114 #define BUFSIZE (sizeof(struct hostent)+10)],
1115                 [struct hostent hent;
1116                 struct hostent *rhent; char buffer[BUFSIZE]; 
1117                 struct in_addr add;
1118                 size_t alen=sizeof(struct in_addr);
1119                 int bufsize=BUFSIZE;int h_errno;
1120                 (void)gethostbyaddr_r( (void *)&(add.s_addr),
1121                         alen, AF_INET, &hent, buffer, bufsize, 
1122                         &rhent, &h_errno);],
1123                 ol_cv_func_gethostbyaddr_r_nargs8=yes,
1124                 ol_cv_func_gethostbyaddr_r_nargs8=no)
1125
1126         if test $ol_cv_func_gethostbyaddr_r_nargs7 = yes -a \
1127                 $ol_cv_func_gethostbyaddr_r_nargs8 = no ; then
1128
1129                 ol_cv_func_gethostbyaddr_r_nargs=7
1130
1131         elif test $ol_cv_func_gethostbyaddr_r_nargs7 = no -a \
1132                 $ol_cv_func_gethostbyaddr_r_nargs8 = yes ; then
1133
1134                 ol_cv_func_gethostbyaddr_r_nargs=8
1135
1136         else
1137                 ol_cv_func_gethostbyaddr_r_nargs=0
1138         fi
1139   ])
1140   if test $ol_cv_func_gethostbyaddr_r_nargs -gt 1 ; then
1141     AC_DEFINE_UNQUOTED(GETHOSTBYADDR_R_NARGS,
1142                 $ol_cv_func_gethostbyaddr_r_nargs,
1143                 [set to the number of arguments gethostbyaddr_r() expects])
1144   fi
1145 ])dnl
1146 dnl