File glusterfs14.spec of Package glusterfs14
#
# spec file for package glusterfs (Version 1.4.0qa32)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
%define tarname glusterfs
%define tarver 1.4.0qa34
#define plevel 272
%define with_ib 1
%define with_bdb 1
%define with_fuse 1
# Disable IB and fuse support on SLES9/10 in the Build Service
# Autobuild has these packages but not the OBS
%if 0%{?opensuse_bs}
%if 0%{?sles_version}
%if 0%{?sles_version} < 11
%define with_ib 0
%define with_fuse 0
%endif
%endif
%endif
# Disable bdb on older distros, as the libdb-4_7-devel has file conflicts
%if 0%{?sles_version}
%if 0%{?sles_version} < 11
%define with_bdb 0
%endif
%endif
Summary: GNU Cluster File System
Name: %{tarname}14
Version: %{tarver}%{?plevel:.%{plevel}}
Release: 0
License: GPLv3 or later
Group: System Environment/Base
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if %{with_fuse}
BuildRequires: fuse-devel libfuse2
%endif
%if %{with_ib}
BuildRequires: libibverbs-devel
%endif
BuildRequires: bison flex libtool
%if %{with_bdb}
BuildRequires: libdb-4_7-devel
%endif
Source0: http://ftp.zresearch.com/pub/gluster/glusterfs/1.4-qa/%{tarname}-%{tarver}.tar.gz
%if 0%{?plevel}
Patch0: glusterfs-%{tarver}-%{plevel}.patch
%endif
URL: http://www.gluster.org/
Conflicts: glusterfs
%description
GlusterFS is a clustered file-system capable of scaling to several
peta-bytes. 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 system 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 userspace and easily manageable.
%package devel
Summary: GlusterFS Development Libraries
Group: Development/Libraries
Requires: %{name} = %{version}
%description devel
GlusterFS is a clustered file-system capable of scaling to several
peta-bytes. 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 system 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 userspace and easily manageable.
This package provides the development libraries.
%package ib
Summary: GlusterFS Infiniband Support
Group: System Environment/Base
Requires: %{name} = %{version}-%{release}
%description ib
Infiniband transports for GlusterFS
%package mount
Summary: FUSE support for GlusterFS
Group: System Environment/Base
Requires: %{name} = %{version}-%{release}
%description mount
Allows mounting GlusterFS filesystem
%package bdb
Summary: BDB storage translator for GlusterFS
Group: System Environment/Base
Requires: %{name} = %{version}-%{release}
%description bdb
Allows storing GlusterFS in Berkeley DB
%debug_package
%prep
%setup -q -n %{tarname}-%{tarver}
%if 0%{?plevel}
%patch0 -p1
%endif
# Change \r\n to \n
sed -i -e 's,\r$,,' extras/glusterfs-mode.el
%build
%configure --disable-mod_glusterfs
%{__make} %{?_smp_mflags}
%install
%{makeinstall}
%{__mkdir_p} %{buildroot}%{_includedir}/%{tarname}
%{__cp} libglusterfs/src/*.h %{buildroot}%{_includedir}/%{tarname}
%clean
%{__rm} -rf %{buildroot}
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%define moddir %{_libdir}/%{tarname}/%{tarver}
%files
%defattr(-,root,root)
%doc AUTHORS ChangeLog COPYING INSTALL NEWS README
%{_sysconfdir}/*
%{_libdir}/%{tarname}
%if %{with_ib}
%exclude %{moddir}/transport/ib*
%endif
%if %{with_fuse}
%exclude %{moddir}/xlator/mount
%endif
%if %{with_bdb}
%exclude %{moddir}/xlator/storage/bdb*
%endif
%{_libdir}/*.so.*
%{_sbindir}/*
%{_mandir}/*/*
%{_localstatedir}/log/%{tarname}
%doc %{_datadir}/doc/glusterfs
%files devel
%defattr(-,root,root)
%{_includedir}/%{tarname}
%{_includedir}/*.h
%{_libdir}/*.*a
%{_libdir}/*.so
%if %{with_ib}
%files ib
%defattr(-,root,root)
%{moddir}/transport/ib*
%endif
%if %{with_fuse}
%files mount
%defattr(-,root,root)
/sbin/*
%{moddir}/xlator/mount
%endif
%if %{with_bdb}
%files bdb
%defattr(-,root,root)
%{moddir}/xlator/storage/bdb*
%endif
%changelog
* Sun Aug 10 2008 pzb@novell.com
- Update to qa33
- Add a macro to spec to make updating easier
- Disable bdb on SLE10 for now
* Wed Aug 6 2008 pzb@novell.com
- Add BDB support
- Add debug package
* Tue Aug 5 2008 pzb@novell.com
- Initial package