X-Git-Url: https://git.decadent.org.uk/gitweb/?p=nfs-utils.git;a=blobdiff_plain;f=configure.ac;h=7a885be48af1067d58540ad83a5f5ea945c3535c;hp=80fb39d3f42e5c89ead0a4f744db9aff509dde20;hb=10fba47663b2f6c695ebe315cbe3b464350b0060;hpb=917a2f41b62eda8c0a94c19a7a7e7709bc9a3251 diff --git a/configure.ac b/configure.ac index 80fb39d..7a885be 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ dnl Process this file with autoconf to produce a configure script. dnl -AC_INIT([linux nfs-utils],[1.2.5],[linux-nfs@vger.kernel.org],[nfs-utils]) +AC_INIT([linux nfs-utils],[1.2.8],[linux-nfs@vger.kernel.org],[nfs-utils]) AC_CANONICAL_BUILD([]) AC_CANONICAL_HOST([]) AC_CONFIG_MACRO_DIR(aclocal) @@ -24,9 +24,8 @@ AC_ARG_WITH(statedir, statedir=/var/lib/nfs) AC_SUBST(statedir) AC_ARG_WITH(statdpath, - [AC_HELP_STRING([--with-statdpath=/foo @<:@default=/var/lib/nfs@:>@], - [define statd's state dir as /foo instead of the NFS statedir] - )], + [AC_HELP_STRING([--with-statdpath=/foo], + [define the statd state dir as /foo instead of the NFS statedir @<:@default=/var/lib/nfs@:>@])], statdpath=$withval, statdpath=$statedir ) @@ -77,7 +76,8 @@ AC_ARG_ENABLE(nfsv41, enable_nfsv41=yes) if test "$enable_nfsv41" = yes; then if test "$enable_nfsv4" != yes; then - AC_MSG_ERROR([NFS v4.1 is enabled but NFS v4 is not. Use --disable-nfsv41]) + AC_MSG_WARN([NFS v4 is not enabled. Disabling NFS v4.1]) + enable_nfsv41=no fi BLKMAPD=blkmapd else @@ -186,6 +186,12 @@ else AM_CONDITIONAL(MOUNT_CONFIG, [test "$enable_mount" = "yes"]) fi +AC_ARG_ENABLE(nfsdcltrack, + [AC_HELP_STRING([--enable-nfsdcltrack], + [enable NFSv4 clientid tracking programs @<:@default=yes@:>@])], + enable_nfsdctrack=$enableval, + enable_nfsdcltrack="yes") + dnl Check for TI-RPC library and headers AC_LIBTIRPC @@ -249,6 +255,8 @@ AC_CHECK_FUNC([getservbyname], , AC_CHECK_LIB([crypt], [crypt], [LIBCRYPT="-lcrypt"]) +AC_CHECK_LIB([dl], [dlclose], [LIBDL="-ldl"]) + if test "$enable_nfsv4" = yes; then dnl check for libevent libraries and headers AC_LIBEVENT @@ -259,13 +267,36 @@ if test "$enable_nfsv4" = yes; then dnl check for the keyutils libraries and headers AC_KEYUTILS - 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 - AC_RPCSEC_VERSION + dnl Check for sqlite3 + AC_SQLITE3_VERS + + if test "$enable_nfsdcltrack" = "yes"; then + AC_CHECK_HEADERS([libgen.h sys/inotify.h], , + AC_MSG_ERROR([Cannot find header needed for nfsdcltrack])) + + case $libsqlite3_cv_is_recent in + yes) ;; + unknown) + dnl do not fail when cross-compiling + AC_MSG_WARN([assuming sqlite is at least v3.3]) ;; + *) + AC_MSG_ERROR([nfsdcltrack requires sqlite-devel]) ;; + esac fi + +else + enable_nfsdcltrack="no" +fi + + +if test "$enable_nfsv41" = yes; then + AC_CHECK_LIB([devmapper], [dm_task_create], [LIBDEVMAPPER="-ldevmapper"], AC_MSG_ERROR([libdevmapper needed])) + AC_CHECK_HEADER(libdevmapper.h, , AC_MSG_ERROR([Cannot find devmapper header file libdevmapper.h])) + AC_CHECK_HEADER(sys/inotify.h, , AC_MSG_ERROR([Cannot find header file sys/inotify.h])) fi + dnl enable nfsidmap when its support by libnfsidmap +AM_CONDITIONAL(CONFIG_NFSDCLTRACK, [test "$enable_nfsdcltrack" = "yes" ]) AM_CONDITIONAL(CONFIG_NFSIDMAP, [test "$ac_cv_header_keyutils_h$ac_cv_lib_nfsidmap_nfs4_owner_to_uid" = "yesyes"]) @@ -293,6 +324,7 @@ AC_SUBST(LIBSOCKET) AC_SUBST(LIBCRYPT) AC_SUBST(LIBBSD) AC_SUBST(LIBBLKID) +AC_SUBST(LIBDL) if test "$enable_libmount" != no; then AC_CHECK_LIB(mount, mnt_context_do_mount, [LIBMOUNT="-lmount"], AC_MSG_ERROR([libmount needed])) @@ -308,15 +340,26 @@ if test "$enable_gss" = yes; then dnl 'gss' also depends on nfsidmap.h - at least for svcgssd_proc.c AC_LIBNFSIDMAP - AC_CHECK_HEADERS([spkm3.h], , - [AC_MSG_WARN([Could not locate SPKM3 header; will not have SPKM3 support])]) - dnl Check for Kerberos V5 AC_KERBEROS_V5 dnl Invoked after AC_KERBEROS_V5; AC_LIBRPCSECGSS needs to have KRBLIBS set AC_LIBRPCSECGSS + 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 + AC_RPCSEC_VERSION + if test x"$GSSGLUE_LIBS" != x""; then + GSSAPI_CFLAGS=$GSSGLUE_CFLAGS + GSSAPI_LIBS=$GSSGLUE_LIBS + else + GSSAPI_CFLAGS=$GSSKRB_CFLAGS + GSSAPI_LIBS=$GSSKRB_LIBS + fi + AC_SUBST([GSSAPI_CFLAGS]) + AC_SUBST([GSSAPI_LIBS]) + fi fi dnl Check for IPv6 support @@ -330,7 +373,7 @@ AC_CHECK_HEADERS([arpa/inet.h fcntl.h libintl.h limits.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 \ - ifaddrs.h]) + ifaddrs.h nfs-plugin.h libio.h]) dnl ************************************************************* dnl Checks for typedefs, structures, and compiler characteristics @@ -368,7 +411,7 @@ AC_CHECK_FUNCS([alarm atexit dup2 fdatasync ftruncate getcwd \ gethostbyaddr gethostbyname gethostname getmntent \ getnameinfo getrpcbyname getifaddrs \ gettimeofday hasmntopt inet_ntoa innetgr memset mkdir pathconf \ - realpath rmdir select socket strcasecmp strchr strdup \ + ppoll realpath rmdir select socket strcasecmp strchr strdup \ strerror strrchr strtol strtoul sigprocmask]) @@ -452,6 +495,7 @@ AC_CONFIG_FILES([ tools/nfs-iostat/Makefile utils/Makefile utils/blkmapd/Makefile + utils/nfsdcltrack/Makefile utils/exportfs/Makefile utils/gssd/Makefile utils/idmapd/Makefile @@ -462,6 +506,7 @@ AC_CONFIG_FILES([ utils/nfsidmap/Makefile utils/showmount/Makefile utils/statd/Makefile + utils/osd_login/Makefile tests/Makefile tests/nsm_client/Makefile]) AC_OUTPUT