pcp
[Top] [All Lists]

[PATCH review] perl-pcp RPM packaging integration

To: pcp@xxxxxxxxxxx
Subject: [PATCH review] perl-pcp RPM packaging integration
From: Mark Goodwin <goodwinos@xxxxxxxxx>
Date: Wed, 09 Sep 2009 14:57:14 +1000
User-agent: Thunderbird 2.0.0.21 (X11/20090320)
For review - this patch integrates the perl-pcp RPM packaging into the standard build. This step was previously done manually with cpanflute and other tools.


diff --git a/.gitignore b/.gitignore
index c0dc0d6..1581608 100644
--- a/.gitignore
+++ b/.gitignore
@@ -18,3 +18,4 @@ devel_files.rpm
 libs_files
 libs_files.rpm
 gram*.tab.c
+perl-pcp-*.list
diff --git a/CHANGELOG b/CHANGELOG
index 884390e..f9aac2a 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,4 +1,4 @@
-pcp-3.0.0 (7 September 2009)
+pcp-3.0.0 (9 September 2009)
     - packaging split into pcp, pcp-libs and pcp-libs-devel
       pcp-libs is common - it's required by pcp and by pcp-libs-devel but
       pcp and pcp-devel can be installed with or without each other.
@@ -29,6 +29,8 @@ pcp-3.0.0 (7 September 2009)
     - reconciled build/rpm/pcp.spec.in with build/rpm/pcp_fedora.spec
     - git merged the final 2.9.1 source tree
     - numerous other minor changes, mostly for inclusion in Fedora
+    - integrated RPM packaging support for perl-PCP-PMDA, perl-PCP-MMV and
+      perl-PCP-LogSummary
 
 pcp-2.9.2 (7 September 2009)
     - Final iteration on pmval sample count changes.
diff --git a/GNUmakefile b/GNUmakefile
index 621f38f..56f43ce 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -55,7 +55,7 @@ LDIRT = config.cache config.status config.log files.rpm 
pro_files.rpm \
        root-*/include root-*/lib root-*/*.rpm root-*/default_pro \
        autom4te.cache install.manifest install_pro.manifest \
        debug*.list devel_files libs_files base_files.rpm libs_files.rpm \
-       devel_files.rpm
+       devel_files.rpm perl-pcp*.list
 
 SUBDIRS = src man build debian
 ifeq "$(MAKECMDGOALS)" "clobber"
diff --git a/VERSION.pcp b/VERSION.pcp
index d3e3757..bbf8a89 100644
--- a/VERSION.pcp
+++ b/VERSION.pcp
@@ -4,4 +4,4 @@
 PACKAGE_MAJOR=3
 PACKAGE_MINOR=0
 PACKAGE_REVISION=0
-PACKAGE_BUILD=5
+PACKAGE_BUILD=6
diff --git a/build/rpm/pcp.spec.in b/build/rpm/pcp.spec.in
index ac2b42d..42ea6e2 100644
--- a/build/rpm/pcp.spec.in
+++ b/build/rpm/pcp.spec.in
@@ -93,11 +93,64 @@ Requires: pcp-libs = @package_version@
 %description libs-devel
 Performance Co-Pilot (PCP) headers, documentation and tools for development.
 
+#
+# perl-PCP-PMDA. This is the PCP agent perl binding.
+#
+%package -n perl-PCP-PMDA
+License: GPLv2
+Group: Applications/System
+Summary: Performance Co-Pilot (PCP) Perl bindings and documentation
+URL: http://oss.sgi.com/projects/pcp/
+Requires: pcp = @package_version@
+
+%description -n perl-PCP-PMDA
+The PCP::PMDA Perl module contains the language bindings for
+building Performance Metric Domain Agents (PMDAs) using Perl.
+Each PMDA exports performance data for one specific domain, for
+example the operating system kernel, Cisco routers, a database,
+an application, etc.
+
+#
+# perl-PCP-SUMMARY
+#
+%package -n perl-PCP-LogSummary
+License: GPLv2
+Group: Applications/System
+Summary: Performance Co-Pilot (PCP) Perl bindings for pmlogsummary
+URL: http://oss.sgi.com/projects/pcp/
+Requires: pcp = @package_version@
+
+%description -n perl-PCP-LogSummary
+The PCP::LogSummary module provides a Perl module for using the
+statistical summary data produced by the Performance Co-Pilot
+pmlogsummary utility.  This utility produces various averages,
+minima, maxima, and other calculations based on the performance
+data stored in a PCP archive.  The Perl interface is ideal for
+exporting this data into third-party tools (e.g. spreadsheets).
+
+#
+# perl-PCP-MMV
+#
+%package -n perl-PCP-MMV
+License: GPLv2
+Group: Applications/System
+Summary: Performance Co-Pilot (PCP) Perl bindings for PCP Memory Mapped Values
+URL: http://oss.sgi.com/projects/pcp/
+Requires: pcp = @package_version@
+
+%description -n perl-PCP-MMV
+The PCP::MMV module contains the Perl language bindings for
+building scripts instrumented with the Performance Co-Pilot
+(PCP) Memory Mapped Value (MMV) mechanism.
+This mechanism allows arbitrary values to be exported from an
+instrumented script into the PCP infrastructure for monitoring
+and analysis with pmchart, pmie, pmlogger and other PCP tools.
+
 %if %sgi_chroot_build
 %debug_package
 %endif
 
-# In .census is exist, then no setup is necessary, just go and do the build,
+# If .census exists, then no setup is necessary, just go and do the build,
 # otherwise run setup
 %prep
 if [ -f .census ] ; then
@@ -211,6 +264,15 @@ fi
 %files libs-devel -f devel_files.rpm
 %defattr(-,root,root)
 
+%files -n perl-PCP-PMDA -f perl-pcp-pmda.list
+%defattr(-,root,root)
+
+%files -n perl-PCP-LogSummary -f perl-pcp-logsummary.list
+%defattr(-,root,root)
+
+%files -n perl-PCP-MMV -f perl-pcp-mmv.list
+%defattr(-,root,root)
+
 %changelog
 * Fri Sep 04 2009 Mark Goodwin <mgoodwin@xxxxxxxxxx> - 3.0.0-5
 - bump to v3.0.0 and reconcile spec with Fedora spec
diff --git a/build/rpm/pcp_fedora.spec b/build/rpm/pcp_fedora.spec
index 6500473..da885fe 100644
--- a/build/rpm/pcp_fedora.spec
+++ b/build/rpm/pcp_fedora.spec
@@ -1,11 +1,11 @@
 Summary: System-level performance monitoring and performance management
 Name: pcp
 Version: 3.0.0
-Release: 5%{?dist}
+Release: 6%{?dist}
 License: GPLv2
 URL: http://oss.sgi.com/projects/pcp
 Group: Applications/System
-Source0: ftp://oss.sgi.com/projects/pcp/download/v3/pcp-3.0.0-5.src.tar.gz
+Source0: ftp://oss.sgi.com/projects/pcp/download/v3/pcp-3.0.0-6.src.tar.gz
 
 # Infiniband monitoring support turned off (for now)
 %define have_ibdev 0
@@ -57,6 +57,59 @@ Requires: pcp-libs = %{version}
 %description libs-devel
 Performance Co-Pilot (PCP) headers, documentation and tools for development.
 
+#
+# perl-PCP-PMDA. This is the PCP agent perl binding.
+#
+%package -n perl-PCP-PMDA
+License: GPLv2
+Group: Applications/System
+Summary: Performance Co-Pilot (PCP) Perl bindings and documentation
+URL: http://oss.sgi.com/projects/pcp/
+Requires: pcp = @package_version@
+
+%description -n perl-PCP-PMDA
+The PCP::PMDA Perl module contains the language bindings for
+building Performance Metric Domain Agents (PMDAs) using Perl.
+Each PMDA exports performance data for one specific domain, for
+example the operating system kernel, Cisco routers, a database,
+an application, etc.
+
+#
+# perl-PCP-SUMMARY
+#
+%package -n perl-PCP-LogSummary
+License: GPLv2
+Group: Applications/System
+Summary: Performance Co-Pilot (PCP) Perl bindings for pmlogsummary
+URL: http://oss.sgi.com/projects/pcp/
+Requires: pcp = @package_version@
+
+%description -n perl-PCP-LogSummary
+The PCP::LogSummary module provides a Perl module for using the
+statistical summary data produced by the Performance Co-Pilot
+pmlogsummary utility.  This utility produces various averages,
+minima, maxima, and other calculations based on the performance
+data stored in a PCP archive.  The Perl interface is ideal for
+exporting this data into third-party tools (e.g. spreadsheets).
+
+#
+# perl-PCP-MMV
+#
+%package -n perl-PCP-MMV
+License: GPLv2
+Group: Applications/System
+Summary: Performance Co-Pilot (PCP) Perl bindings for PCP Memory Mapped Values
+URL: http://oss.sgi.com/projects/pcp/
+Requires: pcp = @package_version@
+
+%description -n perl-PCP-MMV
+The PCP::MMV module contains the Perl language bindings for
+building scripts instrumented with the Performance Co-Pilot
+(PCP) Memory Mapped Value (MMV) mechanism.
+This mechanism allows arbitrary values to be exported from an
+instrumented script into the PCP infrastructure for monitoring
+and analysis with pmchart, pmie, pmlogger and other PCP tools.
+
 %prep
 %setup -q
 autoconf
@@ -199,6 +252,15 @@ fi
 %{_localstatedir}/lib/pcp/pmdas/trivial
 %{_localstatedir}/lib/pcp/pmdas/txmon
 
+%files -n perl-PCP-PMDA -f perl-pcp-pmda.list
+%defattr(-,root,root)
+
+%files -n perl-PCP-LogSummary -f perl-pcp-logsummary.list
+%defattr(-,root,root)
+
+%files -n perl-PCP-MMV -f perl-pcp-mmv.list
+%defattr(-,root,root)
+
 %changelog
-* Fri Sep 04 2009 Mark Goodwin <mgoodwin@xxxxxxxxxx> - 3.0.0-5
+* Tue Sep 09 2009 Mark Goodwin <mgoodwin@xxxxxxxxxx> - 3.0.0-6
 - initial import into Fedora
diff --git a/src/cpan/LogSummary/GNUmakefile b/src/cpan/LogSummary/GNUmakefile
index aa4154b..6ea16f6 100644
--- a/src/cpan/LogSummary/GNUmakefile
+++ b/src/cpan/LogSummary/GNUmakefile
@@ -50,6 +50,9 @@ test dist: Makefile
 include $(BUILDRULES)
 
 install: default
+       $(PERLMAKE) -f Makefile pure_install PERL_INSTALL_ROOT=$$DIST_ROOT
+       find $$DIST_ROOT -name .packlist -exec mv '{}' 
$(TOPDIR)/perl-pcp-logsummary.list ';'
+       sed -e 's@'$$DIST_ROOT'@@' -i $(TOPDIR)/perl-pcp-logsummary.list
 
 install_perl:
        $(PERLMAKE) -f Makefile install $(INSTALLER_OPTIONS)
diff --git a/src/cpan/MMV/GNUmakefile b/src/cpan/MMV/GNUmakefile
index ec9f78a..63390e7 100644
--- a/src/cpan/MMV/GNUmakefile
+++ b/src/cpan/MMV/GNUmakefile
@@ -55,6 +55,9 @@ test dist: MMV.o
 include $(BUILDRULES)
 
 install: default
+       $(PERLMAKE) -f Makefile pure_install PERL_INSTALL_ROOT=$$DIST_ROOT
+       find $$DIST_ROOT -name .packlist -exec mv '{}' 
$(TOPDIR)/perl-pcp-mmv.list ';'
+       sed -e 's@'$$DIST_ROOT'@@' -i $(TOPDIR)/perl-pcp-mmv.list
 
 install_perl:
        $(PERLMAKE) -f Makefile install $(INSTALLER_OPTIONS)
diff --git a/src/cpan/PMDA/GNUmakefile b/src/cpan/PMDA/GNUmakefile
index 565f3f2..5b203e1 100644
--- a/src/cpan/PMDA/GNUmakefile
+++ b/src/cpan/PMDA/GNUmakefile
@@ -60,6 +60,9 @@ test dist: PMDA.o
 include $(BUILDRULES)
 
 install: default
+       $(PERLMAKE) -f Makefile pure_install PERL_INSTALL_ROOT=$$DIST_ROOT
+       find $$DIST_ROOT -name .packlist -exec mv '{}' 
$(TOPDIR)/perl-pcp-pmda.list ';'
+       sed -e 's@'$$DIST_ROOT'@@' -i $(TOPDIR)/perl-pcp-pmda.list
 
 install_perl:
        $(PERLMAKE) -f Makefile install $(INSTALLER_OPTIONS)
diff --git a/src/pmns/.gitignore b/src/pmns/.gitignore
index c586d41..ea82cdb 100644
--- a/src/pmns/.gitignore
+++ b/src/pmns/.gitignore
@@ -1,3 +1,4 @@
 pmnsdel
 pmnsmerge
 stdpmid
+.NeedRebuild
<Prev in Thread] Current Thread [Next in Thread>