1206 lines
34 KiB
Plaintext
1206 lines
34 KiB
Plaintext
dnl configure.in file for am-utils-6.x
|
|
dnl Contains general GNU-autoconf macros.
|
|
dnl Author: Erez Zadok <ezk@cs.sunysb.edu>
|
|
dnl
|
|
dnl ######################################################################
|
|
dnl UNCOMMENT THE NEXT FEW LINES FOR DEBUGGING CONFIGURE
|
|
dnl define([AC_CACHE_LOAD], )dnl
|
|
dnl define([AC_CACHE_SAVE], )dnl
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl INITIALIZATION
|
|
dnl AC_INIT
|
|
dnl new init style: PACKAGE, VERSION, BUG-REPORTING-ADDRESS
|
|
AC_INIT([am-utils],[6.1b5pre],[am-utils@am-utils.org])
|
|
AC_MSG_NOTICE(*** INITIALIZATION ***)
|
|
AC_CONFIG_SRCDIR([amd/amd.c])
|
|
AM_CONFIG_HEADER(config.h)
|
|
AH_TOP([
|
|
/*
|
|
* Start of am-utils-6.x config.h file.
|
|
* Erez Zadok <ezk @ cs.sunysb.edu>
|
|
*
|
|
* DO NOT EDIT BY HAND.
|
|
* Note: generated by autoheader from configure.in.
|
|
*/
|
|
|
|
#ifndef _CONFIG_H
|
|
#define _CONFIG_H
|
|
])
|
|
dnl add actual "#undef" commands into m4/macros/header_templates.m4
|
|
AH_BOTTOM([
|
|
/****************************************************************************/
|
|
/*** INCLUDE localconfig.h if it exists, to allow users to make some ***/
|
|
/*** compile time configuration changes. ***/
|
|
/****************************************************************************/
|
|
/* does a local configuration file exist? */
|
|
#undef HAVE_LOCALCONFIG_H
|
|
#ifdef HAVE_LOCALCONFIG_H
|
|
# include <localconfig.h>
|
|
#endif /* HAVE_LOCALCONFIG_H */
|
|
|
|
#endif /* not _CONFIG_H */
|
|
|
|
/*
|
|
* Local Variables:
|
|
* mode: c
|
|
* End:
|
|
*/
|
|
|
|
/* End of am-utils-6.x config.h file */
|
|
])
|
|
dnl
|
|
dnl AC_CONFIG_AUX_DIR(m4)
|
|
AC_PREREQ(2.52)
|
|
AC_REVISION($Revision: 1.1.1.5 $)
|
|
AC_COPYRIGHT([Copyright (c) 1997-2004 Erez Zadok])
|
|
dnl find out system type
|
|
AC_MSG_NOTICE(*** SYSTEM TYPES ***)
|
|
dnl run by libtool, but must be kept here because HOST_MACROS depends on it
|
|
AC_CANONICAL_HOST
|
|
AMU_HOST_MACROS
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl PACKAGE NAME AND VERSION
|
|
AC_MSG_NOTICE(*** PACKAGE NAME AND VERSION ***)
|
|
AMU_PACKAGE_NAME($PACKAGE_NAME)
|
|
AMU_PACKAGE_VERSION($PACKAGE_VERSION)
|
|
AMU_PACKAGE_BUGREPORT($PACKAGE_BUGREPORT)
|
|
AM_INIT_AUTOMAKE($PACKAGE_NAME, $PACKAGE_VERSION)
|
|
dnl SET (shared) library version. Update it only before major release!
|
|
dnl Clarification:
|
|
dnl The major number should change when an incompatible change is made to
|
|
dnl the API; the minor number should change when an API is added; the patch
|
|
dnl level should change when an internal implementation change is made that
|
|
dnl does not affect the API.
|
|
dnl
|
|
dnl In other words: if the major changes, the library is incompatible with
|
|
dnl older ones; if the minor changes, the library is backwards compatible
|
|
dnl with libraries using the same major; if the patchlevel changes, the
|
|
dnl library is backward and forward compatible with libraries using the same
|
|
dnl major and minor.
|
|
dnl
|
|
dnl For sanity, the lower numbers should be set to 0 when a higher number
|
|
dnl is changed.
|
|
dnl last version info was 3:2:1 (am-utils-6.0.2)
|
|
dnl last version info was 4:0:2 (am-utils-6.0.3)
|
|
dnl last version info was 4:1:2 (am-utils-6.0.4)
|
|
dnl
|
|
dnl We increase the major number for am-utils-6.1, because it has new API's
|
|
dnl and removes some old API's.
|
|
LIBTOOL_LDFLAGS="-version-info 3:0:0"
|
|
AC_SUBST(LIBTOOL_LDFLAGS)
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl ALTERNATIVE PROGRAMS
|
|
dnl Part 1: these are required before "unix variants"
|
|
dnl ======================================================================
|
|
dnl Particular Program Checks
|
|
AC_MSG_NOTICE(*** PARTICULAR PROGRAMS (part 1) ***)
|
|
dnl AC-PROG-LIBTOOL will run this, but we need this to squelch warnings
|
|
dnl from autoconf about AMU_TRY_COMPILE running before AC_AIX/AC_ISC_POSIX
|
|
AC_PROG_CC
|
|
AC_PROG_CPP
|
|
AC_PROG_CC_C_O
|
|
AC_PROG_GCC_TRADITIONAL
|
|
AC_PROG_MAKE_SET
|
|
AC_ISC_POSIX
|
|
AC_AIX
|
|
dnl XXX: available in autoconf-2.14
|
|
dnl AC_PROG_CC_STDC
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl OPTION PROCESSING
|
|
AC_MSG_NOTICE(*** OPTION PROCESSING ***)
|
|
dnl Do we want LDAP support ?
|
|
AMU_WITH_ADDON(ldap, LDAP)
|
|
dnl Do we want HESIOD support ?
|
|
AMU_WITH_ADDON(hesiod, HESIOD)
|
|
dnl Do we want NDBM support ?
|
|
AMU_WITH_ADDON(ndbm, NDBM)
|
|
dnl Debugging options (yes, mem, or no)
|
|
AMU_OPT_DEBUG
|
|
dnl additional preprocessor options for configuration/compilation
|
|
AMU_OPT_CPPFLAGS
|
|
dnl additional linker -l options for configuration/compilation
|
|
AMU_OPT_LIBS
|
|
dnl additional linker -L options for configuration/compilation
|
|
AMU_OPT_LDFLAGS
|
|
dnl Which options to add to CFLAGS for compilation only?
|
|
AMU_OPT_AMU_CFLAGS
|
|
dnl check if a local configuration file exists
|
|
AMU_LOCALCONFIG
|
|
dnl turn off maintainer-mode Makefile rules, unless using --enable-maintainer-mode
|
|
AM_MAINTAINER_MODE
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
AC_MSG_NOTICE(*** LIBTOOL ***)
|
|
dnl my version of prog_libtool will not build shared by default
|
|
dnl AM_PROG_LIBTOOL2
|
|
dnl build static libraries by default
|
|
AC_DISABLE_SHARED
|
|
dnl XXX: for autoconf-2.14: use AC_PROG_LIBTOOL, not AM_PROG_LIBTOOL
|
|
case ${host_os} in
|
|
# Temporarily undo renaming of "linux-gnu" to "linux", because
|
|
# libtool only looks for "linux-gnu". Sigh.
|
|
linux ) host_os=linux-gnu ;;
|
|
esac
|
|
dnl this line must appear only once and on its own line
|
|
dnl (hence the double case statements above and below)
|
|
AC_PROG_LIBTOOL
|
|
case ${host_os} in
|
|
# end temporary renaming of "linux-gnu" to "linux"
|
|
linux-gnu ) host_os=linux ;;
|
|
esac
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl ADDITIONAL OPTION PROCESSING (must be done after CC is defined)
|
|
AC_MSG_NOTICE(*** EXTRA OPTION PROCESSING ***)
|
|
AMU_OS_CPPFLAGS
|
|
AMU_OS_CFLAGS
|
|
AMU_OS_LDFLAGS
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl Some of these macros must be called before any call to the C compiler
|
|
AC_MSG_NOTICE(*** UNIX VARIANTS ***)
|
|
dnl UNIX VARIANTS
|
|
dnl AC_AIX
|
|
dnl AC_ISC_POSIX
|
|
AMU_LINUX_HEADERS
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl ALTERNATIVE PROGRAMS
|
|
dnl Part 2: these are required after "unix variants"
|
|
dnl ======================================================================
|
|
dnl Particular Program Checks (part 2)
|
|
AC_MSG_NOTICE(*** PARTICULAR PROGRAMS (part 2) ***)
|
|
AC_PROG_INSTALL
|
|
dnl the next two are run or supported natively by libtool
|
|
dnl AC_PROG_LN_S
|
|
dnl AC_PROG_RANLIB
|
|
AC_PROG_YACC
|
|
AM_PROG_LEX
|
|
|
|
dnl ======================================================================
|
|
dnl Generic Program Checks
|
|
AC_MSG_NOTICE(*** GENERIC PROGRAMS ***)
|
|
AC_PATH_PROGS(AR, ar, :)
|
|
AC_PATH_PROGS(PERL, perl5 perl4 perl, /usr/bin/perl)
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl LIBRARY FILES
|
|
dnl ======================================================================
|
|
dnl Note that the configuration order of libraries is in reverse of linkage
|
|
dnl for example, linking of the first two is -lc -lnsl.
|
|
AC_MSG_NOTICE(*** LIBRARY FILES ***)
|
|
|
|
dnl libnsl/libsocket are needed only on solaris and some svr4 systems.
|
|
dnl Using a typical macro has proven unsuccesful, because on some other
|
|
dnl systems such as irix, including libnsl and or libsocket actually breaks
|
|
dnl lots of code. So I am forced to use a special purpose macro that sets
|
|
dnl the libraries based on the OS. Sigh. -Erez.
|
|
AMU_CHECK_OS_LIBS
|
|
|
|
dnl librpc and librpcsvc are needed on Solaris (I think)
|
|
AC_CHECK_LIB(rpc, clnt_sperrno)
|
|
AC_CHECK_LIB(rpcsvc, xdr_fhandle)
|
|
dnl Linux RedHat 5.1 puts yp functions only in libnsl (libnsl broken on aix)
|
|
AC_CHECK_FUNC(yp_all,,AC_CHECK_LIB(nsl, yp_all))
|
|
|
|
dnl hesiod library may not link unless libresolv is included
|
|
if test "$with_hesiod" = "yes"; then
|
|
AMU_CHECK_LIB2(hesiod, hes_init,,, -lresolv)
|
|
fi
|
|
if test "$with_ldap" = "yes"; then
|
|
AMU_CHECK_LIB2(ldap, ldap_open,,, -llber)
|
|
AC_CHECK_FUNCS(ldap_enable_cache)
|
|
fi
|
|
|
|
dnl Digital UNIX V4.0 and Solaris 7 have POSIX.1c functions in -lrt
|
|
dnl Solaris 2.6 only has -lposix4; in Solaris 7, this is a symlink to -lrt,
|
|
dnl so only use one of them
|
|
case "$ac_cv_opt_debug" in
|
|
yes | mem )
|
|
AC_CHECK_LIB(rt, clock_gettime,, AC_CHECK_LIB(posix4, clock_gettime))
|
|
;;
|
|
esac
|
|
|
|
dnl ######################################################################
|
|
dnl LIBRARY FUNCTIONS
|
|
dnl ======================================================================
|
|
dnl Particular Function Checks
|
|
AC_MSG_NOTICE(*** PARTICULAR LIBRARY FUNCTIONS ***)
|
|
AC_FUNC_ALLOCA
|
|
dnl This GETMNTENT test will add -lgen to LIBS if needed. We may need it
|
|
dnl if we have to build am-utils on Irix 4, PTX, or Unixware.
|
|
dnl AC_FUNC_GETMNTENT
|
|
AMU_FUNC_BAD_MEMCMP
|
|
AMU_FUNC_BAD_YP_ALL
|
|
AC_FUNC_FORK([])
|
|
AC_FUNC_WAIT3
|
|
AC_FUNC_GETPGRP
|
|
AC_FUNC_SETPGRP
|
|
dnl ======================================================================
|
|
dnl Generic Function Checks
|
|
AC_MSG_NOTICE(*** GENERIC LIBRARY FUNCTIONS ***)
|
|
AC_CHECK_FUNCS( \
|
|
__seterr_reply \
|
|
_seterr_reply \
|
|
bcmp \
|
|
bcopy \
|
|
bzero \
|
|
clnt_create \
|
|
clnt_create_vers \
|
|
clnt_create_vers_timed \
|
|
clnt_spcreateerror \
|
|
clock_gettime \
|
|
cnodeid \
|
|
dg_mount \
|
|
flock \
|
|
fsmount \
|
|
get_myaddress \
|
|
getccent \
|
|
getcwd \
|
|
getdomainname \
|
|
getdtablesize \
|
|
gethostname \
|
|
getifaddrs \
|
|
getmntinfo \
|
|
getmountent \
|
|
getpagesize \
|
|
gettimeofday \
|
|
hasmntopt \
|
|
hes_init \
|
|
hesiod_init \
|
|
hesiod_reload \
|
|
hesiod_to_bind \
|
|
memcmp \
|
|
memcpy \
|
|
memmove \
|
|
memset \
|
|
mkdir \
|
|
mkstemp \
|
|
mntctl \
|
|
mlockall \
|
|
mount \
|
|
mountsyscall \
|
|
plock \
|
|
regcomp \
|
|
regexec \
|
|
rmdir \
|
|
select \
|
|
seteuid \
|
|
setitimer \
|
|
setresuid \
|
|
setsid \
|
|
sigaction \
|
|
signal \
|
|
socket \
|
|
strchr \
|
|
strcspn \
|
|
strcasecmp \
|
|
strdup \
|
|
strerror \
|
|
strspn \
|
|
strstr \
|
|
svc_getreq \
|
|
svc_getreqset \
|
|
sysfs \
|
|
syslog \
|
|
uname \
|
|
umount \
|
|
unmount \
|
|
uvmount \
|
|
vfork \
|
|
vfsmount \
|
|
vmount \
|
|
vsnprintf \
|
|
wait3 \
|
|
waitpid \
|
|
)
|
|
AC_REPLACE_FUNCS( \
|
|
clnt_sperrno \
|
|
hasmntopt \
|
|
strcasecmp \
|
|
strdup \
|
|
strerror \
|
|
strstr \
|
|
ualarm \
|
|
)
|
|
dnl all xdr_* functions are implemented in libamu/xdr_func.c
|
|
AC_CHECK_FUNCS( \
|
|
xdr_attrstat \
|
|
xdr_createargs \
|
|
xdr_dirlist \
|
|
xdr_diropargs \
|
|
xdr_diropokres \
|
|
xdr_diropres \
|
|
xdr_dirpath \
|
|
xdr_entry \
|
|
xdr_exportnode \
|
|
xdr_exports \
|
|
xdr_fattr \
|
|
xdr_fhandle \
|
|
xdr_fhstatus \
|
|
xdr_filename \
|
|
xdr_ftype \
|
|
xdr_groupnode \
|
|
xdr_groups \
|
|
xdr_linkargs \
|
|
xdr_mountbody \
|
|
xdr_mountlist \
|
|
xdr_name \
|
|
xdr_nfs_fh \
|
|
xdr_nfscookie \
|
|
xdr_nfspath \
|
|
xdr_nfsstat \
|
|
xdr_nfstime \
|
|
xdr_pointer \
|
|
xdr_readargs \
|
|
xdr_readdirargs \
|
|
xdr_readdirres \
|
|
xdr_readlinkres \
|
|
xdr_readokres \
|
|
xdr_readres \
|
|
xdr_renameargs \
|
|
xdr_sattr \
|
|
xdr_sattrargs \
|
|
xdr_statfsokres \
|
|
xdr_statfsres \
|
|
xdr_symlinkargs \
|
|
xdr_writeargs \
|
|
)
|
|
dnl ======================================================================
|
|
|
|
dnl *********
|
|
AMU_SAVE_STATE
|
|
dnl *********
|
|
|
|
dnl ######################################################################
|
|
dnl HEADER FILES
|
|
dnl ======================================================================
|
|
dnl Particular Header Checks
|
|
AC_MSG_NOTICE(*** PARTICULAR HEADER FILES ***)
|
|
AC_HEADER_DIRENT
|
|
AC_HEADER_STDC
|
|
AC_HEADER_SYS_WAIT
|
|
dnl ======================================================================
|
|
dnl Generic Header Checks
|
|
AC_MSG_NOTICE(*** GENERIC HEADER FILES ***)
|
|
AC_CHECK_HEADERS( \
|
|
arpa/nameser.h \
|
|
arpa/inet.h \
|
|
bsd/rpc/rpc.h \
|
|
cdfs/cdfsmount.h \
|
|
cdfs/cdfs_mount.h \
|
|
db1/ndbm.h \
|
|
fs/msdosfs/msdosfsmount.h \
|
|
gdbm/ndbm.h \
|
|
hsfs/hsfs.h \
|
|
isofs/cd9660/cd9660_mount.h \
|
|
linux/auto_fs.h \
|
|
linux/auto_fs4.h \
|
|
linux/fs.h \
|
|
linux/kdev_t.h \
|
|
linux/list.h \
|
|
linux/loop.h \
|
|
linux/nfs.h \
|
|
linux/nfs_mount.h \
|
|
linux/posix_types.h \
|
|
machine/endian.h \
|
|
msdosfs/msdosfsmount.h \
|
|
net/errno.h \
|
|
net/if.h \
|
|
net/if_var.h \
|
|
net/route.h \
|
|
netinet/if_ether.h \
|
|
netinet/in.h \
|
|
nfs/export.h \
|
|
nfs/mount.h \
|
|
nfs/nfs.h \
|
|
nfs/nfs_clnt.h \
|
|
nfs/nfs_gfs.h \
|
|
nfs/nfs_mount.h \
|
|
nfs/nfsmount.h \
|
|
nfs/nfsproto.h \
|
|
nfs/nfsv2.h \
|
|
nfs/pathconf.h \
|
|
nfs/rpcv2.h \
|
|
nfsclient/nfsargs.h \
|
|
rpc/auth_des.h \
|
|
rpc/pmap_clnt.h \
|
|
rpc/pmap_prot.h \
|
|
rpc/rpc.h \
|
|
rpc/types.h \
|
|
rpc/xdr.h \
|
|
rpcsvc/autofs_prot.h \
|
|
rpcsvc/mount.h \
|
|
rpcsvc/mountv3.h \
|
|
rpcsvc/nfs_prot.h \
|
|
rpcsvc/nis.h \
|
|
rpcsvc/yp_prot.h \
|
|
rpcsvc/ypclnt.h \
|
|
sys/config.h \
|
|
sys/dg_mount.h \
|
|
sys/dir.h \
|
|
sys/errno.h \
|
|
sys/file.h \
|
|
sys/fs/autofs.h \
|
|
sys/fs/autofs_prot.h \
|
|
sys/fs/cachefs_fs.h \
|
|
sys/fs/efs_clnt.h \
|
|
sys/fs/nfs.h \
|
|
sys/fs/nfs/mount.h \
|
|
sys/fs/nfs/nfs_clnt.h \
|
|
sys/fs/nfs_clnt.h \
|
|
sys/fs/pc_fs.h \
|
|
sys/fs/tmp.h \
|
|
sys/fs/ufs_mount.h \
|
|
sys/fs/xfs_clnt.h \
|
|
sys/fs_types.h \
|
|
sys/fsid.h \
|
|
sys/fstyp.h \
|
|
sys/ioctl.h \
|
|
sys/lock.h \
|
|
sys/machine.h \
|
|
sys/mbuf.h \
|
|
sys/mman.h \
|
|
sys/mntctl.h \
|
|
sys/mntent.h \
|
|
sys/mnttab.h \
|
|
sys/mount.h \
|
|
sys/ndir.h \
|
|
sys/netconfig.h \
|
|
sys/param.h \
|
|
sys/pathconf.h \
|
|
sys/proc.h \
|
|
sys/resource.h \
|
|
sys/sema.h \
|
|
sys/signal.h \
|
|
sys/socket.h \
|
|
sys/sockio.h \
|
|
sys/stat.h \
|
|
sys/statfs.h \
|
|
sys/syscall.h \
|
|
sys/syslimits.h \
|
|
sys/syslog.h \
|
|
sys/time.h \
|
|
sys/tiuser.h \
|
|
sys/types.h \
|
|
sys/ucred.h \
|
|
sys/uio.h \
|
|
sys/utsname.h \
|
|
sys/vfs.h \
|
|
sys/vmount.h \
|
|
sys/vnode.h \
|
|
dnl sys/wait.h \
|
|
ufs/ufs/extattr.h \
|
|
ufs/ufs/ufsmount.h \
|
|
ufs/ufs_mount.h \
|
|
\
|
|
assert.h \
|
|
dnl cfs.h \
|
|
cluster.h \
|
|
ctype.h \
|
|
dnl dirent.h \
|
|
errno.h \
|
|
fcntl.h \
|
|
ifaddrs.h \
|
|
irs.h \
|
|
grp.h \
|
|
hesiod.h \
|
|
lber.h \
|
|
ldap.h \
|
|
libgen.h \
|
|
malloc.h \
|
|
memory.h \
|
|
mntent.h \
|
|
mnttab.h \
|
|
mount.h \
|
|
ndbm.h \
|
|
ndir.h \
|
|
netconfig.h \
|
|
netdb.h \
|
|
netdir.h \
|
|
nsswitch.h \
|
|
pwd.h \
|
|
regex.h \
|
|
resolv.h \
|
|
setjmp.h \
|
|
signal.h \
|
|
socketbits.h \
|
|
statbuf.h \
|
|
stdarg.h \
|
|
stdlib.h \
|
|
stdio.h \
|
|
string.h \
|
|
strings.h \
|
|
syslog.h \
|
|
tcpd.h \
|
|
time.h \
|
|
tiuser.h \
|
|
varargs.h \
|
|
unistd.h \
|
|
)
|
|
dnl ======================================================================
|
|
|
|
dnl ======================================================================
|
|
dnl db/ndbm/gdbm: This is serious autoconf-fu...
|
|
dnl ======================================================================
|
|
if test "$with_ndbm" = "yes"
|
|
then
|
|
if test "$ac_cv_lib_new_dbm" = "" -a "$ac_cv_header_ndbm_h" = "yes"; then
|
|
AC_CHECK_LIB(ndbm, dbm_open,
|
|
dnl some systems replaced old ndbm.h include with GNU ndbm.h, which requires
|
|
dnl libgdbm for dbm_pagfno, so check for this.
|
|
AC_CHECK_LIB(ndbm, dbm_pagfno, ac_cv_header_new_dbm="ndbm.h"; ac_cv_lib_new_dbm="ndbm",
|
|
AC_CHECK_LIB(gdbm, dbm_pagfno, ac_cv_header_new_dbm="ndbm.h"; ac_cv_lib_new_dbm="ndbm -lgdbm")))
|
|
fi
|
|
if test "$ac_cv_lib_new_dbm" = "" -a "$ac_cv_header_db1_ndbm_h" = "yes"; then
|
|
AC_CHECK_LIB(db1, dbm_open, ac_cv_header_new_dbm="db1/ndbm.h"; ac_cv_lib_new_dbm="db1")
|
|
fi
|
|
if test "$ac_cv_lib_new_dbm" = "" -a "$ac_cv_header_gdbm_ndbm_h" = "yes"; then
|
|
AC_CHECK_LIB(gdbm, dbm_open, ac_cv_header_new_dbm="gdbm/ndbm.h"; ac_cv_lib_new_dbm="gdbm")
|
|
fi
|
|
if test "$ac_cv_header_new_dbm" != "" -a "$ac_cv_lib_new_dbm" != ""; then
|
|
AC_DEFINE_UNQUOTED(NEW_DBM_H, "$ac_cv_header_new_dbm")
|
|
LIBS="-l$ac_cv_lib_new_dbm $LIBS"
|
|
fi
|
|
fi
|
|
dnl ======================================================================
|
|
|
|
dnl *********
|
|
AMU_SAVE_STATE
|
|
dnl *********
|
|
|
|
dnl ######################################################################
|
|
dnl STRUCTURES
|
|
AC_MSG_NOTICE(*** PARTICULAR STRUCTURES ***)
|
|
AC_HEADER_STAT
|
|
AC_HEADER_TIME
|
|
AC_STRUCT_TM
|
|
dnl ======================================================================
|
|
AC_MSG_NOTICE(*** GENERIC STRUCTURES ***)
|
|
dnl before any use of macros that need nfs/mount headers, must define O/S
|
|
dnl specific header to include.
|
|
AMU_CHECK_NFS_PROT_HEADERS
|
|
AMU_STRUCT_MNTENT
|
|
AMU_STRUCT_MNTTAB
|
|
dnl -----------------------------------------------------------------------
|
|
dnl check for bad hasmntopt() function after struct mntent/mnttab
|
|
dnl but only if hasmntopt() is actually defined.
|
|
if test $ac_cv_func_hasmntopt = yes
|
|
then
|
|
AMU_FUNC_BAD_HASMNTOPT
|
|
fi
|
|
dnl -----------------------------------------------------------------------
|
|
AMU_STRUCT_NFS_ARGS
|
|
AMU_STRUCT_NFS_GFS_MOUNT
|
|
dnl -----------------------------------------------------------------------
|
|
dnl cannot proceed if struct nfs_args/gfs_mount is not found!
|
|
if test "$ac_cv_have_struct_nfs_args" = notfound && test "$ac_cv_have_struct_nfs_gfs_mount" = no
|
|
then
|
|
AC_MSG_ERROR(
|
|
[Cannot find any definition for struct nfs_args!
|
|
This can be due to a misconfigured system, one for which am-utils
|
|
was not ported to yet, or a bug in the am-utils sources. Check
|
|
config.log for details and report them to am-utils@am-utils.org please.])
|
|
fi
|
|
dnl -----------------------------------------------------------------------
|
|
AMU_STRUCT_FIELD_NFS_FH
|
|
AMU_STRUCT_NFS_FH
|
|
AMU_CHECK_FS_MNTENT(nfs3)
|
|
dnl ======================================================================
|
|
|
|
dnl *********
|
|
AMU_SAVE_STATE
|
|
dnl *********
|
|
|
|
dnl ######################################################################
|
|
dnl TYPEDEFS
|
|
dnl ======================================================================
|
|
dnl Particular Typedef Checks
|
|
AC_MSG_NOTICE(*** PARTICULAR TYPEDEFS ***)
|
|
AC_TYPE_GETGROUPS
|
|
AC_TYPE_MODE_T
|
|
AC_TYPE_PID_T
|
|
AC_TYPE_SIGNAL
|
|
AC_TYPE_SIZE_T
|
|
AC_TYPE_UID_T
|
|
dnl ======================================================================
|
|
dnl Generic Typedef Checks
|
|
AC_MSG_NOTICE(*** GENERIC TYPEDEFS ***)
|
|
AMU_TYPE_TIME_T
|
|
AMU_CHECK_FHANDLE
|
|
AMU_CHECK_MTYPE_TYPE
|
|
AMU_CHECK_MTYPE_PRINTF_TYPE
|
|
AMU_TYPE_YP_ORDER_OUTORDER
|
|
AMU_TYPE_RECVFROM_FROMLEN
|
|
AMU_TYPE_AUTH_CREATE_GIDLIST
|
|
AMU_TYPE_SVC_IN_ARG
|
|
AMU_TYPE_AUTOFS_ARGS
|
|
AMU_TYPE_CACHEFS_ARGS
|
|
AMU_TYPE_CDFS_ARGS
|
|
AMU_TYPE_LOFS_ARGS
|
|
AMU_TYPE_MFS_ARGS
|
|
AMU_TYPE_PCFS_ARGS
|
|
AMU_TYPE_RFS_ARGS
|
|
AMU_TYPE_TMPFS_ARGS
|
|
AMU_TYPE_UFS_ARGS
|
|
AMU_TYPE_XFS_ARGS
|
|
AMU_TYPE_EFS_ARGS
|
|
AMU_TYPE_XDRPROC_T
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl Particular Compiler Characteristics
|
|
AC_MSG_NOTICE(*** PARTICULAR COMPILER CHARACTERISTICS ***)
|
|
AC_C_BIGENDIAN
|
|
AC_C_CONST
|
|
AC_C_INLINE
|
|
AC_C_VOLATILE
|
|
dnl AC_CHECK_SIZEOF(void *, 0)
|
|
dnl ======================================================================
|
|
dnl Generic Compiler Characteristics
|
|
AC_MSG_NOTICE(*** GENERIC COMPILER CHARACTERISTICS ***)
|
|
AMU_C_VOID_P
|
|
dnl ======================================================================
|
|
|
|
dnl *********
|
|
AMU_SAVE_STATE
|
|
dnl *********
|
|
|
|
dnl ######################################################################
|
|
AC_MSG_NOTICE(*** EXTERNAL DEFINITIONS ***)
|
|
AMU_EXTERN_SYS_ERRLIST
|
|
AMU_EXTERN_OPTARG
|
|
AMU_CHECK_EXTERNS(
|
|
clnt_spcreateerror \
|
|
clnt_sperrno \
|
|
free \
|
|
get_myaddress \
|
|
getccent \
|
|
getdomainname \
|
|
getdtablesize \
|
|
gethostname \
|
|
getlogin \
|
|
getpagesize \
|
|
getwd \
|
|
hosts_ctl \
|
|
innetgr \
|
|
mkstemp \
|
|
sbrk \
|
|
seteuid \
|
|
setitimer \
|
|
strcasecmp \
|
|
strdup \
|
|
strstr \
|
|
ualarm \
|
|
usleep \
|
|
wait3 \
|
|
vsnprintf \
|
|
xdr_callmsg \
|
|
xdr_opaque_auth \
|
|
)
|
|
dnl Different macro to check for LDAP externs, so as to avoid
|
|
dnl breaking the basic extern-checking macro.
|
|
AMU_CHECK_EXTERN_LDAP(ldap_enable_cache)
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl C PREPROCESSOR MACROS
|
|
AC_MSG_NOTICE(*** C PREPROCESSOR MACROS ***)
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl SYSTEM SERVICES
|
|
AC_MSG_NOTICE(*** SYSTEM SERVICES ***)
|
|
AC_SYS_LONG_FILE_NAMES
|
|
AC_SYS_RESTARTABLE_SYSCALLS
|
|
AMU_CHECK_NETWORK_TRANSPORT_TYPE
|
|
dnl ======================================================================
|
|
|
|
dnl *********
|
|
AMU_SAVE_STATE
|
|
dnl *********
|
|
|
|
dnl ######################################################################
|
|
AC_MSG_NOTICE(*** FIELDS WITHIN STRUCTURES ***)
|
|
AMU_CHECK_FIELD(fd_set.fds_bits)
|
|
AMU_CHECK_FIELD(mntent_t.mnt_cnode)
|
|
AMU_CHECK_FIELD(mntent_t.mnt_ro)
|
|
AMU_CHECK_FIELD(mntent_t.mnt_time)
|
|
AMU_FIELD_MNTENT_T_MNT_TIME_STRING
|
|
AMU_CHECK_FIELD(cdfs_args_t.flags)
|
|
AMU_CHECK_FIELD(cdfs_args_t.fspec)
|
|
AMU_CHECK_FIELD(cdfs_args_t.iso_flags)
|
|
AMU_CHECK_FIELD(cdfs_args_t.iso_pgthresh)
|
|
AMU_CHECK_FIELD(cdfs_args_t.norrip)
|
|
AMU_CHECK_FIELD(cdfs_args_t.ssector)
|
|
AMU_CHECK_FIELD(pcfs_args_t.dirmask)
|
|
AMU_CHECK_FIELD(pcfs_args_t.dsttime)
|
|
AMU_CHECK_FIELD(pcfs_args_t.fspec)
|
|
AMU_CHECK_FIELD(pcfs_args_t.gid)
|
|
AMU_CHECK_FIELD(pcfs_args_t.mask)
|
|
AMU_CHECK_FIELD(pcfs_args_t.secondswest)
|
|
AMU_CHECK_FIELD(pcfs_args_t.uid)
|
|
AMU_CHECK_FIELD(ufs_args_t.flags)
|
|
AMU_CHECK_FIELD(ufs_args_t.fspec)
|
|
AMU_CHECK_FIELD(ufs_args_t.ufs_flags)
|
|
AMU_CHECK_FIELD(ufs_args_t.ufs_pgthresh)
|
|
AMU_CHECK_FIELD(efs_args_t.flags)
|
|
AMU_CHECK_FIELD(efs_args_t.fspec)
|
|
AMU_CHECK_FIELD(xfs_args_t.flags)
|
|
AMU_CHECK_FIELD(xfs_args_t.fspec)
|
|
AMU_CHECK_FIELD(struct fhstatus.fhs_fh)
|
|
AMU_CHECK_FIELD(struct statfs.f_fstypename)
|
|
AMU_CHECK_FIELD(nfs_args_t.acdirmin)
|
|
AMU_CHECK_FIELD(nfs_args_t.acregmin)
|
|
AMU_CHECK_FIELD(nfs_args_t.bsize)
|
|
AMU_CHECK_FIELD(nfs_args_t.fh_len)
|
|
AMU_CHECK_FIELD(nfs_args_t.fhsize)
|
|
AMU_CHECK_FIELD(nfs_args_t.gfs_flags)
|
|
AMU_CHECK_FIELD(nfs_args_t.namlen)
|
|
AMU_CHECK_FIELD(nfs_args_t.optstr)
|
|
AMU_CHECK_FIELD(nfs_args_t.proto)
|
|
AMU_CHECK_FIELD(nfs_args_t.sotype)
|
|
AMU_CHECK_FIELD(nfs_args_t.version)
|
|
AMU_CHECK_FIELD(struct ifreq.ifr_addr)
|
|
AMU_CHECK_FIELD(struct ifaddrs.ifa_next)
|
|
AMU_CHECK_FIELD(struct sockaddr.sa_len)
|
|
AMU_CHECK_FIELD(struct umntrequest.devid)
|
|
dnl This one is for Irix
|
|
AMU_CHECK_FIELD(autofs_args_t.addr)
|
|
dnl For Solaris 2.8+
|
|
AMU_CHECK_FIELD(mounta.optptr)
|
|
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl MAP TYPES
|
|
AC_MSG_NOTICE(*** MAP TYPES ***)
|
|
dnl DBM is obsolete, use NDBM
|
|
dnl AMU_CHECK_MAP_FUNCS(dbminit dbmopen, dbm)
|
|
AMU_CHECK_MAP_FUNCS(fgets, file)
|
|
dnl Define HESIOD map if user wanted it, and both headers and libraries exist
|
|
if test "$with_hesiod" = "yes" && test "$ac_cv_header_hesiod_h" = "yes"
|
|
then
|
|
AMU_CHECK_MAP_FUNCS(hes_init hesiod_init, hesiod)
|
|
fi
|
|
dnl Define LDAP map if user wanted it, and both headers and libraries exist
|
|
if test "$with_ldap" = "yes" && test "$ac_cv_header_ldap_h" = "yes"
|
|
then
|
|
AMU_CHECK_MAP_FUNCS(ldap_open, ldap)
|
|
fi
|
|
if test "$with_ndbm" = "yes" -a "$ac_cv_lib_new_dbm" != ""
|
|
then
|
|
AMU_CHECK_MAP_FUNCS(dbm_open, $ac_cv_lib_new_dbm, ndbm)
|
|
fi
|
|
AMU_CHECK_MAP_FUNCS(yp_get_default_domain yp_all, nis)
|
|
AMU_CHECK_MAP_FUNCS(nis_domain_of, nisplus, nisplus)
|
|
AMU_CHECK_MAP_FUNCS(getpwnam, passwd)
|
|
AMU_CHECK_MAP_FUNCS(opendir, union)
|
|
dnl ======================================================================
|
|
|
|
dnl *********
|
|
AMU_SAVE_STATE
|
|
dnl *********
|
|
|
|
dnl ######################################################################
|
|
dnl FILESYSTEM TYPES
|
|
AC_MSG_NOTICE(*** FILESYSTEM TYPES ***)
|
|
dnl check for filesystem existence if MNTTYPE_<filesystem> exists, then if
|
|
dnl MOUNT_<fs>, then MNT_<fs>, then in /proc/filesystems, and getvfsbyname()
|
|
AMU_CHECK_FS_MNTENT(autofs)
|
|
AMU_CHECK_FS_MNTENT(cdfs hsfs cd9660 iso9660 isofs cdrom, cdfs)
|
|
AMU_CHECK_FS_MNTENT(cache)
|
|
AMU_CHECK_FS_MNTENT(lofs lo, lofs)
|
|
AMU_CHECK_FS_MNTENT(mfs)
|
|
AMU_CHECK_FS_MNTENT(nfs)
|
|
dnl This test for nfs3 was moved up, because other tests depend on it
|
|
dnl especially checking for nfsv3 file handle structure types
|
|
dnl AMU_CHECK_FS_MNTENT(nfs3)
|
|
AMU_CHECK_FS_MNTENT(vfat pcfs pc msdos msdosfs fat, pcfs)
|
|
AMU_CHECK_FS_MNTENT(tfs)
|
|
AMU_CHECK_FS_MNTENT(tmpfs)
|
|
AMU_CHECK_FS_MNTENT(ext2 ffs ufs 42 efs xfs jfs ultrix, ufs)
|
|
dnl openbsd 2.4 introduce a new file system called xfs, which is not
|
|
dnl the same as irix-s xfs. Sigh, why did openbsd have to use such a name!
|
|
case "${host_os_name}" in
|
|
openbsd* ) ;;
|
|
* ) AMU_CHECK_FS_MNTENT(xfs) ;;
|
|
esac
|
|
AMU_CHECK_FS_MNTENT(efs)
|
|
dnl new ones in bsd44
|
|
AMU_CHECK_FS_MNTENT(null nullfs, nullfs)
|
|
AMU_CHECK_FS_MNTENT(union unionfs, unionfs)
|
|
AMU_CHECK_FS_MNTENT(umap umapfs, umapfs)
|
|
|
|
dnl check for filesystem existence if their headers exist
|
|
dnl AMU_CHECK_FS_HEADERS(cfs.h, cfs)
|
|
AMU_CHECK_FS_HEADERS(hsfs/hsfs.h, cdfs)
|
|
AMU_CHECK_FS_HEADERS(tmpfs/tmp.h, tmpfs)
|
|
AMU_CHECK_FS_HEADERS(sys/fs/autofs.h, autofs)
|
|
AMU_CHECK_FS_HEADERS(sys/fs/cachefs_fs.h, cachefs)
|
|
dnl AMU_CHECK_FS_HEADERS(jfs/jfsmount.h, ufs)
|
|
dnl ======================================================================
|
|
dnl AUTOMOUNTER FILESYSTEM TYPES
|
|
AC_MSG_NOTICE(*** AUTOMOUNTER FILESYSTEM TYPES ***)
|
|
AMU_CHECK_AMU_FS(auto, automounter)
|
|
AMU_CHECK_AMU_FS(direct, direct automount)
|
|
AMU_CHECK_AMU_FS(toplvl, top-level)
|
|
AMU_CHECK_AMU_FS(error, error)
|
|
AMU_CHECK_AMU_FS(inherit, inheritance)
|
|
AMU_CHECK_AMU_FS(program, program)
|
|
AMU_CHECK_AMU_FS(link, symlink)
|
|
AMU_CHECK_AMU_FS(linkx, symlink with existence check)
|
|
AMU_CHECK_AMU_FS(host, host (nfs), nfs)
|
|
AMU_CHECK_AMU_FS(nfsx, multi-nfs mount, nfs)
|
|
AMU_CHECK_AMU_FS(nfsl, NFS with local existence check)
|
|
AMU_CHECK_AMU_FS(union, union)
|
|
dnl AMU_CHECK_AMU_FS(autofs, Sun AutoFS, autofs)
|
|
dnl ======================================================================
|
|
|
|
dnl *********
|
|
AMU_SAVE_STATE
|
|
dnl *********
|
|
|
|
dnl ######################################################################
|
|
dnl MOUNTING TYPES AND NAMES FOR MOUNTING TABLE
|
|
dnl check for mount(2) type/name for filesystem (MNTTYPE_*, MOUNT_*)
|
|
AC_MSG_NOTICE(*** MOUNTING TYPES ***)
|
|
AMU_CHECK_MOUNT_TYPE(nfs)
|
|
AMU_CHECK_MOUNT_TYPE(nfs3)
|
|
AMU_CHECK_MOUNT_TYPE(4.2 4.3 4.4 ext2 ufs efs xfs ffs jfs ultrix, ufs)
|
|
AMU_CHECK_MOUNT_TYPE(xfs)
|
|
AMU_CHECK_MOUNT_TYPE(efs)
|
|
AMU_CHECK_MOUNT_TYPE(cdfs hsfs cd9660 iso9660 isofs cdrom, cdfs)
|
|
AMU_CHECK_MOUNT_TYPE(vfat pcfs pc msdos msdosfs fat, pcfs)
|
|
AMU_CHECK_MOUNT_TYPE(mfs)
|
|
AMU_CHECK_MOUNT_TYPE(tmpfs tmp, tmpfs)
|
|
AMU_CHECK_MOUNT_TYPE(lofs lo, lofs)
|
|
AMU_CHECK_MOUNT_TYPE(lfs)
|
|
AMU_CHECK_MOUNT_TYPE(afs)
|
|
AMU_CHECK_MOUNT_TYPE(autofs)
|
|
AMU_CHECK_MOUNT_TYPE(tfs)
|
|
AMU_CHECK_MOUNT_TYPE(cachefs)
|
|
AMU_CHECK_MOUNT_TYPE(ignore)
|
|
dnl new ones in bsd44
|
|
AMU_CHECK_MOUNT_TYPE(null nullfs, nullfs)
|
|
AMU_CHECK_MOUNT_TYPE(union unionfs, unionfs)
|
|
AMU_CHECK_MOUNT_TYPE(umap umapfs, umapfs)
|
|
dnl ######################################################################
|
|
dnl check for mnttab name for filesystem
|
|
AC_MSG_NOTICE(*** MOUNTING TABLE NAMES ***)
|
|
AMU_CHECK_MNTTAB_TYPE(nfs)
|
|
AMU_CHECK_MNTTAB_TYPE(nfs3)
|
|
AMU_CHECK_MNTTAB_TYPE(ext2 ufs jfs 4.2 4.3 4.4 efs xfs ffs, ufs)
|
|
AMU_CHECK_MNTTAB_TYPE(xfs)
|
|
AMU_CHECK_MNTTAB_TYPE(efs)
|
|
AMU_CHECK_MNTTAB_TYPE(cdfs hsfs cd9660 iso9660 isofs cdrom, cdfs)
|
|
AMU_CHECK_MNTTAB_TYPE(vfat pcfs pc msdos msdosfs fat, pcfs)
|
|
AMU_CHECK_MNTTAB_TYPE(mfs)
|
|
AMU_CHECK_MNTTAB_TYPE(tmpfs tmp, tmpfs)
|
|
AMU_CHECK_MNTTAB_TYPE(lofs lo, lofs)
|
|
AMU_CHECK_MNTTAB_TYPE(lfs)
|
|
AMU_CHECK_MNTTAB_TYPE(afs)
|
|
AMU_CHECK_MNTTAB_TYPE(autofs)
|
|
AMU_CHECK_MNTTAB_TYPE(tfs)
|
|
AMU_CHECK_MNTTAB_TYPE(cachefs)
|
|
dnl new ones in bsd44
|
|
AMU_CHECK_MNTTAB_TYPE(null nullfs, nullfs)
|
|
AMU_CHECK_MNTTAB_TYPE(union unionfs, unionfs)
|
|
AMU_CHECK_MNTTAB_TYPE(umap umapfs, umapfs)
|
|
dnl ======================================================================
|
|
|
|
dnl *********
|
|
AMU_SAVE_STATE
|
|
dnl *********
|
|
|
|
dnl ######################################################################
|
|
dnl Mount Table option name strings like MNTOPT_*
|
|
dnl if found, defines MNTTAB_OPT_*
|
|
AC_MSG_NOTICE(*** MOUNT TABLE OPTION NAME STRINGS ***)
|
|
AMU_CHECK_MNTTAB_OPTS( \
|
|
acdirmax \
|
|
acdirmin \
|
|
acregmax \
|
|
acregmin \
|
|
actimeo \
|
|
compress \
|
|
dev \
|
|
fsid \
|
|
grpid \
|
|
ignore \
|
|
intr \
|
|
maxgroups \
|
|
multi \
|
|
noac \
|
|
noauto \
|
|
noconn \
|
|
nocto \
|
|
nosub \
|
|
nosuid \
|
|
pgthresh \
|
|
port \
|
|
posix \
|
|
private \
|
|
proplist \
|
|
proto \
|
|
public \
|
|
retrans \
|
|
retry \
|
|
ro \
|
|
rsize \
|
|
rw \
|
|
soft \
|
|
spongy \
|
|
suid \
|
|
symttl \
|
|
timeo \
|
|
vers \
|
|
wsize \
|
|
)
|
|
dnl ======================================================================
|
|
|
|
dnl *********
|
|
AMU_SAVE_STATE
|
|
dnl *********
|
|
|
|
dnl ######################################################################
|
|
dnl Generic mount(2) system call flags (hex/int numbers) like M_*/MS_*/MNT_*
|
|
dnl if found, defines MNT2_GEN_OPT_*
|
|
AC_MSG_NOTICE(*** GENERIC MOUNT(2) OPTIONS ***)
|
|
AMU_CHECK_MNT2_GEN_OPTS( \
|
|
async \
|
|
automntfs \
|
|
bind \
|
|
cache \
|
|
data \
|
|
fss \
|
|
grpid \
|
|
ignore \
|
|
jfs \
|
|
multi \
|
|
newtype \
|
|
nfs \
|
|
nocache \
|
|
nodev \
|
|
noexec \
|
|
nomnttab \
|
|
nosub \
|
|
nosuid \
|
|
optionstr \
|
|
overlay \
|
|
quota \
|
|
rdonly \
|
|
ronly \
|
|
sync \
|
|
synchronous \
|
|
)
|
|
dnl ======================================================================
|
|
|
|
dnl *********
|
|
AMU_SAVE_STATE
|
|
dnl *********
|
|
|
|
dnl ######################################################################
|
|
dnl NFS-specific mount(2) options (hex numbers) like NFSMNT_*/NFS_MOUNT_*
|
|
AC_MSG_NOTICE(*** NFS-SPECIFIC MOUNT(2) OPTIONS ***)
|
|
dnl if found, defines MNT2_NFS_OPT_*
|
|
AMU_CHECK_MNT2_NFS_OPTS( \
|
|
acdirmax \
|
|
acdirmin \
|
|
acregmax \
|
|
acregmin \
|
|
auto \
|
|
deadthresh \
|
|
dumbtimr \
|
|
fsname \
|
|
grpid \
|
|
hostname \
|
|
ignore \
|
|
int \
|
|
intr \
|
|
kerb \
|
|
knconf \
|
|
leaseterm \
|
|
maxgrps \
|
|
nfsv3 \
|
|
noac \
|
|
noconn \
|
|
nocto \
|
|
noint \
|
|
nonlm \
|
|
nqnfs \
|
|
pgthresh \
|
|
posix \
|
|
private \
|
|
proplist \
|
|
rdirplus \
|
|
readahead \
|
|
readdirsize \
|
|
resvport \
|
|
retrans \
|
|
ronly \
|
|
rsize \
|
|
soft \
|
|
spongy \
|
|
symttl \
|
|
tcp \
|
|
timeo \
|
|
ver3 \
|
|
wsize \
|
|
xlatecookie \
|
|
)
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl CDFS-specific mount(2) options (hex numbers) like M_*
|
|
AC_MSG_NOTICE(*** CDFS-SPECIFIC MOUNT(2) OPTIONS ***)
|
|
dnl if found, defines MNT2_CDFS_OPT_*
|
|
AMU_CHECK_MNT2_CDFS_OPTS(\
|
|
defperm \
|
|
extatt \
|
|
gens \
|
|
nodefperm \
|
|
norrip \
|
|
noversion \
|
|
rrip \
|
|
)
|
|
dnl ======================================================================
|
|
|
|
dnl *********
|
|
AMU_SAVE_STATE
|
|
dnl *********
|
|
|
|
dnl ######################################################################
|
|
dnl SYSTEM-SPECIFIC TESTS
|
|
AC_MSG_NOTICE(*** SYSTEM-SPECIFIC TESTS ***)
|
|
dnl ======================================================================
|
|
dnl Mount table style
|
|
AMU_CHECK_MNTTAB_STYLE
|
|
AMU_CHECK_HIDE_MOUNT_TYPE
|
|
AMU_CHECK_MNTTAB_LOCATION
|
|
dnl -----------------------------------------------------------------------
|
|
dnl check if has mnttab/mntent or in-kernel mount tables
|
|
dnl this test must follow AMU_CHECK_MNTTAB_LOCATION and
|
|
dnl AMU_CHECK_MNT2_GEN_OPTS(nomnttab)
|
|
if test "$ac_cv_have_struct_mnttab" != yes && test "$ac_cv_have_struct_mntent" != yes && test "$ac_cv_mnttab_location" = file
|
|
then
|
|
AC_MSG_ERROR(
|
|
[No definition found for struct mnttab or struct mntent
|
|
and this system stores its mount tables on files (not in kernel).
|
|
This can be due to a misconfigured system, one for which am-utils
|
|
was not ported to yet, or a bug in the am-utils sources. Check
|
|
config.log for details and report them to am-utils@am-utils.org please.])
|
|
fi
|
|
dnl -----------------------------------------------------------------------
|
|
AMU_CHECK_MNTTAB_FILE_NAME
|
|
AMU_CHECK_MOUNT_TRAP
|
|
AMU_CHECK_MOUNT_STYLE
|
|
AMU_CHECK_UMOUNT_STYLE
|
|
AMU_CHECK_AUTOFS_STYLE
|
|
AMU_CHECK_UNMOUNT_CALL
|
|
AMU_CHECK_UNMOUNT_ARGS
|
|
AMU_CHECK_NFS_SA_DREF
|
|
AMU_CHECK_NFS_HN_DREF
|
|
AMU_CHECK_NFS_FH_DREF
|
|
AMU_CHECK_NFS_SOCKET_CONNECTION
|
|
AMU_CHECK_CHECKMOUNT_STYLE
|
|
AMU_CHECK_RESTARTABLE_SIGNAL_HANDLER
|
|
AMU_CHECK_GNU_GETOPT
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
dnl Check for tcpwrappers
|
|
dnl This check is moved this far down because on modern tcpwrapper systems
|
|
dnl such as openbsd, the caller must provide two symbols: deny_severity and
|
|
dnl allow_severity, which determine the logging level of rejected and
|
|
dnl requested requests, respectively. If this check happens too early, then
|
|
dnl $LIBS includes -lwrap, which causes many subsequent tests to fail with
|
|
dnl missing symbols.
|
|
AC_CHECK_LIB(wrap, hosts_ctl,
|
|
[
|
|
AC_DEFINE(HAVE_LIBWRAP)
|
|
WRAPLIB="-lwrap"
|
|
])
|
|
dnl replace value of WRAPLIB in specific Makefiles
|
|
AC_SUBST(WRAPLIB)
|
|
dnl next, check if libwrap defines allow/deny_severity or expects the caller to define it
|
|
if test "$ac_cv_lib_wrap_hosts_ctl" = "yes"
|
|
then
|
|
AMU_CHECK_LIBWRAP_SEVERITY
|
|
fi
|
|
dnl ======================================================================
|
|
|
|
dnl *********
|
|
AMU_SAVE_STATE
|
|
dnl *********
|
|
|
|
dnl ######################################################################
|
|
dnl output files
|
|
AC_MSG_NOTICE(*** OUTPUT FILES ***)
|
|
dnl The am_utils_link_files variable is set in macros in aclocal.m4
|
|
AC_CONFIG_LINKS(${am_utils_link_files})
|
|
dnl ==========================================================================
|
|
dnl This is necessary so that .o files in LIBOBJS are also built via
|
|
dnl the ANSI2KNR-filtering rules.
|
|
LIB@&t@OBJS=`echo "$LIB@&t@OBJS" |
|
|
sed 's,\.[[^.]]* ,$U&,g;s,\.[[^.]]*$,$U&,'`
|
|
LTLIBOBJS=`echo "$LIB@&t@OBJS" |
|
|
sed 's,\.[[^.]]* ,.lo ,g;s,\.[[^.]]*$,.lo,'`
|
|
AC_SUBST(LTLIBOBJS)
|
|
dnl XXX: next two lines are temp hack until automake newer than 1.4 comes out
|
|
AMU_LIB_OBJS="${LTLIBOBJS} ${LTALLOCA}"
|
|
AC_SUBST(AMU_LIB_OBJS)
|
|
dnl for Makefile rule to regenerate libtool
|
|
AC_SUBST(LIBTOOL_DEPS)
|
|
dnl ==========================================================================
|
|
AC_CONFIG_FILES( \
|
|
aux_conf.h \
|
|
\
|
|
Makefile \
|
|
amd/Makefile \
|
|
amq/Makefile \
|
|
\
|
|
fixmount/Makefile \
|
|
fsinfo/Makefile \
|
|
hlfsd/Makefile \
|
|
libamu/Makefile \
|
|
mk-amd-map/Makefile \
|
|
wire-test/Makefile \
|
|
\
|
|
scripts/Makefile \
|
|
doc/Makefile \
|
|
\
|
|
scripts/am-eject \
|
|
scripts/amd2ldif \
|
|
scripts/amd2sun \
|
|
scripts/automount2amd \
|
|
scripts/ctl-amd \
|
|
scripts/ctl-hlfsd \
|
|
scripts/expn \
|
|
scripts/fixrmtab \
|
|
scripts/fix-amd-map \
|
|
scripts/lostaltmail \
|
|
scripts/redhat-ctl-amd \
|
|
scripts/wait4amd \
|
|
scripts/wait4amd2die \
|
|
)
|
|
AC_OUTPUT
|
|
dnl ======================================================================
|
|
|
|
dnl ######################################################################
|
|
AC_MSG_NOTICE(*** END OF CONFIGURATION ***)
|
|
dnl end of configure.in for am-utils-6.x
|