2009-02-18 17:36:07 +05:30
# if you make changes, the it is advised to increment this number, and provide
# a descriptive suffix to identify who owns or what the change represents
# e.g. release_version 2.MSW
2009-07-01 04:13:09 +00:00
%define release 1%{?dist}
2009-02-18 17:36:07 +05:30
2010-09-22 04:23:45 +00:00
# if you wish to compile an rpm without rdma support, compile like this...
# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without rdma
%{?_without_rdma:%define _without_rdma --disable-ibverbs}
2010-08-16 07:26:33 +00:00
# if you wish to compile an rpm without epoll...
2009-07-01 04:13:09 +00:00
# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without epoll
%{?_without_epoll:%define _without_epoll --disable-epoll}
2009-02-18 17:36:07 +05:30
2009-12-07 09:43:23 +00:00
# if you wish to compile an rpm with fusermount...
# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --with fusermount
%{?_with_fusermount:%define _with_fusermount --enable-fusermount}
2009-11-04 01:23:18 +00:00
2009-04-16 06:15:48 -07:00
Summary : Cluster File System
2009-02-18 17:36:07 +05:30
Name : @PACKAGE_NAME@
Version : @PACKAGE_VERSION@
2009-04-16 06:15:48 -07:00
Release : %{release}
2010-10-04 04:50:53 +00:00
License : AGPLv3+
2009-02-18 17:36:07 +05:30
Group : System Environment/Base
2009-10-05 23:59:13 +00:00
Vendor : Gluster Inc
2009-02-18 17:36:07 +05:30
Packager : @PACKAGE_BUGREPORT@
2009-04-16 06:15:48 -07:00
URL : http://www.gluster.org/docs/index.php/GlusterFS
2010-10-04 04:50:53 +00:00
Source0 : ftp://ftp.gluster.com/pub/gluster/glusterfs/@PACKAGE_VERSION@/@PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz
2009-04-16 06:15:48 -07:00
BuildRoot : %{_tmppath} /%{name} -%{version} -%{release} -root
Requires(post) : /sbin/chkconfig
Requires(preun) : /sbin/service, /sbin/chkconfig
Requires(postun) : /sbin/service
BuildRequires : bison flex
BuildRequires : gcc make
2009-02-18 17:36:07 +05:30
%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.
2010-08-17 10:37:21 +00:00
%package core
2009-04-16 06:15:48 -07:00
Summary : GlusterFS common files for both the client and the server
Group : System Environment/Libraries
2010-10-05 03:49:39 +00:00
Obsoletes : glusterfs-libs <= 2.0.0 glusterfs-common < 3.1.0 glusterfs-server < 3.1.0
2009-07-01 04:13:09 +00:00
Provides : glusterfs-libs = %{version} -%{release}
2009-04-16 06:15:48 -07:00
2010-08-17 10:37:21 +00:00
%description core
2009-04-16 06:15:48 -07:00
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.
2010-08-16 07:26:33 +00:00
This package includes the glusterfs binary, the glusterd daemon and the gluster
command line, libglusterfs and glusterfs translator modules common to both
GlusterFS server and client framework.
2009-04-16 06:15:48 -07:00
2010-09-22 04:23:45 +00:00
%if 0%{!?_without_rdma:1}
2010-09-09 02:23:17 +00:00
%package rdma
Summary : GlusterFS rdma
2009-04-16 06:15:48 -07:00
Group : Applications/File
2010-11-09 06:51:31 +00:00
Requires : glusterfs-core = %{version} -%{release}
2010-10-04 04:50:53 +00:00
BuildRequires : libibverbs-devel
2009-04-16 06:15:48 -07:00
2010-09-09 02:23:17 +00:00
%description rdma
2009-04-16 06:15:48 -07:00
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.
2010-08-16 07:26:33 +00:00
This package provides support to ib-verbs library.
2010-09-22 04:23:45 +00:00
%endif
2009-04-16 06:15:48 -07:00
2010-08-16 07:26:33 +00:00
%package fuse
Summary : GlusterFS Fuse
Group : Applications/File
2010-11-09 06:51:31 +00:00
Requires : glusterfs-core = %{version} -%{release}
2010-10-05 03:49:39 +00:00
Obsoletes : glusterfs-client < 3.1.0
2009-02-18 17:36:07 +05:30
2010-08-16 07:26:33 +00:00
%description fuse
2009-02-18 17:36:07 +05:30
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.
2010-08-16 07:26:33 +00:00
This package provides support to FUSE based clients.
2009-02-18 17:36:07 +05:30
%prep
2009-04-16 06:15:48 -07:00
%setup -q -n %{name} -%{version}
2009-02-18 17:36:07 +05:30
%build
2010-09-22 04:23:45 +00:00
%configure %{?_without_rdma} %{?_without_epoll} %{?_with_fusermount}
2009-04-16 06:15:48 -07:00
# Remove rpath
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
%{__make} %{?_smp_mflags}
2009-02-18 17:36:07 +05:30
%install
2009-04-16 06:15:48 -07:00
%{__rm} -rf %{buildroot}
%{__make} install DESTDIR=%{buildroot}
%{__mkdir_p} %{buildroot} %{_includedir} /glusterfs
%{__mkdir_p} %{buildroot} /var/log/glusterfs
%{__install} -p -m 0644 libglusterfs/src/*.h \
%{buildroot} %{_includedir} /glusterfs/
# Remove unwanted files from all the shared libraries
2009-12-02 17:32:05 +00:00
find %{buildroot} %{_libdir} -name '*.la' | xargs rm -f
find %{buildroot} %{_libdir} -name '*.a' | xargs rm -f
2009-02-18 17:36:07 +05:30
2009-04-16 06:15:48 -07:00
%clean
%{__rm} -rf %{buildroot}
2009-02-18 17:36:07 +05:30
2010-08-17 10:37:21 +00:00
%post core
2009-04-16 06:15:48 -07:00
/sbin/ldconfig -n %{_libdir}
2010-09-13 03:40:16 +00:00
/sbin/chkconfig --add glusterd
2010-11-29 09:01:41 -08:00
#killall glusterfsd,glusterfs,glusterd
/usr/bin/killall glusterfsd 2>/dev/null || true;
/usr/bin/killall glusterfs 2>/dev/null || true;
/usr/bin/killall glusterd 2>/dev/null || true;
#start glusterd
/usr/sbin/glusterd
2009-04-16 06:15:48 -07:00
2010-08-17 10:37:21 +00:00
%postun core
2009-04-16 06:15:48 -07:00
/sbin/ldconfig -n %{_libdir}
2010-08-17 10:37:21 +00:00
%preun core
2009-04-16 06:15:48 -07:00
if [ $1 -eq 0 ]; then
2010-09-13 03:40:16 +00:00
/sbin/chkconfig --del glusterd
2009-04-16 06:15:48 -07:00
fi
2010-08-17 10:37:21 +00:00
%files core
2009-04-16 06:15:48 -07:00
%defattr (-,root,root)
2010-10-11 09:13:27 +00:00
%doc AUTHORS ChangeLog COPYING INSTALL NEWS README THANKS
2009-02-18 17:36:07 +05:30
%doc /usr/share/doc/glusterfs
2009-12-07 09:43:23 +00:00
%if 0%{?_with_fusermount:1}
%{_bindir} /fusermount-glusterfs
2009-11-04 01:23:18 +00:00
%endif
2009-11-25 14:40:55 +00:00
%{_datadir} /glusterfs
2009-11-04 01:23:18 +00:00
%{_bindir} /glusterfs-volgen
2009-04-16 06:15:48 -07:00
%{_libdir} /glusterfs
%{_libdir} /*.so.*
%{_sbindir} /glusterfs*
2010-08-06 05:38:41 +00:00
%{_bindir} /glusterfs-defrag
%{_sbindir} /gluster
%{_sbindir} /glusterd
2009-11-04 01:23:18 +00:00
%{_mandir} /man8/*glusterfs.8*
2010-09-06 01:58:48 +00:00
%{_mandir} /man8/*gluster.8*
2010-09-09 02:23:37 +00:00
%{_mandir} /man8/*glusterd.8*
%{_mandir} /man8/*glusterfs-volgen.8*
2009-04-16 06:15:48 -07:00
%dir /var/log/glusterfs
2010-09-22 04:23:45 +00:00
%if 0%{!?_without_rdma:1}
2010-09-09 02:23:17 +00:00
%exclude %{_libdir} /glusterfs/%{version} /rpc-transport/rdma*
2010-09-22 04:23:45 +00:00
%endif
2010-08-16 07:26:33 +00:00
%exclude %{_libdir} /glusterfs/%{version} /xlator/mount/fuse*
2009-04-16 06:15:48 -07:00
%config %{_sysconfdir} /glusterfs
2010-09-13 03:40:16 +00:00
%{_sysconfdir} /init.d/glusterd
2009-04-16 06:15:48 -07:00
%{_includedir} /glusterfs
%exclude %{_includedir} /glusterfs/y.tab.h
%{_libdir} /*.so
2010-08-16 07:26:33 +00:00
2010-09-22 04:23:45 +00:00
%if 0%{!?_without_rdma:1}
2010-09-09 02:23:17 +00:00
%files rdma
2010-08-16 07:26:33 +00:00
%defattr (-,root,root)
2010-09-09 02:23:17 +00:00
%{_libdir} /glusterfs/%{version} /rpc-transport/rdma*
2010-09-22 04:23:45 +00:00
%endif
2010-08-16 07:26:33 +00:00
%files fuse
%defattr (-,root,root)
%{_libdir} /glusterfs/%{version} /xlator/mount/fuse*
2010-10-08 17:43:36 +00:00
/sbin/mount.glusterfs
2009-02-18 17:36:07 +05:30
2009-04-16 06:15:48 -07:00
%changelog
2009-07-01 04:13:09 +00:00
* Wed Jul 01 2009 Harshavardhana <harsha@gluster.com> - 2.1
- Removed mod_glusterfs.so and added new --without epoll build
option.
2009-04-16 06:15:48 -07:00
* Thu Apr 16 2009 Harshavardhana <harsha@gluster.com> - 2.0
- Galore of updates including new packages added common,
client,server splitting the original package. rpmbuild
fully restructured to adhere to Fedora rpm standards.
Older changelog removed as there were warnings when
tried with 'rpmlint' .