Am-Utils Cross Reference
am-utils/configure.in

source navigation ]
diff markup ]
identifier search ]
freetext search ]
file search ]
 
Version: 6.0.1 ] [ 6.0.2 ] [ 6.0.3 ] [ 6.0.4 ] [ 6.0.5 ] [ 6.0.6 ] [ 6.0.7 ] [ 6.0.8 ] [ 6.0.9 ] [ 6.0.10 ] [ 6.1 ] [ 6.1.1 ]

  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

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
This page is hosted at the Filesystems and Storage Lab at Stony Brook.