diff --git a/glusterfs-3.3.2.libglusterfs.Makefile.patch b/glusterfs-3.3.2.libglusterfs.Makefile.patch new file mode 100644 index 0000000..f539b91 --- /dev/null +++ b/glusterfs-3.3.2.libglusterfs.Makefile.patch @@ -0,0 +1,24 @@ +--- libglusterfs/src/Makefile.am.orig 2013-07-12 13:50:20.000000000 -0400 ++++ libglusterfs/src/Makefile.am 2013-07-12 20:10:12.156000000 -0400 +@@ -48,7 +48,8 @@ + $(LEX) -t $(srcdir)/graph.l > $@ + + y.tab.h: graph.y +- $(YACC) -d $(srcdir)/graph.y ++ $(YACC) -d -b foo $(srcdir)/graph.y ++ mv foo.tab.h y.tab.h && mv foo.tab.c y.tab.c + + CLEANFILES = graph.lex.c y.tab.c y.tab.h + CONFIG_CLEAN_FILES = $(CONTRIB_BUILDDIR)/uuid/uuid_types.h +--- libglusterfs/src/Makefile.in.orig 2013-07-12 20:10:12.157000000 -0400 ++++ libglusterfs/src/Makefile.in 2013-07-12 20:12:43.022000000 -0400 +@@ -1101,7 +1101,8 @@ + $(LEX) -t $(srcdir)/graph.l > $@ + + y.tab.h: graph.y +- $(YACC) -d $(srcdir)/graph.y ++ $(YACC) -d -b foo $(srcdir)/graph.y ++ mv foo.tab.h y.tab.h && mv foo.tab.c y.tab.c + + # Tell versions [3.59,3.63) of GNU make to not export all variables. + # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/glusterfs.spec b/glusterfs.spec index c464fbe..dfb2ab8 100644 --- a/glusterfs.spec +++ b/glusterfs.spec @@ -4,7 +4,7 @@ %global _for_fedora_koji_builds 1 # uncomment and add '%' to use the prereltag for pre-releases -# global prereltag beta4 +# global prereltag alpha # if you wish to compile an rpm without rdma support, compile like this... # rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without rdma @@ -19,33 +19,23 @@ # rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without epoll %{?_without_epoll:%global _without_epoll --disable-epoll} -# if you wish to compile an rpm without fusermount... -# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without fusermount -%{?_without_fusermount:%global _without_fusermount --disable-fusermount} +# if you wish to compile an rpm with fusermount... +# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --with fusermount +%{?_with_fusermount:%global _with_fusermount --enable-fusermount} # if you wish to compile an rpm without geo-replication support, compile like this... # rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without georeplication %{?_without_georeplication:%global _without_georeplication --disable-geo-replication} -# if you wish to compile an rpm without the OCF resource agents... -# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without ocf -%{?_without_ocf:%global _without_ocf --without-ocf} - -# if you wish to build rpms without UFO, compile like this -# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@tar.gz --without ufo -%{?_without_ufo:%global _without_ufo true} - %if ( 0%{?fedora} ) || ( 0%{?rhel} && 0%{?rhel} >= 6 ) -%global SWIFTVER 1.8.0 +%global SWIFTVER 1.7.4 %if ( 0%{_for_fedora_koji_builds} ) -%global UFOVER 1.2 +%global UFOVER 1.1 %else %global UFOVER @PACKAGE_VERSION@ %endif -%if ! 0%{?_without_ufo:1} %global _with_ufo true %endif -%endif %if ( 0%{?fedora} && 0%{?fedora} > 16 ) || ( 0%{?rhel} && 0%{?rhel} > 6 ) %global _with_systemd true @@ -54,21 +44,21 @@ Summary: Cluster File System %if ( 0%{_for_fedora_koji_builds} ) Name: glusterfs -Version: 3.4.0 +Version: 3.3.2 Release: 1%{?prereltag:.%{prereltag}}%{?dist} %else Name: @PACKAGE_NAME@ Version: @PACKAGE_VERSION@ Release: 1%{?dist} %endif -License: GPLv2 or LGPLv3+ +License: GPLv3+ and (GPLv2 or LGPLv3+) Group: System Environment/Base %if ( 0%{_for_fedora_koji_builds} ) Vendor: Red Hat %endif URL: http://www.gluster.org//docs/index.php/GlusterFS %if ( 0%{_for_fedora_koji_builds} ) -Source0: http://download.gluster.org/pub/gluster/glusterfs/3.4/%{version}%{?prereltag}/glusterfs-%{version}%{?prereltag}.tar.gz +Source0: http://download.gluster.org/pub/gluster/glusterfs/3.3/%{version}/glusterfs-%{version}%{?prereltag}.tar.gz %else Source0: @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz %endif @@ -77,9 +67,8 @@ Source2: glusterfsd.sysconfig Source3: glusterfs-fuse.logrotate Source4: glusterd.logrotate Source5: glusterfsd.logrotate -Source6: rhel5-load-fuse-modules Patch0: %{name}-3.2.5.configure.ac.patch -Patch1: %{name}-3.3.0.libglusterfs.Makefile.patch +Patch1: %{name}-3.3.2.libglusterfs.Makefile.patch Patch2: %{name}-3.3.1.rpc.rpcxprt.rdma.name.c.patch BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) @@ -89,70 +78,6 @@ Source11: glusterfsd.service Source12: glusterd.init Source13: glusterfsd.init -%if ( ! ( 0%{?rhel} && 0%{?rhel} < 6 ) ) -# we don't build swift/ufo on rhel5 -# not including the sources is ugly, but we state our intentions clearly - -%if ( 0%{_for_fedora_koji_builds} ) -Source15: http://download.gluster.org/pub/gluster/glusterfs/3.4/%{version}%{?prereltag}/gluster-swift-ufo-%{UFOVER}%{?prereltag}.tar.gz -%else -Source15: gluster-swift-ufo-@PACKAGE_VERSION@.tar.gz -%endif -Patch15: %{name}-3.3.1.ufo.gluster.swift.common.DiskFile-1.7.4.patch - -# http://launchpad.net/swift/grizzly/%{SWIFTVER}/+download/swift-%{SWIFTVER}.tar.gz -Source20: swift-%{SWIFTVER}.tar.gz - -Source30: gluster-swift-account.service -Source31: gluster-swift-container.service -Source32: gluster-swift-object.service -Source33: gluster-swift-proxy.service -Source34: gluster-swift-account@.service -Source35: gluster-swift-container@.service -Source36: gluster-swift-object@.service -Source37: gluster-swift.tmpfs -Source40: gluster-swift-account.init -Source41: gluster-swift-container.init -Source42: gluster-swift-object.init -Source43: gluster-swift-proxy.init -Source44: gluster-swift-functions -# these first appeared in openstack-swift-1.7.4-2.fc19 -Source50: gluster-swift-account-replicator.service -Source51: gluster-swift-account-replicator@.service -Source52: gluster-swift-account-auditor.service -Source53: gluster-swift-account-auditor@.service -Source54: gluster-swift-account-reaper.service -Source55: gluster-swift-account-reaper@.service -Source56: gluster-swift-container-replicator.service -Source57: gluster-swift-container-replicator@.service -Source58: gluster-swift-container-auditor.service -Source59: gluster-swift-container-auditor@.service -Source60: gluster-swift-container-updater.service -Source61: gluster-swift-container-updater@.service -Source62: gluster-swift-object-replicator.service -Source63: gluster-swift-object-replicator@.service -Source64: gluster-swift-object-auditor.service -Source65: gluster-swift-object-auditor@.service -Source66: gluster-swift-object-updater.service -Source67: gluster-swift-object-updater@.service -Source68: gluster-swift-object-expirer.service -Source69: gluster-swift-object-expirer@.service -# these first appeared in openstack-swift-1.7.4-1.fc18 and -1.7.4-2.el6 -Source70: account-server.conf -Source71: container-server.conf -Source72: object-server.conf -Source73: proxy-server.conf -Source74: swift.conf -Source75: object-expirer.conf - -%endif - -Patch20: 0001-Use-updated-parallel-install-versions-of-epel-packag.patch -Patch21: 0002-Add-fixes-for-building-the-doc-package.patch -Patch22: glusterfs-3.3.1.swift.constraints.backport-1.7.4.patch -Patch23: glusterfs-3.4.0.swift.egginfo-grizzly.patch -Patch24: 0002-Add-fixes-for-building-the-doc-package.patch.180 - %if ( 0%{?_with_systemd:1} ) %global glusterd_service %{S:%{SOURCE10}} %global glusterfsd_service %{S:%{SOURCE11}} @@ -168,10 +93,10 @@ Requires(postun): systemd-units # can't seem to make a generic macro that works %define _init_glusterd %{_unitdir}/glusterd.service %define _init_glusterfsd %{_unitdir}/glusterfsd.service -%define _init_gluster_swift_account %{_unitdir}/gluster-swift-account.service +%define _init_gluster_swift_account %{_unitdir}/gluster-swift-account.service %define _init_gluster_swift_object %{_unitdir}/gluster-swift-object.service -%define _init_gluster_swift_container %{_unitdir}/gluster-swift-container.service -%define _init_gluster_swift_proxy %{_unitdir}/gluster-swift-proxy.service +%define _init_gluster_swift_container %{_unitdir}/gluster-swift-container.service +%define _init_gluster_swift_proxy %{_unitdir}/gluster-swift-proxy.service %else %if ( 0%{_for_fedora_koji_builds} ) %global glusterd_service %{S:%{SOURCE12}} @@ -189,10 +114,10 @@ Requires(postun): /sbin/service # can't seem to make a generic macro that works %define _init_glusterd %{_sysconfdir}/init.d/glusterd %define _init_glusterfsd %{_sysconfdir}/init.d/glusterfsd -%define _init_gluster_swift_account %{_sysconfdir}/init.d/gluster-swift-account -%define _init_gluster_swift_object %{_sysconfdir}/init.d/gluster-swift-object -%define _init_gluster_swift_container %{_sysconfdir}/init.d/gluster-swift-container -%define _init_gluster_swift_proxy %{_sysconfdir}/init.d/gluster-swift-proxy +%define _init_gluster_swift_account %{_sysconfdir}/init.d/gluster-swift-account +%define _init_gluster_swift_object %{_sysconfdir}/init.d/gluster-swift-object +%define _init_gluster_swift_container %{_sysconfdir}/init.d/gluster-swift-container +%define _init_gluster_swift_proxy %{_sysconfdir}/init.d/gluster-swift-proxy %endif BuildRequires: bison flex @@ -200,11 +125,11 @@ BuildRequires: gcc make automake libtool BuildRequires: ncurses-devel readline-devel BuildRequires: libxml2-devel openssl-devel BuildRequires: libaio-devel -BuildRequires: systemtap-sdt-devel +#BuildRequires: systemtap-sdt-devel lvm2-devel # glusterfs-3.4.x +%if ( 0%{?suse_version} ) BuildRequires: python-devel +%else BuildRequires: python-ctypes -%if ( 0%{?fedora} ) || ( 0%{?rhel} && 0%{?rhel} >= 6 ) -BuildRequires: lvm2-devel %endif Obsoletes: hekafs <= 0.7 @@ -221,15 +146,17 @@ Provides: %{name}-core = %{version}-%{release} # - all provides from xlators and private libraries not in the ldconfig path # # TODO: RHEL5 does not have a convenient solution -%if ( 0%{?rhel} == 6 ) +%if 0%{?rhel} == 6 # filter_setup exists in RHEL6 only %filter_provides_in %{_libdir}/glusterfs/%{version}/ %global __filter_from_req %{?__filter_from_req} | %{__grep} -v -P '^(?!lib).*\.so.*$' %filter_setup %else + # modern rpm and current Fedora + %global __requires_exclude -P ^(?!lib).*\.so.*$ # modern rpm and current Fedora do not generate requires if the provides # are filtered - %global __provides_exclude_from ^%{_libdir}/glusterfs/%{version}/.*$ + %endif %description @@ -328,56 +255,6 @@ is in user space and easily manageable. This package provides the glusterfs server daemon. -%package api -Summary: Clustered file-system api library -License: GPLv3+ -Group: System Environment/Daemons -Requires: %{name} = %{version}-%{release} - -%description api -GlusterFS is a clustered file-system capable of scaling to several -petabytes. 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 systems 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 user space and easily manageable. - -This package provides the glusterfs libgfapi library - -%if ( 0%{!?_without_ocf:1} ) -%package resource-agents -Summary: OCF Resource Agents for GlusterFS -License: GPLv3+ -%if ( ! ( 0%{?rhel} && 0%{?rhel} < 6 ) ) -# EL5 does not support noarch sub-packages -BuildArch: noarch -%endif -# this Group handling comes from the Fedora resource-agents package -%if ( 0%{?fedora} || 0%{?centos_version} || 0%{?rhel} ) -Group: System Environment/Base -%else -Group: Productivity/Clustering/HA -%endif -# for glusterd -Requires: glusterfs-server -# depending on the distribution, we need pacemaker or resource-agents -Requires: %{_prefix}/lib/ocf/resource.d - -%description resource-agents -GlusterFS is a clustered file-system capable of scaling to several -petabytes. 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 systems 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 user space and easily manageable. - -This package provides the resource agents which plug glusterd into -Open Cluster Framework (OCF) compliant cluster resource managers, -like Pacemaker. -%endif - %package devel Summary: Development Libraries License: GPLv2 or LGPLv3+ @@ -393,27 +270,9 @@ terms of features and extensibility. It borrows a powerful concept called Translators from GNU Hurd kernel. Much of the code in GlusterFS is in user space and easily manageable. -This package provides the development libraries and include files. - -%package api-devel -Summary: Development Libraries -License: GPLv2 or LGPLv3+ -Group: Development/Libraries -Requires: %{name} = %{version}-%{release} - -%description api-devel -GlusterFS is a clustered file-system capable of scaling to several -petabytes. 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 systems 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 user space and easily manageable. - -This package provides the api include files. +This package provides the development libraries. %if ( 0%{?_with_ufo:1} ) -%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 ) %package swift Summary: GlusterFS OpenStack Object Storage @@ -421,6 +280,58 @@ Group: Applications/System License: ASL 2.0 BuildArch: noarch +%if ( 0%{_for_fedora_koji_builds} ) +Source20: http://launchpad.net/swift/folsom/%{SWIFTVER}/+download/swift-%{SWIFTVER}.tar.gz +%else +Source20: swift-%{SWIFTVER}.tar.gz +%endif + +Source30: gluster-swift-account.service +Source31: gluster-swift-container.service +Source32: gluster-swift-object.service +Source33: gluster-swift-proxy.service +Source34: gluster-swift-account@.service +Source35: gluster-swift-container@.service +Source36: gluster-swift-object@.service +Source37: gluster-swift.tmpfs +Source40: gluster-swift-account.init +Source41: gluster-swift-container.init +Source42: gluster-swift-object.init +Source43: gluster-swift-proxy.init +Source44: gluster-swift-functions +# these first appeared in openstack-swift-1.7.4-2.fc19 +Source50: gluster-swift-account-replicator.service +Source51: gluster-swift-account-replicator@.service +Source52: gluster-swift-account-auditor.service +Source53: gluster-swift-account-auditor@.service +Source54: gluster-swift-account-reaper.service +Source55: gluster-swift-account-reaper@.service +Source56: gluster-swift-container-replicator.service +Source57: gluster-swift-container-replicator@.service +Source58: gluster-swift-container-auditor.service +Source59: gluster-swift-container-auditor@.service +Source60: gluster-swift-container-updater.service +Source61: gluster-swift-container-updater@.service +Source62: gluster-swift-object-replicator.service +Source63: gluster-swift-object-replicator@.service +Source64: gluster-swift-object-auditor.service +Source65: gluster-swift-object-auditor@.service +Source66: gluster-swift-object-updater.service +Source67: gluster-swift-object-updater@.service +Source68: gluster-swift-object-expirer.service +Source69: gluster-swift-object-expirer@.service +# these first appeared in openstack-swift-1.7.4-1.fc18 and -1.7.4-2.el6 +Source70: account-server.conf +Source71: container-server.conf +Source72: object-server.conf +Source73: proxy-server.conf +Source74: swift.conf + +Patch20: 0001-Use-updated-parallel-install-versions-of-epel-packag.patch +Patch21: 0002-Add-fixes-for-building-the-doc-package.patch +Patch22: glusterfs-3.3.1.swift.constraints.backport-1.7.4.patch +Patch23: glusterfs-3.4.0.swift.egginfo-grizzly.patch +Patch24: 0002-Add-fixes-for-building-the-doc-package.patch.180 #BuildRoot: %(mktemp -ud %{_tmppath}/swift-%{SWIFTVER}-%{release}-XXXXXX) %if ( 0%{?_with_systemd:1} ) @@ -435,6 +346,7 @@ BuildArch: noarch %global glusterswiftproxy_service %{S:%{SOURCE43}} %endif +BuildRequires: dos2unix BuildRequires: python-devel BuildRequires: python-setuptools BuildRequires: python-netifaces @@ -457,9 +369,6 @@ Requires: python-simplejson Requires: pyxattr Requires: python-setuptools Requires: python-netifaces -%if "%{SWIFTVER}" != "1.7.4" -Requires: python-swiftclient -%endif Conflicts: openstack-swift @@ -555,31 +464,26 @@ in clusters for reliable, redundant, and large-scale storage of static objects. This package contains documentation files for %{name}-swift. -%endif - %package ufo Summary: GlusterFS Unified File and Object Storage. Group: Applications/System License: ASL 2.0 BuildArch: noarch -BuildRequires: python-setuptools -%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 ) Requires: %{name}-swift = %{version}-%{release} -%else -Requires: openstack-swift = %{SWIFTVER} -Requires: openstack-swift-account = %{SWIFTVER} -Requires: openstack-swift-container = %{SWIFTVER} -Requires: openstack-swift-object = %{SWIFTVER} -Requires: openstack-swift-proxy = %{SWIFTVER} -Obsoletes: %{name}-swift -%endif Requires: memcached Requires: openssl -Requires: python-setuptools Requires: python Obsoletes: glusterfs-swift-plugin < 3.3.1-4 Obsoletes: glusterfs-swift-ufo <= 3.3.1-4 +%if ( 0%{_for_fedora_koji_builds} ) +Source15: http://download.gluster.org/pub/gluster/glusterfs/3.3/%{version}/UFO/gluster-swift-ufo-%{UFOVER}%{?prereltag}.tar.gz +%else +Source15: gluster-swift-ufo-@PACKAGE_VERSION@.tar.gz +%endif +Patch15: %{name}-3.3.1.ufo.gluster.swift.common.DiskFile-1.7.4.patch +Patch16: %{name}-3.3.1.ufo.gluster.multi-volume.backport-1.1.patch + %description ufo Gluster Unified File and Object Storage unifies NAS and object storage technology. This provides a system for data storage that enables users to access @@ -592,20 +496,18 @@ storage costs. %setup -q -n %{name}-%{version}%{?prereltag} %if ( 0%{_for_fedora_koji_builds} ) #%patch0 -p0 -%patch1 -p0 -F4 +%patch1 -p0 %if ( "%{version}" == "3.3.1" ) %patch2 -p1 %endif %endif %if ( 0%{?_with_ufo:1} ) -%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 ) # unpack swift-1.x.y %setup -q -T -D -n %{name}-%{version}%{?prereltag} -a 20 -%endif # unpack gluster ufo %setup -q -T -D -n %{name}-%{version}%{?prereltag} -a 15 -%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 ) cd swift-%{SWIFTVER} +# apply Fedora openstack-swift patches to Swift as appropriate %if ( 0%{?rhel} && 0%{?rhel} < 7 ) %patch20 -p1 %if "%{SWIFTVER}" == "1.7.4" @@ -614,24 +516,28 @@ cd swift-%{SWIFTVER} %patch24 -p1 %endif %endif +# apply our own patches to Swift, as appropriate %if "%{SWIFTVER}" == "1.7.4" %patch22 -p1 %else %patch23 -p1 %endif -%endif +# apply our fix for UFO 1.1 (tarball snapshot circa 7 Dec, 2012) %if ( 0%{_for_fedora_koji_builds} ) %if ( "%{UFOVER}" == "1.1" ) -cd ../ufo -%patch15 -p1 +cd ../ +pwd +%patch15 +%patch16 -p1 %endif %endif %endif %build ./autogen.sh -%configure %{?_without_rdma} %{?_without_epoll} %{?_without_fusermount} %{?_without_georeplication} %{?_without_ocf} +%configure %{?_without_rdma} %{?_without_epoll} %{?_with_fusermount} %{?_without_georeplication} +# Remove rpath # fix hardening and remove rpath in shlibs %if ( 0%{?fedora} && 0%{?fedora} > 17 ) || ( 0%{?rhel} && 0%{?rhel} > 6 ) %{__sed} -i 's| \\\$compiler_flags |&\\\$LDFLAGS |' libtool @@ -642,7 +548,6 @@ cd ../ufo %{__make} %{?_smp_mflags} %if ( 0%{?_with_ufo:1} ) -%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 ) cd swift-%{SWIFTVER} %{__python} setup.py build %{__mkdir_p} doc/build @@ -650,7 +555,6 @@ cd swift-%{SWIFTVER} %{__python} setup.py build_sphinx %endif cd .. -%endif cd ufo %{__python} setup.py build cd .. @@ -688,11 +592,6 @@ cd .. %{__rm} -f %{buildroot}%{_sysconfdir}/init.d/glusterd %endif -%if ( 0%{?rhel} && 0%{?rhel} <= 5 ) -%{__install} -D -p -m 0755 %{SOURCE7} \ - %{buildroot}%{_sysconfdir}/sysconfig/modules/glusterfs-fuse.modules -%endif - %{__mkdir_p} %{buildroot}%{_localstatedir}/log/glusterd %{__mkdir_p} %{buildroot}%{_localstatedir}/log/glusterfs %{__mkdir_p} %{buildroot}%{_localstatedir}/log/glusterfsd @@ -702,7 +601,7 @@ cd .. find %{buildroot}%{_libdir} -name '*.a' -delete find %{buildroot}%{_libdir} -name '*.la' -delete -# Remove installed docs, they're included by %%doc +# Remove installed docs, we include them ourselves as %%doc %{__rm} -rf %{buildroot}%{_datadir}/doc/glusterfs/ head -50 ChangeLog > ChangeLog.head && mv ChangeLog.head ChangeLog cat << EOM >> ChangeLog @@ -711,11 +610,6 @@ More commit messages for this ChangeLog can be found at https://forge.gluster.org/glusterfs-core/glusterfs/commits/v%{version}%{?prereltag} EOM -# Remove benchmarking and other unpackaged files -%{__rm} -rf %{buildroot}/benchmarking -%{__rm} -f %{buildroot}/glusterfs-mode.el -%{__rm} -f %{buildroot}/glusterfs.vim - # Create working directory %{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd @@ -786,7 +680,6 @@ touch %{buildroot}%{_sharedstatedir}/glusterd/nfs/nfs-server.vol touch %{buildroot}%{_sharedstatedir}/glusterd/nfs/run/nfs.pid %if ( 0%{?_with_ufo:1} ) -%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 ) cd swift-%{SWIFTVER} %{__python} setup.py install -O1 --skip-build --root %{buildroot} # common swift .service or .init files @@ -845,7 +738,6 @@ cd swift-%{SWIFTVER} #install -p -D -m 660 %{SOURCE72} %{buildroot}%{_sysconfdir}/swift/object-server.conf #install -p -D -m 660 %{SOURCE73} %{buildroot}%{_sysconfdir}/swift/proxy-server.conf #install -p -D -m 660 %{SOURCE74} %{buildroot}%{_sysconfdir}/swift/swift.conf -#install -p -D -m 660 %{SOURCE75} %{buildroot}%{_sysconfdir}/swift/object-expirer.conf #%endif # Install pid directory %{__install} -d -m 755 %{buildroot}%{_localstatedir}/run/swift @@ -858,8 +750,6 @@ cd swift-%{SWIFTVER} %{__mkdir_p} %{buildroot}%{_sysconfdir}/tmpfiles.d install -p -m 0644 %{SOURCE37} %{buildroot}%{_sysconfdir}/tmpfiles.d/gluster-swift.conf %endif -# Install recon directory -install -d -m 755 %{buildroot}%{_localstatedir}/cache/swift # man pages install -d -m 755 %{buildroot}%{_mandir}/man5 for m in doc/manpages/*.5; do @@ -870,7 +760,6 @@ for m in doc/manpages/*.1; do install -p -m 0644 $m %{buildroot}%{_mandir}/man1 done cd .. -%endif cd ufo %{__python} setup.py install -O1 --skip-build --root %{buildroot} cd .. @@ -895,7 +784,6 @@ cp ufo/bin/gluster-swift-gen-builders %{buildroot}%{_bindir}/ %doc ChangeLog COPYING-GPLV2 COPYING-LGPLV3 INSTALL README THANKS %config(noreplace) %{_sysconfdir}/logrotate.d/* %config(noreplace) %{_sysconfdir}/sysconfig/* -%exclude %{_libdir}/libgfapi.* %{_libdir}/glusterfs %{_libdir}/*.so.* %{_sbindir}/glusterfs* @@ -907,7 +795,6 @@ cp ufo/bin/gluster-swift-gen-builders %{buildroot}%{_bindir}/ %if ( 0%{!?_without_rdma:1} ) %exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/rpc-transport/rdma* %endif -%exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/mount/api* %exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/mount/fuse* %exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/storage* %exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/features/posix* @@ -944,16 +831,12 @@ fi %endif %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/mount/fuse* /sbin/mount.glusterfs -%if ( ! 0%{?_without_fusermount:1} ) +%if ( 0%{?_with_fusermount:1} ) %{_bindir}/fusermount-glusterfs %endif -%if ( 0%{?rhel} && 0%{?rhel} <= 5 ) -%{_sysconfdir}/sysconfig/modules/glusterfs-fuse.modules -%endif %files server %defattr(-,root,root,-) -%doc extras/clear_xattrs.sh %if ( 0%{_for_fedora_koji_builds} ) %config(noreplace) %{_sysconfdir}/logrotate.d/glusterd %endif @@ -1014,55 +897,45 @@ fi %ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/nfs/run %ghost %attr(0600,-,-) %{_sharedstatedir}/glusterd/nfs/run/nfs.pid -%files api -%exclude %{_libdir}/*.so -%{_libdir}/libgfapi.* -%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/mount/api* - -%if ( 0%{!?_without_ocf:1} ) -%files resource-agents -%defattr(-,root,root) -# /usr/lib is the standard for OCF, also on x86_64 -%{_prefix}/lib/ocf/resource.d/glusterfs -%endif %files devel %defattr(-,root,root,-) %{_includedir}/glusterfs %exclude %{_includedir}/glusterfs/y.tab.h -%exclude %{_includedir}/glusterfs/api -%exclude %{_libdir}/libgfapi.so %{_libdir}/*.so -%files api-devel -%{_libdir}/pkgconfig/glusterfs-api.pc -%{_libdir}/libgfapi.so -%{_includedir}/glusterfs/api/* - %if ( 0%{?_with_ufo:1} ) -%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 ) %files swift %defattr(-,root,root,-) %doc swift-%{SWIFTVER}/AUTHORS %doc swift-%{SWIFTVER}/LICENSE -%doc swift-%{SWIFTVER}/README* +%doc swift-%{SWIFTVER}/README %doc swift-%{SWIFTVER}/etc/dispersion.conf-sample %doc swift-%{SWIFTVER}/etc/drive-audit.conf-sample %doc swift-%{SWIFTVER}/etc/object-expirer.conf-sample %doc swift-%{SWIFTVER}/etc/swift.conf-sample %{_mandir}/man5/dispersion.conf.5* -%{_mandir}/man1/swift*.1* +%{_mandir}/man1/swift-dispersion-populate.1* +%{_mandir}/man1/swift-dispersion-report.1* +%{_mandir}/man1/swift.1* +%{_mandir}/man1/swift-get-nodes.1* +%{_mandir}/man1/swift-init.1* +%{_mandir}/man1/swift-orphans.1* +%{_mandir}/man1/swift-recon.1* +%{_mandir}/man1/swift-ring-builder.1* %if ( 0%{?_with_systemd:1} ) %config(noreplace) %{_sysconfdir}/tmpfiles.d/gluster-swift.conf %else %dir %{_datarootdir}/gluster-swift/functions %endif %dir %{_sysconfdir}/swift +#%if ( 0%{?fedora} && 0%{?fedora} > 17 ) +#%config(noreplace) %attr(660, root, swift) %{_sysconfdir}/swift/swift.conf +#%endif %dir %attr(0755, swift, swift) %{_localstatedir}/run/swift %dir %{python_sitelib}/swift %{_bindir}/swift-account-audit %{_bindir}/swift-bench -%{_bindir}/swift-bench-client %{_bindir}/swift-drive-audit %{_bindir}/swift-get-nodes %{_bindir}/swift-init @@ -1089,10 +962,7 @@ fi %{_mandir}/man1/swift-account-server.1* %_init_gluster_swift_account %if ( 0%{?_with_systemd:1} ) -%{_unitdir}/gluster-swift-account@.service -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) -%{_unitdir}/gluster-swift-account-*.service -%endif +%{_unitdir}/gluster-swift-account*.service %endif %dir %attr(0755, swift, swift) %{_localstatedir}/run/swift/account-server %dir %{_sysconfdir}/swift/account-server @@ -1113,13 +983,9 @@ fi %{_mandir}/man1/swift-container-updater.1* %_init_gluster_swift_container %if ( 0%{?_with_systemd:1} ) -%{_unitdir}/gluster-swift-container@.service -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) -%{_unitdir}/gluster-swift-container-*.service -%endif +%{_unitdir}/gluster-swift-container*.service %endif %dir %attr(0755, swift, swift) %{_localstatedir}/run/swift/container-server -%dir %attr(0755, swift, swift) %{_localstatedir}/cache/swift %dir %{_sysconfdir}/swift/container-server %{_bindir}/swift-container-auditor %{_bindir}/swift-container-server @@ -1133,21 +999,18 @@ fi %doc swift-%{SWIFTVER}/etc/object-server.conf-sample %doc swift-%{SWIFTVER}/etc/rsyncd.conf-sample %{_mandir}/man5/object-server.conf.5* +%{_mandir}/man5/object-expirer.conf.5* %{_mandir}/man1/swift-object-auditor.1* +%{_mandir}/man1/swift-object-expirer.1* %{_mandir}/man1/swift-object-info.1* %{_mandir}/man1/swift-object-replicator.1* %{_mandir}/man1/swift-object-server.1* %{_mandir}/man1/swift-object-updater.1* %_init_gluster_swift_object %if ( 0%{?_with_systemd:1} ) -%{_unitdir}/gluster-swift-object@.service -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) -%{_unitdir}/gluster-swift-object-*.service -%exclude %{_unitdir}/gluster-swift-object-expirer*.service -%endif +%{_unitdir}/gluster-swift-object*.service %endif %dir %attr(0755, swift, swift) %{_localstatedir}/run/swift/object-server -%dir %attr(0755, swift, swift) %{_localstatedir}/cache/swift %dir %{_sysconfdir}/swift/object-server %{_bindir}/swift-object-auditor %{_bindir}/swift-object-info @@ -1159,19 +1022,11 @@ fi %files swift-proxy %defattr(-,root,root,-) %doc swift-%{SWIFTVER}/etc/proxy-server.conf-sample -%doc swift-%{SWIFTVER}/etc/object-expirer.conf-sample -%{_mandir}/man5/object-expirer.conf.5* %{_mandir}/man5/proxy-server.conf.5* -%{_mandir}/man1/swift-object-expirer.1* %{_mandir}/man1/swift-proxy-server.1* %_init_gluster_swift_proxy -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) -%{_unitdir}/gluster-swift-object-expirer*.service -%endif %dir %attr(0755, swift, swift) %{_localstatedir}/run/swift/proxy-server -%dir %attr(0755, swift, swift) %{_localstatedir}/cache/swift %dir %{_sysconfdir}/swift/proxy-server -%{_bindir}/swift-object-expirer %{_bindir}/swift-proxy-server %{python_sitelib}/swift/proxy @@ -1179,8 +1034,6 @@ fi %defattr(-,root,root,-) %doc swift-%{SWIFTVER}/LICENSE -%endif - %files ufo %defattr(-,root,root,-) %{python_sitelib}/gluster @@ -1256,7 +1109,6 @@ fi %if ( 0%{?_with_ufo:1} ) -%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 ) %pre swift getent group swift >/dev/null || groupadd -r swift -g 160 getent passwd swift >/dev/null || \ @@ -1274,36 +1126,18 @@ fi %post swift-account %_init_enable gluster-swift-account -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) -%_init_enable gluster-swift-account-replicator -%_init_enable gluster-swift-account-auditor -%_init_enable gluster-swift-account-reaper -%endif %preun swift-account if [ $1 = 0 ] ; then %_init_stop gluster-swift-account %_init_disable gluster-swift-account -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) - %_init_stop gluster-swift-account-replicator - %_init_disable gluster-swift-account-replicator - %_init_stop gluster-swift-account-auditor - %_init_disable gluster-swift-account-auditor - %_init_stop gluster-swift-account-reaper - %_init_disable gluster-swift-account-reaper -%endif fi %postun swift-account -if [ $1 -ge 1 ] ; then +if [ "$1" -ge "1" ] ; then %_init_restart gluster-swift-account -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) - %_init_restart gluster-swift-account-replicator - %_init_restart gluster-swift-account-auditor - %_init_restart gluster-swift-account-reaper -%endif fi @@ -1317,36 +1151,18 @@ fi %post swift-container %_init_enable gluster-swift-container -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) -%_init_enable gluster-swift-container-replicator -%_init_enable gluster-swift-container-auditor -%_init_enable gluster-swift-container-updater -%endif %preun swift-container if [ $1 = 0 ] ; then %_init_stop gluster-swift-container %_init_disable gluster-swift-container -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) - %_init_stop gluster-swift-container-replicator - %_init_disable gluster-swift-container-replicator - %_init_stop gluster-swift-container-auditor - %_init_disable gluster-swift-container-auditor - %_init_stop gluster-swift-container-updater - %_init_disable gluster-swift-container-updater -%endif fi %postun swift-container -if [ $1 -ge 1 ] ; then +if [ "$1" -ge "1" ] ; then %_init_restart gluster-swift-container -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) - %_init_restart gluster-swift-container-replicator - %_init_restart gluster-swift-container-auditor - %_init_restart gluster-swift-container-updator -%endif fi @@ -1360,36 +1176,18 @@ fi %post swift-object %_init_enable gluster-swift-object -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) -%_init_enable gluster-swift-object-replicator -%_init_enable gluster-swift-object-auditor -%_init_enable gluster-swift-object-updater -%endif %preun swift-object if [ $1 = 0 ] ; then %_init_stop gluster-swift-object %_init_disable gluster-swift-object -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) - %_init_stop gluster-swift-object-replicator - %_init_disable gluster-swift-object-replicator - %_init_stop gluster-swift-object-auditor - %_init_disable gluster-swift-object-auditor - %_init_stop gluster-swift-object-updater - %_init_disable gluster-swift-object-updater -%endif fi %postun swift-object -if [ $1 -ge 1 ] ; then +if [ "$1" -ge "1" ] ; then %_init_restart gluster-swift-object -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) - %_init_restart gluster-swift-object-replicator - %_init_restart gluster-swift-object-auditor - %_init_restart gluster-swift-object-updater -%endif fi @@ -1399,44 +1197,32 @@ if [ -f /etc/swift/proxy-server.conf ]; then echo "warning: /etc/swift/proxy-server.conf saved as /etc/swift/proxy-server.conf.rpmsave" cp /etc/swift/proxy-server.conf /etc/swift/proxy-server.conf.rpmsave fi -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) -if [ -f /etc/swift/object-expirer.conf ]; then - echo "warning: /etc/swift/object-expirer.conf saved as /etc/swift/object-expirer.conf.rpmsave" - cp /etc/swift/object-expirer.conf /etc/swift/object-expirer.conf.rpmsave -fi -%endif %post swift-proxy %_init_enable gluster-swift-proxy -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) -%_init_enable gluster-swift-object-expirer -%endif %preun swift-proxy if [ $1 = 0 ] ; then %_init_stop gluster-swift-proxy %_init_disable gluster-swift-proxy -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) - %_init_stop gluster-swift-object-expirer - %_init_disable gluster-swift-object-expirer -%endif fi %postun swift-proxy -if [ $1 -ge 1 ] ; then +if [ "$1" -ge "1" ] ; then %_init_restart gluster-swift-proxy -%if ( 0%{?fedora} && 0%{?fedora} > 18 ) - %_init_restart gluster-swift-object-expirer -%endif fi %endif -%endif + %changelog +* Fri Jul 12 2013 Kaleb S. KEITHLEY - 3.2.2-1 +- GlusterFS-3.3.2 GA + * Fri Jul 12 2013 Kaleb S. KEITHLEY - 3.4.0-1 +- GlusterFS 3.4.0 GA * Mon Jul 8 2013 Kaleb S. KEITHLEY - 3.4.0-0.9.beta4 - add Obsolete: glusterfs-swift where we use openstack-swift @@ -1473,6 +1259,9 @@ fi * Fri May 24 2013 Kaleb S. KEITHLEY - 3.4.0-0.5.beta2 - prerelease 3.4.0beta2 for oVirt/vdsm dependencies in Fedora19 +* Mon May 13 2013 Kaleb S. KEITHLEY - 3.3.1-15 +- hardened build, i.e. PIE. RHBZ 955283 + * Thu May 9 2013 Kaleb S. KEITHLEY - 3.4.0-0.4.beta1 - prerelease 3.4.0beta1 for oVirt/vdsm dependencies in Fedora19 @@ -1497,7 +1286,7 @@ fi - prerelease 3.4.0alpha3 for oVirt/vdsm dependencies in Fedora19 * Wed Apr 17 2013 Niels de Vos - 3.3.1-13 -- remove unused requires for xlator .so files and private libraries (RHBZ#95212 +- remove unused requires for xlator .so files and private libraries (RHBZ#952122) * Mon Apr 15 2013 Kaleb S. KEITHLEY - 3.3.1-12 - add glusterfs-3.3.1.rpc.rpcxprt.rdma.name.c.patch, BZ 920332 @@ -1506,6 +1295,7 @@ fi * Mon Apr 15 2013 Niels de Vos - Remove useless provides for xlator .so files and private libraries + (3.4.x) * Wed Apr 10 2013 Kaleb S. KEITHLEY - 3.4.0-0.1alpha2 - prerelease 3.4.0alpha2 for oVirt/vdsm dependencies in Fedora19 diff --git a/sources b/sources index aee1922..ddee6c4 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -86d9aff765b6ac49f8b19e6ffad6adf9 glusterfs-3.4.0.tar.gz -0d2479c3cbb124fa3a6b001d0d4d5a8b swift-1.8.0.tar.gz -614628f29cd47fba95d1530363d7900b gluster-swift-ufo-1.2.tar.gz +963ffa93a8e24d4e1aec2e1b68cb90b7 glusterfs-3.3.2.tar.gz +1cfb85335eafc4317414736477d47dfc swift-1.7.4.tar.gz +c1041b0551be722363f18f3a5664d0cf gluster-swift-ufo-1.1.tar.gz