Hello community,

here is the log from the commit of package pcp for openSUSE:Factory
checked in at Mon Aug 15 15:03:09 CEST 2011.



--------
--- pcp/pcp.changes     2010-02-11 01:45:11.000000000 +0100
+++ /mounts/work_src_done/STABLE/pcp/pcp.changes        2011-08-10 
13:02:32.000000000 +0200
@@ -1,0 +2,533 @@
+Wed Aug 10 12:39:05 CEST 2011 - [email protected]
+
+- Update to pcp-3.5.8.
+  + Rework rsyslog PMDA to remove Switch use, very odd behaviour
+    observed on RHEL5.2 (mysteriously failing to compile).
+  + Add in Kens scripting defenses against dodgey toolchains.
+
+-------------------------------------------------------------------
+Tue Aug  9 10:56:34 CEST 2011 - [email protected]
+
+- Update to pcp-3.5.7.
+  + Fix build issue on SLES11 SP1 IA64 systems.
+  + Improved rsyslog PMDA handling of queue metrics.
+  + Add open file-descriptor count metric to the Linux PMDA.
+  + Implement logger PMDA line-oriented event mode.
+  + Add regular expression based event filtering in logger PMDA.
+  + The default pmcd.conf now has an access control section, and
+    all remote store operations are blocked by default.
+
+-------------------------------------------------------------------
+Mon Aug  1 18:50:18 CEST 2011 - [email protected]
+
+- Update to pcp-3.5.6.
+  + Fix warning from pmie_daily with some /bin/pwd versions.
+  + Numerous Debian packaging updates for lintian cleanliness.
+  + Fixed typos in several man pages.
+  + Added ElasticSearch PMDA.
+  + Fix build on RHEL4 with older sys/queue.h variant.
+
+-------------------------------------------------------------------
+Thu Jul  7 12:17:17 CEST 2011 - [email protected]
+
+- Update to pcp-3.5.5.
+  + Resolve Debian packaging issues preventing new uploads.
+  + Fix warnings from pmie_check with some /bin/pwd versions.
+
+- Update to pcp-3.5.4.
+  + Fix warnings from pmlogger_check with some /bin/pwd versions.
+
+- Update to pcp-3.5.3.
+  + Remove reliance on a cpp binary being installed locally.
+  + Ensure compressed pmie log files are also cleaned up daily.
+  + Extend the event store mechanism to be more generally useful.
+  + Add memory limiting functionality to pmdalogger.
+  + Add SQLServer metric for user settable queries.
+  + Fix potential sigsegv in pmprobe fetching multiple live values.
+  + Perl changes for Solaris.
+  + Fix Fedora15 build relating to handling of systemd.
+  + Solaris pmda zpool_vdev_name() api change.
+  + Update sar2pcp for sysstat version 9.1.7.
+  + Resolve realloc issue in event metric handling in libpcp_pmda.
+
+- Update to pcp-3.5.2.
+  + pmlogreduce - fix 2 problems (memory leak, additional mark records)
+  + Initial version of pmdalogger, from David Smith, a log monitoring
+    PMDA exporting event metrics.
+  + Make Windows drive instance domain code less chatty.
+  + RC scripts and pmie_check - Mac OS X porting
+  + pmlogger_check - symbolic link issue fixed
+  + Add in the rsyslog PMDA (http://www.rsyslog.com)
+  + Extend PCP::PMDA so that the log tail mode can be used on named papes.
+  + Numerous updates to the Perl packaging infrastructure
+  + Fix build when $HOME is not set.
+  + pmlogconf - another non-posix awk issue fixed
+  + Darwin pmda - filesys.maxfiles metric
+  + pmie_daily - assorted minor fixups
+  + Unix domain socket issue found on Mac OS X
+  + pmcd config parsing error handling cleanup
+  + Quieten pmevent output in the absence of new events.
+  + Pass process ID out on success of __pmProcessCreate.
+  + pmdaproc.sh - add PMDA_INTERFACE_5 support
+  + pcp_completion.sh - add pmevent for bash metic completion
+  + pmevent - add instance domain support
+  + Bugfix: fetching hinv.cpu.* aborts if cpu indom is not initialized
+  + Rearrange the per-CPU intr metrics on Linux to use dynamic namespace
+  + Add perl modules into Mac OS X installations
+  + Additional vmstat metrics added to Linux kernel PMDA
+  + Fix pmieconf after syscall metrics went away on Linux
+  + pmevent - new util to report event records, with instance domain support
+  + sample PMDA - instance domain for event records metric
+  + pmval, pminfo - man page typo corrections
+  + pmval - fix typo in error message
+  + pmlogextract, pmlogreduce - auto volume switch at 2^31 bytes
+  + pmnscomp - defaults to Version 2 of the compiled PMNS
+  + Remove unconditional diagnostic in MMV agent, log spam
+  + Rework the code that uncompresses archives for Win32
+  + Updates to Win32 makefiles to get a clean package build
+  + Enable compressed log processing for Windows as well
+  + Sample event consumer code for Windows ETW
+  + Update PDH Win32 headers to use those from current mingw-m64 tree
+  + Win32 socket error messages are reporting correctly
+  + Great strides in getting error reporting correct on Windows
+  + Add Win32 pthread wrapper for threading work on Windows
+  + Add PowerDNS recursor stats to the pdns PMDA
+
+- Update to pcp-3.5.0.
+  + Infrastucture support for doing distributed event tracing with PCP.
+    This includes a new metric type (PM_TYPE_EVENT), cunning mechanisms
+    for encoding event records in pmResults, and providing PMDAs with
+    per-client context connection information allowing agents to track
+    which clients have seen which parts of a trace stream so far.  Some
+    reference uses of these extensions can be seen in pmdasample and in
+    the pmcd PMDA as well.
+  + Transparent support for archive de-compression by clients.
+  + Manual page formatting errors corrected.
+  + Fix a pmDupContext memory corruption issue seen with derived metrics.
+  + Added a one-trip optimisation/guard to pcp.env
+  + Improved pmdaFetch and pmdaFetchCallback man pages with respect to
+    return codes and value memory allocation models.
+  + Fix for Windows unintentionally allowing multiple pmcd processes
+    to startup and bind to the same port, with "undefined" results.
+  + Fix Windows services interaction, preventing pmcd service stop.
+  + Fix Mac OS X scandir memory leak on empty directories.
+  + Fix Mac OS X mem.util.wired metric, was exporting the wrong value.
+  + Correct the handling of SLES11 distro identification (lsb-release
+    file not used again, on SuSE Linux distributions).
+  + Fix postfix PMDA log file path handling for Redhat Linux distros.
+  + Extend Perl PMDA interfaces to allow additional metrics to be
+    added at runtime (now makes use of dynamic namespace support).
+  + Set KEEPALIVE option on pmproxy client sockets, mirroring pmcd
+    behaviour and reducing open file descriptor pressure.
+  + Improvements to the native Windows version of pmlogger, preventing
+    it from exiting prematurely thanks to a socket read race condition.
+  + Fix /proc/interrupts parser in Linux PMDA, thanks to Arthur Kepner.
+
+-------------------------------------------------------------------
+Mon Jan 24 15:00:50 CET 2011 - [email protected]
+
+- Update to pcp-3.4.0.
+  + Add new libpcp_import C API library to pcp-libs.
+  + Add perl-PCP-LogImport RPM sub-package for libpcp_import perl binding.
+  + Add pcp-import-* RPM sub-packages containing front-end tools for
+    importing data from sar, iostat, generic speadsheets and mrtg.
+  + Major Solaris PMDA updates: CPUs, vnode ops, disk stats and disk queue
+    stats, switch to using pmid clusters, internal timers, ZFS Adjustable
+    Replacement Cache stats, new help text, memory metrics, fsflush stats.
+  + Use Solaris devinfo to get information about pretty disk names.
+  + Fix a memory leak in Perl PMDA wrapper string handling.
+  + Use correct structure to extrace zpool write counters in Solaris PMDA.
+  + pmafm now supports multiple -a arguments.
+  + Fix pmie multiple -a options bug.
+  + Fix pmdaInit() callback handling where it did not handle all the
+    interface versions correctly.
+  + Quote filenames reported by pmwtf, else awk can get confused.
+  + Fix pmdawindows missing metrics help text.
+  + Add network interface speed metrics into pmdawindows.
+  + Fix pmdalinux handling of long network interface names.
+  + Updated pmdaapache to use cross-platform http library.
+  + Updated pmdaapache install process to allow port selection.
+
+- Update to pcp-3.3.3.
+  + Fix two off-by-one errors in NUMA metrics in Linux PMDA.
+  + Rework timezone environment variable handling to be able to
+    coexist more peacefully with Perl.
+  + Remove Fedora specfile now that this is in Fedora CVS.
+
+- Update to pcp-3.3.2.
+  + Fix FreeBSD build and packaging issues affecting Debian.
+  + Move PCP::Glider Perl code into core PCP with other Perl modules.
+  + Avoid a mingw64-compiler-runtime bug in gettimeofday.
+  + Fix spec file issue in Fedora/RHEL builds.
+  + Add in the gpsd PMDA.
+
+- Update to pcp-3.3.1.
+  + Fix a sigsegv in pmdalinux in the kernel.pernode.cpu metrics.
+  + Don't kill dbpmda if namespace cannot be loaded.
+  + Resolve a Windows build error under latest toolchain.
+  + Some minor pmieconf and pmimport related cleanups.
+
+- Update to pcp-3.3.0.
+  + Rework pmlogconf utility - version 2.0 ondisk format.
+  + Initial support for Linux kernel cgroup subsystem, using dynamic
+    metrics (cpu sets, cpu sched, cpu acct, memory, ...)
+  + Fix per-process I/O (proc.io.*) metric values.
+  + Fix potential SEGV in derived metrics when pmcd connection lost.
+  + Fix to allow pmlogger to log derived metrics.
+  + Fix open file descriptor leak in Linux disk scheduler code.
+  + Postfix PMDA updated to report aggregate stats from mail.log parsing.
+  + Add per-node CPU metrics to Linux kernel agent.
+  + Integrate pmieconf into the build, modernisation and porting work.
+  + Add install-sh to the set of pcp-internal programs for external code.
+  + Improved checking of PMDA domain numbers.
+  + Allow use of SunStudio compiler on Solaris.
+  + Add load average metrics to Solaris kernel agent.
+  + Windows 7 porting work.
+  + Make Win32 build work with more recent versions of gcc and Perl.
+  + Fix pmie [no]match_inst botch, tweak sleepTight reporting.
+  + Allow \$ for pmie regular expressions.
+  + Ensure pmlogger doesn't write extended pmcd host syntax as hostname.
+  + Switch over to not using local context for bash completion.
+  + Improve Lustre agent metric help text.
+  + Added a readonly filesystems metric into Linux kernel agent.
+  + Ensure xfs.buffer metrics are always properly refreshed.
+  + Add Linux kernel statistics related to XFS btree operations.
+
+- Update to pcp-3.2.1.
+  + Export information about ZFS snapshots
++++ 336 more lines (skipped)
++++ between pcp/pcp.changes
++++ and /mounts/work_src_done/STABLE/pcp/pcp.changes

calling whatdependson for head-i586


Old:
----
  pcp-2.5.0-GCC44.patch
  pcp-2.5.0-SuSE.diff
  pcp-2.5.0-buffer-overflow.diff
  pcp-2.5.0-ndbm.diff
  pcp-2.5.0-rpmlint.diff
  pcp-2.5.0.src.tar.gz
  pcp-gcc43.patch
  pcp-init.patch
  pcp-pic.diff

New:
----
  pcp-3.5.8-1.src.tar.gz
  static_lib_perms.diff

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ pcp.spec ++++++
--- /var/tmp/diff_new_pack.kp1yVD/_old  2011-08-15 14:52:43.000000000 +0200
+++ /var/tmp/diff_new_pack.kp1yVD/_new  2011-08-15 14:52:43.000000000 +0200
@@ -1,7 +1,7 @@
 #
-# spec file for package pcp (Version 2.5.0)
+# spec file for package pcp
 #
-# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -19,250 +19,363 @@
 
 
 Name:           pcp
-BuildRequires:  bison flex gcc-c++ ncurses-devel procps
-Version:        2.5.0
-Release:        130
-Summary:        Performance Co-Pilot (system-level performance monitoring)
-License:        GPLv2+
+Version:        3.5.8
+Release:        1
+%define pcp_release 1
+Summary:        System-level performance monitoring and performance management
+License:        GPLv2
 Url:            http://oss.sgi.com/projects/pcp
 Group:          System/Monitoring
-Source:         pcp-%{version}.src.tar.gz
-Patch0:         pcp-%{version}-SuSE.diff
-Patch1:         pcp-%{version}-ndbm.diff
-Patch2:         pcp-%{version}-rpmlint.diff
-Patch3:         pcp-gcc43.patch
-Patch4:         pcp-init.patch
-Patch5:         pcp-2.5.0-buffer-overflow.diff
-Patch6:         pcp-xenbuild.patch
-Patch7:         pcp-2.5.0-GCC44.patch
-Patch8:         pcp-pic.diff
-PreReq:         %insserv_prereq  %fillup_prereq permissions
+Source:         %{name}-%{version}-%{pcp_release}.src.tar.gz
+Requires:       pcp-libs = %{version}
+Requires:       bash gawk sed grep fileutils findutils
+%if "%{_vendor}" == "suse"
+Requires:       sysconfig cpp 
+%else
+Requires:       initscripts
+%endif
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
+BuildRequires:  autoconf bison flex ncurses-devel procps readline-devel
+BuildRequires:  perl(ExtUtils::MakeMaker)
+Patch6:         pcp-xenbuild.patch
+Patch9:         static_lib_perms.diff
 
 %description
-Performance Co-Pilot (PCP) is a framework and services to support
+Performance Co-Pilot (PCP) provides a framework and services to support
 system-level performance monitoring and performance management.
 
+The PCP open source release provides a unifying abstraction for all of
+the interesting performance data in a system, and allows client
+applications to easily retrieve and process any subset of that data. 
+
+#
+# pcp-libs
+#
+%package libs
+License:        LGPLv2+
+Group:          System/Libraries
+Summary:        Performance Co-Pilot run-time libraries
+Url:            http://oss.sgi.com/projects/pcp/
+Obsoletes:      pcp < 3.0
+
+%description libs
+Performance Co-Pilot (PCP) run-time libraries
 
+#
+# pcp-libs-dvel
+#
+%package libs-devel
+License:        GPLv2
+Group:          Development/Libraries/Other
+Summary:        Performance Co-Pilot (PCP) development headers and 
documentation
+Url:            http://oss.sgi.com/projects/pcp/
+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:          System/Monitoring
+Summary:        Performance Co-Pilot (PCP) Perl bindings and documentation
+Url:            http://oss.sgi.com/projects/pcp/
+Requires:       pcp >= %{version} perl-base
+
+%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-MMV
+#
+%package -n perl-PCP-MMV
+License:        GPLv2
+Group:          System/Monitoring
+Summary:        Performance Co-Pilot (PCP) Perl bindings for PCP Memory Mapped 
Values
+Url:            http://oss.sgi.com/projects/pcp/
+Requires:       pcp >= %{version} perl-base
+
+%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.
 
-Authors:
---------
-    SGI OSS <[email protected]>
+#
+# perl-PCP-LogImport
+#
+%package -n perl-PCP-LogImport
+License:        GPLv2
+Group:          System/Monitoring
+Summary:        Performance Co-Pilot Perl bindings for importing external data
+Url:            http://oss.sgi.com/projects/pcp/
+Requires:       pcp >= %{version} perl-base
+
+%description -n perl-PCP-LogImport
+The PCP::LogImport module contains the Perl language bindings for
+importing data in various 3rd party formats into PCP archives so
+they can be replayed with standard PCP monitoring tools.
 
-%package devel
-Summary:        Include Files and Libraries mandatory for Development
-Group:          Development/Libraries/C and C++
-License:        GPLv2+
-Requires:       %{name} = %{version}
+#
+# perl-PCP-LogSummary
+#
+%package -n perl-PCP-LogSummary
+License:        GPLv2
+Group:          System/Monitoring
+Summary:        Performance Co-Pilot Perl bindings for processing pmlogsummary 
output
+Url:            http://oss.sgi.com/projects/pcp/
+Requires:       pcp >= %{version} perl-base
+
+%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).
 
-%description devel
-This package contains all necessary include files and libraries needed
-to develop applications that require these.
+#
+# pcp-import-sar2pcp
+#
+%package import-sar2pcp
+License:        LGPLv2+
+Group:          System/Monitoring
+Summary:        Performance Co-Pilot tools for importing sar data into PCP 
archive logs
+Url:            http://oss.sgi.com/projects/pcp/
+Requires:       pcp-libs >= %{version} perl-PCP-LogImport >= %{version} sysstat
+
+%description import-sar2pcp
+Performance Co-Pilot (PCP) front-end tools for importing sar data
+into standard PCP archive logs for replay with any PCP monitoring tool.
 
+#
+# pcp-import-iostat2pcp
+#
+%package import-iostat2pcp
+License:        LGPLv2+
+Group:          System/Monitoring
+Summary:        Performance Co-Pilot tools for importing iostat data into PCP 
archive logs
+Url:            http://oss.sgi.com/projects/pcp/
+Requires:       pcp-libs >= %{version} perl-PCP-LogImport >= %{version} sysstat
+
+%description import-iostat2pcp
+Performance Co-Pilot (PCP) front-end tools for importing iostat data
+into standard PCP archive logs for replay with any PCP monitoring tool.
 
+#
+# pcp-import-sheet2pcp
+#
+%package import-sheet2pcp
+License:        LGPLv2+
+Group:          System/Monitoring
+Summary:        Performance Co-Pilot tools for importing spreadsheet data into 
PCP archive logs
+Url:            http://oss.sgi.com/projects/pcp/
+Requires:       pcp-libs >= %{version} perl-PCP-LogImport >= %{version} sysstat
+
+%description import-sheet2pcp
+Performance Co-Pilot (PCP) front-end tools for importing spreadsheet data
+into standard PCP archive logs for replay with any PCP monitoring tool.
 
-Authors:
---------
-    SGI OSS <[email protected]>
+#
+# pcp-import-mrtg2pcp
+#
+%package import-mrtg2pcp
+License:        LGPLv2+
+Group:          System/Monitoring
+Summary:        Performance Co-Pilot tools for importing MTRG data into PCP 
archive logs
+Url:            http://oss.sgi.com/projects/pcp/
+Requires:       pcp-libs >= %{version} perl-PCP-LogImport >= %{version}
+
+%description import-mrtg2pcp
+Performance Co-Pilot (PCP) front-end tools for importing MTRG data
+into standard PCP archive logs for replay with any PCP monitoring tool.
 
 %prep
 %setup -q
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3
-%patch4
-%patch5
 %patch6
-%patch7 -p1
-%patch -P 8 -p1
-
-%build
-%{suse_update_config -f}
+%patch9
 autoconf
-YACC="yacc" ./configure \
-                       --bindir=%{_bindir}     \
-                       --mandir=%{_mandir}     \
+./configure --bindir=%{_bindir} \
                        --libdir=%{_libdir}     \
-                       --datadir=%{_datadir}/pcp \
-                       --sysconfdir=/etc/pcp   \
-                       --sbindir=/usr/lib/pcp  \
-                       --localstatedir=/var/lib/pcp
-export RPM_OPT_FLAGS=${RPM_OPT_FLAGS/-fomit-frame-pointer/}
-CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" \
+           --libexecdir=%{_libexecdir} && touch config.done
+
+%clean
+[ ! -z "$DIST_ROOT" ] && rm -rf $DIST_ROOT
+rm -Rf $RPM_BUILD_ROOT
+
+%build
 /usr/bin/gmake default_pcp
 
 %install
+BACKDIR=`pwd`;
 DIST_ROOT=$RPM_BUILD_ROOT
 DIST_MANIFEST=`pwd`/install.manifest
 export DIST_ROOT DIST_MANIFEST
 rm -f $DIST_MANIFEST
 /usr/bin/gmake install_pcp
-# local setting
-install -d $RPM_BUILD_ROOT/usr/sbin
-./install-sh -S ../../etc/init.d/pcp /usr/sbin/rcpcp
-./install-sh -S ../../etc/init.d/pmie /usr/sbin/rcpmie
-./install-sh -S ../../etc/init.d/pmproxy /usr/sbin/rcpmproxy
+
 set +x
-PCP_CONF=src/include/pcp.conf
+PCP_CONF=$BACKDIR/src/include/pcp.conf
 export PCP_CONF
-. src/include/pcp.env
-sort $DIST_MANIFEST | uniq | $PCP_AWK_PROG ' 
-$1 == "d" { printf ("%%%%dir %%%%attr(%%s,root,root) %%s\n", $2, $5); } 
-$1 == "f" { if ( match ($6, "'$PCP_VAR_DIR'/config") ||
-                match ($6, "'$PCP_SYSCONFIG_DIR'") ) {
-              printf ("%%%%config ");
-           }
-           if (match ($6, "'$PCP_MAN_DIR'") || match ($6, "'$PCP_DOC_DIR'")) {
-               printf ("%%%%doc ");
+. $BACKDIR/src/include/pcp.env
+LIBFILELIST=`ls -1 $BACKDIR/debian/*.{install,dirs} | fgrep -v -- -dev. | 
fgrep -v -- -import`
+DEVFILELIST=`ls -1 $BACKDIR/debian/*-dev.{install,dirs}`
+
+#
+# Package split: pcp, pcp-libs, pcp-libs-devel, pcp-import-*
+# -libs gets first pick, then libs-devel, then pcp-import-*
+# The base package catches-all remaining.
+#
+sed -e 's/^/\//' $LIBFILELIST >libs_files
+sed -e 's/^/\//' $DEVFILELIST >devel_files
+%ifarch ia64 x86_64 ppc64
+sed -i -e 's/usr\/lib\//usr\/lib64\//' libs_files
+sed -i -e 's/usr\/lib\//usr\/lib64\//' devel_files
+%endif
+
+#
+# some special cases for devel
+awk '{print $NF}' $DIST_MANIFEST |\
+egrep 'pcp\/(examples|demos)|pmdas\/(sample|simple|trivial|txmon)' 
>>devel_files
+
+#
+# Patterns for files to be marked \%config(noreplace).
+# Note: /etc/pcp.conf is \%config, but not noreplace
+# and is treated specially below.
+cat >conf_files <<EOFEOF
+etc/pcp.env
+pmcd/pmcd.conf
+pmcd/pmcd.options
+pmcd/rc.local
+pmie/config.default
+pmie/control
+pmie/crontab
+pmlogger/config.default
+pmlogger/control
+pmlogger/crontab
+pmproxy/pmproxy.options
+bash_completion.d/pcp
+EOFEOF
+
+#
+# Files for the pcp-import subpackages. We use these sub-packages
+# to isolate the (somwhat exotic) dependencies for these tools
+awk '{print $NF}' $DIST_MANIFEST | egrep 'sar2pcp' >import_sar2pcp_files
+awk '{print $NF}' $DIST_MANIFEST | egrep 'iostat2pcp' >import_iostat2pcp_files
+awk '{print $NF}' $DIST_MANIFEST | egrep 'sheet2pcp' >import_sheet2pcp_files
+awk '{print $NF}' $DIST_MANIFEST | egrep 'mrtg2pcp' >import_mrtg2pcp_files
+
+rm -f devel_files.rpm libs_files.rpm base_files.rpm import_*_files.rpm
+sort -u $DIST_MANIFEST | $PCP_AWK_PROG ' 
+BEGIN {
+    while( getline < "libs_files") lib[$0]=1;
+    while( getline < "devel_files") dev[$0]=1;
+    while( getline < "import_sar2pcp_files") import_sar2pcp[$0]=1;
+    while( getline < "import_iostat2pcp_files") import_iostat2pcp[$0]=1;
+    while( getline < "import_sheet2pcp_files") import_sheet2pcp[$0]=1;
+    while( getline < "import_mrtg2pcp_files") import_mrtg2pcp[$0]=1;
+    while( getline < "conf_files") conf[nconf++]=$0;
+}
+{
+    if (lib[$NF]) f="libs_files.rpm";
+    else if (dev[$NF]) f="devel_files.rpm";
+    else if (import_sar2pcp[$NF]) f="import_sar2pcp_files.rpm";
+    else if (import_iostat2pcp[$NF]) f="import_iostat2pcp_files.rpm";
+    else if (import_sheet2pcp[$NF]) f="import_sheet2pcp_files.rpm";
+    else if (import_mrtg2pcp[$NF]) f="import_mrtg2pcp_files.rpm";
+    else f="base_files.rpm"
+}
+$1 == "d" { printf ("%%%%dir %%%%attr(%s,root,root) %s\n", $2, $5) >> f } 
+
+$1 == "f" && $6 ~ "etc/pcp.conf" { printf ("%%%%config ") >> f; }
+$1 == "f" {
+           for (i=0; i < nconf; i++) {
+               if ($6 ~ conf[i]) {
+                   printf ("%%%%config(noreplace) ") >> f;
+                   break;
            }
-           g = $4;
-           if (g == "trusted") {
-               printf ("%%%%verify(not mode group) ");
-           } else if (g == "bin") {
-               g = "root";
            }
-           printf ("%%%%attr(%%s,root,%%s) %s\n", $2, g, $6); }
-$1 == "l" { printf "%%%%attr(-,root,root) %%s\n", $3; }
-' | tee files-all.rpm |
-perl -e '
-  open(N, "> files.rpm") || die;
-  open(D, "> files-devel.rpm") || die;
-  while ( <> ) {
-    if ( m{(include|man3|/var/lib/pcp/(pmdas|demos))} || m{\.(c|h|so)$} ) {
-      print D;
-    } else {
-      print N;
+           if (match ($6, "'$PCP_MAN_DIR'") || match ($6, "'$PCP_DOC_DIR'")) {
+               printf ("%%%%doc ") >> f;
     }
-  }' 
-set -x
+           printf ("%%%%attr(%s,root,root) %s\n", $2, $6) >> f }
+$1 == "l" { print "%attr(0777,root,root)", $3 >> f }'
 
-%clean
-[ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ] || rm -rf $RPM_BUILD_ROOT
-%verifyscript
-%verify_permissions -e /usr/lib/pcp/pmpost
+# add /etc/init.d/X symlinks at /usr/sbin/rcX
+%__install -d -m 0755 ${RPM_BUILD_ROOT}/%{_sbindir}
+for script in pcp pmie pmproxy; do
+        ln -s "%{_sysconfdir}/init.d/${script}" 
"${RPM_BUILD_ROOT}/%{_sbindir}/rc${script}"
+       echo "%{_sbindir}/rc${script}" >> base_files.rpm
+done
 
-%files -f files.rpm
+set -x
 
-%files -f files-devel.rpm devel
+%post
+/sbin/ldconfig
 
 %preun
-if [ "$1" -eq 0 ]
-then
-    #
-    # Stop daemons before erasing the package
-    #
-    if [ -f /etc/pcp.env ] ; then
-       . /etc/pcp.env
-       $PCP_RC_DIR/pcp stop >/dev/null 2>&1
-       $PCP_RC_DIR/pmie stop >/dev/null 2>&1
-       [ -x $PCP_RC_DIR/pmproxy ] && $PCP_RC_DIR/pmproxy stop >/dev/null 2>&1
-       rm -f $PCP_VAR_DIR/pmns/.NeedRebuild
-    fi
-fi
-exit 0
+%{?stop_on_removal:%{stop_on_removal pcp pmproxy pmie}}
 
 %postun
-%insserv_cleanup
-exit 0
-
-%post
-%run_permissions
-if [ -f /etc/pcp.env ] ; then
-    . /etc/pcp.env
-    . $PCP_SHARE_DIR/lib/rc-proc.sh
-    touch $PCP_VAR_DIR/pmns/.NeedRebuild
-    chmod 644 $PCP_VAR_DIR/pmns/.NeedRebuild
-    if [ ! -f $PCP_VAR_DIR/pmns/root ]
-    then
-       if [ -f $PCP_VAR_DIR/pmns/root.saved ]
-       then
-           # restore the previous pmns after upgrade
-           mv $PCP_VAR_DIR/pmns/root.saved $PCP_VAR_DIR/pmns/root
-       else
-           # empty initial name space (prior to Rebuild)
-           echo "root {" >$PCP_VAR_DIR/pmns/root
-           echo "}" >>$PCP_VAR_DIR/pmns/root
-       fi
-       chmod 644 $PCP_VAR_DIR/pmns/root
-    else
-       # root pmns already exists, so we need to restore
-       # pmcd.conf and pmcd.options if they were saved.
-       for f in $PCP_PMCDCONF_PATH $PCP_PMCDOPTIONS_PATH
-       do
-           if [ -f $f -a -f $f.rpmsave ]
-           then
-               mv $f $f.rpmnew
-               mv $f.rpmsave $f
-           fi
-       done
-    fi
-    #
-    # delete *.rpmorig turds that are the same as their new version
-    find $PCP_VAR_DIR/config -name \*.rpmorig -print \
-    | while read f
-    do
-       if diff $f `basename $f .rpmorig` >/dev/null 2>&1
-       then
-           rm -f $f
-       fi
-    done
-    x=$PCP_SHARE_DIR/lib/.migrate_pcp_var_dir
-    [ -x $x ] && $x
-fi
-%{fillup_and_insserv pcp}
-exit 0
-
-%triggerpostun -- pcp < 2.1.9
-#
-# Fix for bug where pcp-2.1.6 %postun script would chkconfig pcp off
-# and remove the .NeedRebuild and .NeedUpdate files. This was done
-# *after* the %post script of the new version, causing upgrade havoc.
-#
-if [ "$1" -gt 0 ]
-then
-    . /etc/pcp.env
-    . $PCP_SHARE_DIR/lib/rc-proc.sh
-    touch $PCP_VAR_DIR/pmns/.NeedRebuild
-    chmod 644 $PCP_VAR_DIR/pmns/.NeedRebuild
-fi
-exit 0
-
-%triggerun -- pcp < 2.2.0-18
-#
-# first half of fix for bug #825229 where upgrade
-# clobbers $PCP_VAR_DIR/pmns/root
-#
-if [ "$1" -gt 0 ]
-then
-    . /etc/pcp.env
-    if [ -f $PCP_VAR_DIR/pmns/root ]
-    then
-       cp $PCP_VAR_DIR/pmns/root $PCP_VAR_DIR/pmns/root.saved 
-    fi
-fi
-exit 0
-
-%triggerpostun -- pcp < 2.2.0-18
-#
-# second half of the fix for bug #825229
-#
-if [ "$1" -gt 0 ]
-then
-    . /etc/pcp.env
-    if [ ! -f $PCP_VAR_DIR/pmns/root ]
-    then
-       if [ -f $PCP_VAR_DIR/pmns/root.saved ]
-       then
-           mv $PCP_VAR_DIR/pmns/root.saved $PCP_VAR_DIR/pmns/root
-       else
-           # empty initial name space (prior to Rebuild)
-           echo "root {" >$PCP_VAR_DIR/pmns/root
-           echo "}" >>$PCP_VAR_DIR/pmns/root
-       fi
-       chmod 644 $PCP_VAR_DIR/pmns/root
-    fi
-fi
-exit 0
+/sbin/ldconfig
+%{?restart_on_update:%{restart_on_update pcp pmproxy pmie}}
+%{?insserv_cleanup:%{insserv_cleanup}}
+
+%post libs -p /sbin/ldconfig
+
+%postun libs -p /sbin/ldconfig
+
+%files -f base_files.rpm
+%defattr(-,root,root)
+%dir /usr/lib*/pcp
+%dir /var/lib/pcp/config/pmlogconf
+
+%files libs -f libs_files.rpm
+%defattr(-,root,root)
+
+%files libs-devel -f devel_files.rpm
+%defattr(-,root,root)
+
+%files import-sar2pcp -f import_sar2pcp_files.rpm
+%defattr(-,root,root)
+
+%files import-iostat2pcp -f import_iostat2pcp_files.rpm
+%defattr(-,root,root)
+
+%files import-sheet2pcp -f import_sheet2pcp_files.rpm
+%defattr(-,root,root)
+
+%files import-mrtg2pcp -f import_mrtg2pcp_files.rpm
+%defattr(-,root,root)
+
+%files -n perl-PCP-PMDA -f perl-pcp-pmda.list
+%defattr(-,root,root)
+%dir /usr/lib/perl5/vendor_perl/*/*-linux-thread-multi/PCP
+%dir /usr/lib/perl5/vendor_perl/*/*-linux-thread-multi/auto/PCP
+%dir /usr/lib/perl5/vendor_perl/*/*-linux-thread-multi/auto/PCP/PMDA
+
+%files -n perl-PCP-MMV -f perl-pcp-mmv.list
+%defattr(-,root,root)
+%dir /usr/lib/perl5/vendor_perl/*/*-linux-thread-multi/PCP
+%dir /usr/lib/perl5/vendor_perl/*/*-linux-thread-multi/auto/PCP
+%dir /usr/lib/perl5/vendor_perl/*/*-linux-thread-multi/auto/PCP/MMV
+
+%files -n perl-PCP-LogImport -f perl-pcp-logimport.list
+%defattr(-,root,root)
+%dir /usr/lib/perl5/vendor_perl/*/*-linux-thread-multi/PCP
+%dir /usr/lib/perl5/vendor_perl/*/*-linux-thread-multi/auto/PCP
+%dir /usr/lib/perl5/vendor_perl/*/*-linux-thread-multi/auto/PCP/LogImport
+
+%files -n perl-PCP-LogSummary -f perl-pcp-logsummary.list
+%defattr(-,root,root)
+%dir /usr/lib/perl5/vendor_perl/*/PCP
 
 %changelog

++++++ pcp-xenbuild.patch ++++++
--- /var/tmp/diff_new_pack.kp1yVD/_old  2011-08-15 14:52:43.000000000 +0200
+++ /var/tmp/diff_new_pack.kp1yVD/_new  2011-08-15 14:52:43.000000000 +0200
@@ -1,10 +1,12 @@
---- configure.in
+Index: configure.in
+===================================================================
+--- configure.in.orig
 +++ configure.in
-@@ -425,6 +425,7 @@
+@@ -545,6 +545,7 @@ NR == 1                    { if ($1 != "UID" && $1 != "US
  # Unix variants
  $2 == 1 && / init/    { print "OK"; exit }
  $2 == 1 && / \/etc\/init/ { print "OK"; exit }
 +$2 == 1 && / \/bin\/bash/ { print "OK"; exit }
- # Interix (aka SFU)
- $2 == 0 && /IdleProcess/{ print "OK"; exit }
- # Cygwin
+ # Fedora 9
+ $2 == 1 && / \/sbin\/init/ { print "OK"; exit }
+ # Fedora 15

++++++ static_lib_perms.diff ++++++
Index: src/libpcp_pmda/src/GNUmakefile
===================================================================
--- src/libpcp_pmda/src/GNUmakefile
+++ src/libpcp_pmda/src/GNUmakefile
@@ -65,7 +65,7 @@ $(LIBTARGET_V2): $(LIBTARGET_V3)
 include $(BUILDRULES)
 
 install : default
-       $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET)
+       $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET)
 ifneq "$(LIBTARGET_V1)" ""
        $(INSTALL) -S $(LIBTARGET_V3) $(PCP_LIB_DIR)/$(LIBTARGET_V1)
 endif
@@ -73,7 +73,7 @@ ifneq "$(LIBTARGET_V2)" ""
        $(INSTALL) -S $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET_V2)
 endif
 ifneq "$(STATICLIBTARGET)" ""
-       $(INSTALL) -m 755 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET)
+       $(INSTALL) -m 644 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET)
 endif
 
 default_pcp : default
Index: src/libpcp_trace/src/GNUmakefile
===================================================================
--- src/libpcp_trace/src/GNUmakefile
+++ src/libpcp_trace/src/GNUmakefile
@@ -54,12 +54,12 @@ endif
 include $(BUILDRULES)
 
 install : default
-       $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET)
+       $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET)
 ifneq "$(SYMTARGET)" ""
        $(INSTALL) -S $(LIBTARGET) $(PCP_LIB_DIR)/$(SYMTARGET)
 endif
 ifneq "$(STATICLIBTARGET)" ""
-       $(INSTALL) -m 755 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET)
+       $(INSTALL) -m 644 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET)
 endif
 
 default_pcp : default
Index: src/libpcp_gui/src/GNUmakefile
===================================================================
--- src/libpcp_gui/src/GNUmakefile
+++ src/libpcp_gui/src/GNUmakefile
@@ -52,14 +52,14 @@ endif
 include $(BUILDRULES)
 
 install: default
-       $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET)
+       $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET)
 ifneq "$(SYMTARGET)" ""
        for tt in $(SYMTARGET); do \
            $(INSTALL) -S $(LIBTARGET) $(PCP_LIB_DIR)/$$tt || exit 1; \
        done
 endif
 ifneq "$(STATICLIBTARGET)" ""
-       $(INSTALL) -m 755 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET)
+       $(INSTALL) -m 644 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET)
 endif
 
 default_pcp:   default
Index: src/libpcp_import/src/GNUmakefile
===================================================================
--- src/libpcp_import/src/GNUmakefile
+++ src/libpcp_import/src/GNUmakefile
@@ -45,14 +45,14 @@ $(OBJECTS): $(HFILES)
 include $(BUILDRULES)
 
 install: default
-       $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET)
+       $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET)
 ifneq "$(SYMTARGET)" ""
        for tt in $(SYMTARGET); do \
                $(INSTALL) -S $(LIBTARGET) $(PCP_LIB_DIR)/$$tt || exit 1; \
        done
 endif
 ifneq "$(STATICLIBTARGET)" ""
-       $(INSTALL) -m 755 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET)
+       $(INSTALL) -m 644 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET)
 endif
 
 default_pcp: default
Index: src/libpcp_mmv/src/GNUmakefile
===================================================================
--- src/libpcp_mmv/src/GNUmakefile
+++ src/libpcp_mmv/src/GNUmakefile
@@ -40,14 +40,14 @@ default: pcp $(LIBTARGET) $(SYMTARGET) $
 include $(BUILDRULES)
 
 install: default
-       $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET)
+       $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET)
 ifneq "$(SYMTARGET)" ""
        for tt in $(SYMTARGET); do \
                $(INSTALL) -S $(LIBTARGET) $(PCP_LIB_DIR)/$$tt || exit 1; \
        done
 endif
 ifneq "$(STATICLIBTARGET)" ""
-       $(INSTALL) -m 755 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET)
+       $(INSTALL) -m 644 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET)
 endif
 
 default_pcp: default
Index: src/libpcp/src/GNUmakefile
===================================================================
--- src/libpcp/src/GNUmakefile
+++ src/libpcp/src/GNUmakefile
@@ -93,14 +93,14 @@ kernel_pmda_dso     = $(TARGET_OS)
 endif
 
 install : default
-       $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET)
+       $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET)
 ifneq "$(SYMTARGET)" ""
        for tt in $(SYMTARGET); do \
            $(INSTALL) -S $(LIBTARGET) $(PCP_LIB_DIR)/$$tt || exit 1; \
        done
 endif
 ifneq "$(STATICLIBTARGET)" ""
-       $(INSTALL) -m 755 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET)
+       $(INSTALL) -m 644 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET)
 endif
 
 default_pcp : default

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to