2013-11-22 13:26:40 +00:00
|
|
|
|
2013-11-25 17:58:01 +00:00
|
|
|
%global prereltag rcfinal
|
|
|
|
%global reltag pre-2.0-RC-final
|
2013-11-22 13:26:40 +00:00
|
|
|
%global ntirpcname ntirpc
|
|
|
|
%global ntirpcvers 1.0.0
|
|
|
|
|
|
|
|
Name: nfs-ganesha
|
|
|
|
Version: 2.0.0
|
2013-11-25 17:58:01 +00:00
|
|
|
Release: 0.2%{?prereltag:.%{prereltag}}%{?dist}
|
2013-11-22 13:26:40 +00:00
|
|
|
Summary: Ganesha NFS Server
|
|
|
|
Group: System Environment/Libraries
|
|
|
|
License: LGPLv3+
|
|
|
|
URL: https://github.com/nfs-ganesha/nfs-ganesha/wiki
|
|
|
|
ExclusiveArch: x86_64
|
|
|
|
ExclusiveArch: aarch64
|
|
|
|
|
|
|
|
Source0: https://github.com/%{name}/%{name}/archive/%{reltag}.tar.gz
|
|
|
|
Source1: https://github.com/%{name}/%{ntirpcname}/archive/v%{ntirpcvers}.tar.gz
|
|
|
|
Source2: nfs-ganesha.service
|
|
|
|
Patch1: nfs-ganesha-2.0.0rc5.patch
|
|
|
|
|
|
|
|
# Bundling exception through Fedora 23
|
|
|
|
# https://fedorahosted.org/fpc/ticket/363
|
|
|
|
Provides: bundled(libntirpc)
|
|
|
|
|
|
|
|
BuildRequires: systemd
|
|
|
|
BuildRequires: cmake >= 2.6.3
|
|
|
|
BuildRequires: bison
|
|
|
|
BuildRequires: flex
|
|
|
|
BuildRequires: pkgconfig
|
|
|
|
BuildRequires: doxygen
|
|
|
|
BuildRequires: krb5-devel
|
|
|
|
BuildRequires: xfsprogs-devel
|
|
|
|
BuildRequires: dbus-devel
|
|
|
|
BuildRequires: jemalloc-devel
|
|
|
|
BuildRequires: libnfsidmap-devel
|
|
|
|
BuildRequires: libwbclient-devel
|
|
|
|
BuildRequires: libcap-devel
|
|
|
|
# BuildRequires: glusterfs-api-devel
|
|
|
|
|
|
|
|
Requires(post): systemd
|
|
|
|
Requires(preun): systemd
|
|
|
|
Requires(postun): systemd
|
|
|
|
Requires: dbus
|
|
|
|
Requires: jemalloc
|
|
|
|
# Requires: glusterfs-api
|
|
|
|
|
|
|
|
%global _docdir_fmt %{name}
|
|
|
|
|
|
|
|
%description
|
|
|
|
NFS-Ganesha is a user mode file server with support for both the
|
|
|
|
NFS suite and 9P, the Plan 9 remote file access protocol. It uses
|
|
|
|
an internal meta data cache and state manager for performance. It
|
|
|
|
also provides support for pNFS for multiple clustered file systems
|
|
|
|
both open source and proprietary. Multiple file systems are supported
|
|
|
|
via loadable back-end drivers. The VFS back-end supports file systems
|
|
|
|
via the kernel. Other back-ends can support user mode library based
|
|
|
|
clusters such as CEPH and GLUSTERFS. There is also a PROXY back-end
|
|
|
|
which operates as an NFSv4 client.
|
|
|
|
|
|
|
|
%package docs
|
|
|
|
Summary: Ganesha NFS Server Documentation
|
|
|
|
BuildArch: noarch
|
|
|
|
|
|
|
|
%description docs
|
|
|
|
Documentation for nfs-ganesha
|
|
|
|
|
|
|
|
NFS-Ganesha is a user mode file server with support for both the
|
|
|
|
NFS suite and 9P, the Plan 9 remote file access protocol. It uses
|
|
|
|
an internal meta data cache and state manager for performance. It
|
|
|
|
also provides support for pNFS for multiple clustered file systems
|
|
|
|
both open source and proprietary. Multiple file systems are supported
|
|
|
|
via loadable back-end drivers. The VFS back-end supports file systems
|
|
|
|
via the kernel. Other back-ends can support user mode library based
|
|
|
|
clusters such as CEPH and GLUSTERFS. There is also a PROXY back-end
|
|
|
|
which operates as an NFSv4 client.
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%setup -q -n %{name}-%{reltag} -a 1
|
|
|
|
rm -rf contrib/libzfswrapper
|
|
|
|
mv %{ntirpcname}-%{ntirpcvers}/* src/libntirpc/
|
|
|
|
%patch1 -p1
|
|
|
|
|
|
|
|
%build
|
|
|
|
%cmake -DCMAKE_BUILD_TYPE=Maintainer -DBUILD_CONFIG=everything -DCMAKE_INSTALL_PREFIX=%{buildroot}/usr ./src
|
|
|
|
# _smp_mflags elided due to random build errors (cmake related?)
|
|
|
|
make VERBOSE=1
|
|
|
|
|
|
|
|
%install
|
|
|
|
make install
|
|
|
|
rm %{buildroot}%{_bindir}/libntirpc.*
|
|
|
|
chmod ugo+x %{buildroot}%{_bindir}/ganestat.pl
|
|
|
|
rm %{buildroot}%{_libdir}/ganesha/*.so
|
|
|
|
install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/nfs-ganesha.service
|
|
|
|
mkdir -p %{buildroot}%{_defaultdocdir}/%{name}
|
|
|
|
cp -p src/Docs/*.pdf %{buildroot}%{_defaultdocdir}/%{name}/
|
|
|
|
|
|
|
|
%post
|
|
|
|
/sbin/ldconfig
|
|
|
|
%systemd_post nfs-ganesha.service
|
|
|
|
|
|
|
|
%preun
|
|
|
|
%systemd_preun nfs-ganesha.service
|
|
|
|
|
|
|
|
%postun
|
|
|
|
/sbin/ldconfig
|
|
|
|
%systemd_postun_with_restart nfs-ganesha.service
|
|
|
|
|
|
|
|
%files
|
|
|
|
%doc src/ChangeLog src/LICENSE.txt src/TODO
|
|
|
|
%exclude %{_defaultdocdir}/%{name}/*.pdf
|
|
|
|
%{_libdir}/*
|
|
|
|
%{_bindir}/*
|
|
|
|
%{_unitdir}/*
|
|
|
|
|
|
|
|
%files docs
|
|
|
|
%{_defaultdocdir}/%{name}/LICENSE.txt
|
|
|
|
%{_defaultdocdir}/%{name}/*.pdf
|
|
|
|
%dir %{_defaultdocdir}/%{name}
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
* Fri Nov 22 2013 Kaleb S. KEITHLEY <kkeithle at redhat.com> 2.0.0-0.1.rc5
|
|
|
|
- Initial commit
|
2013-11-25 17:58:01 +00:00
|
|
|
|
|
|
|
* Mon Nov 25 2013 Kaleb S. KEITHLEY <kkeithle at redhat.com> 2.0.0-0.2.rcfinal
|
|
|
|
- update to RC-final
|