diff options
author | Pavan Sondur <pavan@gluster.com> | 2010-08-16 07:26:33 +0000 |
---|---|---|
committer | Anand V. Avati <avati@dev.gluster.com> | 2010-08-17 02:23:42 -0700 |
commit | 3af126d594c8e0710ba6a3fb4024224eb7f8e4b4 (patch) | |
tree | 9b6987056baca77c14bfbea2d59c40b260f33a8f | |
parent | 0ec245abd60928994e2afbeac73cb53c5af7a4cf (diff) |
rpm spec: Use only 3 rpms for GlusterFS
Generates the following 3 rpms:
1. glusterfs-fuse
2. glusterfs-main
3. glusterfs-ibverbs
Signed-off-by: Pavan Vilas Sondur <pavan@gluster.com>
Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
BUG: 1275 (Fix rpm glusterfs spec file for 3.1)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1275
-rw-r--r-- | glusterfs.spec.in | 100 | ||||
-rw-r--r-- | xlators/nfs/server/src/Makefile.am | 2 |
2 files changed, 34 insertions, 68 deletions
diff --git a/glusterfs.spec.in b/glusterfs.spec.in index 1649894a0e3..c43093de193 100644 --- a/glusterfs.spec.in +++ b/glusterfs.spec.in @@ -3,15 +3,7 @@ # e.g. release_version 2.MSW %define release 1%{?dist} -# if you wish to compile an rpm without ibverbs support, compile like this... -# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without ibverbs -%{?_without_ibverbs:%define _without_ibverbs --disable-ibverbs} - -# if you wish to compile an rpm without libglusterfsclient... -# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without libglfsclient -%{?_without_libglfsclient:%define _without_libglfsclient --disable-libglusterclient} - -# if you wish to compile an rpm without libglusterfsclient... +# if you wish to compile an rpm without epoll... # rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without epoll %{?_without_epoll:%define _without_epoll --disable-epoll} @@ -34,8 +26,6 @@ Requires(post): /sbin/chkconfig Requires(preun): /sbin/service, /sbin/chkconfig Requires(postun): /sbin/service -%{!?_without_ibverbs:BuildRequires: libibverbs-devel} - BuildRequires: bison flex BuildRequires: gcc make @@ -48,13 +38,13 @@ 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 common +%package main Summary: GlusterFS common files for both the client and the server Group: System Environment/Libraries Obsoletes: glusterfs-libs <= 2.0.0 Provides: glusterfs-libs = %{version}-%{release} -%description common +%description main 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 @@ -63,15 +53,16 @@ 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 includes the glusterfs binary, libglusterfs and glusterfs -translator modules common to both GlusterFS server and client framework. +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. -%package client -Summary: GlusterFS Client +%package ibverbs +Summary: GlusterFS ibverbs Group: Applications/File -Requires: %{name}-common = %{version}-%{release} +Requires: libibverbs-devel -%description client +%description ibverbs 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 @@ -80,31 +71,13 @@ 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 FUSE based GlusterFS client. - +This package provides support to ib-verbs library. -%package server -Summary: GlusterFS Server -Group: System Environment/Daemons -Requires: %{name}-common = %{version}-%{release} - -%description server -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 glusterfs server daemon. - -%package devel -Summary: GlusterFS Development Libraries -Group: Development/Libraries -Requires: %{name}-common = %{version}-%{release} +%package fuse +Summary: GlusterFS Fuse +Group: Applications/File -%description devel +%description fuse 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 @@ -113,7 +86,7 @@ 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. +This package provides support to FUSE based clients. %prep @@ -121,7 +94,7 @@ This package provides the development libraries. %build -%configure %{?_without_ibverbs} %{?_without_libglfsclient} %{?_without_client} %{?_without_epoll} %{?_with_fusermount} +%configure %{?_without_epoll} %{?_with_fusermount} # Remove rpath sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool @@ -144,27 +117,22 @@ find %{buildroot}%{_libdir} -name '*.a' | xargs rm -f %clean %{__rm} -rf %{buildroot} -%post common +%post main /sbin/ldconfig -n %{_libdir} +/sbin/chkconfig --add glusterfsd -%postun common +%postun main /sbin/ldconfig -n %{_libdir} -%post server -/sbin/chkconfig --add glusterfsd - -%preun server +%preun main if [ $1 -eq 0 ]; then /sbin/chkconfig --del glusterfsd fi -%files common +%files main %defattr(-,root,root) %doc AUTHORS ChangeLog COPYING INSTALL NEWS README %doc /usr/share/doc/glusterfs -%if 0%{!?_without_client:1} -%exclude %{_libdir}/glusterfs/%{version}/xlator/mount -%endif %if 0%{?_with_fusermount:1} %{_bindir}/fusermount-glusterfs %endif @@ -178,24 +146,22 @@ fi %{_sbindir}/glusterd %{_mandir}/man8/*glusterfs.8* %dir /var/log/glusterfs - -%if 0%{!?_without_client:1} -%files client -%defattr(-,root,root) -/sbin/mount.glusterfs -%{_libdir}/glusterfs/%{version}/xlator/mount -%endif - -%files server -%defattr(-,root,root) +%exclude %{_libdir}/glusterfs/%{version}/transport/ib-verbs* +%exclude %{_libdir}/glusterfs/%{version}/xlator/mount/fuse* %config %{_sysconfdir}/glusterfs %{_sysconfdir}/init.d/glusterfsd - -%files devel -%defattr(-,root,root,-) %{_includedir}/glusterfs %exclude %{_includedir}/glusterfs/y.tab.h %{_libdir}/*.so +/sbin/mount.glusterfs + +%files ibverbs +%defattr(-,root,root) +%{_libdir}/glusterfs/%{version}/transport/ib-verbs* + +%files fuse +%defattr(-,root,root) +%{_libdir}/glusterfs/%{version}/xlator/mount/fuse* %changelog * Wed Jul 01 2009 Harshavardhana <harsha@gluster.com> - 2.1 diff --git a/xlators/nfs/server/src/Makefile.am b/xlators/nfs/server/src/Makefile.am index e2e41de4a1b..f8968916c39 100644 --- a/xlators/nfs/server/src/Makefile.am +++ b/xlators/nfs/server/src/Makefile.am @@ -1,6 +1,6 @@ xlator_LTLIBRARIES = server.la xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/nfs -nfsrpclibdir = $(top_srcdir)/xlators/nfs/lib/src/ +nfsrpclibdir = $(top_srcdir)/xlators/nfs/lib/src server_la_LDFLAGS = -module -avoidversion server_la_SOURCES = nfs.c nfs-common.c nfs-fops.c nfs-inodes.c nfs-generics.c mount3.c nfs3-fh.c nfs3.c nfs3-helpers.c $(nfsrpclibdir)/auth-null.c $(nfsrpclibdir)/auth-unix.c $(nfsrpclibdir)/msg-nfs3.c $(nfsrpclibdir)/rpc-socket.c $(nfsrpclibdir)/rpcsvc-auth.c $(nfsrpclibdir)/rpcsvc.c $(nfsrpclibdir)/xdr-nfs3.c $(nfsrpclibdir)/xdr-rpc.c server_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la |