diff --git a/0001-systemd-Apply-all-sysctl-settings-when-NFS-related-m.patch b/0001-systemd-Apply-all-sysctl-settings-when-NFS-related-m.patch new file mode 100644 index 0000000..4bda06a --- /dev/null +++ b/0001-systemd-Apply-all-sysctl-settings-when-NFS-related-m.patch @@ -0,0 +1,80 @@ +From afc7132dfb212ac1f676a5ac36d29a9e06325645 Mon Sep 17 00:00:00 2001 +From: NeilBrown +Date: Tue, 7 Jun 2022 14:22:11 -0400 +Subject: [PATCH] systemd: Apply all sysctl settings when NFS-related modules + are loaded + +sysctl settings (e.g. /etc/sysctl.conf and others) are normally loaded +once at boot. If the module that implements some settings is no yet +loaded, those settings don't get applied. + +Various NFS modules support various sysctl settings. If they are loaded +after boot, they miss out. + +So add commands to modprobe.d/50-nfs.conf to apply the relevant settings +when the module is loaded. + +I have placed this in the "systemd" directory because it seemed the +least bad choice. + +Signed-off-by: NeilBrown +Signed-off-by: Steve Dickson +--- + systemd/50-nfs.conf | 16 ++++++++++++++++ + systemd/Makefile.am | 10 ++++++++-- + 2 files changed, 24 insertions(+), 2 deletions(-) + create mode 100644 systemd/50-nfs.conf + +--- /dev/null ++++ b/systemd/50-nfs.conf +@@ -0,0 +1,16 @@ ++# Ensure all NFS systctl settings get applied when modules load ++ ++# sunrpc module supports "sunrpc.*" sysctls ++install sunrpc /sbin/modprobe --ignore-install sunrpc $CMDLINE_OPTS && /sbin/sysctl -q --pattern sunrpc --system ++ ++# rpcrdma module supports sunrpc.svc_rdma.* ++install rpcrdma /sbin/modprobe --ignore-install rpcrdma $CMDLINE_OPTS && /sbin/sysctl -q --pattern sunrpc.svc_rdma --system ++ ++# lockd module supports "fs.nfs.nlm*" and "fs.nfs.nsm*" sysctls ++install lockd /sbin/modprobe --ignore-install lockd $CMDLINE_OPTS && /sbin/sysctl -q --pattern fs.nfs.n[sl]m --system ++ ++# nfsv4 module supports "fs.nfs.*" sysctls (nfs_callback_tcpport and idmap_cache_timeout) ++install nfsv4 /sbin/modprobe --ignore-install nfsv4 $CMDLINE_OPTS && /sbin/sysctl -q --pattern 'fs.nfs.(nfs_callback_tcpport|idmap_cache_timeout)' --system ++ ++# nfs module supports "fs.nfs.*" sysctls ++install nfs /sbin/modprobe --ignore-install nfs $CMDLINE_OPTS && /sbin/sysctl -q --pattern fs.nfs --system +--- a/systemd/Makefile.am ++++ b/systemd/Makefile.am +@@ -2,6 +2,8 @@ + + MAINTAINERCLEANFILES = Makefile.in + ++modprobe_files = 50-nfs.conf ++ + unit_files = \ + nfs-client.target \ + rpc_pipefs.target \ +@@ -51,7 +53,7 @@ endif + + man5_MANS = nfs.conf.man + man7_MANS = nfs.systemd.man +-EXTRA_DIST = $(unit_files) $(man5_MANS) $(man7_MANS) ++EXTRA_DIST = $(unit_files) $(modprobe_files) $(man5_MANS) $(man7_MANS) + + generator_dir = $(unitdir)/../system-generators + +@@ -73,8 +75,12 @@ rpc_pipefs_generator_LDADD = ../support/ + + if INSTALL_SYSTEMD + genexec_PROGRAMS = nfs-server-generator rpc-pipefs-generator +-install-data-hook: $(unit_files) ++install-data-hook: $(unit_files) $(modprobe_files) + mkdir -p $(DESTDIR)/$(unitdir) + cp $(unit_files) $(DESTDIR)/$(unitdir) + cp $(rpc_pipefs_mount_file) $(DESTDIR)/$(unitdir)/$(rpc_pipefsmount) ++else ++install-data-hook: $(modprobe_files) + endif ++ mkdir -p $(DESTDIR)/usr/lib/modprobe.d ++ cp $(modprobe_files) $(DESTDIR)/usr/lib/modprobe.d/ diff --git a/0002-Update-autoconfig-files-to-work-with-v2.71.patch b/0002-Update-autoconfig-files-to-work-with-v2.71.patch new file mode 100644 index 0000000..7b6737a --- /dev/null +++ b/0002-Update-autoconfig-files-to-work-with-v2.71.patch @@ -0,0 +1,427 @@ +From 1a5870f6b44671f32abf250bc7f60fb7f6a190a8 Mon Sep 17 00:00:00 2001 +From: NeilBrown +Date: Tue, 7 Jun 2022 14:30:57 -0400 +Subject: [PATCH] Update autoconfig files to work with v2.71 + +OpenSUSE recently updated autoconf to v2.71, and nfs-utils now doesn't +build. This patch fixes it - mostly. +This patch is the result of: + + - running autoupdate on configure.am and aclocal/* + - removing any sections add that say they can safely be removed + - revertion the change to AC_PREREQ. + +I haven't confirmed that it still works with v2.59. It does seem to +work with 2.69 at least. + +Signed-off-by: NeilBrown +Signed-off-by: Steve Dickson +--- + aclocal/bsdsignals.m4 | 7 ++-- + aclocal/kerberos5.m4 | 2 +- + aclocal/libblkid.m4 | 5 +-- + aclocal/libsqlite3.m4 | 5 +-- + aclocal/libtirpc.m4 | 3 +- + aclocal/nfs-utils.m4 | 5 +-- + aclocal/rpcsec_vers.m4 | 2 +- + configure.ac | 85 +++++++++++++++--------------------------- + 8 files changed, 43 insertions(+), 71 deletions(-) + +diff --git a/aclocal/bsdsignals.m4 b/aclocal/bsdsignals.m4 +index 24572aa721d6..362ddb5bd3bf 100644 +--- a/aclocal/bsdsignals.m4 ++++ b/aclocal/bsdsignals.m4 +@@ -2,13 +2,13 @@ dnl *********** BSD vs. POSIX signal handling ************** + AC_DEFUN([AC_BSD_SIGNALS], [ + AC_MSG_CHECKING(for BSD signal semantics) + AC_CACHE_VAL(knfsd_cv_bsd_signals, +- [AC_TRY_RUN([ ++ [AC_RUN_IFELSE([AC_LANG_SOURCE([[ + #include + #include + #include + + static int counter = 0; +- static RETSIGTYPE handler(int num) { counter++; } ++ static void handler(int num) { counter++; } + + int main() + { +@@ -23,8 +23,7 @@ AC_DEFUN([AC_BSD_SIGNALS], [ + kill(getpid(), SIGHUP); kill(getpid(), SIGHUP); + return (counter == 2)? 0 : 1; + } +- ], knfsd_cv_bsd_signals=yes, knfsd_cv_bsd_signals=no, +- [ ++ ]])],[knfsd_cv_bsd_signals=yes],[knfsd_cv_bsd_signals=no],[ + case "$host_os" in + *linux*) knfsd_cv_bsd_signals=no;; + *bsd*) knfsd_cv_bsd_signals=yes;; +diff --git a/aclocal/kerberos5.m4 b/aclocal/kerberos5.m4 +index bf0e88bc57f4..f96f0fd44e6b 100644 +--- a/aclocal/kerberos5.m4 ++++ b/aclocal/kerberos5.m4 +@@ -6,7 +6,7 @@ dnl The Kerberos gssapi library will be dynamically loaded? + AC_DEFUN([AC_KERBEROS_V5],[ + AC_MSG_CHECKING(for Kerberos v5) + AC_ARG_WITH(krb5, +- [AC_HELP_STRING([--with-krb5=DIR], [use Kerberos v5 installation in DIR])], ++ [AS_HELP_STRING([--with-krb5=DIR],[use Kerberos v5 installation in DIR])], + [ case "$withval" in + yes|no) + krb5_with="" +diff --git a/aclocal/libblkid.m4 b/aclocal/libblkid.m4 +index 10824e9f58f1..1b8884ce6bcd 100644 +--- a/aclocal/libblkid.m4 ++++ b/aclocal/libblkid.m4 +@@ -5,15 +5,14 @@ AC_DEFUN([AC_BLKID_VERS], [ + [ + saved_LIBS="$LIBS" + LIBS=-lblkid +- AC_TRY_RUN([ ++ AC_RUN_IFELSE([AC_LANG_SOURCE([[ + #include + int main() + { + int vers = blkid_get_library_version(0, 0); + return vers >= 140 ? 0 : 1; + } +- ], [libblkid_cv_is_recent=yes], [libblkid_cv_is_recent=no], +- [libblkid_cv_is_recent=unknown]) ++ ]])],[libblkid_cv_is_recent=yes],[libblkid_cv_is_recent=no],[libblkid_cv_is_recent=unknown]) + LIBS="$saved_LIBS"]) + AC_MSG_RESULT($libblkid_cv_is_recent) + ])dnl +diff --git a/aclocal/libsqlite3.m4 b/aclocal/libsqlite3.m4 +index 8c38993cbba8..16b8c8a1d565 100644 +--- a/aclocal/libsqlite3.m4 ++++ b/aclocal/libsqlite3.m4 +@@ -14,7 +14,7 @@ AC_DEFUN([AC_SQLITE3_VERS], [ + [ + saved_LIBS="$LIBS" + LIBS=-lsqlite3 +- AC_TRY_RUN([ ++ AC_RUN_IFELSE([AC_LANG_SOURCE([[ + #include + #include + int main() +@@ -24,8 +24,7 @@ AC_DEFUN([AC_SQLITE3_VERS], [ + return vers != SQLITE_VERSION_NUMBER || + vers < 3003000; + } +- ], [libsqlite3_cv_is_recent=yes], [libsqlite3_cv_is_recent=no], +- [libsqlite3_cv_is_recent=unknown]) ++ ]])],[libsqlite3_cv_is_recent=yes],[libsqlite3_cv_is_recent=no],[libsqlite3_cv_is_recent=unknown]) + LIBS="$saved_LIBS"]) + + AC_MSG_RESULT($libsqlite3_cv_is_recent) +diff --git a/aclocal/libtirpc.m4 b/aclocal/libtirpc.m4 +index 27368ff24ef1..f7de5193c177 100644 +--- a/aclocal/libtirpc.m4 ++++ b/aclocal/libtirpc.m4 +@@ -37,8 +37,7 @@ dnl + AC_DEFUN([AC_LIBTIRPC_OLD], [ + + AC_ARG_WITH([tirpcinclude], +- [AC_HELP_STRING([--with-tirpcinclude=DIR], +- [use TI-RPC headers in DIR])], ++ [AS_HELP_STRING([--with-tirpcinclude=DIR],[use TI-RPC headers in DIR])], + [tirpc_header_dir=$withval], + [tirpc_header_dir=/usr/include/tirpc]) + +diff --git a/aclocal/nfs-utils.m4 b/aclocal/nfs-utils.m4 +index fae8b95fe533..5f3ab0c2b301 100644 +--- a/aclocal/nfs-utils.m4 ++++ b/aclocal/nfs-utils.m4 +@@ -2,13 +2,12 @@ dnl *********** GNU libc 2 *************** + AC_DEFUN([AC_GNULIBC],[ + AC_MSG_CHECKING(for GNU libc2) + AC_CACHE_VAL(knfsd_cv_glibc2, +- [AC_TRY_CPP([ ++ [AC_PREPROC_IFELSE([AC_LANG_SOURCE([[ + #include + #if !defined(__GLIBC__) + # error Nope + #endif +- ], +- knfsd_cv_glibc2=yes, knfsd_cv_glibc2=no)]) ++ ]])],[knfsd_cv_glibc2=yes],[knfsd_cv_glibc2=no])]) + AC_MSG_RESULT($knfsd_cv_glibc2) + if test $knfsd_cv_glibc2 = yes; then + CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" +diff --git a/aclocal/rpcsec_vers.m4 b/aclocal/rpcsec_vers.m4 +index 11d2f18cb241..43e5a9669383 100644 +--- a/aclocal/rpcsec_vers.m4 ++++ b/aclocal/rpcsec_vers.m4 +@@ -2,7 +2,7 @@ dnl Checks librpcsec version + AC_DEFUN([AC_RPCSEC_VERSION], [ + + AC_ARG_WITH([gssglue], +- [AC_HELP_STRING([--with-gssglue], [Use libgssglue for GSS support])]) ++ [AS_HELP_STRING([--with-gssglue],[Use libgssglue for GSS support])]) + if test x"$with_gssglue" = x"yes"; then + PKG_CHECK_MODULES([GSSGLUE], [libgssglue >= 0.3]) + AC_CHECK_LIB([gssglue], [gss_set_allowable_enctypes]) +diff --git a/configure.ac b/configure.ac +index 3e1c183b6a07..a13f36915a35 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -14,33 +14,29 @@ dnl ************************************************************* + dnl * Define the set of applicable options + dnl ************************************************************* + AC_ARG_WITH(release, +- [AC_HELP_STRING([--with-release=XXX], [set release to XXX [1]])], ++ [AS_HELP_STRING([--with-release=XXX],[set release to XXX [1]])], + RELEASE=$withval, + RELEASE=1) + AC_SUBST(RELEASE) + AC_ARG_WITH(statedir, +- [AC_HELP_STRING([--with-statedir=/foo], +- [use state dir /foo @<:@default=/var/lib/nfs@:>@])], ++ [AS_HELP_STRING([--with-statedir=/foo],[use state dir /foo @<:@default=/var/lib/nfs@:>@])], + statedir=$withval, + statedir=/var/lib/nfs) + AC_SUBST(statedir) + AC_ARG_WITH(nfsconfig, +- [AC_HELP_STRING([--with-nfsconfig=/config/file], +- [use general config file /config/file @<:@default=/etc/nfs.conf@:>@])], ++ [AS_HELP_STRING([--with-nfsconfig=/config/file],[use general config file /config/file @<:@default=/etc/nfs.conf@:>@])], + nfsconfig=$withval, + nfsconfig=/etc/nfs.conf) + AC_SUBST(nfsconfig) + AC_ARG_WITH(statdpath, +- [AC_HELP_STRING([--with-statdpath=/foo], +- [define the statd state dir as /foo instead of the NFS statedir @<:@default=/var/lib/nfs@:>@])], ++ [AS_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 + ) + AC_SUBST(statdpath) + AC_ARG_WITH(statduser, +- [AC_HELP_STRING([--with-statduser=rpcuser], +- [statd to run under @<:@rpcuser or nobody@:>@] +- )], ++ [AS_HELP_STRING([--with-statduser=rpcuser],[statd to run under @<:@rpcuser or nobody@:>@ ++ ])], + statduser=$withval, + if test "x$cross_compiling" = "xno"; then + if grep -s '^rpcuser:' /etc/passwd > /dev/null; then +@@ -53,9 +49,8 @@ AC_ARG_WITH(statduser, + fi) + AC_SUBST(statduser) + AC_ARG_WITH(start-statd, +- [AC_HELP_STRING([--with-start-statd=scriptname], +- [When an nfs filesystems is mounted with locking, run this script] +- )], ++ [AS_HELP_STRING([--with-start-statd=scriptname],[When an nfs filesystems is mounted with locking, run this script ++ ])], + startstatd=$withval, + startstatd=/usr/sbin/start-statd + ) +@@ -63,8 +58,7 @@ AC_ARG_WITH(start-statd, + AC_DEFINE_UNQUOTED(START_STATD, "$startstatd", [Define this to a script which can start statd on mount]) + unitdir=/usr/lib/systemd/system + AC_ARG_WITH(systemd, +- [AC_HELP_STRING([--with-systemd@<:@=unit-dir-path@:>@], +- [install systemd unit files @<:@Default: no, and path defaults to /usr/lib/systemd/system if not given@:>@])], ++ [AS_HELP_STRING([--with-systemd@<:@=unit-dir-path@:>@],[install systemd unit files @<:@Default: no, and path defaults to /usr/lib/systemd/system if not given@:>@])], + if test "$withval" != "no" ; then + use_systemd=1 + if test "$withval" != "yes" ; then +@@ -78,8 +72,7 @@ AC_ARG_WITH(systemd, + AC_SUBST(unitdir) + + AC_ARG_ENABLE(nfsv4, +- [AC_HELP_STRING([--disable-nfsv4], +- [disable support for NFSv4 @<:@default=no@:>@])], ++ [AS_HELP_STRING([--disable-nfsv4],[disable support for NFSv4 @<:@default=no@:>@])], + enable_nfsv4=$enableval, + enable_nfsv4=yes) + if test "$enable_nfsv4" = yes; then +@@ -93,8 +86,7 @@ AC_ARG_ENABLE(nfsv4, + AM_CONDITIONAL(CONFIG_NFSV4, [test "$enable_nfsv4" = "yes"]) + + AC_ARG_ENABLE(nfsv41, +- [AC_HELP_STRING([--disable-nfsv41], +- [disable support for NFSv41 @<:@default=no@:>@])], ++ [AS_HELP_STRING([--disable-nfsv41],[disable support for NFSv41 @<:@default=no@:>@])], + enable_nfsv41=$enableval, + enable_nfsv41=yes) + if test "$enable_nfsv41" = yes; then +@@ -111,8 +103,7 @@ AC_ARG_ENABLE(nfsv41, + AM_CONDITIONAL(CONFIG_NFSV41, [test "$enable_nfsv41" = "yes"]) + + AC_ARG_ENABLE(gss, +- [AC_HELP_STRING([--disable-gss], +- [disable client support for rpcsec_gss @<:@default=no@:>@])], ++ [AS_HELP_STRING([--disable-gss],[disable client support for rpcsec_gss @<:@default=no@:>@])], + enable_gss=$enableval, + enable_gss=yes) + if test "$enable_gss" = yes; then +@@ -126,8 +117,7 @@ AC_ARG_ENABLE(gss, + AM_CONDITIONAL(CONFIG_GSS, [test "$enable_gss" = "yes"]) + + AC_ARG_ENABLE(svcgss, +- [AC_HELP_STRING([--enable-svcgss], +- [enable building svcgssd for rpcsec_gss server support @<:@default=no@:>@])], ++ [AS_HELP_STRING([--enable-svcgss],[enable building svcgssd for rpcsec_gss server support @<:@default=no@:>@])], + enable_svcgss=$enableval, + enable_svcgss=no) + if test "$enable_gss" = yes -a "$enable_svcgss" = yes; then +@@ -141,12 +131,12 @@ AC_ARG_ENABLE(svcgss, + AM_CONDITIONAL(CONFIG_SVCGSS, [test "$enable_svcgss" = "yes"]) + + AC_ARG_ENABLE(kprefix, +- [AC_HELP_STRING([--enable-kprefix], [install progs as rpc.knfsd etc])], ++ [AS_HELP_STRING([--enable-kprefix],[install progs as rpc.knfsd etc])], + test "$enableval" = "yes" && kprefix=k, + kprefix=) + AC_SUBST(kprefix) + AC_ARG_WITH(rpcgen, +- [AC_HELP_STRING([--with-rpcgen=internal], [use internal rpcgen instead of system one])], ++ [AS_HELP_STRING([--with-rpcgen=internal],[use internal rpcgen instead of system one])], + rpcgen_path=$withval, + rpcgen_path=yes ) + rpcgen_cflags=-Werror=strict-prototypes +@@ -166,21 +156,18 @@ AC_ARG_WITH(rpcgen, + AC_SUBST(RPCGEN_PATH) + AM_CONDITIONAL(CONFIG_RPCGEN, [test "$RPCGEN_PATH" = "internal"]) + AC_ARG_ENABLE(uuid, +- [AC_HELP_STRING([--disable-uuid], +- [Exclude uuid support to avoid buggy libblkid. @<:@default=no@:>@])], ++ [AS_HELP_STRING([--disable-uuid],[Exclude uuid support to avoid buggy libblkid. @<:@default=no@:>@])], + if test "$enableval" = "yes" ; then choose_blkid=yes; else choose_blkid=no; fi, + choose_blkid=default) + AC_ARG_ENABLE(mount, +- [AC_HELP_STRING([--disable-mount], +- [Do not build mount.nfs and do use the util-linux mount(8) functionality. @<:@default=no@:>@])], ++ [AS_HELP_STRING([--disable-mount],[Do not build mount.nfs and do use the util-linux mount(8) functionality. @<:@default=no@:>@])], + enable_mount=$enableval, + enable_mount=yes) + AM_CONDITIONAL(CONFIG_MOUNT, [test "$enable_mount" = "yes"]) + + if test "$enable_mount" = yes; then + AC_ARG_ENABLE(libmount-mount, +- [AC_HELP_STRING([--enable-libmount-mount], +- [Link mount.nfs with libmount @<:@default=no@:>@])], ++ [AS_HELP_STRING([--enable-libmount-mount],[Link mount.nfs with libmount @<:@default=no@:>@])], + enable_libmount=$enableval, + enable_libmount=no) + else +@@ -188,14 +175,12 @@ else + fi + + AC_ARG_ENABLE(sbin-override, +- [AC_HELP_STRING([--disable-sbin-override], +- [Don't force nfsdcltrack and mount helpers into /sbin: always honour --sbindir])], ++ [AS_HELP_STRING([--disable-sbin-override],[Don't force nfsdcltrack and mount helpers into /sbin: always honour --sbindir])], + enable_sbin_override=$enableval, + enable_sbin_override=yes) + AM_CONDITIONAL(CONFIG_SBIN_OVERRIDE, [test "$enable_sbin_override" = "yes"]) + AC_ARG_ENABLE(junction, +- [AC_HELP_STRING([--enable-junction], +- [enable support for NFS junctions @<:@default=no@:>@])], ++ [AS_HELP_STRING([--enable-junction],[enable support for NFS junctions @<:@default=no@:>@])], + enable_junction=$enableval, + enable_junction=no) + if test "$enable_junction" = yes; then +@@ -207,13 +192,11 @@ AC_ARG_ENABLE(junction, + AM_CONDITIONAL(CONFIG_JUNCTION, [test "$enable_junction" = "yes" ]) + + AC_ARG_ENABLE(tirpc, +- [AC_HELP_STRING([--disable-tirpc], +- [disable use of TI-RPC library @<:@default=no@:>@])], ++ [AS_HELP_STRING([--disable-tirpc],[disable use of TI-RPC library @<:@default=no@:>@])], + enable_tirpc=$enableval, + enable_tirpc=yes) + AC_ARG_ENABLE(ipv6, +- [AC_HELP_STRING([--disable-ipv6], +- [disable support for IPv6 @<:@default=no@:>@])], ++ [AS_HELP_STRING([--disable-ipv6],[disable support for IPv6 @<:@default=no@:>@])], + enable_ipv6=$enableval, + enable_ipv6=yes) + if test "$enable_ipv6" = yes; then +@@ -226,8 +209,7 @@ AC_ARG_ENABLE(ipv6, + + if test "$enable_mount" = yes; then + AC_ARG_ENABLE(mountconfig, +- [AC_HELP_STRING([--disable-mountconfig], +- [disable mount to use a configuration file @<:@default=no@:>@])], ++ [AS_HELP_STRING([--disable-mountconfig],[disable mount to use a configuration file @<:@default=no@:>@])], + enable_mountconfig=$enableval, + enable_mountconfig=yes) + if test "$enable_mountconfig" = no; then +@@ -236,9 +218,8 @@ if test "$enable_mount" = yes; then + AC_DEFINE(MOUNT_CONFIG, 1, + [Define this if you want mount to read a configuration file]) + AC_ARG_WITH(mountfile, +- [AC_HELP_STRING([--with-mountfile=filename], +- [Using filename as the NFS mount options file [/etc/nfsmounts.conf]] +- )], ++ [AS_HELP_STRING([--with-mountfile=filename],[Using filename as the NFS mount options file [/etc/nfsmounts.conf] ++ ])], + mountfile=$withval, + mountfile=/etc/nfsmount.conf) + AC_SUBST(mountfile) +@@ -252,20 +233,17 @@ else + fi + + AC_ARG_ENABLE(nfsdcld, +- [AC_HELP_STRING([--disable-nfsdcld], +- [disable NFSv4 clientid tracking daemon @<:@default=no@:>@])], ++ [AS_HELP_STRING([--disable-nfsdcld],[disable NFSv4 clientid tracking daemon @<:@default=no@:>@])], + enable_nfsdcld=$enableval, + enable_nfsdcld="yes") + + AC_ARG_ENABLE(nfsdcltrack, +- [AC_HELP_STRING([--disable-nfsdcltrack], +- [disable NFSv4 clientid tracking programs @<:@default=no@:>@])], ++ [AS_HELP_STRING([--disable-nfsdcltrack],[disable NFSv4 clientid tracking programs @<:@default=no@:>@])], + enable_nfsdcltrack=$enableval, + enable_nfsdcltrack="yes") + + AC_ARG_ENABLE(nfsv4server, +- [AC_HELP_STRING([--enable-nfsv4server], +- [enable support for NFSv4 only server @<:@default=no@:>@])], ++ [AS_HELP_STRING([--enable-nfsv4server],[enable support for NFSv4 only server @<:@default=no@:>@])], + enable_nfsv4server=$enableval, + enable_nfsv4server="no") + if test "$enable_nfsv4server" = yes; then +@@ -299,7 +277,7 @@ AC_PROG_CPP + AC_PROG_INSTALL + AC_PROG_LN_S + AC_PROG_MAKE_SET +-AC_PROG_LIBTOOL ++LT_INIT + AM_PROG_CC_C_O + + if test "x$cross_compiling" = "xno"; then +@@ -313,7 +291,6 @@ AC_SUBST(CC_FOR_BUILD) + AC_CHECK_TOOL(AR, ar) + AC_CHECK_TOOL(LD, ld) + +-AC_HEADER_STDC([]) + AC_GNULIBC + AC_BSD_SIGNALS + +@@ -553,7 +530,7 @@ AC_C_INLINE + AC_TYPE_OFF_T + AC_TYPE_PID_T + AC_TYPE_SIZE_T +-AC_HEADER_TIME ++ + AC_STRUCT_TM + AC_CHECK_TYPES([struct file_handle], [], [], [[ + #define _GNU_SOURCE +@@ -579,7 +556,7 @@ AC_HEADER_MAJOR + AC_FUNC_MEMCMP + #AC_FUNC_REALLOC + AC_FUNC_SELECT_ARGTYPES +-AC_TYPE_SIGNAL ++ + AC_FUNC_STAT + AC_FUNC_VPRINTF + AC_CHECK_FUNCS([alarm atexit dup2 fdatasync ftruncate getcwd \ +-- +2.36.1 + diff --git a/0003-autoconf-change-tirpc-to-check-for-a-file-not-for-an.patch b/0003-autoconf-change-tirpc-to-check-for-a-file-not-for-an.patch new file mode 100644 index 0000000..d3c936b --- /dev/null +++ b/0003-autoconf-change-tirpc-to-check-for-a-file-not-for-an.patch @@ -0,0 +1,40 @@ +From 09128b9e09b21ea3b4a7e5e19b211fc5f4c8c564 Mon Sep 17 00:00:00 2001 +From: NeilBrown +Date: Tue, 7 Jun 2022 15:59:14 -0400 +Subject: [PATCH] autoconf: change tirpc to check for a file, not for an + include + +Recent autoconf don't like variables in AC_CHECK_INCLUDE so we get a +warning. +In libtirpc.m4 we only need to check for the existence of a file, we +don't need to extra support for includes, such as defining HAVE_TIRPC_H +or whatever. + +So change from AC_CHECK_INCLUDE to AC_CHECK_FILE. + +Signed-off-by: NeilBrown +Signed-off-by: Steve Dickson +--- + aclocal/libtirpc.m4 | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/aclocal/libtirpc.m4 b/aclocal/libtirpc.m4 +index f7de5193c177..bddae0226931 100644 +--- a/aclocal/libtirpc.m4 ++++ b/aclocal/libtirpc.m4 +@@ -49,9 +49,9 @@ AC_DEFUN([AC_LIBTIRPC_OLD], [ + dnl Also must have the headers installed where we expect + dnl to look for headers; add -I compiler option if found + AS_IF([test "$has_libtirpc" = "yes"], +- [AC_CHECK_HEADERS([${tirpc_header_dir}/netconfig.h], +- [AC_SUBST([AM_CPPFLAGS], ["-I${tirpc_header_dir}"])], +- [has_libtirpc="no"])]) ++ [AC_CHECK_FILE([${tirpc_header_dir}/netconfig.h], ++ [AC_SUBST([AM_CPPFLAGS], ["-I${tirpc_header_dir}"])], ++ [has_libtirpc="no"])]) + + dnl Now set $LIBTIRPC accordingly + AS_IF([test "$has_libtirpc" = "yes"], +-- +2.36.1 + diff --git a/nfs-utils.changes b/nfs-utils.changes index 6129d06..f3a0ed9 100644 --- a/nfs-utils.changes +++ b/nfs-utils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Thu Jun 9 06:49:11 UTC 2022 - Neil Brown + +- 0001-systemd-Apply-all-sysctl-settings-when-NFS-related-m.patch + Ensure sysctl setting work (bsc#1199856) +- 0002-Update-autoconfig-files-to-work-with-v2.71.patch +- 0003-autoconf-change-tirpc-to-check-for-a-file-not-for-an.patch + Update for latest autoconf + ------------------------------------------------------------------- Sat May 7 12:17:24 UTC 2022 - Marcus Meissner diff --git a/nfs-utils.spec b/nfs-utils.spec index d06669f..5995991 100644 --- a/nfs-utils.spec +++ b/nfs-utils.spec @@ -43,6 +43,9 @@ Source26: nfs.conf Source27: nfs-kernel-server.tmpfiles.conf Patch0: nfs-utils-1.0.7-bind-syntax.patch Patch1: gcc12-fix.patch +Patch2: 0001-systemd-Apply-all-sysctl-settings-when-NFS-related-m.patch +Patch3: 0002-Update-autoconfig-files-to-work-with-v2.71.patch +Patch4: 0003-autoconf-change-tirpc-to-check-for-a-file-not-for-an.patch BuildRequires: e2fsprogs-devel BuildRequires: gcc-c++ BuildRequires: libtool @@ -289,9 +292,10 @@ fi %{_unitdir}/rpc-svcgssd.service %{_unitdir}/rpc-svcgssd.service.d %{_unitdir}/var-lib-nfs-rpc_pipefs.mount -%dir /usr/lib/systemd/system-generators -/usr/lib/systemd/system-generators/nfs-server-generator -/usr/lib/systemd/system-generators/rpc-pipefs-generator +%dir %{_systemdgeneratordir} +%{_systemdgeneratordir}/nfs-server-generator +%{_systemdgeneratordir}/rpc-pipefs-generator +%{_modprobedir}/50-nfs.conf %{_mandir}/man8/nfsdclddb.8%{ext_man} %{_mandir}/man8/nfsdclnts.8%{ext_man} %{_mandir}/man5/nfsmount.conf.5%{ext_man}