 |
|
|
| |
1 dnl configure.in file for am-utils-6.x
2 dnl Contains general GNU-autoconf macros.
3 dnl Author: Erez Zadok <ezk@cs.sunysb.edu>
4 dnl
5 dnl ######################################################################
6 dnl UNCOMMENT THE NEXT FEW LINES FOR DEBUGGING CONFIGURE
7 dnl define([AC_CACHE_LOAD], )dnl
8 dnl define([AC_CACHE_SAVE], )dnl
9 dnl ======================================================================
10
11 dnl ######################################################################
12 dnl INITIALIZATION
13 dnl AC_INIT
14 dnl new init style: PACKAGE, VERSION, BUG-REPORTING-ADDRESS
15 AC_INIT([am-utils],
16 [6.1.1],
17 [https://bugzilla.am-utils.org/ or am-utils@am-utils.org])
18 AC_MSG_NOTICE(*** INITIALIZATION ***)
19 AC_CONFIG_SRCDIR([amd/amd.c])
20 AM_CONFIG_HEADER(config.h)
21 AH_TOP([
22 /*
23 * Start of am-utils-6.x config.h file.
24 * Erez Zadok <ezk @ cs.sunysb.edu>
25 *
26 * DO NOT EDIT BY HAND.
27 * Note: generated by autoheader from configure.in.
28 */
29
30 #ifndef _CONFIG_H
31 #define _CONFIG_H
32 ])
33 dnl add actual "#undef" commands into m4/macros/header_templates.m4
34 AH_BOTTOM([
35 /****************************************************************************/
36 /*** INCLUDE localconfig.h if it exists, to allow users to make some ***/
37 /*** compile time configuration changes. ***/
38 /****************************************************************************/
39 /* does a local configuration file exist? */
40 #undef HAVE_LOCALCONFIG_H
41 #ifdef HAVE_LOCALCONFIG_H
42 # include <localconfig.h>
43 #endif /* HAVE_LOCALCONFIG_H */
44
45 #endif /* not _CONFIG_H */
46
47 /*
48 * Local Variables:
49 * mode: c
50 * End:
51 */
52
53 /* End of am-utils-6.x config.h file */
54 ])
55 dnl
56 dnl AC_CONFIG_AUX_DIR(m4)
57 AC_PREREQ(2.52)
58 AC_REVISION($Revision: 1.106 $)
59 AC_COPYRIGHT([Copyright (c) 1997-2005 Erez Zadok])
60 dnl find out system type
61 AC_MSG_NOTICE(*** SYSTEM TYPES ***)
62 dnl run by libtool, but must be kept here because HOST_MACROS depends on it
63 AC_CANONICAL_HOST
64 AMU_HOST_MACROS
65 dnl ======================================================================
66
67 dnl ######################################################################
68 dnl PACKAGE NAME AND VERSION
69 AC_MSG_NOTICE(*** PACKAGE NAME AND VERSION ***)
70 AMU_PACKAGE_NAME($PACKAGE_NAME)
71 AMU_PACKAGE_VERSION($PACKAGE_VERSION)
72 AMU_PACKAGE_BUGREPORT($PACKAGE_BUGREPORT)
73 AM_INIT_AUTOMAKE($PACKAGE_NAME, $PACKAGE_VERSION)
74 dnl SET (shared) library version. Update it only before major release!
75 dnl Clarification:
76 dnl The major number should change when an incompatible change is made to
77 dnl the API; the minor number should change when an API is added; the patch
78 dnl level should change when an internal implementation change is made that
79 dnl does not affect the API.
80 dnl
81 dnl In other words: if the major changes, the library is incompatible with
82 dnl older ones; if the minor changes, the library is backwards compatible
83 dnl with libraries using the same major; if the patchlevel changes, the
84 dnl library is backward and forward compatible with libraries using the same
85 dnl major and minor.
86 dnl
87 dnl For sanity, the lower numbers should be set to 0 when a higher number
88 dnl is changed.
89 dnl last version info was 3:2:1 (am-utils-6.0.2)
90 dnl last version info was 4:0:2 (am-utils-6.0.3)
91 dnl last version info was 4:1:2 (am-utils-6.0.4)
92 dnl last version info was 3:0:0 (am-utils-6.1, should have been updated)
93 dnl
94 dnl We increase the major number for am-utils-6.1, because it has new API's
95 dnl and removes some old API's.
96 LIBTOOL_LDFLAGS="-version-info 4:0:0"
97 AC_SUBST(LIBTOOL_LDFLAGS)
98 dnl ======================================================================
99
100 dnl ######################################################################
101 dnl ALTERNATIVE PROGRAMS
102 dnl Part 1: these are required before "unix variants"
103 dnl ======================================================================
104 dnl Particular Program Checks
105 AC_MSG_NOTICE(*** PARTICULAR PROGRAMS (part 1) ***)
106 dnl AC-PROG-LIBTOOL will run this, but we need this to squelch warnings
107 dnl from autoconf about AMU_TRY_COMPILE running before AC_AIX/AC_ISC_POSIX
108 AC_PROG_CC
109 AC_PROG_CPP
110 AC_PROG_CC_C_O
111 AC_PROG_GCC_TRADITIONAL
112 AC_PROG_MAKE_SET
113 AC_ISC_POSIX
114 AC_AIX
115 dnl XXX: available in autoconf-2.14
116 dnl AC_PROG_CC_STDC
117 dnl ======================================================================
118
119 dnl ######################################################################
120 dnl OPTION PROCESSING
121 AC_MSG_NOTICE(*** OPTION PROCESSING ***)
122 dnl Do we want LDAP support ?
123 AMU_WITH_ADDON(ldap, LDAP)
124 dnl Do we want HESIOD support ?
125 AMU_WITH_ADDON(hesiod, HESIOD)
126 dnl Do we want NDBM support ?
127 AMU_WITH_ADDON(ndbm, NDBM)
128 dnl Debugging options (yes, mem, or no)
129 AMU_OPT_DEBUG
130 dnl additional preprocessor options for configuration/compilation
131 AMU_OPT_CPPFLAGS
132 dnl additional linker -l options for configuration/compilation
133 AMU_OPT_LIBS
134 dnl additional linker -L options for configuration/compilation
135 AMU_OPT_LDFLAGS
136 dnl Which options to add to CFLAGS for compilation only?
137 AMU_OPT_AMU_CFLAGS
138 dnl check if a local configuration file exists
139 AMU_LOCALCONFIG
140 dnl turn off maintainer-mode Makefile rules, unless using --enable-maintainer-mode
141 AM_MAINTAINER_MODE
142 dnl ======================================================================
143
144 dnl ######################################################################
145 AC_MSG_NOTICE(*** LIBTOOL ***)
146 dnl my version of prog_libtool will not build shared by default
147 dnl AM_PROG_LIBTOOL2
148 dnl build static libraries by default
149 AC_DISABLE_SHARED
150 dnl XXX: for autoconf-2.14: use AC_PROG_LIBTOOL, not AM_PROG_LIBTOOL
151 case ${host_os} in
152 # Temporarily undo renaming of "linux-gnu" to "linux", because
153 # libtool only looks for "linux-gnu". Sigh.
154 linux ) host_os=linux-gnu ;;
155 esac
156 dnl this line must appear only once and on its own line
157 dnl (hence the double case statements above and below)
158 AC_PROG_LIBTOOL
159 case ${host_os} in
160 # end temporary renaming of "linux-gnu" to "linux"
161 linux-gnu ) host_os=linux ;;
162 esac
163 dnl ======================================================================
164
165 dnl ######################################################################
166 dnl ADDITIONAL OPTION PROCESSING (must be done after CC is defined)
167 AC_MSG_NOTICE(*** EXTRA OPTION PROCESSING ***)
168 AMU_OS_CPPFLAGS
169 AMU_OS_CFLAGS
170 AMU_OS_LDFLAGS
171 dnl ======================================================================
172
173 dnl ######################################################################
174 dnl Some of these macros must be called before any call to the C compiler
175 AC_MSG_NOTICE(*** UNIX VARIANTS ***)
176 dnl UNIX VARIANTS
177 dnl AC_AIX
178 dnl AC_ISC_POSIX
179 AMU_LINUX_HEADERS
180 dnl ======================================================================
181
182 dnl ######################################################################
183 dnl ALTERNATIVE PROGRAMS
184 dnl Part 2: these are required after "unix variants"
185 dnl ======================================================================
186 dnl Particular Program Checks (part 2)
187 AC_MSG_NOTICE(*** PARTICULAR PROGRAMS (part 2) ***)
188 AC_PROG_INSTALL
189 dnl the next two are run or supported natively by libtool
190 dnl AC_PROG_LN_S
191 dnl AC_PROG_RANLIB
192 AC_PROG_YACC
193 AM_PROG_LEX
194
195 dnl ======================================================================
196 dnl Generic Program Checks
197 AC_MSG_NOTICE(*** GENERIC PROGRAMS ***)
198 AC_PATH_PROGS(AR, ar, :)
199 AC_PATH_PROGS(PERL, perl5 perl4 perl, /usr/bin/perl)
200 AC_PATH_PROGS(UNMOUNT_PROGRAM, umount unmount, /bin/umount)
201 dnl ======================================================================
202
203 dnl ######################################################################
204 dnl LIBRARY FILES
205 dnl ======================================================================
206 dnl Note that the configuration order of libraries is in reverse of linkage
207 dnl for example, linking of the first two is -lc -lnsl.
208 AC_MSG_NOTICE(*** LIBRARY FILES ***)
209
210 dnl libnsl/libsocket are needed only on solaris and some svr4 systems.
211 dnl Using a typical macro has proven unsuccesful, because on some other
212 dnl systems such as irix, including libnsl and or libsocket actually breaks
213 dnl lots of code. So I am forced to use a special purpose macro that sets
214 dnl the libraries based on the OS. Sigh. -Erez.
215 AMU_CHECK_OS_LIBS
216
217 dnl librpc and librpcsvc are needed on Solaris
218 AC_CHECK_LIB(rpc, clnt_sperrno)
219 AC_CHECK_LIB(rpcsvc, xdr_fhandle)
220 dnl libresolv is needed on Solaris/HPUX-11 for hstrerror()
221 AC_CHECK_FUNC(hstrerror,,AC_CHECK_LIB(resolv, hstrerror))
222 dnl Linux RedHat 5.1 puts yp functions only in libnsl (libnsl broken on aix)
223 AC_CHECK_FUNC(yp_all,,AC_CHECK_LIB(nsl, yp_all))
224
225 dnl hesiod library may not link unless libresolv is included
226 if test "$with_hesiod" = "yes"; then
227 AMU_CHECK_LIB2(hesiod, hes_init,,, -lresolv)
228 fi
229 if test "$with_ldap" = "yes"; then
230 AMU_CHECK_LIB2(ldap, ldap_open,,, -llber)
231 AC_CHECK_FUNCS(ldap_enable_cache)
232 fi
233
234 dnl Digital UNIX V4.0 and Solaris 7 have POSIX.1c functions in -lrt
235 dnl Solaris 2.6 only has -lposix4; in Solaris 7, this is a symlink to -lrt,
236 dnl so only use one of them
237 case "$ac_cv_opt_debug" in
238 yes | mem )
239 AC_CHECK_LIB(rt, clock_gettime,, AC_CHECK_LIB(posix4, clock_gettime))
240 ;;
241 esac
242
243 dnl ######################################################################
244 dnl LIBRARY FUNCTIONS
245 dnl ======================================================================
246 dnl Particular Function Checks
247 AC_MSG_NOTICE(*** PARTICULAR LIBRARY FUNCTIONS ***)
248 dnl AC_FUNC_ALLOCA
249 dnl This GETMNTENT test will add -lgen to LIBS if needed. We may need it
250 dnl if we have to build am-utils on Irix 4, PTX, or Unixware.
251 dnl AC_FUNC_GETMNTENT
252 AMU_FUNC_BAD_MEMCMP
253 AMU_FUNC_BAD_YP_ALL
254 AC_FUNC_FORK([])
255 AC_FUNC_WAIT3
256 AC_FUNC_GETPGRP
257 AC_FUNC_SETPGRP
258 dnl ======================================================================
259 dnl Generic Function Checks
260 AC_MSG_NOTICE(*** GENERIC LIBRARY FUNCTIONS ***)
261 AC_CHECK_FUNCS( \
262 __rpc_get_local_uid \
263 __seterr_reply \
264 _seterr_reply \
265 bcmp \
266 bcopy \
267 bzero \
268 clnt_create \
269 clnt_create_vers \
270 clnt_create_vers_timed \
271 clnt_spcreateerror \
272 clock_gettime \
273 cnodeid \
274 dg_mount \
275 flock \
276 fsmount \
277 get_myaddress \
278 getccent \
279 getcwd \
280 getdomainname \
281 getdtablesize \
282 gethostname \
283 getifaddrs \
284 getmntinfo \
285 getmountent \
286 getpagesize \
287 gettimeofday \
288 hasmntopt \
289 hes_init \
290 hesiod_init \
291 hesiod_reload \
292 hesiod_to_bind \
293 hstrerror \
294 madvise \
295 memcmp \
296 memcpy \
297 memmove \
298 memset \
299 mkdir \
300 mkstemp \
301 mntctl \
302 mlockall \
303 mount \
304 mountsyscall \
305 plock \
306 regcomp \
307 regexec \
308 rmdir \
309 select \
310 seteuid \
311 setitimer \
312 setresuid \
313 setsid \
314 sigaction \
315 signal \
316 sigsuspend \
317 socket \
318 strcasecmp \
319 strchr \
320 strcspn \
321 strdup \
322 strerror \
323 strlcat \
324 strlcpy \
325 strspn \
326 strstr \
327 svc_getreq \
328 svc_getreqset \
329 sysfs \
330 syslog \
331 uname \
332 umount \
333 umount2 \
334 unmount \
335 uvmount \
336 vfork \
337 vfsmount \
338 vmount \
339 vsnprintf \
340 wait3 \
341 waitpid \
342 )
343 AC_REPLACE_FUNCS( \
344 clnt_sperrno \
345 hasmntopt \
346 strcasecmp \
347 strdup \
348 strerror \
349 strlcat \
350 strlcpy \
351 strstr \
352 ualarm \
353 )
354 dnl all xdr_* functions are implemented in libamu/xdr_func.c
355 AC_CHECK_FUNCS( \
356 xdr_attrstat \
357 xdr_createargs \
358 xdr_dirlist \
359 xdr_diropargs \
360 xdr_diropokres \
361 xdr_diropres \
362 xdr_dirpath \
363 xdr_entry \
364 xdr_exportnode \
365 xdr_exports \
366 xdr_fattr \
367 xdr_fhandle \
368 xdr_fhstatus \
369 xdr_filename \
370 xdr_ftype \
371 xdr_groupnode \
372 xdr_groups \
373 xdr_linkargs \
374 xdr_mountbody \
375 xdr_mountlist \
376 xdr_name \
377 xdr_nfs_fh \
378 xdr_nfscookie \
379 xdr_nfspath \
380 xdr_nfsstat \
381 xdr_nfstime \
382 xdr_pointer \
383 xdr_readargs \
384 xdr_readdirargs \
385 xdr_readdirres \
386 xdr_readlinkres \
387 xdr_readokres \
388 xdr_readres \
389 xdr_renameargs \
390 xdr_sattr \
391 xdr_sattrargs \
392 xdr_statfsokres \
393 xdr_statfsres \
394 xdr_symlinkargs \
395 xdr_writeargs \
396 )
397 dnl ======================================================================
398
399 dnl *********
400 AMU_SAVE_STATE
401 dnl *********
402
403 dnl ######################################################################
404 dnl HEADER FILES
405 dnl ======================================================================
406 dnl Particular Header Checks
407 AC_MSG_NOTICE(*** PARTICULAR HEADER FILES ***)
408 AC_HEADER_DIRENT
409 AC_HEADER_STDC
410 AC_HEADER_SYS_WAIT
411 dnl ======================================================================
412 dnl Generic Header Checks
413 AC_MSG_NOTICE(*** GENERIC HEADER FILES ***)
414 AC_CHECK_HEADERS( \
415 arpa/nameser.h \
416 arpa/inet.h \
417 bsd/rpc/rpc.h \
418 cdfs/cdfsmount.h \
419 cdfs/cdfs_mount.h \
420 db1/ndbm.h \
421 fs/msdosfs/msdosfsmount.h \
422 gdbm/ndbm.h \
423 hsfs/hsfs.h \
424 isofs/cd9660/cd9660_mount.h \
425 linux/fs.h \
426 linux/kdev_t.h \
427 linux/list.h \
428 linux/nfs.h \
429 linux/nfs2.h \
430 linux/posix_types.h \
431 linux/socket.h \
432 machine/endian.h \
433 msdosfs/msdosfsmount.h \
434 net/errno.h \
435 net/if.h \
436 net/if_var.h \
437 net/route.h \
438 netinet/if_ether.h \
439 netinet/in.h \
440 nfs/export.h \
441 nfs/mount.h \
442 nfs/nfs.h \
443 nfs/nfs_clnt.h \
444 nfs/nfs_gfs.h \
445 nfs/nfs_mount.h \
446 nfs/nfsmount.h \
447 nfs/nfsproto.h \
448 nfs/nfsv2.h \
449 nfs/pathconf.h \
450 nfs/rpcv2.h \
451 nfsclient/nfsargs.h \
452 rpc/auth_des.h \
453 rpc/pmap_clnt.h \
454 rpc/pmap_prot.h \
455 rpc/rpc.h \
456 rpc/types.h \
457 rpc/xdr.h \
458 rpcsvc/autofs_prot.h \
459 rpcsvc/mount.h \
460 rpcsvc/mountv3.h \
461 rpcsvc/nfs_prot.h \
462 rpcsvc/nis.h \
463 rpcsvc/yp_prot.h \
464 rpcsvc/ypclnt.h \
465 sys/config.h \
466 sys/dg_mount.h \
467 sys/dir.h \
468 sys/errno.h \
469 sys/file.h \
470 sys/fs/autofs.h \
471 sys/fs/autofs_prot.h \
472 sys/fs/cachefs_fs.h \
473 sys/fs/efs_clnt.h \
474 sys/fs/nfs.h \
475 sys/fs/nfs/mount.h \
476 sys/fs/nfs/nfs_clnt.h \
477 sys/fs/nfs_clnt.h \
478 sys/fs/pc_fs.h \
479 sys/fs/tmp.h \
480 sys/fs/ufs_mount.h \
481 sys/fs/xfs_clnt.h \
482 sys/fs_types.h \
483 sys/fsid.h \
484 sys/fstyp.h \
485 sys/ioctl.h \
486 sys/lock.h \
487 sys/machine.h \
488 sys/mbuf.h \
489 sys/mman.h \
490 sys/mntctl.h \
491 sys/mntent.h \
492 sys/mnttab.h \
493 sys/mount.h \
494 sys/ndir.h \
495 sys/netconfig.h \
496 sys/param.h \
497 sys/pathconf.h \
498 sys/proc.h \
499 sys/resource.h \
500 sys/sema.h \
501 sys/signal.h \
502 sys/socket.h \
503 sys/sockio.h \
504 sys/stat.h \
505 sys/statfs.h \
506 sys/syscall.h \
507 sys/syslimits.h \
508 sys/syslog.h \
509 sys/time.h \
510 sys/tiuser.h \
511 sys/types.h \
512 sys/ucred.h \
513 sys/uio.h \
514 sys/utsname.h \
515 sys/vfs.h \
516 sys/vmount.h \
517 sys/vnode.h \
518 dnl sys/wait.h \
519 ufs/ufs/extattr.h \
520 ufs/ufs/ufsmount.h \
521 ufs/ufs_mount.h \
522 \
523 assert.h \
524 dnl cfs.h \
525 cluster.h \
526 ctype.h \
527 dnl dirent.h \
528 errno.h \
529 fcntl.h \
530 ifaddrs.h \
531 irs.h \
532 grp.h \
533 hesiod.h \
534 lber.h \
535 ldap.h \
536 libgen.h \
537 limits.h \
538 malloc.h \
539 memory.h \
540 mntent.h \
541 mnttab.h \
542 mount.h \
543 ndbm.h \
544 ndir.h \
545 netconfig.h \
546 netdb.h \
547 netdir.h \
548 nsswitch.h \
549 pwd.h \
550 regex.h \
551 resolv.h \
552 setjmp.h \
553 signal.h \
554 socketbits.h \
555 statbuf.h \
556 stdarg.h \
557 stdlib.h \
558 stdio.h \
559 string.h \
560 strings.h \
561 syslog.h \
562 tcpd.h \
563 time.h \
564 tiuser.h \
565 varargs.h \
566 unistd.h \
567 )
568 dnl headers which depend on others, else you get an configure error
569 AC_CHECK_HEADERS([ \
570 linux/auto_fs.h \
571 linux/auto_fs4.h \
572 linux/loop.h \
573 ], [], [],
574 [
575 #ifdef HAVE_SYS_SOCKET_H
576 # include <sys/socket.h>
577 #endif /* HAVE_SYS_SOCKET_H */
578 #ifdef HAVE_LIMITS_H
579 # include <limits.h>
580 #endif /* HAVE_LIMITS_H */
581 #ifdef HAVE_LINUX_POSIX_TYPES_H
582 # include <linux/posix_types.h>
583 #endif /* HAVE_LINUX_POSIX_TYPES_H */
584 /* next dev_t lines needed due to changes in kernel code */
585 #undef dev_t
586 #define dev_t unsigned short /* compatible with Red Hat and SuSE */
587 ])
588 dnl even more special checks for Linux nfs headers
589 AC_CHECK_HEADERS([ \
590 linux/nfs_mount.h \
591 ], [], [],
592 [
593 /*
594 * Needed to find nfs2_fh and nfs_fh on older systems (yellowdog2.3, gentoo,
595 * etc.)
596 * Needs to be defined before <asm/types.h> so u32 is available for
597 * <linux/sunrpc/msg_prot.h>.
598 */
599 #ifdef HAVE_SYS_TYPES_H
600 # include <sys/types.h>
601 #endif /* HAVE_SYS_TYPES_H */
602 # ifndef __KERNEL__
603 # define __KERNEL__
604 # endif /* __KERNEL__ */
605 #ifdef HAVE_LINUX_SOCKET_H
606 # include <linux/socket.h>
607 #endif /* HAVE_LINUX_SOCKET_H */
608 #ifdef HAVE_LIMITS_H
609 # include <limits.h>
610 #endif /* HAVE_LIMITS_H */
611 #ifdef HAVE_LINUX_POSIX_TYPES_H
612 # include <linux/posix_types.h>
613 #endif /* HAVE_LINUX_POSIX_TYPES_H */
614 #ifdef HAVE_LINUX_NFS2_H
615 struct nfs2_fh {
616 char data[FHSIZE];
617 };
618 # define _LINUX_NFS2_H
619 #endif /* HAVE_LINUX_NFS2_H */
620 /* next dev_t lines needed due to changes in kernel code */
621 #undef dev_t
622 #define dev_t unsigned short /* compatible with Red Hat and SuSE */
623 ])
624
625 dnl ======================================================================
626 dnl db/ndbm/gdbm: This is serious autoconf-fu...
627 dnl ======================================================================
628 if test "$with_ndbm" = "yes"
629 then
630 if test "$ac_cv_lib_new_dbm" = "" -a "$ac_cv_header_ndbm_h" = "yes"; then
631 AC_CHECK_LIB(ndbm, dbm_open,
632 dnl some systems replaced old ndbm.h include with GNU ndbm.h, which requires
633 dnl libgdbm for dbm_pagfno, so check for this.
634 AC_CHECK_LIB(ndbm, dbm_pagfno, ac_cv_header_new_dbm="ndbm.h"; ac_cv_lib_new_dbm="ndbm",
635 AC_CHECK_LIB(gdbm, dbm_pagfno, ac_cv_header_new_dbm="ndbm.h"; ac_cv_lib_new_dbm="ndbm -lgdbm")))
636 fi
637 if test "$ac_cv_lib_new_dbm" = "" -a "$ac_cv_header_db1_ndbm_h" = "yes"; then
638 AC_CHECK_LIB(db1, dbm_open, ac_cv_header_new_dbm="db1/ndbm.h"; ac_cv_lib_new_dbm="db1")
639 fi
640 if test "$ac_cv_lib_new_dbm" = "" -a "$ac_cv_header_gdbm_ndbm_h" = "yes"; then
641 AC_CHECK_LIB(gdbm, dbm_open, ac_cv_header_new_dbm="gdbm/ndbm.h"; ac_cv_lib_new_dbm="gdbm")
642 fi
643 if test "$ac_cv_header_new_dbm" != "" -a "$ac_cv_lib_new_dbm" != ""; then
644 AC_DEFINE_UNQUOTED(NEW_DBM_H, "$ac_cv_header_new_dbm")
645 LIBS="-l$ac_cv_lib_new_dbm $LIBS"
646 fi
647 fi
648 dnl ======================================================================
649
650 dnl *********
651 AMU_SAVE_STATE
652 dnl *********
653
654 dnl ######################################################################
655 dnl STRUCTURES
656 AC_MSG_NOTICE(*** PARTICULAR STRUCTURES ***)
657 AC_HEADER_STAT
658 AC_HEADER_TIME
659 AC_STRUCT_TM
660 dnl ======================================================================
661 AC_MSG_NOTICE(*** GENERIC STRUCTURES ***)
662 dnl before any use of macros that need nfs/mount headers, must define O/S
663 dnl specific header to include.
664 AMU_CHECK_NFS_PROT_HEADERS
665 AMU_STRUCT_MNTENT
666 AMU_STRUCT_MNTTAB
667 dnl -----------------------------------------------------------------------
668 dnl check for bad hasmntopt() function after struct mntent/mnttab
669 dnl but only if hasmntopt() is actually defined.
670 if test $ac_cv_func_hasmntopt = yes
671 then
672 AMU_FUNC_BAD_HASMNTOPT
673 fi
674 dnl -----------------------------------------------------------------------
675 AMU_STRUCT_NFS_ARGS
676 AMU_STRUCT_NFS_GFS_MOUNT
677 dnl -----------------------------------------------------------------------
678 dnl cannot proceed if struct nfs_args/gfs_mount is not found!
679 if test "$ac_cv_have_struct_nfs_args" = notfound && test "$ac_cv_have_struct_nfs_gfs_mount" = no
680 then
681 AC_MSG_ERROR(
682 [Cannot find any definition for struct nfs_args!
683 This can be due to several reasons: a misconfigured system, a system that is
684 missing some vital NFS-related headers or libraries, one for which am-utils
685 was not ported to yet, or even a bug in the am-utils sources. Check the
686 BUGS file in this distribution and see if there is any mention relevant to
687 your system. If that does not help, check the config.log and config.cache
688 files in this build for details and report them to
689 https://bugzilla.am-utils.org/ or am-utils@am-utils.org please.
690 ])
691 fi
692 dnl -----------------------------------------------------------------------
693 AMU_STRUCT_FIELD_NFS_FH
694 AMU_STRUCT_NFS_FH
695 AMU_CHECK_FS_MNTENT(nfs3)
696 dnl ======================================================================
697
698 dnl *********
699 AMU_SAVE_STATE
700 dnl *********
701
702 dnl ######################################################################
703 dnl TYPEDEFS
704 dnl ======================================================================
705 dnl Particular Typedef Checks
706 AC_MSG_NOTICE(*** PARTICULAR TYPEDEFS ***)
707 AC_TYPE_GETGROUPS
708 AC_TYPE_MODE_T
709 AC_TYPE_PID_T
710 AC_TYPE_SIGNAL
711 AC_TYPE_SIZE_T
712 AC_TYPE_UID_T
713 dnl ======================================================================
714 dnl Generic Typedef Checks
715 AC_MSG_NOTICE(*** GENERIC TYPEDEFS ***)
716 AMU_TYPE_TIME_T
717 AMU_TYPE_RPCVERS_T
718 AMU_CHECK_FHANDLE
719 AMU_CHECK_MTYPE_TYPE
720 AMU_CHECK_MTYPE_PRINTF_TYPE
721 AMU_TYPE_YP_ORDER_OUTORDER
722 AMU_TYPE_RECVFROM_FROMLEN
723 AMU_TYPE_AUTH_CREATE_GIDLIST
724 AMU_TYPE_SVC_IN_ARG
725 AMU_TYPE_AUTOFS_ARGS
726 AMU_TYPE_CACHEFS_ARGS
727 AMU_TYPE_CDFS_ARGS
728 AMU_TYPE_LOFS_ARGS
729 AMU_TYPE_MFS_ARGS
730 AMU_TYPE_PCFS_ARGS
731 AMU_TYPE_RFS_ARGS
732 AMU_TYPE_TMPFS_ARGS
733 AMU_TYPE_UFS_ARGS
734 AMU_TYPE_XFS_ARGS
735 AMU_TYPE_EFS_ARGS
736 AMU_TYPE_XDRPROC_T
737 dnl ======================================================================
738
739 dnl ######################################################################
740 dnl Particular Compiler Characteristics
741 AC_MSG_NOTICE(*** PARTICULAR COMPILER CHARACTERISTICS ***)
742 AC_C_BIGENDIAN
743 AC_C_CONST
744 AC_C_INLINE
745 AC_C_VOLATILE
746 dnl AC_CHECK_SIZEOF(void *, 0)
747 dnl ======================================================================
748 dnl Generic Compiler Characteristics
749 AC_MSG_NOTICE(*** GENERIC COMPILER CHARACTERISTICS ***)
750 AMU_C_VOID_P
751 dnl ======================================================================
752
753 dnl *********
754 AMU_SAVE_STATE
755 dnl *********
756
757 dnl ######################################################################
758 AC_MSG_NOTICE(*** EXTERNAL DEFINITIONS ***)
759 AMU_EXTERN_SYS_ERRLIST
760 AMU_EXTERN_OPTARG
761 AMU_CHECK_EXTERNS(
762 clnt_spcreateerror \
763 clnt_sperrno \
764 free \
765 get_myaddress \
766 getccent \
767 getdomainname \
768 getdtablesize \
769 gethostname \
770 getlogin \
771 getpagesize \
772 getwd \
773 hosts_ctl \
774 innetgr \
775 mkstemp \
776 mntctl \
777 sbrk \
778 seteuid \
779 setitimer \
780 sleep \
781 strcasecmp \
782 strdup \
783 strlcat \
784 strlcpy \
785 strstr \
786 ualarm \
787 usleep \
788 wait3 \
789 vsnprintf \
790 xdr_callmsg \
791 xdr_opaque_auth \
792 )
793 dnl Different macro to check for LDAP externs, so as to avoid
794 dnl breaking the basic extern-checking macro.
795 AMU_CHECK_EXTERN_LDAP(ldap_enable_cache)
796 dnl ======================================================================
797
798 dnl ######################################################################
799 dnl C PREPROCESSOR MACROS
800 AC_MSG_NOTICE(*** C PREPROCESSOR MACROS ***)
801 dnl ======================================================================
802
803 dnl ######################################################################
804 dnl SYSTEM SERVICES
805 AC_MSG_NOTICE(*** SYSTEM SERVICES ***)
806 AC_SYS_LONG_FILE_NAMES
807 AC_SYS_RESTARTABLE_SYSCALLS
808 AMU_CHECK_NETWORK_TRANSPORT_TYPE
809 dnl ======================================================================
810
811 dnl *********
812 AMU_SAVE_STATE
813 dnl *********
814
815 dnl ######################################################################
816 AC_MSG_NOTICE(*** FIELDS WITHIN STRUCTURES ***)
817 AMU_CHECK_FIELD(fd_set.fds_bits)
818 AMU_CHECK_FIELD(mntent_t.mnt_cnode)
819 AMU_CHECK_FIELD(mntent_t.mnt_ro)
820 AMU_CHECK_FIELD(mntent_t.mnt_time)
821 AMU_FIELD_MNTENT_T_MNT_TIME_STRING
822 AMU_CHECK_FIELD(cdfs_args_t.flags)
823 AMU_CHECK_FIELD(cdfs_args_t.fspec)
824 AMU_CHECK_FIELD(cdfs_args_t.iso_flags)
825 AMU_CHECK_FIELD(cdfs_args_t.iso_pgthresh)
826 AMU_CHECK_FIELD(cdfs_args_t.norrip)
827 AMU_CHECK_FIELD(cdfs_args_t.ssector)
828 AMU_CHECK_FIELD(pcfs_args_t.dirmask)
829 AMU_CHECK_FIELD(pcfs_args_t.dsttime)
830 AMU_CHECK_FIELD(pcfs_args_t.fspec)
831 AMU_CHECK_FIELD(pcfs_args_t.gid)
832 AMU_CHECK_FIELD(pcfs_args_t.mask)
833 AMU_CHECK_FIELD(pcfs_args_t.secondswest)
834 AMU_CHECK_FIELD(pcfs_args_t.uid)
835 AMU_CHECK_FIELD(ufs_args_t.flags)
836 AMU_CHECK_FIELD(ufs_args_t.fspec)
837 AMU_CHECK_FIELD(ufs_args_t.ufs_flags)
838 AMU_CHECK_FIELD(ufs_args_t.ufs_pgthresh)
839 AMU_CHECK_FIELD(efs_args_t.flags)
840 AMU_CHECK_FIELD(efs_args_t.fspec)
841 AMU_CHECK_FIELD(xfs_args_t.flags)
842 AMU_CHECK_FIELD(xfs_args_t.fspec)
843 AMU_CHECK_FIELD(struct fhstatus.fhs_fh)
844 AMU_CHECK_FIELD(struct statfs.f_fstypename)
845 AMU_CHECK_FIELD(nfs_args_t.acdirmin)
846 AMU_CHECK_FIELD(nfs_args_t.acregmin)
847 AMU_CHECK_FIELD(nfs_args_t.bsize)
848 AMU_CHECK_FIELD(nfs_args_t.fh_len)
849 AMU_CHECK_FIELD(nfs_args_t.fhsize)
850 AMU_CHECK_FIELD(nfs_args_t.gfs_flags)
851 AMU_CHECK_FIELD(nfs_args_t.namlen)
852 AMU_CHECK_FIELD(nfs_args_t.optstr)
853 AMU_CHECK_FIELD(nfs_args_t.proto)
854 AMU_CHECK_FIELD(nfs_args_t.sotype)
855 AMU_CHECK_FIELD(nfs_args_t.version)
856 AMU_CHECK_FIELD(struct ifreq.ifr_addr)
857 AMU_CHECK_FIELD(struct ifaddrs.ifa_next)
858 AMU_CHECK_FIELD(struct sockaddr.sa_len)
859 AMU_CHECK_FIELD(struct umntrequest.devid)
860 dnl This one is for Irix
861 AMU_CHECK_FIELD(autofs_args_t.addr)
862 dnl For Solaris 2.8+
863 AMU_CHECK_FIELD(mounta.optptr)
864
865 dnl ======================================================================
866
867 dnl ######################################################################
868 dnl MAP TYPES
869 AC_MSG_NOTICE(*** MAP TYPES ***)
870 dnl DBM is obsolete, use NDBM
871 dnl AMU_CHECK_MAP_FUNCS(dbminit dbmopen, dbm)
872 AMU_CHECK_MAP_FUNCS(fgets, file)
873 AMU_CHECK_MAP_FUNCS(waitpid, exec)
874 dnl Define HESIOD map if user wanted it, and both headers and libraries exist
875 if test "$with_hesiod" = "yes" && test "$ac_cv_header_hesiod_h" = "yes"
876 then
877 AMU_CHECK_MAP_FUNCS(hes_init hesiod_init, hesiod)
878 fi
879 dnl Define LDAP map if user wanted it, and both headers and libraries exist
880 if test "$with_ldap" = "yes" && test "$ac_cv_header_ldap_h" = "yes"
881 then
882 AMU_CHECK_MAP_FUNCS(ldap_open, ldap)
883 fi
884 if test "$with_ndbm" = "yes" -a "$ac_cv_lib_new_dbm" != ""
885 then
886 AMU_CHECK_MAP_FUNCS(dbm_open, $ac_cv_lib_new_dbm, ndbm)
887 fi
888 AMU_CHECK_MAP_FUNCS(yp_get_default_domain yp_all, nis)
889 AMU_CHECK_MAP_FUNCS(nis_domain_of, nisplus, nisplus)
890 AMU_CHECK_MAP_FUNCS(getpwnam, passwd)
891 AMU_CHECK_MAP_FUNCS(opendir, union)
892 dnl ======================================================================
893
894 dnl *********
895 AMU_SAVE_STATE
896 dnl *********
897
898 dnl ######################################################################
899 dnl FILESYSTEM TYPES
900 AC_MSG_NOTICE(*** FILESYSTEM TYPES ***)
901 dnl check for filesystem existence if MNTTYPE_<filesystem> exists, then if
902 dnl MOUNT_<fs>, then MNT_<fs>, then in /proc/filesystems, and getvfsbyname()
903 AMU_CHECK_FS_MNTENT(autofs)
904 AMU_CHECK_FS_MNTENT(cdfs hsfs cd9660 iso9660 isofs cdrom, cdfs)
905 AMU_CHECK_FS_MNTENT(cache)
906 AMU_CHECK_FS_MNTENT(lofs lo, lofs)
907 AMU_CHECK_FS_MNTENT(mfs)
908 AMU_CHECK_FS_MNTENT(nfs)
909 dnl This test for nfs3 was moved up, because other tests depend on it
910 dnl especially checking for nfsv3 file handle structure types
911 dnl AMU_CHECK_FS_MNTENT(nfs3)
912 AMU_CHECK_FS_MNTENT(vfat pcfs pc msdos msdosfs fat, pcfs)
913 AMU_CHECK_FS_MNTENT(tfs)
914 AMU_CHECK_FS_MNTENT(tmpfs)
915 AMU_CHECK_FS_MNTENT(ext2 ffs ufs 42 efs xfs jfs ultrix, ufs)
916 dnl openbsd 2.4 introduce a new file system called xfs, which is not
917 dnl the same as irix-s xfs. Sigh, why did openbsd have to use such a name!
918 case "${host_os_name}" in
919 openbsd* ) ;;
920 * ) AMU_CHECK_FS_MNTENT(xfs) ;;
921 esac
922 AMU_CHECK_FS_MNTENT(efs)
923 dnl new ones in bsd44
924 AMU_CHECK_FS_MNTENT(null nullfs, nullfs)
925 AMU_CHECK_FS_MNTENT(union unionfs, unionfs)
926 AMU_CHECK_FS_MNTENT(umap umapfs, umapfs)
927
928 dnl check for filesystem existence if their headers exist
929 dnl AMU_CHECK_FS_HEADERS(cfs.h, cfs)
930 AMU_CHECK_FS_HEADERS(hsfs/hsfs.h, cdfs)
931 AMU_CHECK_FS_HEADERS(tmpfs/tmp.h, tmpfs)
932 AMU_CHECK_FS_HEADERS(sys/fs/autofs.h, autofs)
933 AMU_CHECK_FS_HEADERS(sys/fs/cachefs_fs.h, cachefs)
934 dnl AMU_CHECK_FS_HEADERS(jfs/jfsmount.h, ufs)
935 dnl ======================================================================
936 dnl AUTOMOUNTER FILESYSTEM TYPES
937 AC_MSG_NOTICE(*** AUTOMOUNTER FILESYSTEM TYPES ***)
938 AMU_CHECK_AMU_FS(auto, automounter)
939 AMU_CHECK_AMU_FS(direct, direct automount)
940 AMU_CHECK_AMU_FS(toplvl, top-level)
941 AMU_CHECK_AMU_FS(error, error)
942 dnl AMU_CHECK_AMU_FS(inherit, inheritance)
943 AMU_CHECK_AMU_FS(program, program)
944 AMU_CHECK_AMU_FS(link, symlink)
945 AMU_CHECK_AMU_FS(linkx, symlink with existence check)
946 AMU_CHECK_AMU_FS(host, host (nfs), nfs)
947 AMU_CHECK_AMU_FS(nfsx, multi-nfs mount, nfs)
948 AMU_CHECK_AMU_FS(nfsl, NFS with local existence check)
949 AMU_CHECK_AMU_FS(union, union)
950 dnl AMU_CHECK_AMU_FS(autofs, Sun AutoFS, autofs)
951 dnl ======================================================================
952
953 dnl *********
954 AMU_SAVE_STATE
955 dnl *********
956
957 dnl ######################################################################
958 dnl MOUNTING TYPES AND NAMES FOR MOUNTING TABLE
959 dnl check for mount(2) type/name for filesystem (MNTTYPE_*, MOUNT_*)
960 AC_MSG_NOTICE(*** MOUNTING TYPES ***)
961 AMU_CHECK_MOUNT_TYPE(nfs)
962 AMU_CHECK_MOUNT_TYPE(nfs3)
963 AMU_CHECK_MOUNT_TYPE(4.2 4.3 4.4 ext2 ufs efs xfs ffs jfs ultrix, ufs)
964 AMU_CHECK_MOUNT_TYPE(xfs)
965 AMU_CHECK_MOUNT_TYPE(efs)
966 AMU_CHECK_MOUNT_TYPE(cdfs hsfs cd9660 iso9660 isofs cdrom, cdfs)
967 AMU_CHECK_MOUNT_TYPE(vfat pcfs pc msdos msdosfs fat, pcfs)
968 AMU_CHECK_MOUNT_TYPE(mfs)
969 AMU_CHECK_MOUNT_TYPE(tmpfs tmp, tmpfs)
970 AMU_CHECK_MOUNT_TYPE(lofs lo, lofs)
971 AMU_CHECK_MOUNT_TYPE(lfs)
972 AMU_CHECK_MOUNT_TYPE(afs)
973 AMU_CHECK_MOUNT_TYPE(autofs)
974 AMU_CHECK_MOUNT_TYPE(tfs)
975 AMU_CHECK_MOUNT_TYPE(cachefs)
976 AMU_CHECK_MOUNT_TYPE(ignore)
977 dnl new ones in bsd44
978 AMU_CHECK_MOUNT_TYPE(null nullfs, nullfs)
979 AMU_CHECK_MOUNT_TYPE(union unionfs, unionfs)
980 AMU_CHECK_MOUNT_TYPE(umap umapfs, umapfs)
981 dnl ######################################################################
982 dnl check for mnttab name for filesystem
983 AC_MSG_NOTICE(*** MOUNTING TABLE NAMES ***)
984 AMU_CHECK_MNTTAB_TYPE(nfs)
985 AMU_CHECK_MNTTAB_TYPE(nfs3)
986 AMU_CHECK_MNTTAB_TYPE(ext2 ufs jfs 4.2 4.3 4.4 efs xfs ffs, ufs)
987 AMU_CHECK_MNTTAB_TYPE(xfs)
988 AMU_CHECK_MNTTAB_TYPE(efs)
989 AMU_CHECK_MNTTAB_TYPE(cdfs hsfs cd9660 iso9660 isofs cdrom, cdfs)
990 AMU_CHECK_MNTTAB_TYPE(vfat pcfs pc msdos msdosfs fat, pcfs)
991 AMU_CHECK_MNTTAB_TYPE(mfs)
992 AMU_CHECK_MNTTAB_TYPE(tmpfs tmp, tmpfs)
993 AMU_CHECK_MNTTAB_TYPE(lofs lo, lofs)
994 AMU_CHECK_MNTTAB_TYPE(lfs)
995 AMU_CHECK_MNTTAB_TYPE(afs)
996 AMU_CHECK_MNTTAB_TYPE(autofs)
997 AMU_CHECK_MNTTAB_TYPE(tfs)
998 AMU_CHECK_MNTTAB_TYPE(cachefs)
999 dnl new ones in bsd44
1000 AMU_CHECK_MNTTAB_TYPE(null nullfs, nullfs)
1001 AMU_CHECK_MNTTAB_TYPE(union unionfs, unionfs)
1002 AMU_CHECK_MNTTAB_TYPE(umap umapfs, umapfs)
1003 dnl ======================================================================
1004
1005 dnl *********
1006 AMU_SAVE_STATE
1007 dnl *********
1008
1009 dnl ######################################################################
1010 dnl Mount Table option name strings like MNTOPT_*
1011 dnl if found, defines MNTTAB_OPT_*
1012 AC_MSG_NOTICE(*** MOUNT TABLE OPTION NAME STRINGS ***)
1013 AMU_CHECK_MNTTAB_OPTS( \
1014 acdirmax \
1015 acdirmin \
1016 acregmax \
1017 acregmin \
1018 actimeo \
1019 compress \
1020 dev \
1021 fsid \
1022 grpid \
1023 ignore \
1024 intr \
1025 maxgroups \
1026 multi \
1027 noac \
1028 noauto \
1029 noconn \
1030 nocto \
1031 nosub \
1032 nosuid \
1033 pgthresh \
1034 port \
1035 posix \
1036 private \
1037 proplist \
1038 proto \
1039 public \
1040 retrans \
1041 retry \
1042 ro \
1043 rsize \
1044 rw \
1045 soft \
1046 spongy \
1047 suid \
1048 symttl \
1049 timeo \
1050 vers \
1051 wsize \
1052 )
1053 dnl ======================================================================
1054
1055 dnl *********
1056 AMU_SAVE_STATE
1057 dnl *********
1058
1059 dnl ######################################################################
1060 dnl Generic mount(2) system call flags (hex/int numbers) like M_*/MS_*/MNT_*
1061 dnl if found, defines MNT2_GEN_OPT_*
1062 AC_MSG_NOTICE(*** GENERIC MOUNT(2) OPTIONS ***)
1063 AMU_CHECK_MNT2_GEN_OPTS( \
1064 async \
1065 automntfs \
1066 bind \
1067 cache \
1068 data \
1069 detach \
1070 force \
1071 fss \
1072 grpid \
1073 ignore \
1074 jfs \
1075 multi \
1076 newtype \
1077 nfs \
1078 nocache \
1079 nodev \
1080 noexec \
1081 nomnttab \
1082 nosub \
1083 nosuid \
1084 optionstr \
1085 overlay \
1086 quota \
1087 rdonly \
1088 ronly \
1089 sync \
1090 synchronous \
1091 )
1092 dnl ======================================================================
1093
1094 dnl *********
1095 AMU_SAVE_STATE
1096 dnl *********
1097
1098 dnl ######################################################################
1099 dnl NFS-specific mount(2) options (hex numbers) like NFSMNT_*/NFS_MOUNT_*
1100 AC_MSG_NOTICE(*** NFS-SPECIFIC MOUNT(2) OPTIONS ***)
1101 dnl if found, defines MNT2_NFS_OPT_*
1102 AMU_CHECK_MNT2_NFS_OPTS( \
1103 acdirmax \
1104 acdirmin \
1105 acregmax \
1106 acregmin \
1107 auto \
1108 deadthresh \
1109 dumbtimr \
1110 fsname \
1111 grpid \
1112 hostname \
1113 ignore \
1114 int \
1115 intr \
1116 kerb \
1117 knconf \
1118 leaseterm \
1119 maxgrps \
1120 nfsv3 \
1121 noac \
1122 noconn \
1123 nocto \
1124 noint \
1125 nonlm \
1126 nqnfs \
1127 pgthresh \
1128 posix \
1129 private \
1130 proplist \
1131 rdirplus \
1132 readahead \
1133 readdirsize \
1134 resvport \
1135 retrans \
1136 ronly \
1137 rsize \
1138 soft \
1139 spongy \
1140 symttl \
1141 tcp \
1142 timeo \
1143 ver3 \
1144 wsize \
1145 xlatecookie \
1146 )
1147 dnl ======================================================================
1148
1149 dnl ######################################################################
1150 dnl CDFS-specific mount(2) options (hex numbers) like M_*
1151 AC_MSG_NOTICE(*** CDFS-SPECIFIC MOUNT(2) OPTIONS ***)
1152 dnl if found, defines MNT2_CDFS_OPT_*
1153 AMU_CHECK_MNT2_CDFS_OPTS(\
1154 defperm \
1155 extatt \
1156 gens \
1157 nodefperm \
1158 norrip \
1159 noversion \
1160 rrip \
1161 )
1162 dnl ======================================================================
1163
1164 dnl *********
1165 AMU_SAVE_STATE
1166 dnl *********
1167
1168 dnl ######################################################################
1169 dnl SYSTEM-SPECIFIC TESTS
1170 AC_MSG_NOTICE(*** SYSTEM-SPECIFIC TESTS ***)
1171 dnl ======================================================================
1172 dnl Mount table style
1173 AMU_CHECK_MNTTAB_STYLE
1174 AMU_CHECK_HIDE_MOUNT_TYPE
1175 AMU_CHECK_MNTTAB_LOCATION
1176 dnl -----------------------------------------------------------------------
1177 dnl check if has mnttab/mntent or in-kernel mount tables
1178 dnl this test must follow AMU_CHECK_MNTTAB_LOCATION and
1179 dnl AMU_CHECK_MNT2_GEN_OPTS(nomnttab)
1180 if test "$ac_cv_have_struct_mnttab" != yes && test "$ac_cv_have_struct_mntent" != yes && test "$ac_cv_mnttab_location" = file
1181 then
1182 AC_MSG_ERROR(
1183 [No definition found for struct mnttab or struct mntent
1184 and this system stores its mount tables on files (not in kernel).
1185 This can be due to a misconfigured system, one for which am-utils
1186 was not ported to yet, or a bug in the am-utils sources. Check
1187 config.log for details and report them to am-utils@am-utils.org please.])
1188 fi
1189 dnl -----------------------------------------------------------------------
1190 AMU_CHECK_MNTTAB_FILE_NAME
1191 AMU_CHECK_MOUNT_TRAP
1192 AMU_CHECK_MOUNT_STYLE
1193 AMU_CHECK_UMOUNT_STYLE
1194 AMU_CHECK_AUTOFS_STYLE
1195 AMU_CHECK_UNMOUNT_CALL
1196 AMU_CHECK_UNMOUNT_ARGS
1197 AMU_CHECK_NFS_SA_DREF
1198 AMU_CHECK_NFS_HN_DREF
1199 AMU_CHECK_NFS_FH_DREF
1200 AMU_CHECK_NFS_SOCKET_CONNECTION
1201 AMU_CHECK_CHECKMOUNT_STYLE
1202 AMU_CHECK_RESTARTABLE_SIGNAL_HANDLER
1203 AMU_CHECK_GNU_GETOPT
1204 dnl ======================================================================
1205
1206 dnl ######################################################################
1207 dnl Check for tcpwrappers
1208 dnl This check is moved this far down because on modern tcpwrapper systems
1209 dnl such as openbsd, the caller must provide two symbols: deny_severity and
1210 dnl allow_severity, which determine the logging level of rejected and
1211 dnl requested requests, respectively. If this check happens too early, then
1212 dnl $LIBS includes -lwrap, which causes many subsequent tests to fail with
1213 dnl missing symbols.
1214 AC_CHECK_LIB(wrap, hosts_ctl,
1215 [
1216 AC_DEFINE(HAVE_LIBWRAP)
1217 WRAPLIB="-lwrap"
1218 ])
1219 dnl replace value of WRAPLIB in specific Makefiles
1220 AC_SUBST(WRAPLIB)
1221 dnl next, check if libwrap defines allow/deny_severity or expects the caller to define it
1222 if test "$ac_cv_lib_wrap_hosts_ctl" = "yes"
1223 then
1224 AMU_CHECK_LIBWRAP_SEVERITY
1225 fi
1226 dnl ======================================================================
1227
1228 dnl *********
1229 AMU_SAVE_STATE
1230 dnl *********
1231
1232 dnl ######################################################################
1233 dnl output files
1234 AC_MSG_NOTICE(*** OUTPUT FILES ***)
1235 dnl The am_utils_link_files variable is set in macros in aclocal.m4
1236 AC_CONFIG_LINKS(${am_utils_link_files})
1237 dnl ==========================================================================
1238 dnl This is necessary so that .o files in LIBOBJS are also built via
1239 dnl the ANSI2KNR-filtering rules.
1240 LIB@&t@OBJS=`echo "$LIB@&t@OBJS" |
1241 sed 's,\.[[^.]]* ,$U&,g;s,\.[[^.]]*$,$U&,'`
1242 LTLIBOBJS=`echo "$LIB@&t@OBJS" |
1243 sed 's,\.[[^.]]* ,.lo ,g;s,\.[[^.]]*$,.lo,'`
1244 AC_SUBST(LTLIBOBJS)
1245 dnl XXX: next two lines are temp hack until automake newer than 1.4 comes out
1246 AMU_LIB_OBJS="${LTLIBOBJS}"
1247 AC_SUBST(AMU_LIB_OBJS)
1248 dnl for Makefile rule to regenerate libtool
1249 AC_SUBST(LIBTOOL_DEPS)
1250 dnl ==========================================================================
1251 AC_CONFIG_FILES( \
1252 aux_conf.h \
1253 \
1254 Makefile \
1255 amd/Makefile \
1256 amq/Makefile \
1257 \
1258 fixmount/Makefile \
1259 fsinfo/Makefile \
1260 hlfsd/Makefile \
1261 libamu/Makefile \
1262 mk-amd-map/Makefile \
1263 wire-test/Makefile \
1264 \
1265 scripts/Makefile \
1266 doc/Makefile \
1267 \
1268 scripts/am-eject \
1269 scripts/amd2ldif \
1270 scripts/amd2sun \
1271 scripts/automount2amd \
1272 scripts/ctl-amd \
1273 scripts/ctl-hlfsd \
1274 scripts/expn \
1275 scripts/fixrmtab \
1276 scripts/fix-amd-map \
1277 scripts/lostaltmail \
1278 scripts/redhat-ctl-amd \
1279 scripts/wait4amd \
1280 scripts/wait4amd2die \
1281 )
1282 AC_OUTPUT
1283 dnl ======================================================================
1284
1285 dnl ######################################################################
1286 AC_MSG_NOTICE(*** END OF CONFIGURATION ***)
1287 dnl end of configure.in for am-utils-6.x