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 - ddiss@suse.de
+
+- 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 - ddiss@suse.de
+
+- 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 - ddiss@suse.de
+
+- 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 - ddiss@suse.de
+
+- 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 - ddiss@suse.de
+
+- 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
+#
+# 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
+#
+# 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 <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: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org