1009 lines
26 KiB
Plaintext
1009 lines
26 KiB
Plaintext
|
dnl configure.in file for am-utils-6.x
|
||
|
dnl Contains general GNU-autoconf macros.
|
||
|
dnl Author: Erez Zadok <ezk@cs.columbia.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
|
||
|
AC_INIT(amd/amd.c)
|
||
|
AC_MSG(INITIALIZATION)
|
||
|
AM_CONFIG_HEADER(config.h)
|
||
|
dnl AM_CONFIG_HEADER(config.h:aux/config.h.in)
|
||
|
dnl AC_CONFIG_AUX_DIR(aux)
|
||
|
AC_PREREQ(2.13)
|
||
|
AC_REVISION($Revision: 1.0)
|
||
|
dnl find out system type
|
||
|
AC_MSG(SYSTEM TYPES)
|
||
|
dnl run by libtool, but must be kept here because HOST_MACROS depends on it
|
||
|
AC_CANONICAL_HOST
|
||
|
AC_HOST_MACROS
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl PACKAGE NAME AND VERSION
|
||
|
AC_MSG(PACKAGE NAME AND VERSION)
|
||
|
PACKAGE=am-utils
|
||
|
VERSION=6.0.4
|
||
|
AC_SUBST(PACKAGE)
|
||
|
AC_NAME_PACKAGE($PACKAGE)
|
||
|
AC_SUBST(VERSION)
|
||
|
AC_NAME_VERSION($VERSION)
|
||
|
AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
|
||
|
dnl SET (shared) library version. Update it only before major release!
|
||
|
dnl version info for am-utils-6.0.2: 3:2:1
|
||
|
dnl version info for am-utils-6.0.3: 4:0:2
|
||
|
dnl version info for am-utils-6.0.4: 4:1:2
|
||
|
LIBTOOL_LDFLAGS="-version-info 4:1:2"
|
||
|
AC_SUBST(LIBTOOL_LDFLAGS)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl OPTION PROCESSING
|
||
|
AC_MSG(OPTION PROCESSING)
|
||
|
dnl Debugging options (yes, mem, or no)
|
||
|
AC_OPT_DEBUG
|
||
|
dnl Do you want to turn on "amq -M" code
|
||
|
AC_OPT_AMQ_MOUNT
|
||
|
dnl additional preprocessor options for configuration/compilation
|
||
|
AC_OPT_CPPFLAGS
|
||
|
dnl additional linker -l options for configuration/compilation
|
||
|
AC_OPT_LIBS
|
||
|
dnl additional linker -L options for configuration/compilation
|
||
|
AC_OPT_LDFLAGS
|
||
|
dnl Which options to add to CFLAGS for compilation only?
|
||
|
AC_OPT_AMU_CFLAGS
|
||
|
dnl check if a local configuration file exists
|
||
|
AC_LOCALCONFIG
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl ALTERNATIVE PROGRAMS
|
||
|
dnl Part 1: these are required before "unix variants"
|
||
|
dnl ======================================================================
|
||
|
dnl Particular Program Checks
|
||
|
AC_MSG(PARTICULAR PROGRAMS (part 1))
|
||
|
dnl AC-PROG-LIBTOOL will run this, but we need this to squelch warnings
|
||
|
dnl from autoconf about AC_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_ISC_POSIX
|
||
|
AC_AIX
|
||
|
dnl XXX: available in autoconf-2.14
|
||
|
dnl AC_PROG_CC_STDC
|
||
|
dnl my version of prog_libtool will not build shared by default
|
||
|
dnl AM_PROG_LIBTOOL2
|
||
|
dnl build static libraries by default
|
||
|
AM_DISABLE_SHARED
|
||
|
dnl XXX: for autoconf-2.14: use AC_PROG_LIBTOOL, not AM_PROG_LIBTOOL
|
||
|
dnl AC_PROG_LIBTOOL
|
||
|
AM_PROG_LIBTOOL
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl ADDITIONAL OPTION PROCESSING (must be done after CC is defined)
|
||
|
AC_MSG(EXTRA OPTION PROCESSING)
|
||
|
AC_OS_CPPFLAGS
|
||
|
AC_OS_CFLAGS
|
||
|
AC_OS_LDFLAGS
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl Some of these macros must be called before any call to the C compiler
|
||
|
AC_MSG(UNIX VARIANTS)
|
||
|
dnl UNIX VARIANTS
|
||
|
dnl AC_AIX
|
||
|
dnl AC_ISC_POSIX
|
||
|
AC_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(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(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(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.
|
||
|
AC_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
|
||
|
AC_CHECK_LIB2(hesiod, hes_init,,, -lresolv)
|
||
|
AC_CHECK_LIB2(ldap, ldap_open,,, -llber)
|
||
|
|
||
|
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
|
||
|
AC_CHECK_LIB(rt, clock_gettime,, AC_CHECK_LIB(posix4, clock_gettime))
|
||
|
|
||
|
dnl some systems replaced old ndbm.h include with GNU ndbm.h, which requires
|
||
|
dnl libgdbm for dbm_pagfno, so check for this.
|
||
|
AC_MSG_CHECKING(for GNU ndbm.h)
|
||
|
AC_TRY_LINK([#include <ndbm.h>], [
|
||
|
DBM *db;
|
||
|
dbm_pagfno(db);
|
||
|
], AC_MSG_RESULT(no), AC_CHECK_LIB(gdbm, dbm_pagfno))
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl LIBRARY FUNCTIONS
|
||
|
dnl ======================================================================
|
||
|
dnl Particular Function Checks
|
||
|
AC_MSG(PARTICULAR LIBRARY FUNCTIONS)
|
||
|
AC_FUNC_ALLOCA
|
||
|
dnl this GETMNTENT test will add -lgen to LIBS if needed
|
||
|
dnl AC_FUNC_GETMNTENT
|
||
|
AC_FUNC_BAD_MEMCMP
|
||
|
AC_FUNC_BAD_YP_ALL
|
||
|
AC_FUNC_VFORK
|
||
|
AC_FUNC_WAIT3
|
||
|
dnl ======================================================================
|
||
|
dnl Generic Function Checks
|
||
|
AC_MSG(GENERIC LIBRARY FUNCTIONS)
|
||
|
AC_CHECK_FUNCS( \
|
||
|
__seterr_reply \
|
||
|
_seterr_reply \
|
||
|
bcmp \
|
||
|
bcopy \
|
||
|
bzero \
|
||
|
clnt_create \
|
||
|
clnt_create_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 \
|
||
|
ldap_open \
|
||
|
memcmp \
|
||
|
memcpy \
|
||
|
memmove \
|
||
|
memset \
|
||
|
mkdir \
|
||
|
mkstemp \
|
||
|
mntctl \
|
||
|
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 \
|
||
|
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_mntrequest \
|
||
|
xdr_mntres \
|
||
|
xdr_mountbody \
|
||
|
xdr_mountlist \
|
||
|
xdr_mountres3 \
|
||
|
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_umntrequest \
|
||
|
xdr_umntres \
|
||
|
xdr_writeargs \
|
||
|
)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl *********
|
||
|
AC_SAVE_STATE
|
||
|
dnl *********
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl HEADER FILES
|
||
|
dnl ======================================================================
|
||
|
dnl Particular Header Checks
|
||
|
AC_MSG(PARTICULAR HEADER FILES)
|
||
|
AC_HEADER_DIRENT
|
||
|
AC_HEADER_STDC
|
||
|
AC_HEADER_SYS_WAIT
|
||
|
dnl ======================================================================
|
||
|
dnl Generic Header Checks
|
||
|
AC_MSG(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 \
|
||
|
hsfs/hsfs.h \
|
||
|
isofs/cd9660/cd9660_mount.h \
|
||
|
linux/auto_fs.h \
|
||
|
linux/fs.h \
|
||
|
linux/kdev_t.h \
|
||
|
linux/list.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 \
|
||
|
rpc/auth_des.h \
|
||
|
rpc/pmap_clnt.h \
|
||
|
rpc/pmap_prot.h \
|
||
|
rpc/rpc.h \
|
||
|
rpc/types.h \
|
||
|
rpc/xdr.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/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_mount.h \
|
||
|
ufs/ufs/ufsmount.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 \
|
||
|
time.h \
|
||
|
tiuser.h \
|
||
|
varargs.h \
|
||
|
unistd.h \
|
||
|
)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl *********
|
||
|
AC_SAVE_STATE
|
||
|
dnl *********
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl STRUCTURES
|
||
|
AC_MSG(PARTICULAR STRUCTURES)
|
||
|
AC_HEADER_STAT
|
||
|
AC_HEADER_TIME
|
||
|
AC_STRUCT_TM
|
||
|
dnl ======================================================================
|
||
|
AC_MSG(GENERIC STRUCTURES)
|
||
|
dnl before any use of macros that need nfs/mount headers, must define O/S
|
||
|
dnl specific header to include.
|
||
|
AC_CHECK_NFS_PROT_HEADERS
|
||
|
AC_STRUCT_MNTENT
|
||
|
AC_STRUCT_MNTTAB
|
||
|
AC_STRUCT_NFS_ARGS
|
||
|
AC_STRUCT_NFS_GFS_MOUNT
|
||
|
AC_STRUCT_FIELD_NFS_FH
|
||
|
AC_STRUCT_NFS_FH
|
||
|
AC_STRUCT_NFS_FH3
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl *********
|
||
|
AC_SAVE_STATE
|
||
|
dnl *********
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl TYPEDEFS
|
||
|
dnl ======================================================================
|
||
|
dnl Particular Typedef Checks
|
||
|
AC_MSG(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(GENERIC TYPEDEFS)
|
||
|
AC_TYPE_TIME_T
|
||
|
AC_CHECK_FHANDLE
|
||
|
AC_CHECK_MTYPE_TYPE
|
||
|
AC_CHECK_MTYPE_PRINTF_TYPE
|
||
|
AC_TYPE_YP_ORDER_OUTORDER
|
||
|
AC_TYPE_RECVFROM_FROMLEN
|
||
|
AC_TYPE_AUTH_CREATE_GIDLIST
|
||
|
AC_TYPE_SVC_IN_ARG
|
||
|
AC_TYPE_AUTOFS_ARGS
|
||
|
AC_TYPE_CACHEFS_ARGS
|
||
|
AC_TYPE_CDFS_ARGS
|
||
|
AC_TYPE_LOFS_ARGS
|
||
|
AC_TYPE_MFS_ARGS
|
||
|
AC_TYPE_PCFS_ARGS
|
||
|
AC_TYPE_RFS_ARGS
|
||
|
AC_TYPE_TMPFS_ARGS
|
||
|
AC_TYPE_UFS_ARGS
|
||
|
AC_TYPE_XFS_ARGS
|
||
|
AC_TYPE_EFS_ARGS
|
||
|
AC_TYPE_XDRPROC_T
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl Particular Compiler Characteristics
|
||
|
AC_MSG(PARTICULAR COMPILER CHARACTERISTICS)
|
||
|
AC_C_BIGENDIAN
|
||
|
AC_C_CONST
|
||
|
AC_C_INLINE
|
||
|
dnl AC_CHECK_SIZEOF(void *, 0)
|
||
|
dnl ======================================================================
|
||
|
dnl Generic Compiler Characteristics
|
||
|
AC_MSG(GENERIC COMPILER CHARACTERISTICS)
|
||
|
AC_C_VOID_P
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl *********
|
||
|
AC_SAVE_STATE
|
||
|
dnl *********
|
||
|
|
||
|
dnl ######################################################################
|
||
|
AC_MSG(EXTERNAL DEFINITIONS)
|
||
|
AC_EXTERN_SYS_ERRLIST
|
||
|
AC_EXTERN_OPTARG
|
||
|
AC_CHECK_EXTERNS(
|
||
|
clnt_spcreateerror \
|
||
|
clnt_sperrno \
|
||
|
free \
|
||
|
get_myaddress \
|
||
|
getccent \
|
||
|
getdomainname \
|
||
|
getdtablesize \
|
||
|
gethostname \
|
||
|
getlogin \
|
||
|
getpagesize \
|
||
|
getwd \
|
||
|
innetgr \
|
||
|
mkstemp \
|
||
|
sbrk \
|
||
|
seteuid \
|
||
|
setitimer \
|
||
|
strcasecmp \
|
||
|
strdup \
|
||
|
strstr \
|
||
|
ualarm \
|
||
|
usleep \
|
||
|
wait3 \
|
||
|
vsnprintf \
|
||
|
xdr_opaque_auth \
|
||
|
)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl C PREPROCESSOR MACROS
|
||
|
AC_MSG(C PREPROCESSOR MACROS)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl SYSTEM SERVICES
|
||
|
AC_MSG(SYSTEM SERVICES)
|
||
|
AC_SYS_LONG_FILE_NAMES
|
||
|
AC_SYS_RESTARTABLE_SYSCALLS
|
||
|
AC_CHECK_NETWORK_TRANSPORT_TYPE
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl *********
|
||
|
AC_SAVE_STATE
|
||
|
dnl *********
|
||
|
|
||
|
dnl ######################################################################
|
||
|
AC_MSG(FIELDS WITHIN STRUCTURES)
|
||
|
AC_CHECK_FIELD(mntent_t, mnt_cnode)
|
||
|
AC_CHECK_FIELD(mntent_t, mnt_ro)
|
||
|
AC_CHECK_FIELD(mntent_t, mnt_time)
|
||
|
AC_FIELD_MNTENT_T_MNT_TIME_STRING
|
||
|
AC_CHECK_FIELD(cdfs_args_t, flags)
|
||
|
AC_CHECK_FIELD(cdfs_args_t, fspec)
|
||
|
AC_CHECK_FIELD(cdfs_args_t, iso_flags)
|
||
|
AC_CHECK_FIELD(cdfs_args_t, iso_pgthresh)
|
||
|
AC_CHECK_FIELD(cdfs_args_t, norrip)
|
||
|
AC_CHECK_FIELD(cdfs_args_t, ssector)
|
||
|
AC_CHECK_FIELD(pcfs_args_t, dsttime)
|
||
|
AC_CHECK_FIELD(pcfs_args_t, fspec)
|
||
|
AC_CHECK_FIELD(pcfs_args_t, gid)
|
||
|
AC_CHECK_FIELD(pcfs_args_t, mask)
|
||
|
AC_CHECK_FIELD(pcfs_args_t, secondswest)
|
||
|
AC_CHECK_FIELD(pcfs_args_t, uid)
|
||
|
AC_CHECK_FIELD(ufs_args_t, flags)
|
||
|
AC_CHECK_FIELD(ufs_args_t, fspec)
|
||
|
AC_CHECK_FIELD(ufs_args_t, ufs_flags)
|
||
|
AC_CHECK_FIELD(ufs_args_t, ufs_pgthresh)
|
||
|
AC_CHECK_FIELD(efs_args_t, flags)
|
||
|
AC_CHECK_FIELD(efs_args_t, fspec)
|
||
|
AC_CHECK_FIELD(xfs_args_t, flags)
|
||
|
AC_CHECK_FIELD(xfs_args_t, fspec)
|
||
|
AC_CHECK_FIELD(struct fhstatus, fhs_fh)
|
||
|
AC_CHECK_FIELD(struct statfs, f_fstypename)
|
||
|
AC_CHECK_FIELD(nfs_args_t, acdirmin)
|
||
|
AC_CHECK_FIELD(nfs_args_t, acregmin)
|
||
|
AC_CHECK_FIELD(nfs_args_t, bsize)
|
||
|
AC_CHECK_FIELD(nfs_args_t, fh_len)
|
||
|
AC_CHECK_FIELD(nfs_args_t, fhsize)
|
||
|
AC_CHECK_FIELD(nfs_args_t, gfs_flags)
|
||
|
AC_CHECK_FIELD(nfs_args_t, namlen)
|
||
|
AC_CHECK_FIELD(nfs_args_t, optstr)
|
||
|
AC_CHECK_FIELD(nfs_args_t, proto)
|
||
|
AC_CHECK_FIELD(nfs_args_t, sotype)
|
||
|
AC_CHECK_FIELD(nfs_args_t, version)
|
||
|
AC_CHECK_FIELD(struct ifreq, ifr_addr)
|
||
|
AC_CHECK_FIELD(struct ifaddrs, ifa_next)
|
||
|
AC_CHECK_FIELD(struct sockaddr, sa_len)
|
||
|
AC_CHECK_FIELD(autofs_args_t, addr)
|
||
|
AC_CHECK_FIELD(umntrequest, rdevid)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl MAP TYPES
|
||
|
AC_MSG(MAP TYPES)
|
||
|
dnl DBM is obsolete, use NDBM
|
||
|
dnl AC_CHECK_MAP_FUNCS(dbminit dbmopen, dbm)
|
||
|
AC_CHECK_MAP_FUNCS(fgets, file)
|
||
|
AC_CHECK_MAP_FUNCS(hes_init hesiod_init, hesiod)
|
||
|
AC_CHECK_MAP_FUNCS(ldap_open, ldap)
|
||
|
AC_CHECK_MAP_FUNCS(dbm_open, ndbm)
|
||
|
AC_CHECK_MAP_FUNCS(yp_get_default_domain yp_all, nis)
|
||
|
AC_CHECK_MAP_FUNCS(nis_domain_of, nisplus, nisplus)
|
||
|
AC_CHECK_MAP_FUNCS(getpwnam, passwd)
|
||
|
AC_CHECK_MAP_FUNCS(opendir, union)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl *********
|
||
|
AC_SAVE_STATE
|
||
|
dnl *********
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl FILESYSTEM TYPES
|
||
|
AC_MSG(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()
|
||
|
AC_CHECK_FS_MNTENT(autofs)
|
||
|
AC_CHECK_FS_MNTENT(cdfs hsfs cd9660 iso9660 isofs cdrom, cdfs)
|
||
|
AC_CHECK_FS_MNTENT(cache)
|
||
|
AC_CHECK_FS_MNTENT(lofs lo, lofs)
|
||
|
AC_CHECK_FS_MNTENT(mfs)
|
||
|
AC_CHECK_FS_MNTENT(nfs)
|
||
|
AC_CHECK_FS_MNTENT(nfs3)
|
||
|
AC_CHECK_FS_MNTENT(vfat pcfs pc msdos msdosfs fat, pcfs)
|
||
|
AC_CHECK_FS_MNTENT(tfs)
|
||
|
AC_CHECK_FS_MNTENT(tmpfs)
|
||
|
AC_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* ) ;;
|
||
|
* ) AC_CHECK_FS_MNTENT(xfs) ;;
|
||
|
esac
|
||
|
AC_CHECK_FS_MNTENT(efs)
|
||
|
dnl new ones in bsd44
|
||
|
AC_CHECK_FS_MNTENT(null nullfs, nullfs)
|
||
|
AC_CHECK_FS_MNTENT(union unionfs, unionfs)
|
||
|
AC_CHECK_FS_MNTENT(umap umapfs, umapfs)
|
||
|
|
||
|
dnl check for filesystem existence if their headers exist
|
||
|
dnl AC_CHECK_FS_HEADERS(cfs.h, cfs)
|
||
|
AC_CHECK_FS_HEADERS(hsfs/hsfs.h, cdfs)
|
||
|
AC_CHECK_FS_HEADERS(tmpfs/tmp.h, tmpfs)
|
||
|
AC_CHECK_FS_HEADERS(sys/fs/autofs.h, autofs)
|
||
|
AC_CHECK_FS_HEADERS(sys/fs/cachefs_fs.h, cachefs)
|
||
|
dnl AC_CHECK_FS_HEADERS(jfs/jfsmount.h, ufs)
|
||
|
dnl ======================================================================
|
||
|
dnl AUTOMOUNTER FILESYSTEM TYPES
|
||
|
AC_MSG(AUTOMOUNTER FILESYSTEM TYPES)
|
||
|
AC_CHECK_AMU_FS(auto, automounter)
|
||
|
AC_CHECK_AMU_FS(direct, direct automount)
|
||
|
AC_CHECK_AMU_FS(toplvl, top-level)
|
||
|
AC_CHECK_AMU_FS(error, error)
|
||
|
AC_CHECK_AMU_FS(inherit, inheritance)
|
||
|
AC_CHECK_AMU_FS(program, program)
|
||
|
AC_CHECK_AMU_FS(link, symlink)
|
||
|
AC_CHECK_AMU_FS(linkx, symlink with existence check)
|
||
|
AC_CHECK_AMU_FS(host, host (nfs), nfs)
|
||
|
AC_CHECK_AMU_FS(nfsx, multi-nfs mount, nfs)
|
||
|
AC_CHECK_AMU_FS(nfsl, NFS with local existence check)
|
||
|
AC_CHECK_AMU_FS(union, union)
|
||
|
dnl AC_CHECK_AMU_FS(autofs, Sun AutoFS, autofs)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl *********
|
||
|
AC_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(MOUNTING TYPES)
|
||
|
AC_CHECK_MOUNT_TYPE(nfs)
|
||
|
AC_CHECK_MOUNT_TYPE(nfs3)
|
||
|
AC_CHECK_MOUNT_TYPE(4.2 4.3 4.4 ext2 ufs efs xfs ffs jfs ultrix, ufs)
|
||
|
AC_CHECK_MOUNT_TYPE(xfs)
|
||
|
AC_CHECK_MOUNT_TYPE(efs)
|
||
|
AC_CHECK_MOUNT_TYPE(cdfs hsfs cd9660 iso9660 isofs cdrom, cdfs)
|
||
|
AC_CHECK_MOUNT_TYPE(vfat pcfs pc msdos msdosfs fat, pcfs)
|
||
|
AC_CHECK_MOUNT_TYPE(mfs)
|
||
|
AC_CHECK_MOUNT_TYPE(tmpfs tmp, tmpfs)
|
||
|
AC_CHECK_MOUNT_TYPE(lofs lo, lofs)
|
||
|
AC_CHECK_MOUNT_TYPE(lfs)
|
||
|
AC_CHECK_MOUNT_TYPE(afs)
|
||
|
AC_CHECK_MOUNT_TYPE(autofs)
|
||
|
AC_CHECK_MOUNT_TYPE(tfs)
|
||
|
AC_CHECK_MOUNT_TYPE(cachefs)
|
||
|
AC_CHECK_MOUNT_TYPE(ignore)
|
||
|
dnl new ones in bsd44
|
||
|
AC_CHECK_MOUNT_TYPE(null nullfs, nullfs)
|
||
|
AC_CHECK_MOUNT_TYPE(union unionfs, unionfs)
|
||
|
AC_CHECK_MOUNT_TYPE(umap umapfs, umapfs)
|
||
|
dnl ######################################################################
|
||
|
dnl check for mnttab name for filesystem
|
||
|
AC_MSG(MOUNTING TABLE NAMES)
|
||
|
AC_CHECK_MNTTAB_TYPE(nfs)
|
||
|
AC_CHECK_MNTTAB_TYPE(nfs3)
|
||
|
AC_CHECK_MNTTAB_TYPE(ext2 ufs jfs 4.2 4.3 4.4 efs xfs ffs, ufs)
|
||
|
AC_CHECK_MNTTAB_TYPE(xfs)
|
||
|
AC_CHECK_MNTTAB_TYPE(efs)
|
||
|
AC_CHECK_MNTTAB_TYPE(cdfs hsfs cd9660 iso9660 isofs cdrom, cdfs)
|
||
|
AC_CHECK_MNTTAB_TYPE(vfat pcfs pc msdos msdosfs fat, pcfs)
|
||
|
AC_CHECK_MNTTAB_TYPE(mfs)
|
||
|
AC_CHECK_MNTTAB_TYPE(tmpfs tmp, tmpfs)
|
||
|
AC_CHECK_MNTTAB_TYPE(lofs lo, lofs)
|
||
|
AC_CHECK_MNTTAB_TYPE(lfs)
|
||
|
AC_CHECK_MNTTAB_TYPE(afs)
|
||
|
AC_CHECK_MNTTAB_TYPE(autofs)
|
||
|
AC_CHECK_MNTTAB_TYPE(tfs)
|
||
|
AC_CHECK_MNTTAB_TYPE(cachefs)
|
||
|
dnl new ones in bsd44
|
||
|
AC_CHECK_MNTTAB_TYPE(null nullfs, nullfs)
|
||
|
AC_CHECK_MNTTAB_TYPE(union unionfs, unionfs)
|
||
|
AC_CHECK_MNTTAB_TYPE(umap umapfs, umapfs)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl *********
|
||
|
AC_SAVE_STATE
|
||
|
dnl *********
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl Mount Table option name strings like MNTOPT_*
|
||
|
dnl if found, defines MNTTAB_OPT_*
|
||
|
AC_MSG(MOUNT TABLE OPTION NAME STRINGS)
|
||
|
AC_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 \
|
||
|
proto \
|
||
|
retrans \
|
||
|
retry \
|
||
|
ro \
|
||
|
rsize \
|
||
|
rw \
|
||
|
soft \
|
||
|
spongy \
|
||
|
suid \
|
||
|
symttl \
|
||
|
timeo \
|
||
|
vers \
|
||
|
wsize \
|
||
|
)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl *********
|
||
|
AC_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(GENERIC MOUNT(2) OPTIONS)
|
||
|
AC_CHECK_MNT2_GEN_OPTS( \
|
||
|
async \
|
||
|
automntfs \
|
||
|
cache \
|
||
|
data \
|
||
|
fss \
|
||
|
grpid \
|
||
|
ignore \
|
||
|
jfs \
|
||
|
multi \
|
||
|
newtype \
|
||
|
nfs \
|
||
|
nocache \
|
||
|
nodev \
|
||
|
noexec \
|
||
|
nomnttab \
|
||
|
nosub \
|
||
|
nosuid \
|
||
|
optionstr \
|
||
|
overlay \
|
||
|
quota \
|
||
|
rdonly \
|
||
|
ronly \
|
||
|
sync \
|
||
|
synchronous \
|
||
|
)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl *********
|
||
|
AC_SAVE_STATE
|
||
|
dnl *********
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl NFS-specific mount(2) options (hex numbers) like NFSMNT_*/NFS_MOUNT_*
|
||
|
AC_MSG(NFS-SPECIFIC MOUNT(2) OPTIONS)
|
||
|
dnl if found, defines MNT2_NFS_OPT_*
|
||
|
AC_CHECK_MNT2_NFS_OPTS( \
|
||
|
acdirmax \
|
||
|
acdirmin \
|
||
|
acregmax \
|
||
|
acregmin \
|
||
|
auto \
|
||
|
deadthresh \
|
||
|
dumbtimr \
|
||
|
fsname \
|
||
|
grpid \
|
||
|
hostname \
|
||
|
ignore \
|
||
|
int \
|
||
|
intr \
|
||
|
knconf \
|
||
|
leaseterm \
|
||
|
maxgrps \
|
||
|
nfsv3 \
|
||
|
noac \
|
||
|
noconn \
|
||
|
nocto \
|
||
|
noint \
|
||
|
nqnfs \
|
||
|
pgthresh \
|
||
|
posix \
|
||
|
readahead \
|
||
|
resvport \
|
||
|
retrans \
|
||
|
ronly \
|
||
|
rsize \
|
||
|
soft \
|
||
|
spongy \
|
||
|
symttl \
|
||
|
tcp \
|
||
|
timeo \
|
||
|
ver3 \
|
||
|
wsize \
|
||
|
)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl CDFS-specific mount(2) options (hex numbers) like M_*
|
||
|
AC_MSG(CDFS-SPECIFIC MOUNT(2) OPTIONS)
|
||
|
dnl if found, defines MNT2_CDFS_OPT_*
|
||
|
AC_CHECK_MNT2_CDFS_OPTS(\
|
||
|
defperm \
|
||
|
extatt \
|
||
|
gens \
|
||
|
nodefperm \
|
||
|
norrip \
|
||
|
noversion \
|
||
|
rrip \
|
||
|
)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl SYSTEM-SPECIFIC TESTS
|
||
|
AC_MSG(SYSTEM-SPECIFIC TESTS)
|
||
|
dnl ======================================================================
|
||
|
dnl Mount table style
|
||
|
AC_CHECK_MNTTAB_STYLE
|
||
|
AC_CHECK_HIDE_MOUNT_TYPE
|
||
|
AC_CHECK_MNTTAB_LOCATION
|
||
|
AC_CHECK_MNTTAB_FILE_NAME
|
||
|
AC_CHECK_MOUNT_TRAP
|
||
|
AC_CHECK_MOUNT_STYLE
|
||
|
AC_CHECK_UMOUNT_STYLE
|
||
|
AC_CHECK_UNMOUNT_CALL
|
||
|
AC_CHECK_UNMOUNT_ARGS
|
||
|
AC_CHECK_NFS_SA_DREF
|
||
|
AC_CHECK_NFS_HN_DREF
|
||
|
AC_CHECK_NFS_FH_DREF
|
||
|
AC_CHECK_NFS_SOCKET_CONNECTION
|
||
|
AC_CHECK_CHECKMOUNT_STYLE
|
||
|
AC_CHECK_RESTARTABLE_SIGNAL_HANDLER
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl *********
|
||
|
AC_SAVE_STATE
|
||
|
dnl *********
|
||
|
|
||
|
dnl ######################################################################
|
||
|
dnl output files
|
||
|
AC_MSG(OUTPUT FILES)
|
||
|
dnl The am_utils_link_files_* variables are set in macros in aclocal.m4
|
||
|
dnl XXX: use the next line when porting to autoconf-2.14
|
||
|
dnl AC_CONFIG_LINKS(${am_utils_link_files})
|
||
|
dnl XXX: the next line is for autoconf-2.13 and earlier
|
||
|
AC_LINK_FILES(${am_utils_link_files_src}, ${am_utils_link_files_dst})
|
||
|
dnl ==========================================================================
|
||
|
dnl This is required by libtool 1.0 until an automake after 2.12 does it
|
||
|
dnl automatically.
|
||
|
LTLIBOBJS=`echo "$LIBOBJS" | sed 's/\.o/.lo/g'`
|
||
|
AC_SUBST(LTLIBOBJS)
|
||
|
LTALLOCA=`echo "$ALLOCA" | sed 's/\.o/.lo/g'`
|
||
|
AC_SUBST(LTALLOCA)
|
||
|
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 ==========================================================================
|
||
|
dnl It is *NOT* a mistake that I listed config.h.in (with ".in" extension)
|
||
|
dnl in this file. It is needed to perform @<var>@ substitution on the final
|
||
|
dnl config.h file, which does not get done by AC_CONFIG_HEADER, only by the
|
||
|
dnl AC_OUTPUT routines. Since AC_CONFIG_HEADER runs after the files listed
|
||
|
dnl in AC_OUTPUT, it overrides the @<var>@ substitutions made earlier.
|
||
|
dnl -Erez Zadok <ezk@cs.columbia.edu>
|
||
|
AC_OUTPUT( \
|
||
|
dnl aux_conf.h:aux/aux_conf.h.in \
|
||
|
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/wait4amd \
|
||
|
scripts/wait4amd2die \
|
||
|
)
|
||
|
dnl ======================================================================
|
||
|
|
||
|
dnl ######################################################################
|
||
|
AC_MSG(END OF CONFIGURATION)
|
||
|
dnl end of configure.in for am-utils-6.x
|