2.2.0-0.1rc1

- nfs-ganesha.spec based on upstream
This commit is contained in:
Kaleb S. KEITHLEY 2015-02-13 13:23:18 -05:00
parent 73e384859e
commit 4d4c9a4f89
2 changed files with 501 additions and 200 deletions

View File

@ -1,183 +1,317 @@
# %%global prereltag rcfinal
%global ntirpcname ntirpc
%global ntirpcvers 1.1.0
%global _hardened_build 1 %global _hardened_build 1
%if ( 0%{?fedora} && 0%{?fedora} > 16 ) || ( 0%{?rhel} && 0%{?rhel} > 6 ) %if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
%global _with_systemd true %global with_nfsidmap 1
%else
%global with_nfsidmap 0
%endif %endif
# GlusterFS is not available in EPEL %if ( 0%{?fedora} >= 18 || 0%{?rhel} >= 7 )
# RHEL finally has 3.6.x, but lacks glusterfs-api-devel %global with_systemd 1
%if ( ! 0%{?rhel} ) %else
%global with_glusterfs true %global with_systemd 0
%endif %endif
%global with_cephfs true # Conditionally enable some FSALs, disable others.
#
# 1. rpmbuild accepts these options (gpfs as example):
# --with gpfs
# --without gpfs
%global with_admintools true %define on_off_switch() %%{?with_%1:ON}%%{!?with_%1:OFF}
# From https://fedoraproject.org/wiki/Packaging:Python#Macros # A few explanation about %%bcond_with and %%bcond_without
%if ( 0%{?rhel} && 0%{?rhel} <= 5 ) # /!\ be careful: this syntax can be quite messy
%{!?python_sitelib: %global python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} # %%bcond_with means you add a "--with" option, default = without this feature
%{!?python_sitearch: %global python_sitearch %(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} # %%bcond_without adds a"--without" so the feature is enabled by default
%endif
Name: nfs-ganesha #%%bcond_without gpfs
Version: 2.1.0 %global use_fsal_gpfs OFF
Release: 14%{?prereltag:.%{prereltag}}%{?dist}
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/V%{version}/%{name}-%{version}.tar.gz %bcond_without xfs
Source1: https://github.com/%{name}/%{ntirpcname}/archive/v%{ntirpcvers}/%{ntirpcname}-%{ntirpcvers}.tar.gz %global use_fsal_xfs %{on_off_switch xfs}
Source2: nfs-ganesha.service
Patch3: nfs-ganesha-2.0.0-no-strict-aliasing.patch
Patch6: nfs-ganesha-2.1.0-config_parsing.patch
Patch7: nfs-ganesha-2.1.0-cache_inode_getattr.patch
Patch8: nfs-ganesha-2.1.0-nfs4_pseudo.patch
Patch9: nfs-ganesha-2.1.0-config-h.in.cmake.patch
Patch10: nfs-ganesha-2.1.0-commonlib.patch
Patch11: nfs-ganesha-2.1.0-nfs4_op_secinfo.patch
Patch12: nfs-ganesha-2.1.0-support-CMakeLists.txt.patch
Patch13: nfs-ganesha-2.1.0-cache_inode.patch
Patch14: nfs-ganesha-2.1.0-state_lock.patch
%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}} %bcond_without ceph
%global use_fsal_ceph %{on_off_switch ceph}
#%%bcond_with lustre
%global use_fsal_lustre OFF
#%%bcond_with shook
%global use_fsal_shook OFF
%bcond_without gluster
%global use_fsal_gluster %{on_off_switch gluster}
#%%bcond_with hpss
%global use_fsal_hpss OFF
#%%bcond_without panfs
%global use_fsal_panfs OFF
#%%bcond_with pt
%global use_fsal_pt OFF
%bcond_with rdma
%global use_rdma %{on_off_switch rdma}
%bcond_without jemalloc
#%%bcond_with lustre_up
%global use_lustre_up OFF
#%%bcond_with lttng
%global use_lttng OFF
%bcond_without utils
%global use_utils %{on_off_switch utils}
%global dev_version %{lua: extraver = string.gsub('-rc1', '%-', ''); print(extraver) }
%global ntirpcname ntirpc
%global ntirpcvers 1.2.0
%global versiontag 2.2-rc1
Name: nfs-ganesha
Version: 2.2.0
Release: 0.1%{?dev_version:%{dev_version}}%{?dist}
Summary: NFS-Ganesha is a NFS Server running in user space
Group: Applications/System
License: LGPLv3+
Url: https://github.com/nfs-ganesha/nfs-ganesha/wiki
Source0: https://github.com/%{name}/%{name}/archive/V%{versiontag}/%{name}-%{version}%{dev_version}.tar.gz
Source1: https://github.com/%{name}/%{ntirpcname}/archive/v%{ntirpcvers}/%{ntirpcname}-%{ntirpcvers}.tar.gz
Patch13: nfs-ganesha-2.1.0-cache_inode.patch
Patch14: nfs-ganesha-2.1.0-state_lock.patch
# Bundling exception through Fedora 23
# https://fedorahosted.org/fpc/ticket/363
Provides: bundled(libntirpc)
%if ( 0%{?_with_systemd:1} )
BuildRequires: systemd
%endif
%if ( 0%{?rhel} && 0%{?rhel} < 7 ) %if ( 0%{?rhel} && 0%{?rhel} < 7 )
BuildRequires: cmake28 BuildRequires: cmake28
%else %else
BuildRequires: cmake >= 2.6.3 BuildRequires: cmake
%endif %endif
BuildRequires: bison BuildRequires: bison flex
BuildRequires: flex BuildRequires: flex
BuildRequires: pkgconfig BuildRequires: pkgconfig
BuildRequires: doxygen BuildRequires: krb5-devel
BuildRequires: krb5-devel BuildRequires: dbus-devel
BuildRequires: dbus-devel BuildRequires: libcap-devel
BuildRequires: jemalloc-devel BuildRequires: libblkid-devel
%if ( 0%{?fedora} && 0%{?fedora} > 16 ) || ( 0%{?rhel} && 0%{?rhel} > 6 ) BuildRequires: libuuid-devel
BuildRequires: xfsprogs-devel Requires: dbus
BuildRequires: libnfsidmap-devel %if %{with_nfsidmap}
BuildRequires: libwbclient-devel BuildRequires: libnfsidmap-devel
%else
BuildRequires: nfs-utils-lib-devel
%endif %endif
BuildRequires: libcap-devel %if %{with rdma}
%if ( 0%{?with_admintools:1} ) BuildRequires: libmooshika-devel >= 0.6-0
BuildRequires: PyQt4-devel %endif
%if %{with jemalloc}
BuildRequires: jemalloc-devel
%endif
%if %{with lustre_up}
BuildRequires: lcap-devel >= 0.1-0
%endif
%if %{with_systemd}
BuildRequires: systemd
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
%else
BuildRequires: initscripts
%endif %endif
%if ( 0%{?_with_systemd:1} ) # Use CMake variables
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
%else
Requires(post): /sbin/chkconfig
Requires(preun): /sbin/service
Requires(preun): /sbin/chkconfig
Requires(postun): /sbin/service
%endif
Requires: dbus
Requires: jemalloc
%if ( 0%{?with_admintools:1} )
Requires: PyQt4
%endif
%description %description
NFS-Ganesha is a user mode file server with support for both the nfs-ganesha : NFS-GANESHA is a NFS Server running in user space.
NFS suite and 9P, the Plan 9 remote file access protocol. It uses It comes with various back-end modules (called FSALs) provided as
an internal meta data cache and state manager for performance. It shared objects to support different file systems and name-spaces.
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.
%if ( 0%{?with_glusterfs:1} ) %package mount-9P
%package fsal-gluster Summary: a 9p mount helper
Summary: Ganesha NFS Server GlusterFS FSAL Group: Applications/System
Requires: glusterfs-api >= 3.5.1
BuildRequires: glusterfs-api-devel >= 3.5.1
%description fsal-gluster %description mount-9P
GlusterFS FSAL for nfs-ganesha This package contains the mount.9P script that clients can use
to simplify mounting to NFS-GANESHA. This is a 9p mount helper.
NFS-Ganesha is a user mode file server with support for both the %package vfs
NFS suite and 9P, the Plan 9 remote file access protocol. It uses Summary: The NFS-GANESHA's VFS FSAL
an internal meta data cache and state manager for performance. It Group: Applications/System
also provides support for pNFS for multiple clustered file systems BuildRequires: libattr-devel
both open source and proprietary. Multiple file systems are supported Requires: nfs-ganesha
via loadable back-end drivers. The VFS back-end supports file systems
via the kernel. Other back-ends can support user mode library based %description vfs
clusters such as CEPH and GLUSTERFS. There is also a PROXY back-end This package contains a FSAL shared object to
which operates as an NFSv4 client. be used with NFS-Ganesha to support VFS based filesystems
%package nullfs
Summary: The NFS-GANESHA's NULLFS Stackable FSAL
Group: Applications/System
%description nullfs
This package contains a Stackable FSAL shared object to
be used with NFS-Ganesha. This is mostly a template for future (more sophisticated) stackable FSALs
%package proxy
Summary: The NFS-GANESHA's PROXY FSAL
Group: Applications/System
BuildRequires: libattr-devel
Requires: nfs-ganesha
%description proxy
This package contains a FSAL shared object to
be used with NFS-Ganesha to support PROXY based filesystems
%if %{with utils}
%package utils
Summary: The NFS-GANESHA's util scripts
Group: Applications/System
BuildRequires: PyQt4-devel
Requires: PyQt4
Requires: nfs-ganesha python
%description utils
This package contains utility scripts for managing the NFS-GANESHA server
%endif %endif
%if ( 0%{?with_cephfs:1} ) %if %{with lttng}
%package fsal-ceph %package lttng
Summary: Ganesha NFS Server Ceph FSAL Summary: The NFS-GANESHA's library for use with LTTng
Requires: ceph >= 0.78 Group: Applications/System
BuildRequires: ceph-devel >= 0.78 BuildRequires: lttng-ust-devel >= 2.3
Requires: nfs-ganesha, lttng-tools >= 2.3, lttng-ust >= 2.3
%description fsal-ceph %description lttng
Ceph FSAL for nfs-ganesha This package contains the libganesha_trace.so library. When preloaded
to the ganesha.nfsd server, it makes it possible to trace using LTTng.
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.
%endif %endif
%package docs # Option packages start here. use "rpmbuild --with lustre" (or equivalent)
Summary: Ganesha NFS Server Documentation # for activating this part of the spec file
BuildArch: noarch
%description docs # GPFS
Documentation for nfs-ganesha %if %{with gpfs}
%package gpfs
Summary: The NFS-GANESHA's GPFS FSAL
Group: Applications/System
NFS-Ganesha is a user mode file server with support for both the %description gpfs
NFS suite and 9P, the Plan 9 remote file access protocol. It uses This package contains a FSAL shared object to
an internal meta data cache and state manager for performance. It be used with NFS-Ganesha to support GPFS backend
also provides support for pNFS for multiple clustered file systems %endif
both open source and proprietary. Multiple file systems are supported
via loadable back-end drivers. The VFS back-end supports file systems # CEPH
via the kernel. Other back-ends can support user mode library based %if %{with ceph}
clusters such as CEPH and GLUSTERFS. There is also a PROXY back-end %package ceph
which operates as an NFSv4 client. Summary: The NFS-GANESHA's CEPH FSAL
Group: Applications/System
Requires: ceph >= 0.78
BuildRequires: ceph-devel >= 0.78
%description ceph
This package contains a FSAL shared object to
be used with NFS-Ganesha to support CEPH
%endif
# LUSTRE
%if %{with lustre}
%package lustre
Summary: The NFS-GANESHA's LUSTRE FSAL
Group: Applications/System
Requires: lustre nfs-ganesha
BuildRequires: libattr-devel lustre
%description lustre
This package contains a FSAL shared object to
be used with NFS-Ganesha to support LUSTRE
%endif
# SHOOK
%if %{with shook}
%package shook
Summary: The NFS-GANESHA's LUSTRE/SHOOK FSAL
Group: Applications/System
Requires: lustre shook-client nfs-ganesha
BuildRequires: libattr-devel lustre shook-devel
%description shook
This package contains a FSAL shared object to
be used with NFS-Ganesha to support LUSTRE via SHOOK
%endif
# XFS
%if %{with xfs}
%package xfs
Summary: The NFS-GANESHA's XFS FSAL
Group: Applications/System
Requires: nfs-ganesha
BuildRequires: libattr-devel xfsprogs-devel
%description xfs
This package contains a shared object to be used with FSAL_VFS
to support XFS correctly
%endif
# HPSS
%if %{with hpss}
%package hpss
Summary: The NFS-GANESHA's HPSS FSAL
Group: Applications/System
Requires: nfs-ganesha
#BuildRequires: hpssfs
%description hpss
This package contains a FSAL shared object to
be used with NFS-Ganesha to support HPSS
%endif
# PANFS
%if %{with panfs}
%package panfs
Summary: The NFS-GANESHA's PANFS FSAL
Group: Applications/System
Requires: nfs-ganesha
%description panfs
This package contains a FSAL shared object to
be used with NFS-Ganesha to support PANFS
%endif
# PT
%if %{with pt}
%package pt
Summary: The NFS-GANESHA's PT FSAL
Group: Applications/System
Requires: nfs-ganesha
%description pt
This package contains a FSAL shared object to
be used with NFS-Ganesha to support PT
%endif
# GLUSTER
%if %{with gluster}
%package gluster
Summary: The NFS-GANESHA's GLUSTER FSAL
Group: Applications/System
Requires: nfs-ganesha
BuildRequires: glusterfs-api-devel >= 3.5.1
BuildRequires: libattr-devel
%description gluster
This package contains a FSAL shared object to
be used with NFS-Ganesha to support Gluster
%endif
%prep %prep
%setup -q -n %{name}-%{version} -a 1 %setup -q -n %{name}-%{versiontag} -a 1
rm -rf contrib/libzfswrapper rm -rf contrib/libzfswrapper
mv %{ntirpcname}-%{ntirpcvers}/* src/libntirpc/ mv %{ntirpcname}-%{ntirpcvers}/* src/libntirpc/
%if ( 0%{?rhel} && 0%{?rhel} < 7 )
%patch3 -p1
%endif
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
%patch12 -p1
%patch13 -p1 %patch13 -p1
%patch14 -p1 %patch14 -p1
@ -185,87 +319,254 @@ mv %{ntirpcname}-%{ntirpcvers}/* src/libntirpc/
%if ( 0%{?rhel} && 0%{?rhel} < 7 ) %if ( 0%{?rhel} && 0%{?rhel} < 7 )
%global cmake %cmake28 %global cmake %cmake28
%endif %endif
%if ( 0%{?with_admintools:1} ) %cmake ./src -DCMAKE_BUILD_TYPE=Debug \
%global config_admin -DUSE_ADMIN_TOOLS=ON -DBUILD_CONFIG=rpmbuild \
-DUSE_FSAL_ZFS=NO \
-DUSE_FSAL_XFS=%{use_fsal_xfs} \
-DUSE_FSAL_CEPH=%{use_fsal_ceph} \
-DUSE_FSAL_LUSTRE=%{use_fsal_lustre} \
-DUSE_FSAL_SHOOK=%{use_fsal_shook} \
-DUSE_FSAL_GPFS=%{use_fsal_gpfs} \
-DUSE_FSAL_HPSS=%{use_fsal_hpss} \
-DUSE_FSAL_PANFS=%{use_fsal_panfs} \
-DUSE_FSAL_PT=%{use_fsal_pt} \
-DUSE_FSAL_GLUSTER=%{use_fsal_gluster} \
-DUSE_9P_RDMA=%{use_rdma} \
-DUSE_FSAL_LUSTRE_UP=%{use_lustre_up} \
-DUSE_LTTNG=%{use_lttng} \
-DUSE_ADMIN_TOOLS=%{use_utils} \
-DUSE_FSAL_VFS=ON \
-DUSE_FSAL_PROXY=ON \
-DUSE_DBUS=ON \
-DUSE_9P=ON \
-DDISTNAME_HAS_GIT_DATA=OFF \
-DCMAKE_INSTALL_PREFIX= \
%if %{with jemalloc}
-DALLOCATOR=jemalloc
%endif %endif
%cmake -DCMAKE_BUILD_TYPE=Maintainer -DBUILD_CONFIG=everything -DCMAKE_INSTALL_PREFIX=%{buildroot}/usr %{config_admin} ./src
# _smp_mflags elided due to random build errors (cmake related?) make %{?_smp_mflags} || make %{?_smp_mflags} || make
make VERBOSE=1
%install %install
make install mkdir -p %{buildroot}%{_sysconfdir}/ganesha/
rm %{buildroot}%{_bindir}/libntirpc.* mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d
mkdir -p %{buildroot}%{_pkgdocdir} mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
cp -p src/Docs/*.pdf %{buildroot}%{_pkgdocdir}/ mkdir -p %{buildroot}%{_sysconfdir}/logrotate.d
%if ( 0%{?_with_systemd:1} ) mkdir -p %{buildroot}%{_bindir}
install -D -p -m 0644 src/scripts/systemd/nfs-ganesha.service %{buildroot}%{_unitdir}/nfs-ganesha.service mkdir -p %{buildroot}%{_sbindir}
mkdir -p %{buildroot}%{_libdir}/ganesha
mkdir -p %{buildroot}%{_localstatedir}/run/ganesha
install -m 644 src/config_samples/logrotate_ganesha %{buildroot}%{_sysconfdir}/logrotate.d/ganesha
install -m 644 src/scripts/ganeshactl/org.ganesha.nfsd.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d
install -m 755 src/tools/mount.9P %{buildroot}%{_sbindir}/mount.9P
install -m 644 src/config_samples/vfs.conf %{buildroot}%{_sysconfdir}/ganesha
%if %{with_systemd}
mkdir -p %{buildroot}%{_unitdir}
install -m 644 src/scripts/systemd/nfs-ganesha.service %{buildroot}%{_unitdir}/nfs-ganesha.service
install -m 644 src/scripts/systemd/nfs-ganesha-lock.service %{buildroot}%{_unitdir}/nfs-ganesha-lock.service
install -m 644 src/scripts/systemd/sysconfig/nfs-ganesha %{buildroot}%{_sysconfdir}/sysconfig/ganesha
%else %else
install -D -p -m 0744 src/ganesha.init %{buildroot}%{_sysconfdir}/init.d/nfs-ganesha mkdir -p %{buildroot}%{_sysconfdir}/init.d
install -m 755 src/ganesha.init %{buildroot}%{_sysconfdir}/init.d/nfs-ganesha
install -m 644 src/ganesha.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/ganesha
%endif %endif
install -D -p -m 0644 src/scripts/systemd/sysconfig/nfs-ganesha %{buildroot}%{_sysconfdir}/sysconfig/nfs-ganesha
install -D -p -m 0644 src/scripts/ganeshactl/org.ganesha.nfsd.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/org.ganesha.nfsd.conf %if %{with utils} && 0%{?rhel} && 0%{?rhel} <= 6
%{!?__python2: %global __python2 /usr/bin/python2}
%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
%{!?python2_sitearch: %global python2_sitearch %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
%endif
%if %{with pt}
install -m 755 src/ganesha.pt.init %{buildroot}%{_sysconfdir}/init.d/nfs-ganesha-pt
install -m 644 src/config_samples/pt.conf %{buildroot}%{_sysconfdir}/ganesha
%endif
%if %{with xfs}
install -m 644 src/config_samples/xfs.conf %{buildroot}%{_sysconfdir}/ganesha
%endif
%if %{with ceph}
install -m 644 src/config_samples/ceph.conf %{buildroot}%{_sysconfdir}/ganesha
%endif
%if %{with lustre}
install -m 755 src/config_samples/lustre.conf %{buildroot}%{_sysconfdir}/ganesha
%endif
%if %{with gpfs}
install -m 644 src/config_samples/gpfs.conf %{buildroot}%{_sysconfdir}/ganesha
install -m 644 src/config_samples/gpfs.ganesha.nfsd.conf %{buildroot}%{_sysconfdir}/ganesha
install -m 644 src/config_samples/gpfs.ganesha.main.conf %{buildroot}%{_sysconfdir}/ganesha
install -m 644 src/config_samples/gpfs.ganesha.log.conf %{buildroot}%{_sysconfdir}/ganesha
install -m 644 src/config_samples/gpfs.ganesha.exports.conf %{buildroot}%{_sysconfdir}/ganesha
%endif
%if %{with utils}
pushd .
cd scripts/ganeshactl/
python setup.py --quiet install --root=%{buildroot}
popd
install -m 755 Protocols/NLM/sm_notify.ganesha %{buildroot}%{_bindir}/sm_notify.ganesha
%endif
make DESTDIR=%{buildroot}/usr install
rm -f %{buildroot}/usr/bin/libntirpc.a
mv %{buildroot}/usr%{_sysconfdir}/ganesha/ganesha.conf %{buildroot}%{_sysconfdir}/ganesha/
%post %post
/sbin/ldconfig %if %{with_systemd}
%if ( 0%{?_with_systemd:1} )
%systemd_post nfs-ganesha.service %systemd_post nfs-ganesha.service
%else %systemd_post nfs-ganesha-lock.service
/sbin/chkconfig --add nfs-ganesha
%endif %endif
%preun %preun
%if ( 0%{?_with_systemd:1} ) %if %{with_systemd}
%systemd_preun nfs-ganesha.service %systemd_preun nfs-ganesha-lock.service
%else
/sbin/service nfs-ganesha stop &>/dev/null
/sbin/chkconfig --del nfs-ganesha
/sbin/service nfs-ganesha condrestart &>/dev/null
%endif %endif
%postun %postun
/sbin/ldconfig %if %{with_systemd}
%if ( 0%{?_with_systemd:1} ) %systemd_postun_with_restart nfs-ganesha-lock.service
%systemd_postun_with_restart nfs-ganesha.service
%endif %endif
%files %files
%doc src/ChangeLog src/LICENSE.txt src/Docs/*.pdf %defattr(-,root,root,-)
%exclude %{_pkgdocdir}/*.pdf %{_bindir}/ganesha.nfsd
%if ( 0%{?with_glusterfs:1} ) #%%{_bindir}/libntirpc.a
%exclude %{_libdir}/ganesha/libfsalgluster.* %config %{_sysconfdir}/dbus-1/system.d/org.ganesha.nfsd.conf
%endif %config(noreplace) %{_sysconfdir}/sysconfig/ganesha
%if ( 0%{?with_cephfs:1} ) %config(noreplace) %{_sysconfdir}/logrotate.d/ganesha
%exclude %{_libdir}/ganesha/libfsalceph.* %dir %{_sysconfdir}/ganesha/
%endif %config(noreplace) %{_sysconfdir}/ganesha/ganesha.conf
%{_libdir}/* %dir %{_defaultdocdir}/ganesha/
%{_bindir}/* %{_defaultdocdir}/ganesha/*
%if ( 0%{?_with_systemd:1} ) %dir %{_localstatedir}/run/ganesha
%{_unitdir}/*
%if %{with_systemd}
%{_unitdir}/nfs-ganesha.service
%{_unitdir}/nfs-ganesha-lock.service
%else %else
%{_sysconfdir}/init.d/* %{_sysconfdir}/init.d/nfs-ganesha
%endif
%{_sysconfdir}/sysconfig/*
%{_sysconfdir}/dbus-1/system.d/*
%if ( 0%{?with_admintools:1} )
%{python_sitelib}/*
%endif %endif
%if ( 0%{?with_glusterfs:1} ) %files mount-9P
%files fsal-gluster %defattr(-,root,root,-)
%{_libdir}/ganesha/libfsalgluster.* %{_sbindir}/mount.9P
%files vfs
%defattr(-,root,root,-)
%{_libdir}/ganesha/libfsalvfs*
%config(noreplace) %{_sysconfdir}/ganesha/vfs.conf
%files nullfs
%defattr(-,root,root,-)
%{_libdir}/ganesha/libfsalnull*
%files proxy
%defattr(-,root,root,-)
%{_libdir}/ganesha/libfsalproxy*
# Optional packages
%if %{with gpfs}
%files gpfs
%defattr(-,root,root,-)
%{_libdir}/ganesha/libfsalgpfs*
%config(noreplace) %{_sysconfdir}/ganesha/gpfs.conf
%config(noreplace) %{_sysconfdir}/ganesha/gpfs.ganesha.nfsd.conf
%config(noreplace) %{_sysconfdir}/ganesha/gpfs.ganesha.main.conf
%config(noreplace) %{_sysconfdir}/ganesha/gpfs.ganesha.log.conf
%config(noreplace) %{_sysconfdir}/ganesha/gpfs.ganesha.exports.conf
%endif %endif
%if ( 0%{?with_cephfs:1} ) %if %{with xfs}
%files fsal-ceph %files xfs
%{_libdir}/ganesha/libfsalceph.* %defattr(-,root,root,-)
%{_libdir}/ganesha/libfsalxfs*
%config(noreplace) %{_sysconfdir}/ganesha/xfs.conf
%endif %endif
%files docs %if %{with ceph}
%{_pkgdocdir}/LICENSE.txt %files ceph
%{_pkgdocdir}/* %defattr(-,root,root,-)
%dir %{_pkgdocdir} %{_libdir}/ganesha/libfsalceph*
%config(noreplace) %{_sysconfdir}/ganesha/ceph.conf
%endif
%if %{with lustre}
%files lustre
%defattr(-,root,root,-)
%config(noreplace) %{_sysconfdir}/ganesha/lustre.conf
%{_libdir}/ganesha/libfsallustre*
%endif
%if %{with shook}
%files shook
%defattr(-,root,root,-)
%{_libdir}/ganesha/libfsalshook*
%endif
%if %{with gluster}
%files gluster
%defattr(-,root,root,-)
%{_libdir}/ganesha/libfsalgluster*
%endif
%if %{with hpss}
%files hpss
%defattr(-,root,root,-)
%{_libdir}/ganesha/libfsalhpss*
%endif
%if %{with panfs}
%files panfs
%defattr(-,root,root,-)
%{_libdir}/ganesha/libfsalpanfs*
%endif
%if %{with pt}
%files pt
%defattr(-,root,root,-)
%{_libdir}/ganesha/libfsalpt*
%config(noreplace) %{_sysconfdir}/init.d/nfs-ganesha-pt
%config(noreplace) %{_sysconfdir}/ganesha/pt.conf
%endif
%if %{with lttng}
%files lttng
%defattr(-,root,root,-)
%{_libdir}/ganesha/libganesha_trace*
%endif
%if %{with utils}
%files utils
%defattr(-,root,root,-)
%{python2_sitelib}/Ganesha/*
%{python2_sitelib}/ganeshactl-*-info
%{_bindir}/ganesha-admin
%{_bindir}/manage_clients
%{_bindir}/manage_exports
%{_bindir}/manage_logger
%{_bindir}/ganeshactl
%{_bindir}/fake_recall
%{_bindir}/get_clientids
%{_bindir}/grace_period
%{_bindir}/purge_gids
%{_bindir}/ganesha_stats
%{_bindir}/sm_notify.ganesha
%{_bindir}/ganesha_mgr
%endif
%changelog %changelog
* Fri Feb 13 2015 Kaleb S. KEITHLEY <kkeithle at redhat.com> 2.2.0-0.1rc1
- 2.2.0-0.1rc1
- nfs-ganesha.spec based on upstream
* Thu Feb 12 2015 Kaleb S. KEITHLEY <kkeithle at redhat.com> 2.1.0-14 * Thu Feb 12 2015 Kaleb S. KEITHLEY <kkeithle at redhat.com> 2.1.0-14
- Fedora 23/rawhide build fixes - Fedora 23/rawhide build fixes
- Ceph restored in EPEL - Ceph restored in EPEL

View File

@ -1,2 +1,2 @@
e0b398e92def24f5c354c17db1ee1119 nfs-ganesha-2.1.0.tar.gz 58a05c7c8839b808d4d79e23097e5a2e nfs-ganesha-2.2.0rc1.tar.gz
18313c48592396061fae3be6428afde8 ntirpc-1.1.0.tar.gz 4319747da35d6e2e713f859272201978 ntirpc-1.2.0.tar.gz