dnl Process this file with autoconf to produce a configure script.
dnl
-AC_INIT([linux nfs-utils],[1.0.8-rc2],[nfs@lists.sf.net],[nfs-utils])
+AC_INIT([linux nfs-utils],[1.0.10],[nfs@lists.sf.net],[nfs-utils])
AC_CANONICAL_BUILD([])
AC_CANONICAL_HOST([])
AC_CONFIG_SRCDIR(tools/getiversion/getiversion.c)
fi
AM_CONDITIONAL(CONFIG_RQUOTAD, [test "$enable_rquotad" = "yes"])
+AC_ARG_ENABLE(mount,
+ [AC_HELP_STRING([--enable-mount],
+ [Create mount.nfs and don't use the util-linux mount(8) functionality. @<:@default=no@:>@])],
+ enable_mount=$enableval,
+ enable_mount=no)
+ AM_CONDITIONAL(CONFIG_MOUNT, [test "$enable_mount" = "yes"])
+
# Check whether user wants TCP wrappers support
AC_TCP_WRAPPERS
dnl *************************************************************
dnl * Check for required libraries
dnl *************************************************************
-AC_CHECK_LIB(socket, main, [LIBSOCKET="-lnsl"])
-AC_CHECK_LIB(nsl, main, [LIBNSL="-lnsl"])
+AC_CHECK_FUNC(gethostbyname, , [AC_CHECK_LIB(nsl, gethostbyname, [LIBNSL="-lnsl"])])
+AC_SUBST(LIBNSL)
+
+AC_CHECK_FUNC(connect, ,
+ AC_CHECK_LIB(socket, connect, [LIBSOCKET="-lsocket"],
+ AC_MSG_ERROR(Function 'socket' not found.), $LIBNSL))
+
AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"])
if test "$enable_nfsv4" = yes; then
- AC_CHECK_LIB(event, event_dispatch, [libevent=1], [AC_MSG_ERROR(libevent needed for nfsv4 support)])
- AC_CHECK_LIB(nfsidmap, nfs4_init_name_mapping, [libnfsidmap=1], [AC_MSG_ERROR(libnfsidmap needed for nfsv4 support)])
- AC_CHECK_HEADERS(event.h, ,[AC_MSG_ERROR(libevent needed for nfsv4 support)])
- AC_CHECK_HEADERS(nfsidmap.h, ,[AC_MSG_ERROR(libnfsidmap needed for nfsv4 support)])
+ AC_CHECK_LIB(event, event_dispatch, [libevent=1], AC_MSG_ERROR([libevent needed for nfsv4 support]))
+ AC_CHECK_LIB(nfsidmap, nfs4_init_name_mapping, [libnfsidmap=1], AC_MSG_ERROR([libnfsidmap needed for nfsv4 support]))
+ AC_CHECK_HEADERS(event.h, ,AC_MSG_ERROR([libevent needed for nfsv4 support]))
+ AC_CHECK_HEADERS(nfsidmap.h, ,AC_MSG_ERROR([libnfsidmap needed for nfsv4 support]))
+ dnl librpcsecgss already has a dependency on libgssapi,
+ dnl but we need to make sure we get the right version
+ if test "$enable_gss" = yes; then
+ PKG_CHECK_MODULES(RPCSECGSS, librpcsecgss >= 0.10, ,
+ [AC_MSG_ERROR([Unable to locate information required to use librpcsecgss. If you have pkgconfig installed, you might try setting environment variable PKG_CONFIG_PATH to /usr/local/lib/pkgconfig])
+ ]
+ )
+ PKG_CHECK_MODULES(GSSAPI, libgssapi >= 0.9)
+ fi
+
fi
if test "$knfsd_cv_glibc2" = no; then
AC_CHECK_LIB(bsd, daemon, [LIBBSD="-lbsd"])
fi
AC_SUBST(LIBSOCKET)
-AC_SUBST(LIBNSL)
AC_SUBST(LIBCRYPT)
AC_SUBST(LIBBSD)
if test "$enable_gss" = yes; then
dnl 'gss' also depends on nfsidmap.h - at least for svcgssd_proc.c
- AC_CHECK_HEADERS(nfsidmap.h, ,[AC_MSG_ERROR(libnfsidmap needed for gss support)])
- AC_CHECK_HEADERS(spkm3.h, ,[AC_MSG_WARN(could not locate SPKM3 header; will not have SPKM3 support)])
+ AC_CHECK_HEADERS(nfsidmap.h, ,AC_MSG_ERROR([libnfsidmap needed for gss support]))
+ AC_CHECK_HEADERS(spkm3.h, ,AC_MSG_WARN([could not locate SPKM3 header; will not have SPKM3 support]))
+ dnl the nfs4_set_debug function doesn't appear in all version of the library
+ AC_CHECK_LIB(nfsidmap, nfs4_set_debug,
+ AC_DEFINE(HAVE_NFS4_SET_DEBUG,1,
+ [Whether nfs4_set_debug() is present in libnfsidmap]),)
dnl Check for Kerberos V5
AC_KERBEROS_V5
dnl This is not done until here because we need to have KRBLIBS set
- dnl "librpcsecgss=1" is so that it doesn't get added to LIBS
- AC_CHECK_LIB(rpcsecgss, authgss_create_default, [librpcsecgss=1], [AC_MSG_ERROR(librpcsecgss needed for nfsv4 support)], $KRBLIBS)
+ dnl ("librpcsecgss=1" is so that it doesn't get added to LIBS)
+ AC_CHECK_LIB(rpcsecgss, authgss_create_default, [librpcsecgss=1], AC_MSG_ERROR([librpcsecgss needed for nfsv4 support]), -lgssapi -ldl)
AC_CHECK_LIB(rpcsecgss, authgss_set_debug_level,
- AC_DEFINE(HAVE_AUTHGSS_SET_DEBUG_LEVEL, 1, [Define this if the rpcsec_gss library has the function authgss_set_debug_level]),, $KRBLIBS)
+ AC_DEFINE(HAVE_AUTHGSS_SET_DEBUG_LEVEL, 1, [Define this if the rpcsec_gss library has the function authgss_set_debug_level]),, -lgssapi -ldl)
fi
malloc.h memory.h netdb.h netinet/in.h paths.h \
stdlib.h string.h sys/file.h sys/ioctl.h sys/mount.h \
sys/param.h sys/socket.h sys/time.h sys/vfs.h \
- syslog.h unistd.h com_err.h et/com_err.h])
+ syslog.h unistd.h com_err.h et/com_err.h \
+ ifaddrs.h])
dnl *************************************************************
dnl Checks for typedefs, structures, and compiler characteristics
AC_FUNC_VPRINTF
AC_CHECK_FUNCS([alarm atexit dup2 fdatasync ftruncate getcwd \
gethostbyaddr gethostbyname gethostname getmntent \
- gettimeofday hasmntopt inet_ntoa memset mkdir pathconf \
+ gettimeofday hasmntopt inet_ntoa innetgr memset mkdir pathconf \
realpath rmdir select socket strcasecmp strchr strdup \
- strerror strrchr strtol strtoul])
+ strerror strrchr strtol strtoul sigprocmask])
dnl *************************************************************
AC_CHECK_SIZEOF(int)
AC_CHECK_SIZEOF(long)
AC_CHECK_SIZEOF(size_t)
+AC_CHECK_SIZEOF(socklen_t)
+
dnl *************************************************************
dnl Export some path names to config.h
utils/gssd/Makefile
utils/idmapd/Makefile
utils/lockd/Makefile
+ utils/mount/Makefile
utils/mountd/Makefile
utils/nfsd/Makefile
utils/nfsstat/Makefile
- utils/nhfsstone/Makefile
utils/rquotad/Makefile
utils/showmount/Makefile
utils/statd/Makefile])