[pacemaker] Switch package tarball to git

Andrew Beekhof beekhof at fedoraproject.org
Thu Oct 6 06:12:00 UTC 2011


commit 09f165899ed9ee153f8eabb25c81f5f8365faae3
Author: Andrew Beekhof <andrew at beekhof.net>
Date:   Thu Oct 6 17:11:41 2011 +1100

    Switch package tarball to git

 .gitignore     |    1 +
 pacemaker.spec |  229 +++++++++++++++++++++++++++++++++-----------------------
 sources        |    2 +-
 3 files changed, 137 insertions(+), 95 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index c4eb20f..e2628cc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
 /Pacemaker-1.1.4.tar.bz2
 /Pacemaker-1.1.5.tar.bz2
 /Pacemaker-1.1.6.tar.bz2
+/ClusterLabs-pacemaker-89678d4.tar.gz
diff --git a/pacemaker.spec b/pacemaker.spec
index eae7e5f..3442ac5 100644
--- a/pacemaker.spec
+++ b/pacemaker.spec
@@ -2,16 +2,27 @@
 %global uname hacluster
 %global pcmk_docdir %{_docdir}/%{name}
 
-%global specversion 2
-%global upstream_version Pacemaker-1.1.6
-%global upstream_prefix Pacemaker-1-1
+%global specversion 1
+%global upstream_version 89678d4
+%global upstream_prefix ClusterLabs-pacemaker
 
 # Compatibility macros for distros (fedora) that don't provide Python macros by default
 # Do this instead of trying to conditionally include {_rpmconfigdir}/macros.python
-%{!?py_ver:	%{expand: %%global py_ver      %%(echo `python -c "import sys; print sys.version[:3]"`)}}
-%{!?py_prefix:	%{expand: %%global py_prefix   %%(echo `python -c "import sys; print sys.prefix"`)}}
-%{!?py_libdir:	%{expand: %%global py_libdir   %%{expand:%%%%{py_prefix}/%%%%{_lib}/python%%%%{py_ver}}}}
-%{!?py_sitedir:	%{expand: %%global py_sitedir  %%{expand:%%%%{py_libdir}/site-packages}}}
+%{!?py_ver:     %{expand: %%global py_ver      %%(echo `python -c "import sys; print sys.version[:3]"`)}}
+%{!?py_prefix:  %{expand: %%global py_prefix   %%(echo `python -c "import sys; print sys.prefix"`)}}
+%{!?py_libdir:  %{expand: %%global py_libdir   %%{expand:%%%%{py_prefix}/%%%%{_lib}/python%%%%{py_ver}}}}
+%{!?py_sitedir: %{expand: %%global py_sitedir  %%{expand:%%%%{py_libdir}/site-packages}}}
+
+# Compatibility macro wrappers for legacy RPM versions that do not
+# support conditional builds
+%{!?bcond_without: %{expand: %%global bcond_without() %%{expand:%%%%{!?_without_%%{1}:%%%%global with_%%{1} 1}}}}
+%{!?bcond_with:    %{expand: %%global bcond_with()    %%{expand:%%%%{?_with_%%{1}:%%%%global with_%%{1} 1}}}}
+%{!?with:          %{expand: %%global with()          %%{expand:%%%%{?with_%%{1}:1}%%%%{!?with_%%{1}:0}}}}
+%{!?without:       %{expand: %%global without()       %%{expand:%%%%{?with_%%{1}:0}%%%%{!?with_%%{1}:1}}}}
+
+# Conditionals
+# Invoke "rpmbuild --without <feature>" or "rpmbuild --with <feature>"
+# to disable or enable specific features
 
 # Supported cluster stacks, must support at least one
 %bcond_without cman
@@ -44,74 +55,77 @@
 %endif
 
 %if %{with pre_release}
-%global pcmk_release 0.%{specversion}.%{upstream_version}.hg
+%global pcmk_release 0.%{specversion}.%{upstream_version}.git
 %else
 %global pcmk_release %{specversion}
 %endif
 
-Name:		pacemaker
-Summary:	Scalable High-Availability cluster resource manager
-Version:	1.1.6
-Release:	%{pcmk_release}%{?dist}
-License:	GPLv2+ and LGPLv2+
-Url:		http://www.clusterlabs.org
-Group:		System Environment/Daemons
-Source0:	http://hg.clusterlabs.org/pacemaker/1.1/archive/%{upstream_version}.tar.bz2
-BuildRoot:	%(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
-AutoReqProv:	on
-Requires(pre):	cluster-glue
-Requires:	resource-agents
-Requires:	%{name}-libs = %{version}-%{release}
-Requires:	%{name}-cluster-libs = %{version}-%{release}
-Requires:	%{name}-cli = %{version}-%{release}
-Requires:	python >= 2.4
-Conflicts:	heartbeat < 2.99
+Name:          pacemaker
+Summary:       Scalable High-Availability cluster resource manager
+Version:       1.1.6
+Release:       %{pcmk_release}%{?dist}
+License:       GPLv2+ and LGPLv2+
+Url:           http://www.clusterlabs.org
+Group:         System Environment/Daemons
+
+# export VER={upstream_version}
+# wget --no-check-certificate -O ClusterLabs-pacemaker-${VER}.tar.gz https://github.com/ClusterLabs/pacemaker/tarball/${VER}
+Source0:       %{upstream_prefix}-%{upstream_version}.tar.gz
+BuildRoot:     %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
+AutoReqProv:   on
+Requires(pre): cluster-glue
+Requires:      resource-agents
+Requires:      %{name}-libs = %{version}-%{release}
+Requires:      %{name}-cluster-libs = %{version}-%{release}
+Requires:      %{name}-cli = %{version}-%{release}
+Requires:      python >= 2.4
+Conflicts:     heartbeat < 2.99
 
 %if %{with snmp}
-Requires:	perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
+Requires:      perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
 %endif
 
 # Required for core functionality
-BuildRequires:	automake autoconf libtool pkgconfig python libtool-ltdl-devel
-BuildRequires:	glib2-devel cluster-glue-libs-devel libxml2-devel libxslt-devel 
-BuildRequires:	pkgconfig python-devel gcc-c++ bzip2-devel gnutls-devel pam-devel
+BuildRequires: automake autoconf libtool pkgconfig python libtool-ltdl-devel
+BuildRequires: glib2-devel cluster-glue-libs-devel libxml2-devel libxslt-devel 
+BuildRequires: pkgconfig python-devel gcc-c++ bzip2-devel gnutls-devel pam-devel
 
 # Enables optional functionality
-BuildRequires:	ncurses-devel openssl-devel libselinux-devel docbook-style-xsl resource-agents
+BuildRequires: ncurses-devel openssl-devel libselinux-devel docbook-style-xsl resource-agents
 
 
-%ifarch alpha %{ix86} x86_64
-BuildRequires:	lm_sensors-devel
-%endif
-
 %if %{with cman}
-BuildRequires:	clusterlib-devel
+BuildRequires: clusterlib-devel
 %endif
 
 %if %{with esmtp}
-BuildRequires:	libesmtp-devel
+BuildRequires: libesmtp-devel
 %endif
 
 %if %{with snmp}
-BuildRequires:	net-snmp-devel
+%ifarch alpha %{ix86} x86_64
+BuildRequires: lm_sensors-devel
+%endif
+
+BuildRequires: net-snmp-devel
 %endif
 
 %if %{with corosync}
 # Do not require corosync, the admin should select which stack to use and install it
-BuildRequires:	corosynclib-devel
+BuildRequires: corosynclib-devel
 %endif
 
 %if %{with heartbeat}
 # Do not require heartbeat, the admin should select which stack to use and install it
-BuildRequires:	heartbeat-devel heartbeat-libs >= 3.0.0
+BuildRequires: heartbeat-devel heartbeat-libs >= 3.0.0
 %endif
 
 %if %{with doc}
-BuildRequires:	asciidoc help2man
+BuildRequires: asciidoc help2man
 
 %if %{with publican}
 %ifarch %{ix86} x86_64
-BuildRequires:	publican inkscape
+BuildRequires: publican inkscape
 %endif
 %endif
 %endif
@@ -131,10 +145,10 @@ Available rpmbuild rebuild options:
   --with(out) : heartbeat cman corosync doc publican snmp esmtp pre_release
 
 %package cli
-License:	GPLv2+ and LGPLv2+
-Summary:	Command line tools for controlling Pacemaker clusters
-Group:		System Environment/Daemons
-Requires:	%{name}-libs = %{version}-%{release}
+License:      GPLv2+ and LGPLv2+
+Summary:      Command line tools for controlling Pacemaker clusters
+Group:        System Environment/Daemons
+Requires:     %{name}-libs = %{version}-%{release}
 
 %description cli
 Pacemaker is an advanced, scalable High-Availability cluster resource
@@ -145,9 +159,9 @@ to query and control the cluster from machines that may, or may not,
 be part of the cluster.
 
 %package -n %{name}-libs
-License:	GPLv2+ and LGPLv2+
-Summary:	Core Pacemaker libraries
-Group:		System Environment/Daemons
+License:      GPLv2+ and LGPLv2+
+Summary:      Core Pacemaker libraries
+Group:        System Environment/Daemons
 
 %description -n %{name}-libs
 Pacemaker is an advanced, scalable High-Availability cluster resource
@@ -157,10 +171,10 @@ The %{name}-libs package contains shared libraries needed for cluster
 nodes and those just running the CLI tools.
 
 %package -n %{name}-cluster-libs
-License:	GPLv2+ and LGPLv2+
-Summary:	Cluster Libraries used by Pacemaker
-Group:		System Environment/Daemons
-Requires:	%{name}-libs = %{version}-%{release}
+License:      GPLv2+ and LGPLv2+
+Summary:      Cluster Libraries used by Pacemaker
+Group:        System Environment/Daemons
+Requires:     %{name}-libs = %{version}-%{release}
 
 %description -n %{name}-cluster-libs
 Pacemaker is an advanced, scalable High-Availability cluster resource
@@ -170,17 +184,18 @@ The %{name}-cluster-libs package contains cluster-aware shared
 libraries needed for nodes that will form part of the cluster nodes.
 
 %package -n %{name}-libs-devel 
-License:	GPLv2+ and LGPLv2+
-Summary:	Pacemaker development package
-Group:		Development/Libraries
-Requires:	%{name}-libs = %{version}-%{release}
-Requires:	cluster-glue-libs-devel libtool-ltdl-devel
-Requires:	libxml2-devel libxslt-devel bzip2-devel glib2-devel 
+License:      GPLv2+ and LGPLv2+
+Summary:      Pacemaker development package
+Group:        Development/Libraries
+Requires:     %{name}-libs = %{version}-%{release}
+Requires:     %{name}-cluster-libs = %{version}-%{release}
+Requires:     cluster-glue-libs-devel libtool-ltdl-devel
+Requires:     libxml2-devel libxslt-devel bzip2-devel glib2-devel 
 %if %{with corosync}
-Requires:	corosynclib-devel
+Requires:     corosynclib-devel
 %endif
 %if %{with heartbeat}
-Requires:	heartbeat-devel
+Requires:     heartbeat-devel
 %endif
 
 %description -n %{name}-libs-devel
@@ -191,21 +206,21 @@ The %{name}-libs-devel package contains headers and shared libraries
 for developing tools for Pacemaker.
 
 
-%package	cts
-License:	GPLv2+ and LGPLv2+
-Summary:	Test framework for cluster-related technologies like Pacemaker
-Group:		System Environment/Daemons
-Requires:	python
+%package      cts
+License:      GPLv2+ and LGPLv2+
+Summary:      Test framework for cluster-related technologies like Pacemaker
+Group:        System Environment/Daemons
+Requires:     python
 
-%description	cts
+%description  cts
 Test framework for cluster-related technologies like Pacemaker
 
-%package	doc
-License:	GPLv2+ and LGPLv2+
-Summary:	Documentation for Pacemaker
-Group:		Documentation
+%package      doc
+License:      GPLv2+ and LGPLv2+
+Summary:      Documentation for Pacemaker
+Group:        Documentation
 
-%description	doc
+%description  doc
 Documentation for Pacemaker.
 
 Pacemaker is an advanced, scalable High-Availability cluster resource
@@ -219,7 +234,7 @@ manager for Linux-HA (Heartbeat) and/or Corosync.
 #
 # 'hg archive' sets the file date to the date of the last commit.
 # This can result in files having been created in the future
-# when building on machines in timezones 'behind' the one the
+# when building on machines in timezones 'behind' the one the 
 # commit occurred in - which seriously confuses 'make'
 find . -exec touch \{\} \;
 
@@ -230,25 +245,26 @@ find . -exec touch \{\} \;
 eval `objdump --headers --private-headers /usr/bin/perl | grep RPATH | awk '{print "export LD_LIBRARY_PATH="$2}'`
 %endif
 
-%{configure}			\
-	%{!?with_heartbeat:	--without-heartbeat}	\
-	%{!?with_corosync:	--without-ais}		\
-	%{!?with_esmtp:		--without-esmtp}	\
-	%{!?with_snmp:		--without-snmp}		\
-	%{?with_cman:		--with-cman}		\
-	%{?with_profiling:	--with-profiling}	\
-	%{?with_gcov:		--with-gcov}		\
-	%{?with_tracedata:	--with-tracedata}	\
-	--with-initdir=%{_initrddir}			\
-	--localstatedir=%{_var}				\
-	--with-version=%{version}-%{release}		\
-	--enable-fatal-warnings=no
-
-make %{_smp_mflags}
+# RHEL <= 5 does not support --docdir
+docdir=%{pcmk_docdir} %{configure}                 \
+        %{!?with_heartbeat:  --without-heartbeat}  \
+        %{!?with_corosync:   --without-ais}        \
+        %{!?with_esmtp:      --without-esmtp}      \
+        %{!?with_snmp:       --without-snmp}       \
+        %{?with_cman:        --with-cman}          \
+        %{?with_profiling:   --with-profiling}     \
+        %{?with_gcov:        --with-gcov}          \
+        %{?with_tracedata:   --with-tracedata}     \
+        --with-initdir=%{_initrddir}               \
+        --localstatedir=%{_var}                    \
+        --with-version=%{version}-%{release}       \
+        --enable-fatal-warnings=no
+
+make %{_smp_mflags} docdir=%{pcmk_docdir}
 
 %install
 rm -rf %{buildroot}
-make DESTDIR=%{buildroot} install
+make DESTDIR=%{buildroot} docdir=%{pcmk_docdir} install
 
 mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig
 install -m 644 mcp/pacemaker.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/pacemaker
@@ -278,9 +294,9 @@ rm -f %{buildroot}/%{_libdir}/service_crm.so
 GCOV_BASE=%{buildroot}/%{_var}/lib/pacemaker/gcov
 mkdir -p $GCOV_BASE
 find . -name '*.gcno' -type f | while read F ; do
-	D=`dirname $F`
-	mkdir -p ${GCOV_BASE}/$D
-	cp $F ${GCOV_BASE}/$D
+        D=`dirname $F`
+        mkdir -p ${GCOV_BASE}/$D
+        cp $F ${GCOV_BASE}/$D
 done
 %endif
 
@@ -292,8 +308,8 @@ rm -rf %{buildroot}
 
 %preun
 if [ $1 -eq 0 ]; then
-	/sbin/service pacemaker stop &>/dev/null || :
-	/sbin/chkconfig --del pacemaker || :
+        /sbin/service pacemaker stop &>/dev/null || :
+        /sbin/chkconfig --del pacemaker || :
 fi
 
 %post -n %{name}-libs -p /sbin/ldconfig
@@ -327,6 +343,10 @@ fi
 %{_sbindir}/crm_node
 %{_sbindir}/attrd_updater
 %{_sbindir}/fence_legacy
+%{_sbindir}/fence_pcmk
+%{_bindir}/ccs2cib
+%{_bindir}/ccs_flatten
+%{_bindir}/disable_rgmanager
 %{_sbindir}/stonith_admin
 
 %if %{with heartbeat}
@@ -335,6 +355,17 @@ fi
 %exclude %{_sbindir}/crm_uuid
 %endif
 
+%if %{with doc}
+%doc %{_mandir}/man7/*
+%doc %{_mandir}/man8/attrd_updater.*
+%doc %{_mandir}/man8/crm_attribute.*
+%doc %{_mandir}/man8/crm_node.*
+%doc %{_mandir}/man8/crm_master.*
+%doc %{_mandir}/man8/fence_pcmk.*
+%doc %{_mandir}/man8/pacemakerd.*
+%doc %{_mandir}/man8/stonith_admin.*
+%endif
+
 %doc COPYING
 %doc AUTHORS
 %doc ChangeLog
@@ -369,8 +400,14 @@ fi
 %{_sbindir}/crm_ticket
 %{py_sitedir}/crm
 %if %{with doc}
-%doc %{_mandir}/man7/*
 %doc %{_mandir}/man8/*
+%exclude %{_mandir}/man8/attrd_updater.*
+%exclude %{_mandir}/man8/crm_attribute.*
+%exclude %{_mandir}/man8/crm_node.*
+%exclude %{_mandir}/man8/crm_master.*
+%exclude %{_mandir}/man8/fence_pcmk.*
+%exclude %{_mandir}/man8/pacemakerd.*
+%exclude %{_mandir}/man8/stonith_admin.*
 %endif
 
 %doc COPYING
@@ -420,6 +457,10 @@ fi
 %doc AUTHORS
 
 %changelog
+* Mon Sep 26 2011 Andrew Beekhof <andrew at beekhof.net> 1.1.6-3
+- New upstream tarball: 89678d4
+- Move man pages to the correct subpackages
+
 * Mon Sep 26 2011 Andrew Beekhof <andrew at beekhof.net> 1.1.6-2
 - Do not build in support for heartbeat, snmp, esmtp by default
 - Create a package for cluster unaware libraries to minimze our
diff --git a/sources b/sources
index 044e20e..a07e799 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-70a3605231977c3df0f25439d0d5551e  Pacemaker-1.1.6.tar.bz2
+f3f5a66cc7c8f4a3104f66942c14b618  ClusterLabs-pacemaker-89678d4.tar.gz


More information about the scm-commits mailing list