]> git.pld-linux.org Git - packages/nfs-utils.git/blobdiff - nfs-utils.spec
- switch from portmap to rpcbind
[packages/nfs-utils.git] / nfs-utils.spec
index 43edbc1f13601647267195156a82b291bb34c5ed..bbdd6f4f4433d429e26bd6cc893de72e5eab9774 100644 (file)
@@ -1,9 +1,6 @@
 # TODO
-# - should unmount /proc/fs/nfsd at package uninstall (or in service nfs stop)
-#
-# Conditional build:
-%bcond_without nfs4            # without NFSv4 support
-%bcond_without mount           # don't build mount.nfs program
+# - should unmount /proc/fs/nfsd and /var/lib/nfs/rpc_pipefs at package
+#      uninstall (or in service nfs stop)
 #
 Summary:       Kernel NFS server
 Summary(pl.UTF-8):     Działający na poziomie jądra serwer NFS
@@ -11,13 +8,14 @@ Summary(pt_BR.UTF-8):        Os utilitários para o cliente e servidor NFS do Linux
 Summary(ru.UTF-8):     Утилиты для NFS и демоны поддержки для NFS-сервера ядра
 Summary(uk.UTF-8):     Утиліти для NFS та демони підтримки для NFS-сервера ядра
 Name:          nfs-utils
-Version:       1.0.12
-Release:       6
-License:       GPL
+Version:       1.1.5
+Release:       1
+License:       GPL v2
 Group:         Networking/Daemons
-Source0:       http://dl.sourceforge.net/nfs/%{name}-%{version}.tar.gz
-# Source0-md5: acf3656cec3872deb597aa7ac13f3c3a
-Source1:       ftp://ftp.linuxnfs.sourceforge.org/pub/nfs/nfs.doc.tar.gz
+Source0:       http://www.kernel.org/pub/linux/utils/nfs/%{name}-%{version}.tar.bz2
+# Source0-md5: 2848072a5e53840b9bc520fbb6782b57
+#Source1:      ftp://ftp.linuxnfs.sourceforge.org/pub/nfs/nfs.doc.tar.gz
+Source1:       nfs.doc.tar.gz
 # Source1-md5: ae7db9c61c5ad04f83bb99e5caed73da
 Source2:       nfs.init
 Source3:       nfslock.init
@@ -28,42 +26,34 @@ Source7:    rpcsvcgssd.init
 Source8:       nfs.sysconfig
 Source9:       nfslock.sysconfig
 Source10:      nfsfs.sysconfig
-Patch0:                %{name}-eepro-support.patch
-Patch1:                %{name}-install.patch
-Patch2:                %{name}-heimdal.patch
-Patch3:                %{name}-heimdal-internals.patch
-# http://www.citi.umich.edu/projects/nfsv4/linux/nfs-utils-patches/
-#Patch4:               %{name}-1.0.11-CITI_NFS4_ALL-1.dif
-Patch4:                %{name}-CITI_NFS4.patch
-Patch5:                %{name}-mountd-leak.patch
-Patch6:                %{name}-statdpath.patch
-Patch7:                %{name}-mount-fake.patch
-Patch8:                %{name}-mountd.patch
-Patch9:                %{name}-privports.patch
-Patch10:       %{name}-mount-man-nfs.patch
-Patch11:       %{name}-mount-fsc.patch
-Patch12:       %{name}-idmapd.conf.patch
+Patch0:                %{name}-install.patch
+Patch1:                %{name}-statdpath.patch
+Patch2:                %{name}-keytab-path.patch
+Patch3:                %{name}-subsys.patch
+Patch4:                %{name}-git-cel.patch
 URL:           http://nfs.sourceforge.net/
 BuildRequires: autoconf >= 2.59
 BuildRequires: automake
 BuildRequires: cpp
-BuildRequires: e2fsprogs-devel >= 1.39-5
-%if %{with nfs4}
-BuildRequires: heimdal-devel >= 0.7
+BuildRequires: e2fsprogs-devel >= 1.41
+BuildRequires: krb5-devel >= 1.6
 BuildRequires: libevent-devel >= 1.2
-BuildRequires: libnfsidmap-devel
-BuildRequires: librpcsecgss-devel >= 0.11-3
-%endif
+BuildRequires: libgssglue-devel >= 0.1
+BuildRequires: libnfsidmap-devel >= 0.21-3
+BuildRequires: librpcsecgss-devel >= 0.16
+BuildRequires: libtirpc-devel >= 1:0.1.10-4
 BuildRequires: libtool
 BuildRequires: libwrap-devel
 BuildRequires: pkgconfig
 BuildRequires: sed >= 4.0
+# lucid context fields mismatch with current version of spkm3.h
+BuildConflicts:        gss_mech_spkm3-devel
 Requires(post):        fileutils
 Requires(post):        sed >= 4.0
 Requires(post,preun):  /sbin/chkconfig
 Requires:      %{name}-common = %{version}-%{release}
-Requires:      portmap >= 4.0
-Requires:      rc-scripts >= 0.4.0
+Requires:      rpcbind >= 0.1.7
+Requires:      rc-scripts >= 0.4.1.5
 Requires:      setup >= 2.4.6-7
 Provides:      nfsdaemon
 Obsoletes:     knfsd
@@ -131,8 +121,7 @@ Summary:    Programs for NFS file locking
 Summary(pl.UTF-8):     Programy do obsługi blokowania plików poprzez NFS (lock)
 Group:         Networking
 Requires(post,preun):  /sbin/chkconfig
-#Requires:     kernel >= 2.2.5
-Requires:      portmap >= 4.0
+Requires:      rpcbind >= 0.1.7
 Requires:      rc-scripts
 Provides:      group(rpcstatd)
 Provides:      user(rpcstatd)
@@ -152,6 +141,8 @@ plików (file locking) poprzez NFS.
 Summary:       Common programs for NFS
 Summary(pl.UTF-8):     Wspólne programy do obsługi NFS
 Group:         Networking
+Requires:      libnfsidmap >= 0.21-3
+Conflicts:     mount < 2.13-0.pre7.1
 
 %description common
 Common programs for NFS.
@@ -165,59 +156,51 @@ Wspólne programy do obsługi NFS.
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
-# temporary hack
-rm -f utils/mountd/fsloc.[ch]
 %patch4 -p1
-%patch5 -p1
-%patch6 -p1
-%patch7 -p1
-%patch8 -p1
-%patch9 -p1
-%patch10 -p1
-%patch11 -p1
-%patch12 -p1
+
+# conflict with GNU stdio extension
+sed -i -e 's/dprintf/dbgprintf/' support/include/ha-callout.h utils/statd/*.[ch]
 
 %build
-%if "%{_lib}" == "lib64"
-sed -i -e 's#/lib/#/%{_lib}/#g' aclocal/kerberos5.m4
-%endif
-sed -i -e 's#libroken.a#libroken.so#g' aclocal/kerberos5.m4
+%{__libtoolize}
 %{__aclocal} -I aclocal
 %{__autoconf}
+%{__autoheader}
 %{__automake}
 %configure \
-%if %{with nfs4}
-       --enable-gss \
-       --with-krb5=%{_prefix} \
-       --enable-nfsv4 \
-%else
-       --disable-gss \
-       --disable-nfsv4 \
-%endif
-       %{?with_mount:--enable-mount} \
-       --disable-rquotad \
        --enable-nfsv3 \
-       --enable-secure-statd \
+       --enable-nfsv4 \
+       --enable-gss \
+       --enable-mount \
+       --enable-tirpc \
+       --enable-ipv6 \
        --with-statedir=/var/lib/nfs \
-       --with-tcp-wrappers
+       --with-statduser=rpcstatd \
+       --with-start-statd=%{_sbindir}/start-statd \
+       --with-tcp-wrappers \
+       --with-krb5=%{_prefix}
 
 %{__make} all
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{/sbin,%{_sbindir},%{_mandir}/man{5,8}} \
-       $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,sysconfig} \
-       $RPM_BUILD_ROOT%{_var}/lib/nfs/{rpc_pipefs,v4recovery,statd}
+install -d $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,sysconfig} \
+       $RPM_BUILD_ROOT%{_var}/lib/nfs/{rpc_pipefs,v4recovery}
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
-%if %{with mount}
-mv $RPM_BUILD_ROOT%{_sbindir}/{mount,umount}.* $RPM_BUILD_ROOT/sbin
-%endif
+cat >$RPM_BUILD_ROOT%{_sbindir}/start-statd <<EOF
+#!/bin/sh
+# mount.nfs calls this script when mounting a filesystem with locking
+# enabled, but when statd does not seem to be running (based on
+# /var/run/rpc.statd.pid).
+exec /sbin/service nfslock start
+EOF
+
+sed -e "s|#!/bin/bash|#!/bin/sh|" utils/gssd/gss_destroy_creds > $RPM_BUILD_ROOT%{_sbindir}/gss_destroy_creds
 
 mv $RPM_BUILD_ROOT%{_sbindir}/rpcdebug $RPM_BUILD_ROOT/sbin
-install utils/idmapd/idmapd.conf $RPM_BUILD_ROOT%{_sysconfdir}/
 
 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfs
 install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfslock
@@ -232,24 +215,20 @@ install %{SOURCE10} $RPM_BUILD_ROOT/etc/sysconfig/nfsfs
 > $RPM_BUILD_ROOT%{_var}/lib/nfs/rmtab
 > $RPM_BUILD_ROOT%{_sysconfdir}/exports
 
-rm -f $RPM_BUILD_ROOT%{_mandir}/man8/rpc.{mountd,nfsd,statd,lockd,svcgssd,gssd,idmapd}.8
-rm -f $RPM_BUILD_ROOT%{_mandir}/man5/rpc.idmapd.conf.5
-echo ".so lockd.8"   >         $RPM_BUILD_ROOT%{_mandir}/man8/rpc.lockd.8
+rm $RPM_BUILD_ROOT%{_mandir}/man8/rpc.{mountd,nfsd,statd,sm-notify}.8
+rm $RPM_BUILD_ROOT%{_mandir}/man8/rpc.{svcgssd,gssd,idmapd}.8
 echo ".so mountd.8"  >         $RPM_BUILD_ROOT%{_mandir}/man8/rpc.mountd.8
 echo ".so nfsd.8"    > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.nfsd.8
 echo ".so statd.8"   > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.statd.8
-%if %{with nfs4}
+echo ".so sm-notify.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.sm-notify.8
 echo ".so gssd.8"    > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.gssd.8
 echo ".so idmapd.8"  > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.idmapd.8
 echo ".so svcgssd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.svcgssd.8
-echo ".so idmapd.conf.5" > $RPM_BUILD_ROOT%{_mandir}/man5/rpc.idmapd.conf.5
-%endif
 
 touch $RPM_BUILD_ROOT/var/lib/nfs/xtab
 
 ln -sf /bin/true $RPM_BUILD_ROOT/sbin/fsck.nfs
 
-rm -rf html
 cp -a nfs html
 
 %clean
@@ -258,37 +237,29 @@ rm -rf $RPM_BUILD_ROOT
 %post
 /sbin/chkconfig --add nfs
 %service nfs restart "NFS daemon"
-%if %{with nfs4}
 /sbin/chkconfig --add svcgssd
-%service svcgssd restart "RPC svcgssd daemon"
-%endif
+%service svcgssd restart "RPC svcgssd"
 
 %preun
 if [ "$1" = "0" ]; then
        %service nfs stop
        /sbin/chkconfig --del nfs
-%if %{with nfs4}
        %service svcgssd stop
        /sbin/chkconfig --del svcgssd
-%endif
 fi
 
 %post clients
 /sbin/chkconfig --add nfsfs
 %service nfsfs restart
-%if %{with nfs4}
 /sbin/chkconfig --add gssd
-%service gssd restart "RPC gssd daemon"
-%endif
+%service gssd restart "RPC gssd"
 
 %preun clients
 if [ "$1" = "0" ]; then
        %service nfsfs stop
        /sbin/chkconfig --del nfsfs
-%if %{with nfs4}
        %service gssd stop
        /sbin/chkconfig --del gssd
-%endif
 fi
 
 %pre lock
@@ -297,7 +268,7 @@ fi
 
 %post lock
 /sbin/chkconfig --add nfslock
-%service nfslock restart "nfslock daemon"
+%service nfslock restart "RPC statd"
 
 %preun lock
 if [ "$1" = "0" ]; then
@@ -311,30 +282,33 @@ if [ "$1" = "0" ]; then
        %groupremove rpcstatd
 fi
 
-%if %{with nfs4}
 %post common
 /sbin/chkconfig --add idmapd
-%service idmapd restart "RPC idmapd daemon"
+%service idmapd restart "RPC idmapd"
 
 %preun common
 if [ "$1" = "0" ]; then
        %service idmapd stop
        /sbin/chkconfig --del idmapd
 fi
-%endif
 
-%triggerpostun -- %{name} <= 1.0.12-5
+%triggerpostun -- %{name} < 1.1.0-0.rc1.1
 /sbin/chkconfig nfs reset
+/sbin/chkconfig svcgssd reset
 
-%triggerpostun lock -- %{name}-lock <= 1.0.12-5
+%triggerpostun lock -- %{name}-lock < 1.1.0-0.rc1.1
 /sbin/chkconfig nfslock reset
 
-%triggerpostun clients -- %{name}-clients < 1.0.10-1.2
+%triggerpostun clients -- %{name}-clients < 1.1.0-0.rc1.1
 if [ -f /etc/sysconfig/nfsclient.rpmsave ]; then
        mv -f /etc/sysconfig/nfsfs{,.rpmnew}
        mv -f /etc/sysconfig/nfsclient.rpmsave /etc/sysconfig/nfsfs
 fi
 /sbin/chkconfig nfsfs reset
+/sbin/chkconfig gssd reset
+
+%triggerpostun common -- %{name}-common < 1.1.0-0.rc1.1
+/sbin/chkconfig idmapd reset
 
 %files
 %defattr(644,root,root,755)
@@ -363,24 +337,23 @@ fi
 %{_mandir}/man8/rpc.mountd.8*
 %{_mandir}/man8/rpc.nfsd.8*
 %{_mandir}/man8/rpcdebug.8*
-%if %{with nfs4}
 %attr(754,root,root) /etc/rc.d/init.d/svcgssd
 %attr(755,root,root) %{_sbindir}/rpc.svcgssd
 %{_mandir}/man8/*svcgss*
-%endif
 
 %files lock
 %defattr(644,root,root,755)
 %attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd
-%attr(755,root,root) %{_sbindir}/rpc.lockd
+%attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd/sm
+%attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd/sm.bak
+%attr(600,rpcstatd,rpcstatd) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/statd/state
 %attr(755,root,root) %{_sbindir}/rpc.statd
+%attr(755,root,root) %{_sbindir}/sm-notify
+%attr(755,root,root) %{_sbindir}/start-statd
 %attr(754,root,root) /etc/rc.d/init.d/nfslock
 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfslock
-%{_mandir}/man8/rpc.lockd.8*
-%{_mandir}/man8/lockd.8*
-%{_mandir}/man8/rpc.statd.8*
-%{_mandir}/man8/statd.8*
-%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/state
+%{_mandir}/man8/*statd.8*
+%{_mandir}/man8/*sm-notify.8*
 
 %files clients
 %defattr(644,root,root,755)
@@ -388,19 +361,15 @@ fi
 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfsfs
 %attr(755,root,root) %{_sbindir}/showmount
 %{_mandir}/man8/showmount.8*
-%if %{with mount}
 %attr(4755,root,root) /sbin/mount.nfs
-%attr(4755,root,root) /sbin/mount.nfs4
 %attr(4755,root,root) /sbin/umount.nfs
+%attr(4755,root,root) /sbin/mount.nfs4
 %attr(4755,root,root) /sbin/umount.nfs4
 %{_mandir}/man8/*mount.nfs.8*
-%endif
-%if %{with nfs4}
 %attr(754,root,root) /etc/rc.d/init.d/gssd
 %attr(755,root,root) %{_sbindir}/rpc.gssd
 %{_mandir}/man8/rpc.gssd*
 %{_mandir}/man8/gssd*
-%endif
 
 %files common
 %defattr(644,root,root,755)
@@ -408,10 +377,7 @@ fi
 %attr(755,root,root) %dir %{_var}/lib/nfs/rpc_pipefs
 %attr(755,root,root) %dir %{_var}/lib/nfs/v4recovery
 %{_mandir}/man5/nfs*
-%if %{with nfs4}
 %attr(754,root,root) /etc/rc.d/init.d/idmapd
 %attr(755,root,root) %{_sbindir}/gss_*
 %attr(755,root,root) %{_sbindir}/rpc.idmapd
-%attr(660,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/idmapd.conf
 %{_mandir}/man[58]/*idmap*
-%endif
This page took 0.048769 seconds and 4 git commands to generate.