summaryrefslogtreecommitdiffstats
path: root/glusterfs.spec.in
diff options
context:
space:
mode:
Diffstat (limited to 'glusterfs.spec.in')
-rw-r--r--glusterfs.spec.in61
1 files changed, 60 insertions, 1 deletions
diff --git a/glusterfs.spec.in b/glusterfs.spec.in
index f3038eaa40d..5c4f74af44c 100644
--- a/glusterfs.spec.in
+++ b/glusterfs.spec.in
@@ -347,6 +347,25 @@ is in user space and easily manageable.
This package provides the glusterfs libgfapi library.
+%package extra-xlators
+Summary: Extra Gluster filesystem Translators
+Group: Applications/File
+# We need -api rpm for its __init__.py in Python site-packages area
+Requires: %{name}-api = %{version}-%{release}
+Requires: python python-ctypes
+
+%description extra-xlators
+GlusterFS is a clustered file-system capable of scaling to several
+petabytes. It aggregates various storage bricks over Infiniband RDMA
+or TCP/IP interconnect into one large parallel network file
+system. GlusterFS is one of the most sophisticated file systems in
+terms of features and extensibility. It borrows a powerful concept
+called Translators from GNU Hurd kernel. Much of the code in GlusterFS
+is in user space and easily manageable.
+
+This package provides extra filesystem Translators, such as Glupy,
+for GlusterFS.
+
%if ( 0%{!?_without_ocf:1} )
%package resource-agents
Summary: OCF Resource Agents for GlusterFS
@@ -384,6 +403,8 @@ like Pacemaker.
Summary: Development Libraries
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
+# Needed for the Glupy examples to work
+Requires: %{name}-extra-xlators = %{version}-%{release}
%description devel
GlusterFS is a clustered file-system capable of scaling to several
@@ -451,6 +472,12 @@ sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|' libtool
make %{?_smp_mflags}
+# Build Glupy
+pushd xlators/features/glupy/src
+FLAGS="$RPM_OPT_FLAGS" python setup.py build
+popd
+
+# Build the Python libgfapi examples
pushd api/examples
FLAGS="$RPM_OPT_FLAGS" python setup.py build
popd
@@ -458,6 +485,10 @@ popd
%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}
+# install the Glupy Python library in /usr/lib/python*/site-packages
+pushd xlators/features/glupy/src
+python setup.py install --skip-build --verbose --root %{buildroot}
+popd
# install the gfapi Python library in /usr/lib/python*/site-packages
pushd api/examples
python setup.py install --skip-build --verbose --root %{buildroot}
@@ -669,6 +700,8 @@ rm -rf %{buildroot}
%exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/protocol/server*
%exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/mgmt*
%exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/nfs*
+# Glupy files are in the -extra-xlators package
+%exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/features/glupy*
# sample xlators not generally used or usable
%exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/encryption/rot-13*
%exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/features/mac-compat*
@@ -806,9 +839,26 @@ fi
%files api
%exclude %{_libdir}/*.so
+# Shared Python-GlusterFS files
+%{python_sitelib}/gluster/__init__.*
+# Libgfapi files
%{_libdir}/libgfapi.*
%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/mount/api*
-%{python_sitelib}/*
+%{python_sitelib}/gluster/gfapi.*
+# Don't expect a .egg-info file on EL5
+%if ( 0%{?rhel} && 0%{?rhel} > 5 ) || ( 0%{?fedora} )
+%{python_sitelib}/glusterfs_api*.egg-info
+%endif
+
+%files extra-xlators
+# Glupy C shared library
+%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/features/glupy.so
+# Glupy Python files
+%{python_sitelib}/gluster/glupy.*
+# Don't expect a .egg-info file on EL5
+%if ( 0%{?rhel} && 0%{?rhel} > 5 ) || ( 0%{?fedora} )
+%{python_sitelib}/glusterfs_glupy*.egg-info
+%endif
%if ( 0%{!?_without_ocf:1} )
%files resource-agents
@@ -822,6 +872,10 @@ fi
%exclude %{_includedir}/glusterfs/api
%exclude %{_libdir}/libgfapi.so
%{_libdir}/*.so
+# Glupy Translator examples
+%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/features/glupy/debug-trace.*
+%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/features/glupy/helloworld.*
+%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/features/glupy/negative.*
%files api-devel
%{_libdir}/pkgconfig/glusterfs-api.pc
@@ -899,6 +953,11 @@ fi
* Wed Feb 26 2014 Niels de Vos <ndevos@redhat.com>
- Drop glusterfs-devel dependency from glusterfs-api (#1065750)
+* Wed Feb 19 2014 Justin Clift <justin@gluster.org>
+- Rename gluster.py to glupy.py to avoid namespace conflict (#1018619)
+- Move the main Glupy files into glusterfs-extra-xlators rpm
+- Move the Glupy Translator examples into glusterfs-devel rpm
+
* Thu Feb 06 2014 Aravinda VK <avishwan@redhat.com>
- Include geo-replication upgrade scripts and hook scripts.