Blame SPECS/fedfs-utils.spec

993946
Name:           fedfs-utils
993946
Version:        0.10.5
993946
Release:        0%{?dist}
993946
Summary:        Utilities for mounting and managing FedFS
993946
993946
Group:          System Environment/Daemons
993946
License:        GPLv2
993946
URL:            http://wiki.linux-nfs.org/wiki/index.php/FedFsUtilsProject
993946
BuildRequires:  libidn-devel libattr-devel libcap-devel openldap-devel
993946
BuildRequires:  sqlite-devel libtirpc-devel libuuid-devel libconfig-devel
993946
BuildRequires:  openssl-devel libxml2-devel uriparser-devel
993946
BuildRequires:  automake libtool glibc-headers
993946
BuildRequires:  python2-devel
993946
BuildRequires:  systemd systemd-units
993946
993946
Source0:        http://oss.oracle.com/projects/%{name}/dist/files/%{name}-%{version}.tar.gz
993946
993946
%global _hardened_build 1
993946
%global unit_name rpcfedfsd
993946
# %define debug_package %{nil}
993946
993946
%description
993946
RFC 5716 introduces the Federated File System (FedFS, for short). FedFS
993946
is an extensible standardized mechanism by which system administrators
993946
construct a coherent file name space across multiple file servers using
993946
file system referrals.
993946
993946
A file system referral is like a symbolic link to another file system
993946
share, but it is not visible to applications. It behaves like an
993946
auto-mounted directory where a new file system mount is done when an
993946
application first accesses that directory. The arguments of the mount
993946
operation are controlled by information returned by the file server.
993946
993946
Today, file system referral mechanisms exist in several network file
993946
system protocols. FedFS provides its file name space features by
993946
leveraging referral mechanisms already built in to network file system
993946
protocols.  Thus no change to file system protocols or clients is
993946
required.
993946
993946
Currently, the Linux FedFS implementation supports only NFS version 4
993946
referrals. More on NFS version 4 referrals can be found in RFC 3530.
993946
FedFS may support other network file system protocols in the future.
993946
993946
%prep
993946
%setup -q -n %{name}-%{version}
993946
993946
%build
993946
%ifarch s390 s390x
993946
PIE="-fPIE"
993946
%else
993946
PIE="-fpie"
993946
%endif
993946
export PIE
993946
export CFLAGS="$RPM_OPT_FLAGS $ARCH_OPT_FLAGS $PIE"
993946
export LDFLAGS="-pie -Wl,-z,relro -Wl,-z,now"
993946
993946
./autogen.sh
993946
%configure --prefix=/usr
993946
make %{?_smp_mflags}
993946
993946
%install
993946
# make install-strip DESTDIR=%{buildroot}
993946
make install DESTDIR=%{buildroot}
993946
mkdir -p %{buildroot}%{_sharedstatedir}/fedfs
993946
mkdir -p %{buildroot}%{_unitdir}
993946
mkdir -p %{buildroot}/nfs4
993946
install -m 644 contrib/init/%{unit_name}.service %{buildroot}%{_unitdir}
993946
mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
993946
install -m 644 contrib/init/fedfs %{buildroot}%{_sysconfdir}/sysconfig
993946
mkdir -p %{buildroot}/%{_sysconfdir}/auto.master.d
993946
install -m 644 contrib/init/fedfs.autofs %{buildroot}/%{_sysconfdir}/auto.master.d
993946
mkdir -p %{buildroot}/%{_sysconfdir}/fedfsd
993946
mv %{buildroot}/%{_sysconfdir}/access.conf %{buildroot}/%{_sysconfdir}/fedfsd
993946
993946
# Don't package static libs to encourage use of shared library.
993946
rm -f %{buildroot}%{_libdir}/libnfsjunct.a
993946
rm -f %{buildroot}%{_libdir}/libnfsjunct.la
993946
993946
%package common
993946
Summary:      Common files for FedFS
993946
Group:        System Environment/Daemons
993946
BuildArch:    noarch
993946
993946
%description common
993946
This package contains files common to all of the fedfs packages.
993946
993946
RFC 5716 introduces the Federated File System (FedFS, for short). FedFS
993946
is an extensible standardized mechanism by which system administrators
993946
construct a coherent file name space across multiple file servers using
993946
file system referrals.
993946
993946
A file system referral is like a symbolic link to another file system
993946
share, but it is not visible to applications. It behaves like an
993946
auto-mounted directory where a new file system mount is done when an
993946
application first accesses that directory. The arguments of the mount
993946
operation are controlled by information returned by the file server.
993946
993946
Today, file system referral mechanisms exist in several network file
993946
system protocols. FedFS provides its file name space features by
993946
leveraging referral mechanisms already built in to network file system
993946
protocols.  Thus no change to file system protocols or clients is
993946
required.
993946
993946
Currently, the Linux FedFS implementation supports only NFS version 4
993946
referrals. More on NFS version 4 referrals can be found in RFC 3530.
993946
FedFS may support other network file system protocols in the future.
993946
993946
%files common
993946
%doc COPYING README ChangeLog doc/ldap/fedfs.schema doc/ldap/fedfs-schema.ldif
993946
%{_mandir}/man7/fedfs.7.*
993946
993946
%package client
993946
Summary:      Utilities for mounting FedFS domains
993946
Group:        System Environment/Daemons
993946
Requires:     %{name}-common = %{version}-%{release}
993946
Requires:     nfs-utils autofs
993946
Requires(post): systemd-units
993946
Requires(postun): systemd-units
993946
%description client
993946
This package contains the tools needed to mount a FedFS domain and act
993946
as a client.
993946
993946
RFC 5716 introduces the Federated File System (FedFS, for short). FedFS
993946
is an extensible standardized mechanism by which system administrators
993946
construct a coherent file name space across multiple file servers using
993946
file system referrals.
993946
993946
A file system referral is like a symbolic link to another file system
993946
share, but it is not visible to applications. It behaves like an
993946
auto-mounted directory where a new file system mount is done when an
993946
application first accesses that directory. The arguments of the mount
993946
operation are controlled by information returned by the file server.
993946
993946
Today, file system referral mechanisms exist in several network file
993946
system protocols. FedFS provides its file name space features by
993946
leveraging referral mechanisms already built in to network file system
993946
protocols.  Thus no change to file system protocols or clients is
993946
required.
993946
993946
Currently, the Linux FedFS implementation supports only NFS version 4
993946
referrals. More on NFS version 4 referrals can be found in RFC 3530.
993946
FedFS may support other network file system protocols in the future.
993946
993946
%files client
993946
/sbin/mount.fedfs
993946
%{_sbindir}/fedfs-map-nfs4
993946
%{_mandir}/man8/mount.fedfs.8.*
993946
%{_mandir}/man8/fedfs-map-nfs4.8.*
993946
%dir /nfs4
993946
%config(noreplace) /%{_sysconfdir}/auto.master.d/fedfs.autofs
993946
993946
%post client
993946
# We may have changed the automounter configuration
993946
/bin/systemctl reload autofs.service >/dev/null 2>&1 || :
993946
993946
%postun client
993946
# We may have changed the automounter configuration
993946
/bin/systemctl reload autofs.service >/dev/null 2>&1 || :
993946
993946
%package nsdbparams
993946
Summary:      The FedFS nsdbparams utility
993946
Group:        System Environment/Daemons
993946
Requires:     %{name}-common = %{version}-%{release}
993946
%description nsdbparams
993946
This package contains the nsdbparams utility, which manages the
993946
NSDB connection parameters used during FedFS junction resolution
993946
and domain administration.
993946
993946
RFC 5716 introduces the Federated File System (FedFS, for short). FedFS
993946
is an extensible standardized mechanism by which system administrators
993946
construct a coherent file name space across multiple file servers using
993946
file system referrals.
993946
993946
A file system referral is like a symbolic link to another file system
993946
share, but it is not visible to applications. It behaves like an
993946
auto-mounted directory where a new file system mount is done when an
993946
application first accesses that directory. The arguments of the mount
993946
operation are controlled by information returned by the file server.
993946
993946
Today, file system referral mechanisms exist in several network file
993946
system protocols. FedFS provides its file name space features by
993946
leveraging referral mechanisms already built in to network file system
993946
protocols.  Thus no change to file system protocols or clients is
993946
required.
993946
993946
Currently, the Linux FedFS implementation supports only NFS version 4
993946
referrals. More on NFS version 4 referrals can be found in RFC 3530.
993946
FedFS may support other network file system protocols in the future.
993946
993946
%files nsdbparams
993946
%{_sbindir}/nsdbparams
993946
%{_mandir}/man8/nsdbparams.8.*
993946
%{_mandir}/man7/nsdb-parameters.7.*
993946
993946
%package devel
993946
Summary:      Development files for the FedFS nfs-plugin
993946
Group:        System Environment/Daemons
993946
Requires:     %{name}-lib%{?_isa} = %{version}-%{release}
993946
%description devel
993946
This package contains development files for the FedFS nfs-plugin
993946
library.  This package must be present at nfs-utils build time for
993946
NFS and FedFS junction support to be enabled in nfs-utils.
993946
993946
RFC 5716 introduces the Federated File System (FedFS, for short). FedFS
993946
is an extensible standardized mechanism by which system administrators
993946
construct a coherent file name space across multiple file servers using
993946
file system referrals.
993946
993946
A file system referral is like a symbolic link to another file system
993946
share, but it is not visible to applications. It behaves like an
993946
auto-mounted directory where a new file system mount is done when an
993946
application first accesses that directory. The arguments of the mount
993946
operation are controlled by information returned by the file server.
993946
993946
Today, file system referral mechanisms exist in several network file
993946
system protocols. FedFS provides its file name space features by
993946
leveraging referral mechanisms already built in to network file system
993946
protocols.  Thus no change to file system protocols or clients is
993946
required.
993946
993946
Currently, the Linux FedFS implementation supports only NFS version 4
993946
referrals. More on NFS version 4 referrals can be found in RFC 3530.
993946
FedFS may support other network file system protocols in the future.
993946
993946
%files devel
993946
%{_includedir}/nfs-plugin.h
993946
993946
%package lib
993946
Summary:      The FedFS nfs-plugin run-time library
993946
Group:        System Environment/Daemons
993946
Requires:     %{name}-common = %{version}-%{release}
993946
Requires:     %{name}-nsdbparams%{?_isa} = %{version}-%{release}
993946
Requires:     nfs-utils >= 1.2.8
993946
Requires:     kernel >= 3.3.0
993946
%description lib
993946
This package contains the FedFS nfs-plugin run-time library.  This
993946
package must be installed for FedFS junction support to be enabled in
993946
rpc.mountd.
993946
993946
RFC 5716 introduces the Federated File System (FedFS, for short). FedFS
993946
is an extensible standardized mechanism by which system administrators
993946
construct a coherent file name space across multiple file servers using
993946
file system referrals.
993946
993946
A file system referral is like a symbolic link to another file system
993946
share, but it is not visible to applications. It behaves like an
993946
auto-mounted directory where a new file system mount is done when an
993946
application first accesses that directory. The arguments of the mount
993946
operation are controlled by information returned by the file server.
993946
993946
Today, file system referral mechanisms exist in several network file
993946
system protocols. FedFS provides its file name space features by
993946
leveraging referral mechanisms already built in to network file system
993946
protocols.  Thus no change to file system protocols or clients is
993946
required.
993946
993946
Currently, the Linux FedFS implementation supports only NFS version 4
993946
referrals. More on NFS version 4 referrals can be found in RFC 3530.
993946
FedFS may support other network file system protocols in the future.
993946
993946
%post lib -p /sbin/ldconfig
993946
993946
%postun lib -p /sbin/ldconfig
993946
993946
%files lib
993946
# We need to include this in the lib package because it is
993946
# dlopen()ed by the junction support code in nfs-utils.
993946
%{_libdir}/libnfsjunct.so
993946
%{_libdir}/libnfsjunct.so.*
993946
993946
%package python
993946
Summary:      FedFS Python utilities
993946
Group:        System Environment/Daemons
993946
BuildArch:    noarch
993946
Requires:     python-ldap openldap-servers
993946
993946
%description python
993946
This package contains Python tools for administering the FedFS
993946
capabilities of a Linux NFS file server.
993946
993946
RFC 5716 introduces the Federated File System (FedFS, for short). FedFS
993946
is an extensible standardized mechanism by which system administrators
993946
construct a coherent file name space across multiple file servers using
993946
file system referrals.
993946
993946
A file system referral is like a symbolic link to another file system
993946
share, but it is not visible to applications. It behaves like an
993946
auto-mounted directory where a new file system mount is done when an
993946
application first accesses that directory. The arguments of the mount
993946
operation are controlled by information returned by the file server.
993946
993946
Today, file system referral mechanisms exist in several network file
993946
system protocols. FedFS provides its file name space features by
993946
leveraging referral mechanisms already built in to network file system
993946
protocols.  Thus no change to file system protocols or clients is
993946
required.
993946
993946
Currently, the Linux FedFS implementation supports only NFS version 4
993946
referrals. More on NFS version 4 referrals can be found in RFC 3530.
993946
FedFS may support other network file system protocols in the future.
993946
993946
%files python
993946
%{_bindir}/fedfs-domainroot
993946
%{_bindir}/nsdb-jumpstart
993946
%{python_sitelib}/PyFedfs/*
993946
%{_mandir}/man8/fedfs-domainroot.8.*
993946
%{_mandir}/man8/nsdb-jumpstart.8.*
993946
993946
%package server
993946
Summary:      Utilities for serving FedFS domains
993946
Group:        System Environment/Daemons
993946
Requires:     %{name}-common = %{version}-%{release}
993946
Requires:     %{name}-nsdbparams%{?_isa} = %{version}-%{release}
993946
Requires:     %{name}-lib%{?_isa} = %{version}-%{release}
993946
Requires:     nfs-utils >= 1.2.8
993946
Requires:     kernel >= 3.3.0
993946
Requires(post):   systemd-units
993946
Requires(preun):  systemd-units
993946
Requires(postun): systemd-units
993946
993946
%description server
993946
This package contains tools for managing NFS and FedFS junctions
993946
on a Linux NFS file server.
993946
993946
RFC 5716 introduces the Federated File System (FedFS, for short). FedFS
993946
is an extensible standardized mechanism by which system administrators
993946
construct a coherent file name space across multiple file servers using
993946
file system referrals.
993946
993946
A file system referral is like a symbolic link to another file system
993946
share, but it is not visible to applications. It behaves like an
993946
auto-mounted directory where a new file system mount is done when an
993946
application first accesses that directory. The arguments of the mount
993946
operation are controlled by information returned by the file server.
993946
993946
Today, file system referral mechanisms exist in several network file
993946
system protocols. FedFS provides its file name space features by
993946
leveraging referral mechanisms already built in to network file system
993946
protocols.  Thus no change to file system protocols or clients is
993946
required.
993946
993946
Currently, the Linux FedFS implementation supports only NFS version 4
993946
referrals. More on NFS version 4 referrals can be found in RFC 3530.
993946
FedFS may support other network file system protocols in the future.
993946
993946
%pre server
993946
getent group fedfs >/dev/null || groupadd -r fedfs
993946
getent passwd fedfs >/dev/null || \
993946
    useradd -r -g fedfs -d %{_sharedstatedir}/fedfs -s /sbin/nologin \
993946
    -c "FedFS Server User" fedfs
993946
exit 0
993946
993946
%post server
993946
%systemd_post %{unit_name}.service
993946
993946
%preun server
993946
%systemd_preun %{unit_name}.service
993946
993946
%postun server
993946
%systemd_postun_with_restart %{unit_name}.service
993946
993946
%files server
993946
%dir %{_sharedstatedir}/fedfs
993946
%dir %{_sysconfdir}/fedfsd
993946
%{_sbindir}/nfsref
993946
%{_sbindir}/rpc.fedfsd
993946
%{_mandir}/man8/nfsref.8.*
993946
%{_mandir}/man8/rpc.fedfsd.8.*
993946
%{_unitdir}/rpcfedfsd.service
993946
%config(noreplace) %{_sysconfdir}/sysconfig/fedfs
993946
%config(noreplace) %{_sysconfdir}/fedfsd/access.conf
993946
993946
%package admin
993946
Summary:      Utilities for administering FedFS domains
993946
Group:        System Environment/Daemons
993946
Requires:     %{name}-common = %{version}-%{release}
993946
Requires:     %{name}-nsdbparams%{?_isa} = %{version}-%{release}
993946
%description admin
993946
This package contains the tools needed to manage a FedFS domain.
993946
993946
RFC 5716 introduces the Federated File System (FedFS, for short). FedFS
993946
is an extensible standardized mechanism by which system administrators
993946
construct a coherent file name space across multiple file servers using
993946
file system referrals.
993946
993946
A file system referral is like a symbolic link to another file system
993946
share, but it is not visible to applications. It behaves like an
993946
auto-mounted directory where a new file system mount is done when an
993946
application first accesses that directory. The arguments of the mount
993946
operation are controlled by information returned by the file server.
993946
993946
Today, file system referral mechanisms exist in several network file
993946
system protocols. FedFS provides its file name space features by
993946
leveraging referral mechanisms already built in to network file system
993946
protocols.  Thus no change to file system protocols or clients is
993946
required.
993946
993946
Currently, the Linux FedFS implementation supports only NFS version 4
993946
referrals. More on NFS version 4 referrals can be found in RFC 3530.
993946
FedFS may support other network file system protocols in the future.
993946
993946
%files admin
993946
%{_sbindir}/fedfs-create-junction
993946
%{_sbindir}/fedfs-create-replication
993946
%{_sbindir}/fedfs-delete-junction
993946
%{_sbindir}/fedfs-delete-replication
993946
%{_sbindir}/fedfs-get-limited-nsdb-params
993946
%{_sbindir}/fedfs-get-nsdb-params
993946
%{_sbindir}/fedfs-lookup-junction
993946
%{_sbindir}/fedfs-lookup-replication
993946
%{_sbindir}/fedfs-null
993946
%{_sbindir}/fedfs-set-nsdb-params
993946
%{_sbindir}/nsdb-*
993946
%{_mandir}/man8/fedfs-create-junction.8.*
993946
%{_mandir}/man8/fedfs-create-replication.8.*
993946
%{_mandir}/man8/fedfs-delete-junction.8.*
993946
%{_mandir}/man8/fedfs-delete-replication.8.*
993946
%{_mandir}/man8/fedfs-get-limited-nsdb-params.8.*
993946
%{_mandir}/man8/fedfs-get-nsdb-params.8.*
993946
%{_mandir}/man8/fedfs-lookup-junction.8.*
993946
%{_mandir}/man8/fedfs-lookup-replication.8.*
993946
%{_mandir}/man8/fedfs-null.8.*
993946
%{_mandir}/man8/fedfs-set-nsdb-params.8.*
993946
%{_mandir}/man8/nsdb-*
993946
993946
%changelog
993946
* Wed Apr  6 2016 Steve Dickson <steved@redhat.com> - 0.10.5-0
993946
- Updated to latest upstream release: 0.10.5 (bz 1277221)
993946
993946
* Wed Oct 22 2014 Steve Dickson <steved@redhat.com> - 0.10.3-2
993946
- Reworked CFLAGS to put back execshield (bz 983257)
993946
993946
* Tue Oct 21 2014 Steve Dickson <steved@redhat.com> - 0.10.3-1
993946
- Updated to latest upstream release: 0.10.3 (bz 1110228)
993946
- Added the PIE and RELRO CFLAGS (bz 983257)
993946
993946
* Sat Mar  8 2014 Steve Dickson <steved@redhat.com> - 0.10.0-1
993946
- Updated to latest upstream release: 0.10.0 (bz 1069971)
993946
993946
* Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 0.9.2-4
993946
- Mass rebuild 2014-01-24
993946
993946
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 0.9.2-3
993946
- Mass rebuild 2013-12-27
993946
993946
* Wed Jul 10 2013 Chuck Lever <chuck.lever@oracle.com> - 0.9.2-2
993946
- nfs-utils is required for -client and -server operation
993946
- fedfs-utils-server requires fedfs-utils-lib to resolve junctions
993946
- update package descriptions
993946
993946
* Tue Jun 25 2013 Chuck Lever <chuck.lever@oracle.com> - 0.9.2-1
993946
- update to fedfs-utils-0.9.2
993946
- installing fedfs-utils-client package should configure automounter
993946
- find-debuginfo.sh sometimes fails during "fedpkg local" (bz977556)
993946
993946
* Thu Jun 20 2013 Chuck Lever <chuck.lever@oracle.com> - 0.9.1-1
993946
- update to fedfs-utils-0.9.1.
993946
993946
* Wed Mar 27 2013 Ian Kent <ikent@redhat.com> - 0.9.0-2
993946
- Add missing changelog entry.
993946
993946
* Wed Mar 27 2013 Ian Kent <ikent@redhat.com> - 0.9.0-1
993946
- update to fedfs-utils-0.9.0.
993946
993946
* Tue Feb 12 2013 Ian Kent <ikent@redhat.com> - 0.8.0-11
993946
- change nsdbparams requires to include arch in requires.
993946
993946
* Fri Jan 25 2013 Ian Kent <ikent@redhat.com> - 0.8.0-10
993946
- remove .la libtool archive from devel package (bz889174).
993946
- remove .a static library from devel package ((bz889174).
993946
- make sub-package requires explicit.
993946
- remove duplicate definition of fedfs-set-nsdb-params.8.
993946
993946
* Mon Aug 27 2012 Ian Kent <ikent@redhat.com> - 0.8.0-9
993946
- fix syntax of systemd scriplet macros (bz850396).
993946
993946
* Mon Aug 27 2012 Ian Kent <ikent@redhat.com> - 0.8.0-8
993946
- update systemd scriplet macros (bz850396).
993946
993946
* Thu Aug 2 2012 Ian Kent <ikent@redhat.com> - 0.8.0-7
993946
- some more spec file changes as detailed in the packaging guildlines.
993946
993946
* Thu Aug 2 2012 Ian Kent <ikent@redhat.com> - 0.8.0-6
993946
- add missing systemd scriplets.
993946
993946
* Thu Aug 2 2012 Ian Kent <ikent@redhat.com> - 0.8.0-5
993946
- move libnfsjunct to a lib package to avoid the devel package depending
993946
  on the server package.
993946
993946
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.0-3
993946
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
993946
993946
* Tue Jul 10 2012 Ian Kent <ikent@redhat.com> - 0.8.0-2
993946
- Add fedfs ldap schema to docs of common package.
993946
993946
* Tue Jul 10 2012 Ian Kent <ikent@redhat.com> - 0.8.0-1
993946
- Update to latest upstream version.
993946
993946
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.7.3-3
993946
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
993946
993946
* Mon Dec 5 2011 Ian Kent <ikent@redhat.com> 0.7.3-2
993946
- add systemd-units to BuildRequires as per systemd doco.
993946
993946
* Wed Nov 30 2011 Jeff Layton <jlayton@redhat.com> 0.7.3-1
993946
- update to 0.7.3 release
993946
993946
* Fri Nov 04 2011 Jeff Layton <jlayton@redhat.com> 0.7.2-1
993946
- update to 0.7.2 release
993946
- add systemd service file for rpc.fedfsd
993946
993946
* Fri Sep 09 2011 Jeff Layton <jlayton@redhat.com> 0.7.0-2
993946
- incorporate review feedback by Volker Fröhlich
993946
993946
* Tue Sep 06 2011 Jeff Layton <jlayton@redhat.com> 0.7.0-1
993946
- Initial package build
993946