LogoopenSUSE Build Service > Projects
Sign Up | Log In

View File glusterfs14.spec of Package glusterfs14 (Project home:pzb)

#
# 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/examples

%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