Sophie

Sophie

distrib > Mageia > 4 > x86_64 > by-pkgid > 56763950da10a62450ea9d0eb9c60128 > files > 5

glusterfs-3.4.1-1.3.mga4.src.rpm

%define	major 0
%define libname	%mklibname glusterfs %{major}
%define develname %mklibname -d glusterfs

# (cg) Temporary hack to make it build
%define _disable_ld_no_undefined 1

Summary:	GlusterFS network/cluster filesystem
Name:		glusterfs
%define subrel 3
Version:	3.4.1
Release:	%mkrel 1
License:	GPLv3+
Group:		Networking/Other
URL: 		http://www.gluster.org/docs/index.php/GlusterFS
Source0:	http://download.gluster.org/pub/gluster/glusterfs/3.4/%{version}/%{name}-%{version}.tar.gz
Source1:	glusterfsd.service
Source2:	glusterfsd.sysconfig
Source3:	glusterfsd.logrotate
Source4:	glusterfs.logrotate
Source5:	%{name}-tmpfiles.conf
##Patch from OpenSuse to fix CVE-2014-3619, bug #15473
Patch0:		multifrag.diff
Patch1:		CVE.patch
BuildRequires:	autoconf
BuildRequires:	bison
BuildRequires:	flex
BuildRequires:	gcc
BuildRequires:	make
BuildRequires:	fuse-devel >= 2.6.0
BuildRequires:	libibverbs-devel
BuildRequires:	pkgconfig(libxml-2.0) >= 2.6.19
BuildRequires:	readline-devel
BuildRequires:	libtool
BuildRequires:	openssl-devel

%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.

Please visit http://www.gluster.org/docs/index.php/GlusterFS for more info.

%package -n	%{libname}
Summary:	GlusterFS network/cluster filesystem library
Group:		System/Libraries
Provides: 	glusterfs-libs, libglusterfs

%description -n	%{libname}
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.

Please visit http://www.gluster.org/docs/index.php/GlusterFS for more info.

This package includes the libglusterfs and glusterfs translator modules common
to both GlusterFS server and client framework.

%package -n	%{develname}
Summary:	Static library and header files for the GlusterFS library
Group:		Development/C
Provides:	%{name}-devel = %{version}
Requires:	%{libname} = %{version}

%description -n	%{develname}
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.

Please visit http://www.gluster.org/docs/index.php/GlusterFS for more info.

This package contains the static GlusterFS library and its header files.

%package	common
Summary:	The common files needed by GlusterFS for client and server
Group:		Networking/Other
Requires:	fuse >= 2.6.0
Requires:	libglusterfs

%description	common
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.

Please visit http://www.gluster.org/docs/index.php/GlusterFS for more info.

This package includes the glusterfs binaries and documentation. These are needed by both glusterfs
client and server.

%package	client
Summary:	GlusterFS client
Group:		Networking/Other
Requires:	%{name}-common = %{version}
Requires(post): rpm-helper

%description	client
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 is the client needed to mount a GlusterFS fs.

%package	server
Summary:	GlusterFS server
Group:		Networking/Other
Requires:	%{name}-common = %{version}
Requires:	%{name}-client = %{version}
Requires(post): systemd >= %{systemd_required_version}
Requires(post): rpm-helper
Requires(preun): rpm-helper
Requires(post): sed

%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 is the server.

%package geo-replication
Summary:	GlusterFS Geo-replication
Group:		Networking/Other
Requires:	%{name}-common = %{version}
Requires:	%{name}-client = %{version}

%description geo-replication
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 support to geo-replication.

%prep
%setup -q %{name}-%{version}
%patch0 -p1
%patch1 -p1 -b .CVE 
cp %{SOURCE1} glusterfsd.init
cp %{SOURCE2} glusterfsd.sysconfig
cp %{SOURCE3} glusterfsd.logrotate
cp %{SOURCE4} glusterfs.logrotate

%build
%configure2_5x --disable-static
# 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

%install
%makeinstall_std
# (cg) No need to put the mount command in /
mv %{buildroot}/sbin/* %{buildroot}%{_sbindir}
%{__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
find %{buildroot} -name '*.la' | xargs rm -f

%{__install} -D -p -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/%{name}d.service
install -d %{buildroot}%{_sysconfdir}/sysconfig
install -d %{buildroot}%{_sysconfdir}/logrotate.d

### we use journal, let's remove outdated rsyslog files
rm -f %{buildroot}extras/gluster-rsyslog-7.2.conf 
rm -f %{buildroot}extras/gluster-rsyslog-7.2.conf 


install -m0644 glusterfsd.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/glusterfsd
install -m0644 glusterfsd.logrotate %{buildroot}%{_sysconfdir}/logrotate.d/glusterfsd
install -m0644 glusterfs.logrotate %{buildroot}%{_sysconfdir}/logrotate.d/glusterfs
install -D -p -m 0644 %{SOURCE5} %{buildroot}%{_tmpfilesdir}/%{name}.conf

touch %{buildroot}/var/log/glusterfs/glusterfs.log
touch %{buildroot}/var/log/glusterfs/glusterfsd.log

%post client
%create_ghostfile /var/log/glusterfs/glusterfs.log root root 0644

%post server
%create_ghostfile /var/log/glusterfs/glusterfsd.log root root 0644
%_tmpfilescreate %{name}
%_post_service glusterfsd
%_post_service glusterd
if [ -e /etc/glusterfs/glusterfs-server.vol ]; then 
echo "Updating /etc/sysconfig/glusterfsd to point to old /etc/glusterfs/glusterfs-server.vol file"
sed -i 's|GLUSTERFSD_CONFIG_FILE="/etc/glusterfs/glusterfsd.vol"|GLUSTERFSD_CONFIG_FILE="/etc/glusterfs/glusterfs-server.vol"|g' /etc/sysconfig/glusterfsd
#   mv -n /etc/glusterfs/glusterfs-server.vol /etc/glusterfs/glusterfsd.vol
fi

%preun server
%_preun_service glusterfsd
%_preun_service glusterd

%files -n %{libname}
# %doc README AUTHORS NEWS
%{_libdir}/*.so.%{major}*
%{_libdir}/glusterfs

%files -n %{develname}
%{_includedir}/glusterfs
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc

%files common
# %doc AUTHORS ChangeLog COPYING INSTALL NEWS README
# %doc installed_docs/*
%docdir %{_docdir}/glusterfs
%doc %{_docdir}/glusterfs/*
%{_sysconfdir}/glusterfs/*
%{_mandir}/man8/gluster*
%dir /var/log/glusterfs
%{_sbindir}/glusterfs
%{_sbindir}/glusterfsd
%{_sbindir}/gluster
%{_sbindir}/glusterd

%files client
%config(noreplace) %attr(0644,root,root) %{_sysconfdir}/logrotate.d/glusterfs
%{_sbindir}/mount.glusterfs
%{_bindir}/fusermount-glusterfs
%attr(0644,root,root) %ghost %config(noreplace) /var/log/glusterfs/glusterfs.log
%{_mandir}/man8/mount.glusterfs.8*

%files server
%config(noreplace) %attr(0644,root,root) %{_sysconfdir}/sysconfig/glusterfsd
%config(noreplace) %attr(0644,root,root) %{_sysconfdir}/logrotate.d/glusterfsd
%attr(0644,root,root) %ghost %config(noreplace) /var/log/glusterfs/glusterfsd.log
%{_unitdir}/%{name}d.service
%attr(0644,-,-)%{_unitdir}/glusterd.service
%{_prefix}/lib/ocf/resource.d/glusterfs
%{_tmpfilesdir}/%{name}.conf

%files geo-replication
%{_libexecdir}/glusterfs/gsyncd
%{_libexecdir}/glusterfs/python/syncdaemon/*


%changelog
* Thu Aug 20 2015 spuhler <spuhler> 3.4.1-1.3.mga4
+ Revision: 866900
- added CVE patch
- fixed permission glusterd.service ( removed the execution bit)
- added glusterd.service
  * it is needed in addidtion to glusterfsd.service
- bumped subrel to 2
- added multifrag patch from OpenSuSE
  * fixes bug #15473 CVE-2014-3619
- cleaned up glusterfsd.service vs. glusterfsd.init file
  * fixes bug #14049

* Sat Nov 30 2013 thatsamguy <thatsamguy> 3.4.1-1.mga4
+ Revision: 554136
- update version to 3.4.1

* Sat Oct 19 2013 umeabot <umeabot> 3.4.0-2.mga4
+ Revision: 533551
- Mageia 4 Mass Rebuild

* Sun Sep 01 2013 fwang <fwang> 3.4.0-1.mga4
+ Revision: 473850
- update file list
- drop unneeded dir
- new version 3.4.0

* Sun Mar 24 2013 colin <colin> 3.3.1-2.mga3
+ Revision: 404859
- Add systemd requires and general post/pre fixes (mga#9302)

* Thu Jan 17 2013 colin <colin> 3.3.1-1.mga3
+ Revision: 388939
- Add openssl-devel BR
- New version: 3.3.1
- Rediff workingdir patch
- Drop patches no longer apply (shouldn't be needed now)
- Add geo-replication sub-package
- Don't ship mount command in / (use /usr)
- Fix file lists (man page dropped)
- Switch to tmpfiles for /run dir

  + umeabot <umeabot>
    - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild

  + fwang <fwang>
    - br readline
    - br xml
    - new version 3.2.6

* Mon Aug 01 2011 fwang <fwang> 3.2.2-1.mga2
+ Revision: 131097
- new version 3.2.2

* Sun Apr 10 2011 ennael <ennael> 3.0.0-2.mga1
+ Revision: 82867
- clean spec file
- imported package glusterfs


* Mon Dec 06 2010 Funda Wang <fwang@mandriva.org> 3.0.0-2mdv2011.0
+ Revision: 611833
- update file list

  + Oden Eriksson <oeriksson@mandriva.com>
    - rebuild

* Sat Jan 30 2010 Funda Wang <fwang@mandriva.org> 3.0.0-1mdv2010.1
+ Revision: 498597
- db storage not there any more
- New version 3.0.0

* Sun Sep 20 2009 Michael Scherer <misc@mandriva.org> 2.0.6-1mdv2010.0
+ Revision: 444885
- try to compile without -j, as this may help for weird errors

  + Funda Wang <fwang@mandriva.org>
    - use configure2_5x

  + Glen Ogilvie <nelg@mandriva.org>
    - This is a large upgrade, from 1.3.12 to 2.0.6. This includes updated configuration samples and init script.
      New features:
      * Distribute (DHT) translator
      * Replicate atomic write support
      * High Availability (HA) translator
      * Non-blocking I/O
      * Binary Protocol
      * NUFA translator
      * APIs via 'libglusterfsclient' library
      * Apache/Lighttpd embeddable 'mod_glusterfs'
      * Booster
      * Multiple OS support
        * OS X - Server and Client works.
        * Solaris 10 and above - Server part works file, Client part will be ported in future when FUSE is provided by Solaris.
        * FreeBSD 7.0 and above - Server and Client works.
      * Log message improvements
      * Stripe over tmpfs
      * Filter translator
      * Quota translator
      Full list of upgrade features at:
      http://www.gluster.com/community/documentation/index.php/Whats_New_v2.0

* Fri Sep 04 2009 Thierry Vignaud <tv@mandriva.org> 1.3.12-4mdv2010.0
+ Revision: 429217
- rebuild

* Tue Sep 16 2008 Oden Eriksson <oeriksson@mandriva.com> 1.3.12-3mdv2009.0
+ Revision: 285247
- fix deps
- rework the initscript and config

* Tue Sep 16 2008 Oden Eriksson <oeriksson@mandriva.com> 1.3.12-2mdv2009.0
+ Revision: 285163
- fix typo
- added fixes requested by Jos?\195?\169 Antonio Becerra Permuy

* Fri Sep 12 2008 Oden Eriksson <oeriksson@mandriva.com> 1.3.12-1mdv2009.0
+ Revision: 284140
- 1.3.12

  + Thierry Vignaud <tv@mandriva.org>
    - rebuild
    - kill re-definition of %%buildroot on Pixel's request

  + Olivier Blin <oblin@mandriva.com>
    - restore BuildRoot

* Mon Apr 23 2007 Nicolas Vigier <nvigier@mandriva.com> 1.2.3-1mdv2008.0
+ Revision: 17508
- Import glusterfs




* Mon Apr 23 2007 Nicolas Vigier <nvigier@mandriva.com>
- first version