From f0e8caa57c27d0302286b3197b0631feab02fb1d63d4d40c242c8fb0a9dbd93d Mon Sep 17 00:00:00 2001 From: Martin Schreiner Date: Sat, 18 May 2024 18:24:06 +0000 Subject: [PATCH 1/2] Accepting request 1174199 from home:cahu:branches:Base:System - Enable custom pcp-selinux module (bsc#1223260) OBS-URL: https://build.opensuse.org/request/show/1174199 OBS-URL: https://build.opensuse.org/package/show/Base:System/pcp?expand=0&rev=139 --- .gitattributes | 23 + .gitignore | 1 + ...ll-libraries-without-exec-permission.patch | 446 ++ 0002-Remove-CPAN-rpaths.patch | 51 + ...-Remove-runlevel-4-from-init-scripts.patch | 50 + 0005-SUSE-fy-pmsnap-control-path.patch | 35 + 0006-pmsnap-control-var-www-srv-www.patch | 25 + ...logutil-and-pmieutil-scripts-from-ty.patch | 60 + _service | 17 + pcp-6.2.1.tar.gz | 3 + pcp-rpmlintrc | 15 + pcp.changes | 2322 ++++++++++ pcp.spec | 4065 +++++++++++++++++ 13 files changed, 7113 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 0001-Install-libraries-without-exec-permission.patch create mode 100644 0002-Remove-CPAN-rpaths.patch create mode 100644 0003-Remove-runlevel-4-from-init-scripts.patch create mode 100644 0005-SUSE-fy-pmsnap-control-path.patch create mode 100644 0006-pmsnap-control-var-www-srv-www.patch create mode 100644 0010-services-switch-logutil-and-pmieutil-scripts-from-ty.patch create mode 100644 _service create mode 100644 pcp-6.2.1.tar.gz create mode 100644 pcp-rpmlintrc create mode 100644 pcp.changes create mode 100644 pcp.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/0001-Install-libraries-without-exec-permission.patch b/0001-Install-libraries-without-exec-permission.patch new file mode 100644 index 0000000..fa45a6a --- /dev/null +++ b/0001-Install-libraries-without-exec-permission.patch @@ -0,0 +1,446 @@ +From 1c78e9cae055e914a846a54a6a12acfc7525d64e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= +Date: Mon, 16 May 2022 17:31:55 +0200 +Subject: [PATCH] build: install libraries without exec permission + +Signed-off-by: David Disseldorp +--- + src/genpmda/genpmda | 4 ++-- + src/libpcp/src/GNUmakefile | 4 ++-- + src/libpcp_fault/src/GNUmakefile | 4 ++-- + src/libpcp_gui/src/GNUmakefile | 4 ++-- + src/libpcp_import/src/GNUmakefile | 4 ++-- + src/libpcp_mmv/src/GNUmakefile | 4 ++-- + src/libpcp_pmcd/src/GNUmakefile | 2 +- + src/libpcp_pmda/src/GNUmakefile | 4 ++-- + src/libpcp_trace/src/GNUmakefile | 4 ++-- + src/libpcp_web/src/GNUmakefile | 4 ++-- + src/pmdas/cifs/GNUmakefile | 4 ++-- + src/pmdas/dm/GNUmakefile | 4 ++-- + src/pmdas/docker/GNUmakefile | 4 ++-- + src/pmdas/hacluster/GNUmakefile | 4 ++-- + src/pmdas/jbd2/GNUmakefile | 4 ++-- + src/pmdas/kvm/GNUmakefile | 4 ++-- + src/pmdas/linux/GNUmakefile | 4 ++-- + src/pmdas/linux_proc/GNUmakefile | 4 ++-- + src/pmdas/linux_sockets/GNUmakefile | 4 ++-- + src/pmdas/linux_xfs/GNUmakefile | 4 ++-- + src/pmdas/linux_zfs/GNUmakefile | 4 ++-- + src/pmdas/nvidia/GNUmakefile | 5 ++--- + src/pmdas/pmcd/src/GNUmakefile | 2 +- + src/pmdas/podman/GNUmakefile | 4 ++-- + src/pmdas/rpm/GNUmakefile | 4 ++-- + src/pmdas/sendmail/GNUmakefile | 4 ++-- + src/pmdas/smart/GNUmakefile | 4 ++-- + src/pmdas/statsd/src/GNUmakefile | 4 ++-- + src/zabbix-agent/src/GNUmakefile | 2 +- + 29 files changed, 55 insertions(+), 56 deletions(-) + +Index: pcp-6.2.0/src/genpmda/genpmda +=================================================================== +--- pcp-6.2.0.orig/src/genpmda/genpmda ++++ pcp-6.2.0/src/genpmda/genpmda +@@ -899,7 +899,7 @@ install: default + \$(INSTALL) -m 755 -d \$(PCP_VAR_DIR)/pmdas + \$(INSTALL) -m 755 -d \$(PMDADIR) + \$(INSTALL) -m 755 \$(CMDTARGET) \$(PMDADIR)/\$(CMDTARGET) +- \$(INSTALL) -m 755 \$(LIBTARGET) \$(PMDADIR)/\$(LIBTARGET) ++ \$(INSTALL) -m 644 \$(LIBTARGET) \$(PMDADIR)/\$(LIBTARGET) + \$(INSTALL) -m 755 $oflag/Install \$(PMDADIR)/Install + \$(INSTALL) -m 755 $oflag/Remove \$(PMDADIR)/Remove + \$(INSTALL) -m 644 $oflag/Makefile.install \$(PMDADIR)/Makefile +@@ -962,7 +962,7 @@ install: default + \$(INSTALL) -m 755 -d \$(PCP_VAR_DIR)/pmdas + \$(INSTALL) -m 755 -d \$(PMDADIR) + \$(INSTALL) -m 755 -f \$(CMDTARGET) \$(PMDADIR)/\$(CMDTARGET) +- \$(INSTALL) -m 755 -f \$(LIBTARGET) \$(PMDADIR)/\$(LIBTARGET) ++ \$(INSTALL) -m 644 -f \$(LIBTARGET) \$(PMDADIR)/\$(LIBTARGET) + \$(INSTALL) -m 755 -f $oflag/Install \$(PMDADIR)/Install + \$(INSTALL) -m 755 -f $oflag/Remove \$(PMDADIR)/Remove + \$(INSTALL) -m 644 -f $oflag/Makefile.install \$(PMDADIR)/Makefile +Index: pcp-6.2.0/src/libpcp/src/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/libpcp/src/GNUmakefile ++++ pcp-6.2.0/src/libpcp/src/GNUmakefile +@@ -142,7 +142,7 @@ endif + + install : default + ifneq ($(LIBTARGET),) +- $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) ++ $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) + $(INSTALL) -m 644 $(LIBCONFIG) $(PCP_LIB_DIR)/pkgconfig/$(LIBCONFIG) + endif + ifneq ($(SYMTARGET),) +@@ -151,7 +151,7 @@ ifneq ($(SYMTARGET),) + done + endif + ifneq ($(STATICLIBTARGET),) +- $(INSTALL) -m 755 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET) ++ $(INSTALL) -m 644 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET) + endif + + $(XFILES): +Index: pcp-6.2.0/src/libpcp_fault/src/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/libpcp_fault/src/GNUmakefile ++++ pcp-6.2.0/src/libpcp_fault/src/GNUmakefile +@@ -147,7 +147,7 @@ derive_parser.y: derive_parser.y.in fix_ + + install : default + ifneq ($(LIBTARGET),) +- $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) ++ $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) + endif + ifneq ($(SYMTARGET),) + for tt in $(SYMTARGET); do \ +@@ -155,7 +155,7 @@ ifneq ($(SYMTARGET),) + done + endif + ifneq ($(STATICLIBTARGET),) +- $(INSTALL) -m 755 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET) ++ $(INSTALL) -m 644 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET) + endif + $(INSTALL) -m 644 $(TOPDIR)/src/include/pcp/fault.h $(PCP_INC_DIR)/fault.h + +Index: pcp-6.2.0/src/libpcp_gui/src/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/libpcp_gui/src/GNUmakefile ++++ pcp-6.2.0/src/libpcp_gui/src/GNUmakefile +@@ -54,7 +54,7 @@ include $(BUILDRULES) + + install: default + ifneq ($(LIBTARGET),) +- $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) ++ $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) + endif + ifneq ($(SYMTARGET),) + for tt in $(SYMTARGET); do \ +@@ -62,7 +62,7 @@ ifneq ($(SYMTARGET),) + 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: pcp-6.2.0/src/libpcp_import/src/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/libpcp_import/src/GNUmakefile ++++ pcp-6.2.0/src/libpcp_import/src/GNUmakefile +@@ -54,7 +54,7 @@ include $(BUILDRULES) + + install: default + ifneq ($(LIBTARGET),) +- $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) ++ $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) + $(INSTALL) -m 644 $(LIBCONFIG) $(PCP_LIB_DIR)/pkgconfig/$(LIBCONFIG) + endif + ifneq ($(SYMTARGET),) +@@ -63,7 +63,7 @@ ifneq ($(SYMTARGET),) + 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: pcp-6.2.0/src/libpcp_mmv/src/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/libpcp_mmv/src/GNUmakefile ++++ pcp-6.2.0/src/libpcp_mmv/src/GNUmakefile +@@ -47,7 +47,7 @@ include $(BUILDRULES) + + install: default + ifneq ($(LIBTARGET),) +- $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) ++ $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) + endif + ifneq ($(SYMTARGET),) + for tt in $(SYMTARGET); do \ +@@ -55,7 +55,7 @@ ifneq ($(SYMTARGET),) + 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: pcp-6.2.0/src/libpcp_pmcd/src/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/libpcp_pmcd/src/GNUmakefile ++++ pcp-6.2.0/src/libpcp_pmcd/src/GNUmakefile +@@ -69,7 +69,7 @@ include $(BUILDRULES) + + install : default + ifeq "$(TARGET_OS)" "mingw" +- $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) ++ $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) + endif + + ifeq "$(ENABLE_PROBES)" "true" +Index: pcp-6.2.0/src/libpcp_pmda/src/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/libpcp_pmda/src/GNUmakefile ++++ pcp-6.2.0/src/libpcp_pmda/src/GNUmakefile +@@ -64,7 +64,7 @@ include $(BUILDRULES) + + install: default + ifneq ($(LIBTARGET),) +- $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) ++ $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) + $(INSTALL) -m 644 $(LIBCONFIG) $(PCP_LIB_DIR)/pkgconfig/$(LIBCONFIG) + endif + ifneq ($(SYMTARGET),) +@@ -73,7 +73,7 @@ ifneq ($(SYMTARGET),) + done + endif + ifneq ($(STATICLIBTARGET),) +- $(INSTALL) -m 755 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET) ++ $(INSTALL) -m 644 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET) + endif + + $(XFILES): +Index: pcp-6.2.0/src/libpcp_trace/src/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/libpcp_trace/src/GNUmakefile ++++ pcp-6.2.0/src/libpcp_trace/src/GNUmakefile +@@ -56,13 +56,13 @@ include $(BUILDRULES) + + install : default + ifneq ($(LIBTARGET),) +- $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) ++ $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) + endif + 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: pcp-6.2.0/src/libpcp_web/src/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/libpcp_web/src/GNUmakefile ++++ pcp-6.2.0/src/libpcp_web/src/GNUmakefile +@@ -111,7 +111,7 @@ endif + install: default + $(INSTALL) -m 644 -t $(REWRITEVARDIR)/pmproxy_fixups.conf logrewrite.conf $(REWRITEDIR)/pmproxy_fixups.conf + ifneq ($(LIBTARGET),) +- $(INSTALL) -m 755 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) ++ $(INSTALL) -m 644 $(LIBTARGET) $(PCP_LIB_DIR)/$(LIBTARGET) + endif + ifneq ($(SYMTARGET),) + for tt in $(SYMTARGET); do \ +@@ -119,7 +119,7 @@ ifneq ($(SYMTARGET),) + done + endif + ifneq ($(STATICLIBTARGET),) +- $(INSTALL) -m 755 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET) ++ $(INSTALL) -m 644 $(STATICLIBTARGET) $(PCP_LIB_DIR)/$(STATICLIBTARGET) + endif + + $(XFILES): +Index: pcp-6.2.0/src/pmdas/cifs/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/pmdas/cifs/GNUmakefile ++++ pcp-6.2.0/src/pmdas/cifs/GNUmakefile +@@ -44,8 +44,8 @@ build-me: $(CMDTARGET) $(LIBTARGET) + install: default + $(INSTALL) -m 755 -d $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDATMPDIR) +- $(INSTALL) -m 644 -t $(PMDATMPDIR) root pmns domain.h help $(PMDAADMDIR) +- $(INSTALL) -m 755 -t $(PMDATMPDIR) Install Remove $(CMDTARGET) $(LIBTARGET) $(PMDAADMDIR) ++ $(INSTALL) -m 644 -t $(PMDATMPDIR) root pmns domain.h help $(LIBTARGET) $(PMDAADMDIR) ++ $(INSTALL) -m 755 -t $(PMDATMPDIR) Install Remove $(CMDTARGET) $(PMDAADMDIR) + @$(INSTALL_MAN) + else + build-me: +Index: pcp-6.2.0/src/pmdas/docker/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/pmdas/docker/GNUmakefile ++++ pcp-6.2.0/src/pmdas/docker/GNUmakefile +@@ -45,8 +45,8 @@ build-me: $(CMDTARGET) $(LIBTARGET) + install_pcp install: default + $(INSTALL) -m 755 -d $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDATMPDIR) +- $(INSTALL) -m 755 -t $(PMDATMPDIR) Install Remove $(CMDTARGET) $(LIBTARGET) $(PMDAADMDIR) +- $(INSTALL) -m 644 -t $(PMDATMPDIR) root pmns domain.h $(DFILES) $(PMDAADMDIR) ++ $(INSTALL) -m 755 -t $(PMDATMPDIR) Install Remove $(CMDTARGET) $(PMDAADMDIR) ++ $(INSTALL) -m 644 -t $(PMDATMPDIR) root pmns domain.h $(DFILES) $(LIBTARGET) $(PMDAADMDIR) + @$(INSTALL_MAN) + else + build-me: +Index: pcp-6.2.0/src/pmdas/hacluster/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/pmdas/hacluster/GNUmakefile ++++ pcp-6.2.0/src/pmdas/hacluster/GNUmakefile +@@ -48,8 +48,8 @@ build-me: $(CMDTARGET) $(LIBTARGET) + install: default + $(INSTALL) -m 755 -d $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDATMPDIR) +- $(INSTALL) -m 644 -t $(PMDATMPDIR) root pmns domain.h help $(PMDAADMDIR) +- $(INSTALL) -m 755 -t $(PMDATMPDIR) $(LIBTARGET) $(CMDTARGET) $(SCRIPTS) $(PMDAADMDIR) ++ $(INSTALL) -m 644 -t $(PMDATMPDIR) root pmns domain.h help $(LIBTARGET) $(PMDAADMDIR) ++ $(INSTALL) -m 755 -t $(PMDATMPDIR) $(CMDTARGET) $(SCRIPTS) $(PMDAADMDIR) + @$(INSTALL_MAN) + else + build-me: +Index: pcp-6.2.0/src/pmdas/jbd2/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/pmdas/jbd2/GNUmakefile ++++ pcp-6.2.0/src/pmdas/jbd2/GNUmakefile +@@ -57,8 +57,8 @@ build-me: $(LIBTARGET) $(CMDTARGET) $(HE + install: default + $(INSTALL) -m 755 -d $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDATMPDIR) +- $(INSTALL) -m 644 -t $(PMDATMPDIR) domain.h help $(HELPTARGETS) root root_jbd2 $(PMDAADMDIR) +- $(INSTALL) -m 755 -t $(PMDATMPDIR) $(LIBTARGET) $(CMDTARGET) $(SCRIPTS) $(PMDAADMDIR) ++ $(INSTALL) -m 644 -t $(PMDATMPDIR) domain.h help $(HELPTARGETS) root root_jbd2 $(LIBTARGET) $(PMDAADMDIR) ++ $(INSTALL) -m 755 -t $(PMDATMPDIR) $(CMDTARGET) $(SCRIPTS) $(PMDAADMDIR) + $(INSTALL) -m 644 -t $(PCP_PMNS_DIR)/root_jbd2 root_jbd2 $(PCP_PMNSADM_DIR)/root_jbd2 + $(INSTALL) -m 644 -t $(REWRITEVARDIR)/jbd2_kernel_ulong.conf jbd2_kernel_ulong.conf $(REWRITEDIR)/jbd2_kernel_ulong.conf + @$(INSTALL_MAN) +Index: pcp-6.2.0/src/pmdas/kvm/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/pmdas/kvm/GNUmakefile ++++ pcp-6.2.0/src/pmdas/kvm/GNUmakefile +@@ -57,10 +57,10 @@ build-me: $(LIBTARGET) $(CMDTARGET) $(HE + install: default + $(INSTALL) -m 755 -d $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDATMPDIR) +- $(INSTALL) -m 644 -t $(PMDATMPDIR) domain.h help help.dir help.pag root root_kvm $(PMDAADMDIR) ++ $(INSTALL) -m 644 -t $(PMDATMPDIR) domain.h help help.dir help.pag root root_kvm $(LIBTARGET) $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDACONFIG) + $(INSTALL) -m 644 -t $(PMDATMPDIR)/kvm.conf kvm.conf $(PMDACONFIG)/kvm.conf +- $(INSTALL) -m 755 -t $(PMDATMPDIR) $(LIBTARGET) $(CMDTARGET) $(SCRIPTS) $(PMDAADMDIR) ++ $(INSTALL) -m 755 -t $(PMDATMPDIR) $(CMDTARGET) $(SCRIPTS) $(PMDAADMDIR) + $(INSTALL) -m 644 -t $(PCP_PMNS_DIR)/root_kvm root_kvm $(PCP_PMNSADM_DIR)/root_kvm + $(INSTALL) -m 644 -t $(REWRITEVARDIR)/kvm_fixups.conf kvm_fixups.conf $(REWRITEDIR)/kvm_fixups.conf + @$(INSTALL_MAN) +Index: pcp-6.2.0/src/pmdas/linux/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/pmdas/linux/GNUmakefile ++++ pcp-6.2.0/src/pmdas/linux/GNUmakefile +@@ -89,11 +89,11 @@ build-me: $(LIBTARGET) $(CMDTARGET) $(HE + install: default + $(INSTALL) -m 755 -d $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDATMPDIR) +- $(INSTALL) -m 644 -t $(PMDATMPDIR) domain.h help $(HELPTARGETS) $(PMDAADMDIR) ++ $(INSTALL) -m 644 -t $(PMDATMPDIR) domain.h help $(HELPTARGETS) $(LIBTARGET) $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDACONFIG) + $(INSTALL) -m 644 interfaces.conf $(PMDACONFIG)/interfaces.conf + $(INSTALL) -m 644 -t $(PMDATMPDIR)/samplebandwidth.conf bandwidth.conf $(PMDACONFIG)/samplebandwidth.conf +- $(INSTALL) -m 755 -t $(PMDATMPDIR) $(LIBTARGET) $(CMDTARGET) $(PMDAADMDIR) ++ $(INSTALL) -m 755 -t $(PMDATMPDIR)/$(CMDTARGET) $(CMDTARGET) $(PMDAADMDIR)/$(CMDTARGET) + $(INSTALL) -m 644 -t $(PCP_PMNS_DIR)/root_linux root_linux $(PCP_PMNSADM_DIR)/root_linux + $(INSTALL) -m 644 -t $(REWRITEVARDIR)/linux_proc_fs_nfsd_fixups.conf proc_fs_nfsd_fixups.conf $(REWRITEDIR)/linux_proc_fs_nfsd_fixups.conf + $(INSTALL) -m 644 -t $(REWRITEVARDIR)/linux_proc_net_snmp_migrate.conf proc_net_snmp_migrate.conf $(REWRITEDIR)/linux_proc_net_snmp_migrate.conf +Index: pcp-6.2.0/src/pmdas/linux_proc/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/pmdas/linux_proc/GNUmakefile ++++ pcp-6.2.0/src/pmdas/linux_proc/GNUmakefile +@@ -73,10 +73,10 @@ build-me: root_proc $(LIBTARGET) $(CMDTA + install: default + $(INSTALL) -m 755 -d $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDATMPDIR) +- $(INSTALL) -m 644 -t $(PMDATMPDIR) domain.h help help.dir help.pag root root_proc $(PMDAADMDIR) ++ $(INSTALL) -m 644 -t $(PMDATMPDIR) domain.h help help.dir help.pag root root_proc $(LIBTARGET) $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDACONFIG) + $(INSTALL) -m 644 -t $(PMDATMPDIR)/samplehotproc.conf samplehotproc.conf $(PMDACONFIG)/samplehotproc.conf +- $(INSTALL) -m 755 -t $(PMDATMPDIR) $(LIBTARGET) $(CMDTARGET) $(SCRIPTS) $(PMDAADMDIR) ++ $(INSTALL) -m 755 -t $(PMDATMPDIR) $(CMDTARGET) $(SCRIPTS) $(PMDAADMDIR) + $(INSTALL) -m 644 -t $(PCP_PMNS_DIR)/root_proc root_proc $(PCP_PMNSADM_DIR)/root_proc + $(INSTALL) -m 644 -t $(REWRITEVARDIR) $(LOGREWRITERS) $(REWRITEDIR) + @$(INSTALL_MAN) +Index: pcp-6.2.0/src/pmdas/linux_xfs/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/pmdas/linux_xfs/GNUmakefile ++++ pcp-6.2.0/src/pmdas/linux_xfs/GNUmakefile +@@ -57,8 +57,8 @@ build-me: $(LIBTARGET) $(CMDTARGET) $(HE + install: default + $(INSTALL) -m 755 -d $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDATMPDIR) +- $(INSTALL) -m 644 -t $(PMDATMPDIR) domain.h help help.dir help.pag root root_xfs $(PMDAADMDIR) +- $(INSTALL) -m 755 -t $(PMDATMPDIR) $(LIBTARGET) $(CMDTARGET) $(SCRIPTS) $(PMDAADMDIR) ++ $(INSTALL) -m 644 -t $(PMDATMPDIR) domain.h help help.dir help.pag root root_xfs $(LIBTARGET) $(PMDAADMDIR) ++ $(INSTALL) -m 755 -t $(PMDATMPDIR) $(CMDTARGET) $(SCRIPTS) $(PMDAADMDIR) + $(INSTALL) -m 644 -t $(PCP_PMNS_DIR)/root_xfs root_xfs $(PCP_PMNSADM_DIR)/root_xfs + $(INSTALL) -m 644 -t $(REWRITEVARDIR) linux_xfs_migrate.conf linux_xfs_perdev_buffer.conf $(REWRITEDIR) + @$(INSTALL_MAN) +Index: pcp-6.2.0/src/pmdas/nvidia/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/pmdas/nvidia/GNUmakefile ++++ pcp-6.2.0/src/pmdas/nvidia/GNUmakefile +@@ -37,9 +37,8 @@ include $(BUILDRULES) + install: default + $(INSTALL) -m 755 -d $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDATMPDIR) +- $(INSTALL) -m 755 -t $(PMDATMPDIR) Install Remove $(PMDAADMDIR) +- $(INSTALL) -m 755 -t $(PMDATMPDIR) $(LIBTARGET) $(CMDTARGET) $(PMDAADMDIR) +- $(INSTALL) -m 644 -t $(PMDATMPDIR) $(DFILES) root help pmns domain.h $(PMDAADMDIR) ++ $(INSTALL) -m 755 -t $(PMDATMPDIR) $(CMDTARGET) Install Remove $(PMDAADMDIR) ++ $(INSTALL) -m 644 -t $(PMDATMPDIR) $(DFILES) root help pmns domain.h $(LIBTARGET) $(PMDAADMDIR) + + $(OBJECTS): domain.h + +Index: pcp-6.2.0/src/pmdas/pmcd/src/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/pmdas/pmcd/src/GNUmakefile ++++ pcp-6.2.0/src/pmdas/pmcd/src/GNUmakefile +@@ -59,7 +59,7 @@ default: $(LIBTARGET) + install: default + $(INSTALL) -m 755 -d $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDATMPDIR) +- $(INSTALL) -m 755 -t $(PMDATMPDIR)/$(LIBTARGET) $(LIBTARGET) $(PMDAADMDIR)/$(LIBTARGET) ++ $(INSTALL) -m 644 -t $(PMDATMPDIR)/$(LIBTARGET) $(LIBTARGET) $(PMDAADMDIR)/$(LIBTARGET) + + include $(BUILDRULES) + +Index: pcp-6.2.0/src/pmdas/smart/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/pmdas/smart/GNUmakefile ++++ pcp-6.2.0/src/pmdas/smart/GNUmakefile +@@ -48,8 +48,8 @@ build-me: $(CMDTARGET) $(LIBTARGET) + install: default + $(INSTALL) -m 755 -d $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDATMPDIR) +- $(INSTALL) -m 644 -t $(PMDATMPDIR) root pmns domain.h help $(PMDAADMDIR) +- $(INSTALL) -m 755 -t $(PMDATMPDIR) $(LIBTARGET) $(CMDTARGET) $(SCRIPTS) $(PMDAADMDIR) ++ $(INSTALL) -m 644 -t $(PMDATMPDIR) root pmns domain.h help $(LIBTARGET) $(PMDAADMDIR) ++ $(INSTALL) -m 755 -t $(PMDATMPDIR) $(CMDTARGET) $(SCRIPTS) $(PMDAADMDIR) + @$(INSTALL_MAN) + else + build-me: +Index: pcp-6.2.0/src/pmdas/statsd/src/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/pmdas/statsd/src/GNUmakefile ++++ pcp-6.2.0/src/pmdas/statsd/src/GNUmakefile +@@ -68,8 +68,8 @@ build-me: $(RAGELTARGET).o $(CMDTARGET) + install: default + $(INSTALL) -m 755 -d $(PMDAADMDIR) + $(INSTALL) -m 755 -d $(PMDATMPDIR) +- $(INSTALL) -m 644 -t $(PMDATMPDIR) domain.h root_statsd $(PMDAADMDIR) +- $(INSTALL) -m 755 -t $(PMDATMPDIR) $(LIBTARGET) $(CMDTARGET) $(PMDAADMDIR) ++ $(INSTALL) -m 644 -t $(PMDATMPDIR) domain.h root_statsd $(LIBTARGET) $(PMDAADMDIR) ++ $(INSTALL) -m 755 -t $(PMDATMPDIR)/$(CMDTARGET) $(CMDTARGET) $(PMDAADMDIR)/$(CMDTARGET) + + CFILES += $(RFILES) + +Index: pcp-6.2.0/src/zabbix-agent/src/GNUmakefile +=================================================================== +--- pcp-6.2.0.orig/src/zabbix-agent/src/GNUmakefile ++++ pcp-6.2.0/src/zabbix-agent/src/GNUmakefile +@@ -43,7 +43,7 @@ install: default + $(INSTALL) -m 755 -d $(ZABBIX_DIR) + $(INSTALL) -m 755 -d $(MODULE_DIR) + $(INSTALL) -m 755 -d $(AGENT_DIR) +- $(INSTALL) -m 755 $(LIBTARGET) $(AGENT_DIR)/$(LIBTARGET) ++ $(INSTALL) -m 644 $(LIBTARGET) $(AGENT_DIR)/$(LIBTARGET) + $(INSTALL) -S $(AGENT_DIR)/$(LIBTARGET) $(MODULE_DIR)/$(LIBTARGET) + $(INSTALL) -m 755 -d $(CONFIG_DIR) + $(INSTALL) -m 644 $(LIBCONFIG) $(CONFIG_DIR)/$(LIBCONFIG) diff --git a/0002-Remove-CPAN-rpaths.patch b/0002-Remove-CPAN-rpaths.patch new file mode 100644 index 0000000..664a640 --- /dev/null +++ b/0002-Remove-CPAN-rpaths.patch @@ -0,0 +1,51 @@ +From cc6ffae33eef2fd1b595dfda72defed17aae89c4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= +Date: Mon, 16 May 2022 17:32:55 +0200 +Subject: [PATCH] build: remove CPAN rpaths + +Acked-by: David Disseldorp +--- + src/perl/LogImport/Makefile.PL | 2 +- + src/perl/MMV/Makefile.PL | 2 +- + src/perl/PMDA/Makefile.PL | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +Index: pcp-6.2.0/src/perl/LogImport/Makefile.PL +=================================================================== +--- pcp-6.2.0.orig/src/perl/LogImport/Makefile.PL ++++ pcp-6.2.0/src/perl/LogImport/Makefile.PL +@@ -15,7 +15,7 @@ if ($ENV{TARGET_OS} eq "mingw") { + else { + $ldfrom = "LogImport.o", + $inc = "-I$ENV{PCP_TOPDIR}/src/include/pcp -I/usr/include/pcp"; +- $libs = ["-L$ENV{PCP_TOPDIR}/src/libpcp/src -L$ENV{PCP_TOPDIR}/src/libpcp_import/src -lpcp_import -lpcp"]; ++ $libs = ["-lpcp_import -lpcp"]; + } + if ($ENV{TARGET_OS} eq "darwin") { + $lddlflags = "-bundle -undefined dynamic_lookup"; +Index: pcp-6.2.0/src/perl/MMV/Makefile.PL +=================================================================== +--- pcp-6.2.0.orig/src/perl/MMV/Makefile.PL ++++ pcp-6.2.0/src/perl/MMV/Makefile.PL +@@ -15,7 +15,7 @@ if ($ENV{TARGET_OS} eq "mingw") { + else { + $ldfrom = "MMV.o"; + $inc = "-I$ENV{PCP_TOPDIR}/src/include/pcp -I/usr/include/pcp"; +- $libs = ["-L$ENV{PCP_TOPDIR}/src/libpcp_mmv/src -L$ENV{PCP_TOPDIR}/src/libpcp/src -lpcp_mmv -lpcp"]; ++ $libs = ["-lpcp_mmv -lpcp"]; + } + if ($ENV{TARGET_OS} eq "darwin") { + $lddlflags = "-bundle -undefined dynamic_lookup"; +Index: pcp-6.2.0/src/perl/PMDA/Makefile.PL +=================================================================== +--- pcp-6.2.0.orig/src/perl/PMDA/Makefile.PL ++++ pcp-6.2.0/src/perl/PMDA/Makefile.PL +@@ -15,7 +15,7 @@ if ($ENV{TARGET_OS} eq "mingw") { + else { + $ldfrom = "local.o PMDA.o"; + $inc = "-I$ENV{PCP_TOPDIR}/src/include/pcp -I/usr/include/pcp"; +- $libs = ["-L$ENV{PCP_TOPDIR}/src/libpcp_pmda/src -L$ENV{PCP_TOPDIR}/src/libpcp/src -lpcp_pmda -lpcp"]; ++ $libs = ["-lpcp_pmda -lpcp"]; + } + if ($ENV{TARGET_OS} eq "darwin") { + $lddlflags = "-bundle -undefined dynamic_lookup"; diff --git a/0003-Remove-runlevel-4-from-init-scripts.patch b/0003-Remove-runlevel-4-from-init-scripts.patch new file mode 100644 index 0000000..aef6973 --- /dev/null +++ b/0003-Remove-runlevel-4-from-init-scripts.patch @@ -0,0 +1,50 @@ +From e94401a3f0f6c68f695f0b4a6467cf13daa35024 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= +Date: Mon, 16 May 2022 17:34:15 +0200 +Subject: [PATCH] rc scripts: remove runlevel 4 from init scripts + +Acked-by: David Disseldorp +--- + src/pmcd/rc_pcp | 12 ++++++------ + src/pmcd/rc_pmcd | 2 +- + src/pmie/rc_pmie | 2 +- + src/pmlogger/rc_pmlogger | 2 +- + src/pmproxy/rc_pmproxy | 2 +- + 5 files changed, 10 insertions(+), 10 deletions(-) + +Index: pcp-6.2.0/src/pmcd/rc_pcp +=================================================================== +--- pcp-6.2.0.orig/src/pmcd/rc_pcp ++++ pcp-6.2.0/src/pmcd/rc_pcp +@@ -31,12 +31,12 @@ + # e.g. SuSE, where chkconfig is a perl script. + ### BEGIN INIT INFO + # Provides: pcp +-# Required-Start: +-# Should-Start: +-# Required-Stop: +-# Should-Stop: +-# Default-Start: +-# Default-Stop: ++# Required-Start: $local_fs ++# Should-Start: $network $remote_fs $syslog $time ++# Required-Stop: $local_fs ++# Should-Stop: $network $remote_fs $syslog ++# Default-Start: 2 3 5 ++# Default-Stop: 0 1 6 + # Short-Description: Legacy control for PCP daemons + # Description: Legacy init script wrapper for the Performance Co-Pilot (PCP) daemons + ### END INIT INFO +Index: pcp-6.2.0/src/pmcd/rc_pmcd +=================================================================== +--- pcp-6.2.0.orig/src/pmcd/rc_pmcd ++++ pcp-6.2.0/src/pmcd/rc_pmcd +@@ -27,7 +27,7 @@ + # Should-Start: $network $remote_fs $syslog $time + # Required-Stop: $local_fs + # Should-Stop: $network $remote_fs $syslog +-# Default-Start: 2 3 4 5 ++# Default-Start: 2 3 5 + # Default-Stop: 0 1 6 + # Short-Description: Control pmcd (the collection daemon for PCP) + # Description: Configure and control pmcd (the collection daemon for the Performance Co-Pilot) diff --git a/0005-SUSE-fy-pmsnap-control-path.patch b/0005-SUSE-fy-pmsnap-control-path.patch new file mode 100644 index 0000000..031333b --- /dev/null +++ b/0005-SUSE-fy-pmsnap-control-path.patch @@ -0,0 +1,35 @@ +From 8f0a98dd4b8db4bd39a8df599b64391a78357775 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= +Date: Mon, 16 May 2022 17:39:53 +0200 +Subject: [PATCH] pmsnap: SUSE-fy pmsnap control path + +Acked-by: David Disseldorp +--- + src/pmsnap/pmsnap.sh | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/pmsnap/pmsnap.sh b/src/pmsnap/pmsnap.sh +index 95ac61b90..c1a32de07 100755 +--- a/src/pmsnap/pmsnap.sh ++++ b/src/pmsnap/pmsnap.sh +@@ -26,7 +26,7 @@ prog=`basename $0` + + LOCALHOST=`pmhostname` + CONFIGDIR=$PCP_VAR_DIR/config/pmsnap +-CONTROL=$CONFIGDIR/control ++CONTROL=/etc/pcp/pmsnap/control + [ -z "$PCP_PMSNAPCONTROL_PATH" ] || CONTROL="$PCP_PMSNAPCONTROL_PATH" + + _usage() +@@ -179,7 +179,7 @@ then + fi + commonargs="$commonargs $@" + +-CONTROL=$CONFIGDIR/control ++CONTROL=/etc/pcp/pmsnap/control + if [ ! -f "$CONTROL" ] + then + echo "$prog: Error: cannot find control file \"$CONTROL\"" +-- +2.35.3 + diff --git a/0006-pmsnap-control-var-www-srv-www.patch b/0006-pmsnap-control-var-www-srv-www.patch new file mode 100644 index 0000000..7e745c3 --- /dev/null +++ b/0006-pmsnap-control-var-www-srv-www.patch @@ -0,0 +1,25 @@ +From bb38e1bb3e1fa92f9a5ab1466c0957276a0cc370 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= +Date: Mon, 16 May 2022 17:42:29 +0200 +Subject: [PATCH] pmsnap: /var/www -> /srv/www + +Acked-by: David Disseldorp +--- + src/pmsnap/control | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/pmsnap/control b/src/pmsnap/control +index 54440b51b..6cb13206f 100644 +--- a/src/pmsnap/control ++++ b/src/pmsnap/control +@@ -67,5 +67,5 @@ $commonargs='' + # === pmsnap Control Specifications === + # + # Name (Output Image) Folio|Archive Config Arguments +-/var/www/pcp/LOCALHOSTNAME.1hour.summary LOCALHOSTNAME/Latest Snap -O-0 -A 10min -t 2min -v 30 +-/var/www/pcp/LOCALHOSTNAME.12hour.summary LOCALHOSTNAME/Latest Snap -O-0 -A 1hour -t 30min -v 30 ++/srv/www/pcp/LOCALHOSTNAME.1hour.summary LOCALHOSTNAME/Latest Snap -O-0 -A 10min -t 2min -v 30 ++/srv/www/pcp/LOCALHOSTNAME.12hour.summary LOCALHOSTNAME/Latest Snap -O-0 -A 1hour -t 30min -v 30 +-- +2.35.3 + diff --git a/0010-services-switch-logutil-and-pmieutil-scripts-from-ty.patch b/0010-services-switch-logutil-and-pmieutil-scripts-from-ty.patch new file mode 100644 index 0000000..4eea013 --- /dev/null +++ b/0010-services-switch-logutil-and-pmieutil-scripts-from-ty.patch @@ -0,0 +1,60 @@ +From e6d7bb6873531beb5b013a49e0b094cd7680cf89 Mon Sep 17 00:00:00 2001 +From: Mark Goodwin +Date: Mon, 30 Aug 2021 11:22:19 +1000 +Subject: [PATCH] services: switch logutil and pmieutil scripts from type + oneshot to exec + +Switches the "daily" and "check" and related services from Type=oneshot +to Type=exec (or Type=simple for older versions of systemd that do +not support Type=exec) and nuke KillMode=none. Explicitly specify +Restart=none, even though it's the default, to be clear that these +timer invoked service scripts are not long running service daemons +and are expected to exit normally. + +These changes are a precursor to further improvements to the long +running PCP services and systemd integration. + +All tests in the logutil and pmieutil QA groups are passing and soak +testing on several platforms has not shown any new issues (and the +systemd warnings about "Support for KillMode=none is deprecated" are +gone). + +Resolves: RHBZ#1942844 +Resolves: Fedora BZ#1897945 +Resolves: https://github.com/performancecopilot/pcp/issues/1186 +Obsoletes the earlier PR#1355. + +(cherry picked from commit 705b657107e8c812c96fa8b74d0f5d6384b00888) +Reviewed-by: David Disseldorp +References: bsc#1186511 +--- + configure | 13 +++++++++++++ + configure.ac | 14 ++++++++++++++ + src/include/builddefs.in | 3 +++ + src/pmfind/GNUmakefile | 1 + + src/pmfind/pmfind.service.in | 4 ++-- + src/pmie/GNUmakefile | 2 ++ + src/pmie/pmie_check.service.in | 4 ++-- + src/pmie/pmie_daily.service.in | 4 ++-- + src/pmlogger/GNUmakefile | 5 +++++ + src/pmlogger/pmlogger_check.service.in | 4 ++-- + src/pmlogger/pmlogger_daily-poll.service.in | 4 ++-- + src/pmlogger/pmlogger_daily.service.in | 4 ++-- + src/pmlogger/pmlogger_daily_report-poll.service.in | 4 ++-- + src/pmlogger/pmlogger_daily_report.service.in | 4 ++-- + 14 files changed, 54 insertions(+), 16 deletions(-) + +Index: pcp-6.2.0/src/include/builddefs.in +=================================================================== +--- pcp-6.2.0.orig/src/include/builddefs.in ++++ pcp-6.2.0/src/include/builddefs.in +@@ -908,6 +908,9 @@ PCP_GROUP_INSTALL = @pcp_group_install@ + # systemd service type for logutil scripts + SD_SERVICE_TYPE=@sd_service_type@ + ++# systemd service type for logutil scripts ++SD_SERVICE_TYPE=@sd_service_type@ ++ + PCPLIB = -lpcp + PCPLIB_EXTRAS = $(LIB_FOR_MATH) $(LIB_FOR_PTHREADS) $(LIB_FOR_DLOPEN) $(LIB_FOR_RT) + ifneq "$(PCPLIB)" "$(LIB_FOR_BASENAME)" diff --git a/_service b/_service new file mode 100644 index 0000000..1ed8844 --- /dev/null +++ b/_service @@ -0,0 +1,17 @@ + + + git + https://github.com/performancecopilot/pcp.git + pcp + 5.2.5 + @PARENT_TAG@ + disable + + + *.tar + bz2 + + + pcp + + diff --git a/pcp-6.2.1.tar.gz b/pcp-6.2.1.tar.gz new file mode 100644 index 0000000..38cfe44 --- /dev/null +++ b/pcp-6.2.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:189d6cb56e6b8e2eae5fab93c11d1a58cdc3ec8c8860b52aa8819c79a7fedc9e +size 52260893 diff --git a/pcp-rpmlintrc b/pcp-rpmlintrc new file mode 100644 index 0000000..83f97c1 --- /dev/null +++ b/pcp-rpmlintrc @@ -0,0 +1,15 @@ +# Note: there are some headers (e.g. domain.h) and in a few cases some +# C source files that rpmlint complains about. These are not devel files, +# but rather they are (slightly obscure) PMDA config files. +# +addFilter('E: devel-file-in-non-devel-package') +# A /var/lib/pcp/tmp directory is created for the safe creation of shared +# tmp files. it must be world writeable for PMDAs and client tools, which +# may be run as anyone. +#addFilter('E: permissions-world-writable') +# pcp-testsuite.x86_64: W: potential-bashisms /var/lib/pcp/testsuite/archives/mk.ipcs +# checkbashisms reported potential bashisms in a /bin/sh shell script, you might +# want to manually check this script for bashisms. +addFilter('pcp-testsuite.*W: potential-bashisms'); +# pcp-testsuite.x86_64: E: env-script-interpreter +addFilter('pcp-testsuite.*E: env-script-interpreter'); diff --git a/pcp.changes b/pcp.changes new file mode 100644 index 0000000..9209493 --- /dev/null +++ b/pcp.changes @@ -0,0 +1,2322 @@ +------------------------------------------------------------------- +Tue May 14 15:36:47 UTC 2024 - Cathy Hu + +- Enable custom pcp-selinux module (bsc#1223260) + +------------------------------------------------------------------- +Tue May 14 20:25:32 UTC 2024 - Martin Schreiner + +- Remove 0011-disable-redis-proxying-by-default.patch. This patch has + been merged upstream during the 6.2.1 release. +- Add new subpackage: pcp-pmda-uwsgi. +- Upgrade to 6.2.1. Changelog: + - PMDA additions, enhancements and bug fixes: + pmdauwsgi: (new) instrumentation from uWSGI servers + pmdalinux: new hugepage metrics from sysfs (fixed size hugepages) + pmdalinux: new filesys.uuid and filesys.type metrics + pmdalinux: new TcpExt metrics from /proc/net/netstat + pmdalinux: new softnet metrics from newer kernel versions + pmdalinux: new /proc/vmstat khugepaged metrics + pmdabpf: updates to add eBPF networking metrics for pcp-atop + pmdaopenmetrics: fix script error diagnostic cascading exception + - Client tools and utilities: + pcp2openmetrics: (new) push PCP metrics in OpenMetrics format + pmcheck: (new) interrogate and control PCP components + pmcheck: Redis server detection and agent recommendation + pmcheck: PostgreSQL server detection and agent recommendation + pmcheck: uwSGI server detection and agent recommendation + pcp-atopsar: fix TZ mishandling relating to day-crossover + pcp-dstat: fix an I/O config typo, sum reads and writes + pcp-htop: sync latest htop-3.3.0 fixes + pmrep.conf: use bpf instead of bcc pmda for proc net metrics + pmrep.conf: proc-essential cosmetic improvements + pmrep.conf: remove vmeff field from sar -B config + pmrepconf: use pmrep-internal representations for each metric + - Server-side utilities and log management scripts: + pmlogger: bizarre timezone fix (github #1936) + pmlogger: improve handling of a change in metadata semantics + pmlogdump: add support for multi-archive contexts + pmproxy: disable Redis protocol proxying by default + runaspcp: remove hard-coded "pcp" for user and group + init scripts: drop conditonal use of setpriv(1) or runuser(1) + - libpcp, libpcp_pmda, libpcp_mmv, libpcp_web and language bindings: + libpcp: fix logmeta.c SEGV with V3 archives + libpcp: fix memleak on repeated __pmFixPMNSHashTab calls + libpcp: add pmgetopt pmflush() call for warnings + libpcp: fixes for V3 archives and multi-archive contexts + libpcp: export __pmLogChangeArchive() interface to tools + libpcp: fix for PMNS with multi-archive contexts + libpcp: small derived metrics bug fix (github #1921) + - Build, infrastructure and packaging updates: + Linux MX distro support (Debian without systemd) + riscv: configure pmdabpf_arch value correctly + tar packages: fix perl modules install in postinstall script + eBPF updates: add submodule for blazesym, sync to latest + debian build: add postrm for pcp-zeroconf + build: removed cppcheck from 'make check', too flakey + container: Fedora 40 container testing added + constainer: fixed Fedora base image location (quay.io) + build: add support for riscv64 to pcp rpm spec files + - Security Enhanced Linux: + selinux policy: small tweak for pmie signal handling + - Documentation: + man pages: document pmlogger_check and pmlogger_daily SaveLogs + man pages: man-spell and corrections + docs: updated donations page with new fiscal sponsor details + +------------------------------------------------------------------- +Mon Apr 15 10:51:06 UTC 2024 - Dirk Müller + +- move pmlogger_daily into main package (bsc#1222815) +- fix compile flags conflusion + +------------------------------------------------------------------- +Wed Apr 3 14:49:06 UTC 2024 - Martin Schreiner + +- Add fix for bsc#1222121: + * 0011-disable-redis-proxying-by-default.patch + +------------------------------------------------------------------- +Mon Apr 1 01:21:44 UTC 2024 - Martin Schreiner + +- Upgrade to 6.2.0 (bsc#1217826): + * Changes from pcp-6.2.0: + - Client tools and utilities: + pmlogger: default to creating version 3 PCP archives + pmie, pmlogger, pmcd, pmproxy: init script hardening to + run less as root:root, more as pcp:pcp and more safely + pcp-reboot-init: new systemd service for $PCP_RC_DIR setup + pcp2arrow: new, export metrics to parquet format for pandas + pcp-atop: deterministic process sort when handling NULLs + pcp-atop: update to v2.10.0 upstream code + pcp-htop: update to latest upstream fixes + pcp-geolocate: function with older versions of python + pcp-meminfo: resolve possible 'broken pipe' diagnostics + pcp-ss: fix handling of listening state sockets to match ss + pcp-ss: fix the UDP UNCONN vs LISTEN state handling + - PMDA additions, enhancements and bug fixes: + pmdaproc: improvements for process accounting metrics + pmdalinux: add pgpromote* and pgdemote* memory metrics + pmdalinux: add metric sysfs.module.zswap.max_pool_percent + pmdalinux: add new SNMP metric network.ip.outtransmits + pmdasummary: send state change 0 (no change) back to pmcd + pmdapostgresql: support the psycopg3 python module as well + pmdaopenmetrics: kepler support - live metrics and logging + - Server-side utilities and log management scripts: + pmlogrewrite, pmlogredact: fix for missing data volumes + pmcd: cosmetic change to avoid pipe2 name clash + runaspcp: new helper utility for unprivileged rc scripts + pmnsmerge: be more defensive in qsort comparison routine + pmlogsize: fix qsort comparison function handling of equality + - libpcp, libpcp_pmda, libpcp_mmv, libpcp_web and language bindings: + libpcp: pmOpenLog refactor for handling previous log files + libpcp: new __pmCleanMapDir routine to aid log culling + libpcp & pmcd: READY-NOT-READY hardening + libpcp: avoid possible thread issues (coverity) + libpcp: refactor pmDupContext for thread safety + libpcp_import: add guard in pmiPutMark to prevent SIGSEGV + - Build, infrastructure and packaging updates: + build: changes to re-enable builds for FreeBSD 12, 13, 14 + build: add diffutils rpm dep as pmdaproc script uses diff + build: add main.yml for building and publishing container + build: resolve compiler warnings in various tools/libraries + packaging: use tmpfiles.d method to create PCP_RUN_DIR + build: packaging changes for openSUSE 15.5 and 15.6 + debian: do not ship empty directory /usr/lib/pkgconfig + build: el10 systemd-presets for pmcd/pmie/pmlogger enabling + build: drop rpm dep on bpftool as local version used only + build: change perl YAML::XS::LibYAML module to YAML::XS + - Security Enhanced Linux: + selinux: policy improvements for CentOS/RHEL 7 and 8 + - Documentation: + docs: Fedora 39 found some tbl(1)/troff(1) issues, fix + docs: add an explicit code-of-conduct for PCP + docs: pmns(5) note that metric names must only contain ASCII + docs: update the BPF README to describe bpftool reality + * Changes from pcp-6.1.1: + - Client tools and utilities: + pmie: add -o/--format to control output format with archives + pcp-geolocate: automatic latitude and longitude metric labels + pcp-atop: fix segv encountered on a multi-node NUMA system + pcp-atop: add last level cache support using pmdaresctrl + pcp-htop: updated with latest fixes from htop.dev + pcp-netstat: without time options report one sample only + pcp-netstat: add machine header info + pcp-meminfo: without time options report one sample only + pcp-meminfo: add machine header info + pcp-buddyinfo: resolve a key issue when using python v2 + pcp-zoneinfo: ensure determinism in pcp-zoneinfo output + pcp-zoneinfo: fix failure with older PCP metric instances + - PMDA additions, enhancements and bug fixes: + pmdaresctrl: new PMDA for x86_64 last level cache metrics + pmdafarm: new Seagate Field Access Reliability Metrics PMDA + pmdadarwin: updated for changes in NFS stats management + pmdalinux: new mem.util metrics from recent kernel versions + pmdalinux: new networking metrics relating to MPTcpExt + pmdasockets: allow sockets with duplicate sources to exist + pmdabpftrace: rework exit/wait handling to avoid errors + pmdahaproxy: fixed connect script handling of string quoting + pmdastatsd: fixed metadata for a couple of metrics + pmdalinux: fixed semantics for mem.vmstat.nr_free_cma metric + pmdadenki: simplification and refactoring of metrics + pmdagfs2: correct permissions of several installed files + pmdakvm: fixed semantics for kvm.largepages metric + - Server-side utilities and log management scripts: + pmproxy: add support for HTTP compression + pmlogger: rework heuristic for Latest folio creation + pmlogctl: fix incorrect rewriting of PCP_ARCHIVE_DIR + pmlogredact: add latitude and longitude labels to redacted set + pmlogrewrite: resolve a small memory leak + pmlogrewrite: use PM_CTXFLAG_METADATA_ONLY for speed + pmcd: add $PMCD_CREDS_TIMEOUT as an alternative to -q + - libpcp, libpcp_pmda, libpcp_mmv, libpcp_web and language bindings: + libpcp: new PM_CTXFLAG_METADATA_ONLY flag for pmNewContext + libpcp: fix a couple of derived metric bugs + libpcp_web: implement config override by canonical env vars + - Misc build, infrastructure and packaging updates: + build: new CI build to keep PCP for MacOS up-to-date + build: several fixes to tools when compiling with clang + build: install pmlog[redact,reduce,rewrite] on default PATH + build: default to using a path-prefixed PCP_PYTHON_PROG + build: update the Fedora container to f38 + build: drop of i386/i686 architectures from Fedora builds + build: enable build of pmdalibvirt on CentOS 7 platform + build: enable Qt6 in Fedora and post-RHEL-9 rpm spec files + build: add pyodbc rpm dep for pcp-pmda-mssql in RHEL 9 + - Security Enhanced Linux: + selinux: allow pmproxy use the io_uring API + selinux: policy fixes for recent AVCs on RHEL 7.9 + selinux: add netlink_kobject_uevent_socket getattr (bpftrace) + - Documentation: + man pages: change all to map font CW -> CR for latest groff + man: note pmseries Redis timeseries load order limitation + * Changes from pcp-6.1.0: + - pmlogredact: new command for archive anonymisation + - pcp-atop: new bar graph visualisation mode + - pcp-atop: update to atoptool.nl 2.9.1 sources + - pcp-htop: support dynamic screens (user-configurable tabs) + - pcp-htop: update to latest upstream source + - pcp-htop: default screens for filesystems, disks and cgroups + - pcp-htop: non-default screens for several libbpf modules + - pcp-htop: fix mishandling of some process argument shading + - pcp-buddyinfo: new tool reporting Linux buddyinfo stats + - pcp-meminfo: new tool reporting Linux kernel memory stats + - pcp-netstat: new tool reporting networking statistics + - pcp-slabinfo: new tool reporting Linux slabinfo kernel stats + - pcp-zoneinfo: new tool reporting Linux zoneinfo kernel stats + - pmsleep,pmpause: add -w where option for systemd annotation + - pmieconf: move test_action from primary into a separate group + - pmieconf: update webhook action for better EDA integration + - pmlogconf: remove latency-inducing fsync on config write + - pmlogconf: updates for new metrics used in pcp-atop + - pmdalinux: add three new /proc/vmstat pscan/pgsteal metrics + - pmdalinux: fix bug when lsb-release is only /etc/*-release file + - pmdabpf: add -q/--tryload command line option + - pmdaopenmetrics: reduce transient instance logs, improve labels + - libpcp: improved SSL error reporting + - selinux: add policy updates for pmproxy (io_uring,ipc_lock) + - build: support for Qt6, drop remaining Qt4 configure-support + - build: updated licence strings in spec files to follow SPDX + - build: default to using a path-prefixed PCP_PYTHON_PROG + - build: fix several makefile clean targets for deb packagers + - build: configure.ac update to autoconf 2.71 + - build: add tarball upload to release workflow + - docs: pmie updates to explain action behaviour with archives + - docs: retire "archive log" phrase from man pages and books + - docs: transition Artifactory (no free service) to Packagecloud + * Changes from pcp-6.0.5: + - pmie: ensure pmie.log.YYYYMMDD is owned by pcp:pcp + - pcp2json: extend pcp2json with an option to send HTTP POSTs + - pmlogger: fix pidfile update; pmlogger.pid is for primary only + - pmdumptext: fix scaling when -i command line option is used + - pmlogextract: improve resilience in corner-case conditions + - pmdasmart: additional NVME power state metrics + - pmdasmart: additional NVME disk information metrics + - pmdasmart: update help with proper description of DC status + - pmdasmart: filter out zram devices when probing for devices + - pmdahacluster: handle pacemaker 2.1.5 crm_mon output changes + - pmcd: improve debugging flags and diagnostics in general + - libpcp_pmda: refactor and improve library diagnostics + - selinux: updates to policy for pmlogger and pmlogger_daily + - build: switch rpm spec files to SPDX license identifiers + - build, qa: numerous updates to improve PCP on OpenBSD + - build: switch from registry.centos.org to quay.io for el6/el7 + - ci: add centos6 back into the fold as its on quay.io now + - ci: add Debian 12, drop Ubuntu 16 and Fedora 35 + * Changes from pcp-6.0.4: + - pmcd: propogate a new PMCD_HOSTNAME_CHANGE flag to clients + - pmdumplog: support preferred alternate name pmlogdump + - pmlogger: changes to accommodate PMCD_HOSTNAME_CHANGE + - pmlogger_janitor: new script called from pmlogger_check + - pmlogger: add -d directory argument for alternate naming schemes + - pmlogrewrite: fix remaining corner case for indom renumbering + - pmie: changes to accommodate PMCD_HOSTNAME_CHANGE + - pmie: catching SIGUSR1 triggers a pending task dump + - pmie_{check,daily}: change pmie.log handling regime + - pmieconf: add support for a webhook action to pmieconf + - pmieconf: add a wall rule action for adm group members + - pmieconf: add support for an action testing rule + - pmieconf: use correct pmieconf percent type for thermal throttle + - pmieconf: add minimum pct conjunction to entropy for small poolsizes + - pminfo: use -b to batch pmDesc retrievals as well as pmResult + - pmstat: fix corner case handling of automatic pmcd reconnect + - pcp2influxdb: add requests.post timeout to avoid hangs + - pcp-dstat: fixes CSV output to show all (not visible) plugins + - pcp-htop: support File Descriptor Meter + - pcp-htop: sync latest fixes from upstream htop + - pcp-mpstat: fixed broken pipe issue + - pcp-ps: fix exception handling for process name + - rc scripts: ensure pmcd.conf not rewritten unnecessarily + - pmdalinux: add a couple of new /proc/net/snmp ICMP metrics + - pmdalinux: add new network.tcp.tcpplbrehash metric + - pmdaproc: add new proc.smaps.pss_dirty metric + - pmdarabbitmq: add timeout handling to http requests + - pmdastatsd: stats and blocklisted metric names alignment + - libpcp: new pmAddDerivedText API for derived metric help text + - libpcp: check level parameter on entry to pmLookupText + - libpcp: new PMAPI error code addition for bad API arguments + - libpcp: allow derived metrics semantics of 'similar' indoms + - selinux: add missing context information on farm services + - build: fix a number of Debian sub-package dependency issues + * Changes from pcp-6.0.3: + - build: fix Debian postinst script handling of missing systemctl + - pmdaproc: support per-cgroup IRQ PSI metrics in recent kernels + - pmdalinux: support for system wide IRQ PSI metrics in recent kernels + - pmlogrewrite: improved handling of unused instance domains + * Changes from pcp-6.0.2: + - Client tools and utilities: + pcp-atop: update to latest upstream atoptool.nl sources + pcp-atop: cgroup, NUMA memory and NUMA CPU support + pcp-htop: update to latest upstream htop.dev sources + pcp-dstat: fix handling of --swap with -f (full) option + pcp-dstat: fix columns for --net-packets + pcp-mpstat: fix handling of log-once summary metric values + pcp-mpstat: improve error handling for the current values + pcp-ps: added capabilities to show N samples with archives + pcp-ps: fix handling of the -o option + pcp-ps: fix broken pipe errors when piping to head(1) + pcp-ps: fix process "START" column calculation and rounding + pcp-pidstat: fix broken pipe errors when piping to head(1) + pmdumplog: extend -x so -xxx reports timestamps in Epoch format + pmlogger: refactor getting FQDN for local host + - PMDA additions, enhancements and bug fixes: + pmdabpf: set config default for biosnoop module to disabled + pmdabpf: port forward to latest vendored libbpf-tools code + pmdalinux: boolean metric network.interface.virtual from sysfs + pmdalinux: more careful slabinfo 32/64 bit type multiplication + pmdalinux: add NUMA external fragmentation metric via sysfs + pmdalinux: fix pmid numbering issue with hinv.map.scsi_id + pmdanfsclient: fix srcport handling for RDMA and UDP mounts + pmdaopenmetrics: validate all names before using them for metrics + pmdaoverhead: new PMDA to measure overhead for groups of processes + pmdastatsd: static metric memory leak fix + pmdastatsd: ragel parser refactor and fix + - Server-side utilities and log management scripts: + pmieconf: new pmie rule checking file descriptor limits + - libpcp, libpcp_pmda, libpcp_mmv, libpcp_web and language bindings: + libpcp: fix buffer issue for user/group name lookups + libpcp_web: improve error handling in pmseries AST parser + - Misc build, infrastructure and packaging updates: + configure.ac: fixes for improved C99 compatibility + configure.ac: use QTDIR search path only when given + MacOS: build: fix shared library builds on modern Macs + OpenBSD: build updates for clang, Qt and openssl + libbpf: updated minimium version to 0.8.0, ARM and PPC support + Qt: update minimum required versions for libqwt + Drop no-longer-used pmlogger_daily_report systemd rpm spec code + Determine clang version without optional llvm-config utility + Another attempt to get the man/man-db/mandoc stuff sorted + - Security Enhanced Linux: + Policy updates for pmdastatsd + - Documentation and QA infrastructure: + Add help text for some OpenBSD kernel instance domains + Provide more detailed explanation for default PMLOGGER_INTERVAL + pmdaChildren(3): clarify the memory allocation scheme + pcp-ps(1) man page fixes. + * Changes from pcp-6.0.1: + - Security Enhanced Linux: + selinux: rework policy to use optional_policy + selinux: rework policy to use an independent policy + selinux: new cluster_exec_t policy handling for pmdahacluster(1) + selinux: retire those parts of the build affecting CentOS 6 + - PMDA additions, enhancements and bug fixes: + pmdabpf: set perf_buffer__poll timeout to 0 for optimal sampling + pmdabpf: add CO-RE biosnoop + pmdabpf: no BPF debug messages unless debugging (-Ddev0) + pmdalinux: add "squashfs" to the list of ignored filesystem types + pmdasnmp: install agent specific configuration file to PMDATMPDIR + pmdakvm: initialise perf_event interface only if/when needed + - Client tools and utilities: + pcp-ps: initial version of a PCP implementation of ps(1) + pcp-dstat: add --nomissed command line option for large systems + pmfind, libpcp_web: MMV and shutdown memory management fixes + pmlogreduce: fix corner-case in temporal index generation + pmlogcheck: tighten some pmlogcheck pass0 checks + pmseries: fix sampling when start < first sample or series has gaps + shell completion: improve pmrep/zsh instance completion in live mode + shell tools: convert fgrep and egrep over to grep -F and -E + - Server-side utilities and log management scripts: + pmlogger_daily_report: no longer needs any systemd support now + pmlogger_daily.sh: fix pmlogger_daily_report test for zeroconf + - libpcp, libpcp_pmda, libpcp_mmv, libpcp_web and language bindings: + libpcp_web: fix race conditions affecting pmproxy + libpcp_web: allow scalar operands in pmseries expressions + libpcp_web: add pmseries float multiplication + - Misc build, infrastructure and packaging updates: + build: add PCP archive analysis container + build: updates to fix Windows platform builds + build: update configure.ac to allow builds on Mac M1 (arm64) + build: make openSUSE spec file builds work again + containers: remove /build directory + debian: use deb-systemd-helper if available + build: fix libpcp check-statics regexp error with objects in subdirs + build: podman PMDA no longer has deps, make it unconditional + build: don't package and install pmrep xtract-names helper + build: updates to hiredis code for pmseries and pmproxy + build: updates to hiredis-cluster code for pmseries and pmproxy + build: fix Makepkgs handling of argument parameters + build: use vendored github.com/libbpf/bpftool/libbpf and update + build: use vendored github.com/iovisor/bcc/libbpf-tools + build: use vendored git.code.sf.net/p/qwt and update + build: fix bpf PMDA inclusion check + build: fix windows default pmcd.conf entry, dup path component + build: rework Python3 and Python2 configure.ac logic + packaging: fix rpm systemd-sysusers on f37 and rawhide + - Documentation and QA infrastructure: + docs: small typo fixes relating to secure connections + docs: fix sheet2pcp(1) man page quoting in examples + pmdasample: additional metrics for testing cases + * Changes from pcp-6.0.0: + - Major changes: + 1. Add version 3 PCP archive support: instance domain change-deltas, + Y2038-safe timestamps, nanosecond-precision timestamps, arbitrary + timezones support, 64-bit file offsets used throughout for larger + (beyond 2GB) individual volumes. + ** Opt-in using the /etc/pcp.conf PCP_ARCHIVE_VERSION setting. ** + ** Version 2 archives remain the default (for next few years). ** + 2. Switch to using OpenSSL only throughout PCP (dropped NSS/NSPR); + this impacts on libpcp, PMAPI clients and PMCD use of encryption; + these are now configured and used consistently with pmproxy HTTPS + support and redis-server, which were both already using OpenSSL. + 3. New nanosecond precision timestamp PMAPI calls for PCP library + interfaces that make use of timestamps. These are all optional, + and full backward compatibility is preserved for existing tools. + - Client tools and utilities: + pcp2elasticsearch: implement authentication support + pcp-dstat: implement support for the top-alike plugins + pcp-dstat: add plugin configuration for ZFS metrics + pcp-dstat: battery charge remaining config using denki metrics + pcp-htop: update to latest stable upstream release + pcp-htop: initial support for screen tabs in the user interface + pcp-pidstat: correct operation of the -p ALL|SELF options + pmlogger: small changes for handling derived metrics better + pmlogger, import: support configurable default archive version + pcp2xxx: ignore pmrep-specific options + pmlogger: extra hardening, backtrace symbol improvements + pmlogger: add -V (output archive version) command line option + pmseries: add sum(), avg() and stdev() functions + pmseries: add nth_percentile() and topk() functions + pmseries: add max_inst() and max_sample() functions + pmseries: add min_inst() and min_sample() functions + pmseries: be more defensive during shutdown error paths + pmseries: fix assumption that any 40-character string is a SID + pmseries: allow reporting values from SIDs (not just queries) + sheet2pcp: add -V (output archive version) command line option + ganglia2pcp: add -V (output archive version) command line option + iostat2pcp: add -V (output archive version) command line option + - PMDA additions, enhancements and bug fixes: + pmdaapache: do time_t manipulation with sufficient space + pmdabcc: sync bcc PMDA modules with upstream bcc tools + pmdabpf: adds CO-RE (Compile Once - Run Everywhere) modules + (exitsnoop, oomkill, bashreadline, mountsnoop, vfsstat, + opensnoop, fsslower, statsnoop, tcpconnlat, tcpconnect) + pmdabpf: support x86, arm and powerpc + pmdabpf: fixed persistence of indom and cluster identifiers + pmdabpf: rework setrlimit() logic for some small memory hosts + pmdabpftrace: move example autostart scripts to /usr/share + pmdabpftrace: update biolatency example script for kernel 5.16+ + pmdadenki: fix battery detection for non-intel systems + pmdadenki: add support for multiple active batteries + pmdadenki: support the -D option for debugging + pmdadenki: improve labels associated with metrics + pmdadenki: add battery capacity metric + pmdadenki: add separate indom help text + pmdalinux: add new MpTcpExt metrics from latest Linux 5.x kernels + pmdalinux: updates for latest /proc/net/netstat kernel changes + pmdalinux: improve network metrics help text + pmdalinux: fix of tty metrics on s390x platform + pmdamailq: update to ensure Y2038-safe time_t handling + pmdammv: use highest available timestamp resolution + pmdaopenvswitch: additional interface and coverage stats + pmdapostfix: harden against a not-yet-running postfix + pmdaproc: fix psargs string for processes with very large PIDs + pmdaproc: fix cgroup cpu metrics refresh structures + pmdasockets: prevent string overwrite of ss_stats_t fields + pmdasockets: add checking to the pmStore filter strings + pmdastatsd: fix detection of failure memory allocation + - Server-side utilities and log management scripts: + pmproxy: allow request parameters to be sent in the request body + pmproxy: fix race on teardown of pcp protocol proxy clients + pmproxy: improve error checking, check uv_pipe_bind result + pmproxy: harden logging interfaces, racing with startup + pmieconf: add several pmie rules for Open vSwitch metrics + pmlogrewrite: subtle change in semantics for error checking + pmlogreduce: allow sub-second values for -t option + pmlogreduce: temporal index, add entries after 100k of data volume + pmlogcheck: beef up pass 0 to check metadata record types + pmlogconf: fix reprobing with interactive changes + pmlogmv: fallback to copy for cross-mount case when link fails + pmlogmv: add -c (paranoid checksum) option + pmlogger_farm: add default configuration file for farm loggers + pmlogger_check: increase PMLOGGER_REQUEST_TIMEOUT from 2 to 10 secs + pmlogger_daily: callbacks for extra daily log processing tasks + pmlogger_daily, pmlogger_check: additional systemd-driven changes + pmlogger_daily: move redirection of stdout+stderr earlier in script + pmlogger_daily: abandom use of fmt(1) - not portable - uses awk now + pmlogger_daily_report.sh: some major efficiency improvements + pmlogger_daily_report: re-enabled for rpm and deb builds + pmie_check: avoid leaving lock file and temp dir behind + pm{log,ie}ctl: handle embedded shell syntax in control lines + pm{log,ie}ctl: add -C args option to pass "args" to pm{logger,ie}_check + systemd units: pmlogger and pmie farm conditional use of type=exec + rc-pmcd: reorder the systemd paths attempted in migrate_pid_cgroup + dbpmda: fix an overlapping copy and add error handling + - libpcp, libpcp_pmda, libpcp_mmv, libpcp_web and language bindings: + libpcp_archive: new library for apps that write PCP archives + libpcp: optimize indom handling in fetchgroup code + libpcp: drop time_t abuse in getdate.y, use safe sizes + libpcp: add __pmDumpPDUTrace() and circular trace buffer + libpcp: add PM_ERR_FEATURE, PM_ERR_TLS error codes + libpcp: refactor __pmDumpStack(), improve direct calling tools + libpcp_qmc: require Qt5.6 as the minimum version for builds + libpcp_qmc: resolve the Qt::endl warning more cleanly + libpcp_web: stop Redis initialization if Redis version tool old + libpcp_web: honour config settings that disable redis completely + libpcp_web: fix memory leaks in discovery, query parsing and APIs + libpcp_web: honor exclude.metrics setting in pmseries --load + libpcp_web: run pmFetchArchive(3) in a worker thread + libpcp_web: fix race condition tearing down load baton + libpcp_pmda: ensure indom cache write handles time_t safely + libpcp_import: add interface for setting output log version + libpcp_import: interfaces for samples with high-resolution timestamps + python api: updates to allow building from outside git repo + python api: allow tools using pmconfig module to ignore options + python api: add python wrappers for highres PMAPI routines + python api: correct refcounting on pmParseMetricSpec source buffer + - Security Enhanced Linux: + selinux: additional policy rules, esp glusterd_log_t + selinux: bcc PMDA policy to exec private memfd ctypes/libffi objects + selinux: make use of syslogd_var_run_t map rule conditional + selinux: policy updates needed for the pmdasockets metrics + selinux: fine-tune netlink_tcpdiag_socket policy for all platforms + - Misc build, infrastructure and packaging updates: + build: latest distros supported (ubuntu 22.04, fedora 37, rhel9, etc) + build: reproducible debian build efforts + build: use standard dpkg buildflags variables. + build: add BuildRequires: python*-pymongo to mongodb PMDA + build: detect libbpf version for the BPF PMDA + build: do not transform symlink targets when generating the source tarball + build: update artifactory deploy script, add recalculate_metadata subtask + build: update configure script for python2 retirement in rhel9 + build: convert libpcp check-statics to using readelf if available + build: updates to libpcp check-statics for OpenBSD + build: fix configure detection of backtrace() and associated hooks + build: fixed source dependencies within libpcp_web makefile + build: add rpm conflicts lines on postgresql-pgpool-II + build: remove pmclient reliance on libpcp.h for timed sleep + build: remove mmvdump reliance on libpcp.h for mmap wrapper + build: make perl truly conditional in the PCP build + build: drop no-longer-needed NSS/NSPR package deps + build: resolve ostree non-writable /var for pmieconf + packaging: update rpm specs to solve systemd warnings + container: bump base image version + Makepkgs: fix for Debian build (and Qt packaging failure in CI) + vendor: switch to git-subtree for iovisor/bcc libbpf-tools code + - Documentation and QA infrastructure: + docs: update notes about sar2pcp, iostat2pcp in pcpcompat(1) + docs: add section to pcpcompat(1) about python2 + docs: add fix for readthedocs compilation error + docs: updates to the Quick Guide documents + docs: clatifications to pmrep et al: man pages + docs: improve pmproxy timeseries and pmseries load documentation + docs: further improvements and fixes to the INSTALL doc + docs: add pmlogger(1) -V, describe $PCP_ARCHIVE_VERSION in pcp.conf. + docs: small fixes to the pcp-pidstat man page + docs: fix webapi documentation typo around polltimeout + pylint: numerous issues resolved, tracking latest versions + qa: regression tests for bpftrace PMDA: check probes + qa: pmdabcc pylint fixups + qa: rework Redis PING-PONG checks + qa/check: run tests under timeout(1) control if possible + qa-summary: allow unified reporting from CI and QA Farm + qa/admin/show-me-all & qa/show-me: changes for CI integration + qa/check: add support for "triaged" tests + ci: send report to Slack when QA workflow is triggered manually + ci: add required packages to enable bpf PMDA on CentOS Stream 9 + ci: run CodeQL daily and for each PR + ci: run full QA on pull requests, save history + ci: unset XDG_RUNTIME_DIR when invoking podman +- Refresh patches: + * 0001-Install-libraries-without-exec-permission.patch + * 0002-Remove-CPAN-rpaths.patch + * 0003-Remove-runlevel-4-from-init-scripts.patch + * 0010-services-switch-logutil-and-pmieutil-scripts-from-ty.patch +- Change dependency from openssl-devel >= 1.1.1 to openssl-devel >= 1.0.2p. + Required for SLE-12, builds just fine. +- Disable 'pmda-infiniband' subpackage for SLE-12. + Required so it builds cleanly. +- Introduce pmda-resctrl package, disabled for architectures other + than x86_64. +- Change the architecture for various subpackages to 'noarch' as they + contain no binaries, this lowers rpmlint's badness score + substantially. +- Disable 'pmda-mssql', as it fails to build. + +------------------------------------------------------------------- +Thu Feb 29 14:50:14 UTC 2024 - Dominique Leuenberger + +- Use %autosetup macro. Allows to eliminate the usage of deprecated + %patchN. + +------------------------------------------------------------------- +Thu Feb 1 22:51:16 UTC 2024 - Tina Müller + +- Change YAML::XS::LibYAML to YAML::XS as this is the module to be used + +------------------------------------------------------------------- +Thu Dec 14 10:36:41 CET 2023 - mls@suse.de + +- declare the users/groups we create in the preinstall scripts + (this is needed for newer rpm versions) + +------------------------------------------------------------------- +Tue Nov 28 00:33:12 UTC 2023 - Martin Schreiner + +- This version *does not* break API or ABI compatibility with the + previous 5.2.5 release. +- Remove 0009-remove-rundir-install.patch. Obsoleted. +- Remove 0011-Revert-systemd-remove-Wants-pmcd-from-pmlogger-and-p.patch. + Obsoleted. +- Various minor changes/improvements to the RPM spec file. +- Upgrade to 5.3.7. This is the latest release in the 5.X series. + Changes from 5.3.7: + - Client tools and utilities: + pcp2elasticsearch: implement authentication support + pcp-ss: fixed incorrect client-side filtering + pcp-ss: fixed reporting of IPv6 sockets in LISTEN state + pmrep: 'iostat-multipath-wwid' for multipath disk monitoring + - PMDA additions, enhancements and bug fixes: + pmdalinux: add disk.wwid.* aggregated multipath metrics + pmdalinux: add new MPTCP metrics from latest Linux kernel versions + pmdalinux: fix up TTY metrics on s390x platform + pmdalinux: add network.tcp.tcploss metric + pmdamssql: fix config file logic, python string handling + pmdadenki: fix crash in labels callback with multiple instances + pmdasockets: changed default filter in sockets PMDA to "state all" + - Server-side utilities and log management scripts: + pmlogconf: correctly handle metric state transitions on (re-)probe + pmie systemd: add missing systemd configuration and shell code + - libpcp, libpcp_pmda, libpcp_mmv, libpcp_web and language bindings: + libpcp_web: resolve a number of small memory leaks + - Security Enhanced Linux: + selinux: use interface calls instead of a simple rule + selinux: add several more obscure missing selinux rules + selinux: additional debugfs policy requirement for pmdakvm + selinux: resolve an AVC observed on el8 with pmdashping + - Misc build, infrastructure and packaging updates: + rpms: switch to conditional selinux dependency for containers + debs: reproducible build updates + - Documentation and QA infrastructure: + docs: add section to pcpcompat(1) about python2 + docs: update notes about sar2pcp, iostat2pcp in pcpcompat(1) + docs: improve pmproxy --timeseries and pmseries --load documentation + CI: disable cppcheck for pcp-atop temporarily due to a cppcheck bug + + Changes from 5.3.6: + https://github.com/performancecopilot/pcp/blob/f3fdd468d09c6e1158433210380a40389516a971/CHANGELOG#L468 + + Changes from 5.3.5: + https://github.com/performancecopilot/pcp/blob/f3fdd468d09c6e1158433210380a40389516a971/CHANGELOG#L497 + + Changes from 5.3.4: + https://github.com/performancecopilot/pcp/blob/f3fdd468d09c6e1158433210380a40389516a971/CHANGELOG#L557 + + Changes from 5.3.3: + https://github.com/performancecopilot/pcp/blob/f3fdd468d09c6e1158433210380a40389516a971/CHANGELOG#L606 + + Changes from 5.3.2: + https://github.com/performancecopilot/pcp/blob/f3fdd468d09c6e1158433210380a40389516a971/CHANGELOG#L665 + + Changes from 5.3.1: + https://github.com/performancecopilot/pcp/blob/f3fdd468d09c6e1158433210380a40389516a971/CHANGELOG#L753 + + Changes from 5.3.0: + https://github.com/performancecopilot/pcp/blob/f3fdd468d09c6e1158433210380a40389516a971/CHANGELOG#L854 + +------------------------------------------------------------------- +Fri Nov 17 15:55:08 UTC 2023 - Dominique Leuenberger + +- Only auto-trigger pcp-pmda-postfix for automatic installation + when pcp and postfix are present. Supplementing pcp alone would + auto-install postfix on all systems. +- Supplement pcp-pmda-rsyslog against pcp and rsyslog. + +------------------------------------------------------------------- +Tue Aug 30 12:50:27 UTC 2022 - David Disseldorp + +- Add back Wants=pmcd from pmlogger and pmie services; (bsc#1202896) + + 0011-Revert-systemd-remove-Wants-pmcd-from-pmlogger-and-p.patch + +------------------------------------------------------------------- +Wed Jun 8 21:33:14 UTC 2022 - David Disseldorp + +- Workaround intermittent build-time package preun failures by dropping + PMDA Remove script invocation; (bsc#1197796) + +------------------------------------------------------------------- +Tue Jun 7 16:43:41 UTC 2022 - David Disseldorp + +- Adjust systemd service types and remove deprecated KillMode=none; + (bsc#1186511) + + 0010-services-switch-logutil-and-pmieutil-scripts-from-ty.patch + +------------------------------------------------------------------- +Mon May 16 14:22:19 UTC 2022 - David Disseldorp + +- Upgrade to 5.2.5 +- Client tools and utilities: + + pcp-dstat: correct the sample count logic, was off-by-one + + pcp-dstat: fix csv output with timestamps (no special chars) +- PMDA additions, enhancements and bug fixes: + + pmdazfs: new Linux ZFS metrics + + pmdasockets: new Linux ss(1) metrics + + pmdahacluster: new HA metrics (Pacemaker, Corosync, DRBD and SBD) + + pmdabcc: netproc module: count kernel calls, not packets + + pmdalinux: add hinv.cpu.thermal_throttle metrics + + pmdalinux: add missing help text for new metrics, drop dups +- Server-side utilities and log management scripts: + + pmproxy: fix quoting of /series/metrics matched names + + pmlogger: fix permissions mismatch for pmlogger tmp dir + + pmlogger: fix incorrect reporting of pmcd state changes + + pmie_check: explicity set a umask appropriate for pmieconf + + pmlogger_check: explicity set a umask appropriate for pmlogconf + + pmlogger_check: skip .NeedRewrite processing with -K + + pmpost: increase timestamp resolution + + pmpost: fix NOTICES file ownership changes + + rc scripts: add optional logging + + systemd: remove Wants=pmcd from pmlogger and pmie +- libpcp, libpcp_pmda, libpcp_mmv, libpcp_web and language bindings + + libpcp: redo the interp.c time_caliper changes + + libpcp_web: add timer driven webgroup garbage collector + + libpcp_pmda: add new function pmdaCachePurgeCallback +- Misc build, infrastructure and packaging updates: + + libpcp_web: fix minor memory leak on an error path (covscan) + + build: fixes to ensure PCP_TMPFILE_DIR not used during the build + drop upstream 0007-pmns-Make-drop-duplicate-if-else.patch + drop upstream 0008-fixes-for-GH-1140-PCP_TMPFILE_DIR-used-in-build.patch +- Security Enhanced Linux: + + selinux: enable netcheck rawip_socket if icmp_socket unavailable + + selinux: additional rules needed for pmie/pmlogger in fedora +- Documentation and QA infrastructure: + + docs: add pointers to readthedocs.io now that books live there + + pcp-dstat: optionally install a man page symlink for dstat + + docs: pmproxy(1) man page corrections and additions + +- Upgrade to 5.2.3 +- Client tools and utilities: + + pcp-htop: minimal version of htop with PCP backend platform + + pcp-atop: add per-process network statistics + + pcp-atop: result instance indexing performance optimization + + pcp-atop: always restore original state of process accounting + + pcp2elasticsearch: add guard around maximum long integer size + + pmlogsummary: fix indom lookup for dynamic instance domains + + pmseries: provide sum() and avg() query functions + + pmseries: persist canonical query expressions to Redis + + pmseries: fix HMSET calls when querying timeseries expression + + pmseries: fix for failing queries with disjuncted qualifiers + + pmseries: fix segfault in func call with globbed metric.name +- Server-side utilities and log management scripts: + + pmproxy: support fabricated SIDs in /series/instances requests + + pmproxy: support fabricated SIDs in /series/metrics requests + + pmlogger_check: add pmlc connection timeout checking current volume + + pmlogctl,pmiectl: ignore saved control files after an upgrade + + pmlogconf: add missing mssql template header + + pmlogconf: add logger configuration files for the htop command + + pmieconf: add a rule to detect and report OOM kills + + pmieconf: cleanup old, no-longer-used tool integrations + + pmieconf: ensure all automated invocations use the -c switch + + pmieconf: fix default generated config file path + + pmie_check: remove a tempfile once finished with it +- PMDA additions, enhancements and bug fixes: + + pmdaapache: fix buffer size to allow for multiple reads of the stream + + pmdabcc: added new netproc module with per-process network metrics + + pmdaproc: allow to use acct.control.enable_acct as reference counting + + pmdalinux: added network.all.* metrics for physical interfaces + + pmdalinux: fix case of waitio counters from /proc/stat going backwards + + pmdalinux: minor tweaks to use integer math over floating point + + dbpmda: send inst profile prior to instances level label requests +- libpcp, libpcp_pmda, libpcp_mmv, libpcp_web and language bindings + + libpcp: performance improvements for archives with dynamic indoms + + libpcp: send instance profile for instances level labels requests + + libpcp: make pmLookupName take a (const char **) namelist + + libpcp_web: set pmseries source to all-zeroes for expressions + + libpcp_web: handle fabricated SIDs in /series/values REST API + + python api: fix fetchgroup max_insts size with multiple indoms +- Misc build, infrastructure and packaging updates: +- Security Enhanced Linux: + + selinux: use matching autoconf guard for rawip_socket class +- Documentation and QA infrastructure: + + docs: update pmdabpftrace man page and README + + docs: improvements in diagrams + + docs: theme_overrides.css added for readthedocs content + + docs: pmseries(1) chapter added in Users and Administrators Guide + + docs: add quotes to curl calls with * in pmwebapi query strings + + docs: update pmseries schema to describe expression keys + +------------------------------------------------------------------- +Mon May 16 07:30:26 UTC 2022 - Dominique Leuenberger + +- Fix a few rpmlint errors (to at least get below the 1000 mark) + (boo#1199558): + + make libpcp-devel require libpcp_gui: the devel package + installs a symlink pointing to that library, so anything + willing to link it would fail + libpcp-devel.x86_64: E: no-library-dependency-on libpcp_gui2 /usr/lib64/libpcp_gui.so.2 + The package misses dependency on a package which file it links to. + + Call fdupes over /var/lib/pcp/testsuite to solve + pcp-testsuite.x86_64: W: files-duplicate + + W: macro-in-comment: escape the relevant macros using %% + + Filter out W: potential-bashisms for pcp-testsuite. + +------------------------------------------------------------------- +Mon Feb 7 16:25:45 UTC 2022 - Dominique Leuenberger + +- Own %{_datadir}/zsh and %{_datadir}/zsh/site-functions: we have + no guaranteed owner of these directories in the buildroot. + +------------------------------------------------------------------- +Mon Dec 13 13:48:47 UTC 2021 - Thorsten Kukuk + +- Remove sysconfig dependencies, this is not the equivalent of + the initscripts package and completly unneeded here; (jsc#CSD-124) +- Add missing hostname requires; (jsc#CSD-124) + +------------------------------------------------------------------- +Tue May 11 17:12:16 CEST 2021 - ro@suse.de + +- also buildrequire pkgconfig(systemd) to make sure configure + detects systemd + +------------------------------------------------------------------- +Sat Mar 13 12:41:03 UTC 2021 - Jan Engelhardt + +- Replace ancient RPM variables by modern equivalents. +- Drop support for ancient SUSE and ancient Fedora. + +------------------------------------------------------------------- +Sun Feb 14 21:43:28 UTC 2021 - David Disseldorp + +- Spec file fixes and cleanups + + disable pcp-export-zabbix-agent to avoid conflicting /etc/zabbix/ + ownership. + + fix unversioned Provides + + remove unused python2 build logic and unconditionally enable python3 + + 0009-remove-rundir-install.patch +- Add SUSE specific dejavu-fonts dependency for pcp-gui sans +- Disable pcp-pmda-libvirt to avoid build dependency loop + +------------------------------------------------------------------- +Wed Feb 10 11:03:13 UTC 2021 - David Disseldorp + +- Drop unnecessary %pre/%post recursive chown calls; (bsc#1152533) +- Changelog for patches carried as part of 5.2.2 source tarball: + + build-drop-old-config-file-transition-code-from-rpm-.patch + + 0007-pmdas-perf-Add-cpunumber-option-for-dynamic-perf-eve.patch + + 0008-pmdas-perf-Add-support-for-hv_24x7-nest-events-on-mu.patch + + 0009-qa-perfevent-Test-hv_24x7-events-on-multinode.patch + +------------------------------------------------------------------- +Thu Nov 19 11:39:51 UTC 2020 - David Disseldorp + +- Upgrade to 5.2.2; (jsc#SLE-16929) + + improvements to client tools and utilities + + new pmdabpftrace monitoring agent + + pmdaperfevent enhancements + + pmproxy, libpcp_web and libpcp hardening and improvements + + assorted bug fixes + + obsolete pcp-manager discovery service, now provided by pmfind + + improved FHS compliance +- Remove upstreamed: + + 0001-Add-missing-includes-in-Qt-5.15-beta2.patch +- Rebase against upstream (faeb2507f): + + 0001-Install-libraries-without-exec-permission.patch +- Fix build with -fno-common; (bsc#1160411) +- Merge upstream build-time tmpdir fixes + + 0007-pmns-Make-drop-duplicate-if-else.patch + + 0008-fixes-for-GH-1140-PCP_TMPFILE_DIR-used-in-build.patch + +------------------------------------------------------------------- +Wed Aug 19 11:33:20 UTC 2020 - Dominique Leuenberger + +- Do not mangle libexecdir: the distro defaults are right in all + cases. + +------------------------------------------------------------------- +Wed Apr 22 04:21:13 UTC 2020 - Martin Liška + +- Add -fcommon in order to fix boo#1160411. + +------------------------------------------------------------------- +Fri Mar 27 09:43:05 UTC 2020 - Antonio Larrosa + +- Add patch (submitted to upstream) to fix missing includes with Qt 5.15: + * 0001-Add-missing-includes-in-Qt-5.15-beta2.patch + +------------------------------------------------------------------- +Wed Feb 26 10:57:30 UTC 2020 - Michal Suchanek + +- hv24x7 support (bsc#1155054 ltc#182081). + + 0007-pmdas-perf-Add-cpunumber-option-for-dynamic-perf-eve.patch + + 0008-pmdas-perf-Add-support-for-hv_24x7-nest-events-on-mu.patch + + 0009-qa-perfevent-Test-hv_24x7-events-on-multinode.patch + +------------------------------------------------------------------- +Fri Jan 24 15:56:53 UTC 2020 - David Disseldorp + +- Fix for security advisory CVE-2019-3696; (bsc#1153921) + + code change already carried +- Fix for security advisory CVE-2019-3695; (bsc#1152763) + + build-drop-old-config-file-transition-code-from-rpm-.patch + +------------------------------------------------------------------- +Thu Dec 19 14:41:01 UTC 2019 - Dominique Leuenberger + +- BuildRequire pkgconfig(libsystemd) instead of systemd-devel: + allow OBS to shortcut through -mini flavors. + +------------------------------------------------------------------- +Tue Oct 1 15:17:34 UTC 2019 - Ludwig Nussel + +- don't call 'cd' avoid relying on $HOME beeing set during rpm installation + +------------------------------------------------------------------- +Wed Aug 28 10:17:39 UTC 2019 - David Disseldorp + +- Fix python library dependencies broken via shared library packaging policy + split; (bsc#1129991). + +------------------------------------------------------------------- +Wed Aug 21 14:30:44 UTC 2019 - David Disseldorp + +- Upgrade to 4.3.4 + + pmchart, pmseries, pcp-dstat, pmrep and pcp-atop UI fixes and + improvements + + pmdalinux, pmdaproc and pmdabcc fixes + + pmproxy REST API changes and TLS support + + libpcp_pmda and libpcp_web fixes and support for Redis clustering + + various build and documentation changes + + libpcp_web: refactoring and support for Redis cluster protocol + + deprecate pmdapapi, upgrade to perfevent + +------------------------------------------------------------------- +Wed Apr 24 17:29:39 UTC 2019 - Martin Liška + +- Disable LTO (boo#1133273). + +------------------------------------------------------------------- +Fri Mar 8 16:04:30 UTC 2019 - David Disseldorp + +- Split out zeroconf, pmda-haproxy, pmda-smart, pmda-prometheus, + pcp2elasticsearch, pcp2json, pcp2spark, and pmlogger_daily_report files + into separate packages, matching upstream; (bsc#1128523). +- Fix incorrect dependencies for rewritten monitoring agents; (bsc#1128606). +- Ensure symlink sources and targets are in the same package; (bsc#1127978). +- Move pcp-dstat into the pcp-system-tools package; (bsc#1127978). + +------------------------------------------------------------------- +Thu Mar 7 11:48:47 UTC 2019 - Bernhard Wiedemann + +- drop unreproducible perfevent_coverage program (boo#1040589) +- override build date to make package build reproducible (boo#1047218) + +------------------------------------------------------------------- +Thu Feb 28 23:04:12 UTC 2019 - ddiss@suse.com + +- Upgrade to 4.3.1; (bsc#1127437). + + Add proper systemd timer service dependency tracking + + pmrep: fix a dynamic header corner case with missing values + + pmie: fix for segv and bad sum_inst() use + + pmview: fix a missing timeout slot connection + +- Drop upstreamed patches: + 0004-create-pmlogger-and-pmie-logdirs-during-install.patch + 0007-pmie-add-systemd-timers-as-cron-alternative.patch + 0008-pmlogger_daily-add-systemd-timers-as-cron-alternativ.patch + 0009-pmlogger_daily_report-add-systemd-timers-as-cron-alt.patch + 0010-pmns-don-t-package-.NeedRebuild-for-SUSE-distros.patch + +------------------------------------------------------------------- +Tue Feb 19 14:19:03 UTC 2019 - ddiss@suse.com + +- Drop python2 support for Factory and SLES15-SP1; (bsc#1077777). + +------------------------------------------------------------------- +Wed Feb 6 14:21:04 UTC 2019 - ddiss@suse.com + +- export PACKAGE_DISTRIBUTION="suse" for build; (bsc#1123311). + +------------------------------------------------------------------- +Thu Jan 31 12:58:08 UTC 2019 - ddiss@suse.com + +- Drop distribution-release build dependency completely; (bsc#1123311). + + modify 0010-pmns-don-t-package-.NeedRebuild-for-SUSE-distros.patch + +------------------------------------------------------------------- +Wed Jan 30 10:33:12 UTC 2019 - ddiss@suse.com + +- Replace openSUSE/sles-release build dependency; (bsc#1123311). + +------------------------------------------------------------------- +Fri Jan 18 13:13:04 UTC 2019 - ddiss@suse.com + +- Drop conflicting dstat symlink; (bsc#1122502). + +------------------------------------------------------------------- +Tue Jan 15 00:17:33 UTC 2019 - ddiss@suse.com + +- Package missing PMDA binaries; (bsc#1121920). + + refresh 0001-Install-libraries-without-exec-permission.patch +- Don't package pmns .NeedRebuild flag; (bsc#1092160). + + add 0010-pmns-don-t-package-.NeedRebuild-for-SUSE-distros.patch + +------------------------------------------------------------------- +Thu Jan 10 17:23:03 UTC 2019 - ddiss@suse.com + +- Upgrade to 4.3.0; (bsc#1121914). + +- Refreshed patches + 0001-Install-libraries-without-exec-permission.patch + 0007-pmie-add-systemd-timers-as-cron-alternative.patch + 0008-pmlogger_daily-add-systemd-timers-as-cron-alternativ.patch + 0009-pmlogger_daily_report-add-systemd-timers-as-cron-alt.patch + +------------------------------------------------------------------- +Tue Jan 8 14:54:12 UTC 2019 - Jan Engelhardt + +- Combine systemd service calls to save on macro + generated boilerplate. + +------------------------------------------------------------------- +Mon Jan 7 15:36:54 UTC 2019 - ddiss@suse.com + +- Use systemd timers instead of crontab; (bsc#1115413). + + 0007-pmie-add-systemd-timers-as-cron-alternative.patch + + 0008-pmlogger_daily-add-systemd-timers-as-cron-alternativ.patch + + 0009-pmlogger_daily_report-add-systemd-timers-as-cron-alt.patch + +------------------------------------------------------------------- +Fri Dec 7 14:31:07 UTC 2018 - ddiss@suse.com + +- Upgrade to 4.2.0 (fate#326865) + +- python package dependency changes + + add setuptools and python-requests + + fix python-jsonpointer + + disable pcp-pmda-postgresql due to missing psycopg2 dependency + +------------------------------------------------------------------- +Fri Sep 7 10:39:49 UTC 2018 - kkaempf@suse.com + +- Upgrade to 4.1.1 + +- renamed patches + 0002-Install-libraries-without-exec-permission.patch + to 0001-Install-libraries-without-exec-permission.patch + 0005-Remove-runlevel-4-from-init-scripts.patch + to 0003-Remove-runlevel-4-from-init-scripts.patch + 0006-create-pmlogger-and-pmie-logdirs-during-install.patch + to 0004-create-pmlogger-and-pmie-logdirs-during-install.patch + 0008-SUSE-fy-pmsnap-control-path.patch + to 0005-SUSE-fy-pmsnap-control-path.patch + 0009-pmsnap-control-var-www-srv-www.patch + to 0006-pmsnap-control-var-www-srv-www.patch + +- obsolete (upstream) + sysmacros.patch + 0003-pcp-legacy-init-lsb.patch + 0007-Honor-CFLAGS-in-qmake.patch + +- new + 0002-Remove-CPAN-rpaths.patch + 0003-pcp-legacy-init-lsb.patch + 0007-Honor-CFLAGS-in-qmake.patch + +------------------------------------------------------------------- +Mon Aug 6 09:30:46 UTC 2018 - schwab@suse.de + +- sysmacros.patch: Include for major/minor/makedev +- Use %license for COPYING +- Don't exclude post-build-checks + +------------------------------------------------------------------- +Thu Nov 23 13:41:01 UTC 2017 - rbrown@suse.com + +- Replace references to /var/adm/fillup-templates with new + %_fillupdir macro (boo#1069468) + +------------------------------------------------------------------- +Wed Aug 30 23:30:36 UTC 2017 - ddiss@suse.com + +- Enable QT5 builds for Factory (suse_version > 1320); (bsc#1056477). + +------------------------------------------------------------------- +Wed Aug 30 12:38:58 UTC 2017 - ddiss@suse.com + +- Ensure sysconfig files are populated from templates during installation; + (bsc#1056397). + +------------------------------------------------------------------- +Thu Aug 24 15:42:33 UTC 2017 - ddiss@suse.com + +- Add weak pcp dependency to pmdas that were split out from the base package + in the 3.10->3.11 update; (bsc#1055503). + +------------------------------------------------------------------- +Mon Jun 19 23:09:32 UTC 2017 - ddiss@suse.com + +- Follow the shared library packaging policy and split libpcp_gui.so.2, + libpcp_mmv.so.1, libpcp_trace.so.2, libpcp_import.so.1 and libpcp_web.so.1 + out from libpcp3 into separate packages. +- Drop a number of unneeded explicit library package Requires. +- Fix a number of file manifest conflicts. +- Drop lio pmda on SUSE systems without proper rtslib-fb dependency. + +------------------------------------------------------------------- +Sun Jun 18 19:53:55 UTC 2017 - ddiss@suse.com + +- Update to 3.11.9 + See http://git.pcp.io/cgi-bin/gitweb.cgi?p=pcp/pcp.git;a=blob_plain;f=CHANGELOG;hb=3.11.9 + for details. + +------------------------------------------------------------------- +Fri Mar 31 12:42:00 UTC 2017 - ddiss@suse.com + +- Disable remote _service execution + + Run locally and add generated tarball and spec file + +------------------------------------------------------------------- +Mon Mar 27 15:13:39 UTC 2017 - ddiss@suse.com + +- Update to 3.11.8 + See http://git.pcp.io/cgi-bin/gitweb.cgi?p=pcp/pcp.git;a=blob_plain;f=CHANGELOG;hb=3.11.8 + for details. + +- Remove 0010-build-do-not-include-.gitignore-in-installed-file-se.patch + + Upstream + +- Drop pcp-webjs.src.tar.gz + + https://github.com/performancecopilot/pcp-webjs/issues/3 + + Vector will be pulled in from the upstream source in future + +- Enable pmda-systemd package + + libsystemd pkg-config detection fixed upstream + +- New packages + + pcp-devel: Upstream split of non-essential devel packages from + libpcp-devel + + pcp-pmda-bind2 + + pcp-pmda-docker + + pcp-pmda-lio + + pcp-pmda-nutcracker + + pcp-pmda-oracle + + pcp-pmda-redis + + pcp-pmda-libvirt + + pcp-export-pcp2influxdb + +------------------------------------------------------------------- +Wed Mar 22 15:06:13 UTC 2017 - ddiss@suse.com + +- Update to 3.10.9 + See http://git.pcp.io/cgi-bin/gitweb.cgi?p=pcp/pcp.git;a=blob_plain;f=CHANGELOG;hb=3.10.9 + for details. + +- Drop obsolete 0001-Fix-XEN-build.patch + + PCP_PS_ALL_FLAGS now used explicitly +- Add 0010-build-do-not-include-.gitignore-in-installed-file-se.patch + +- Split out a number of agents from the base package into separate rpms +- Disable sheet2pcp + + As per upstream: "until BZ 830923 and BZ 754678 are resolved". + +------------------------------------------------------------------- +Tue Feb 28 18:09:50 UTC 2017 - ddiss@suse.com + +- Add _service file for pulling directly from the upstream Git repository. + +------------------------------------------------------------------- +Thu Apr 16 09:14:35 UTC 2015 - ddiss@suse.com + +- Update to 3.10.4 + See http://git.pcp.io/cgi-bin/gitweb.cgi?p=pcp/pcp.git;a=blob_plain;f=CHANGELOG;hb=3.10.4 + for details. + +------------------------------------------------------------------- +Wed Mar 18 23:13:23 UTC 2015 - ddiss@suse.com + +- Ensure the perl modules correctly link against the PCP libraries; + (bnc#841204). + + remove 0004-Remove-CPAN-rpaths.patch + +------------------------------------------------------------------- +Tue Mar 3 14:08:18 UTC 2015 - ddiss@suse.com + +- Update to 3.10.3 + See http://git.pcp.io/cgi-bin/gitweb.cgi?p=pcp/pcp.git;a=blob_plain;f=CHANGELOG;hb=3.10.3 + +- New sub-package + + pcp-import-ganglia2pcp + +------------------------------------------------------------------- +Fri Feb 27 13:18:15 UTC 2015 - ddiss@suse.com + +- Fix perl-PCP-LogImport requires version for pcp-import-sar2pcp. + +------------------------------------------------------------------- +Wed Feb 25 00:14:12 UTC 2015 - ddiss@suse.com + +- Require pcp-conf with libpcp3 on [open]SUSE platforms. + +------------------------------------------------------------------- +Mon Feb 23 20:21:40 UTC 2015 - kkaempf@suse.com + +- Update to 3.10.2 + See http://git.pcp.io/cgi-bin/gitweb.cgi?p=pcp/pcp.git;a=blob_plain;f=CHANGELOG;hb=HEAD + for details + +- new patches + 0007-Honor-CFLAGS-in-qmake.patch + 0008-SUSE-fy-pmsnap-control-path.patch + 0009-pmsnap-control-var-www-srv-www.patch + +- renamed patches + + pcp-xenbuild.patch to 0001-Fix-XEN-build.patch + + static_lib_perms.diff to + 0002-Install-libraries-without-exec-permission.patch + + pcp_legacy_init_lsb.patch to 0003-pcp-legacy-init-lsb.patch + + remove_cpan_rpaths.patch to 0004-Remove-CPAN-rpaths.patch + + rm_init_script_runlevel_4.patch to + 0005-Remove-runlevel-4-from-init-scripts.patch + + create-pmlogger-and-pmie-logdirs-during-install.patch + to 0006-create-pmlogger-and-pmie-logdirs-during-install.patch + +- Update to 3.10.1 + See http://git.pcp.io/cgi-bin/gitweb.cgi?p=pcp/pcp.git;a=blob_plain;f=CHANGELOG;hb=HEAD + for details + +- new sub-packages + * pcp-doc + * pcp-gui + * python3-pcp + * python-pcp + * pmda-infiniband + * pmda-perfevent + * pmda-papi + * import-collectl2pcp + +- drop fix_pmie_pmlogger_startup_races.patch, upstream + drop pcp-3.6.10-gcc5-reservedword.patch, obsolete + +------------------------------------------------------------------- +Mon Feb 23 16:28:50 UTC 2015 - boris@steki.net + +- fix gcc5 C99 reserved issue problems with patch + pcp-3.6.10-gcc5-reservedword.patch + +------------------------------------------------------------------- +Mon Nov 10 01:14:00 UTC 2014 - Led + +- fix bashism in post script + +------------------------------------------------------------------- +Sun May 11 05:56:19 UTC 2014 - coolo@suse.com + +- use %_rundir if available + +------------------------------------------------------------------- +Tue Apr 9 14:27:02 UTC 2013 - schwab@suse.de + +- Move configure run into the %build section. + +------------------------------------------------------------------- +Thu Jan 3 12:16:56 UTC 2013 - ddiss@suse.com + +- Describe xmktime.c and pthread_barrier.h licensing issues. Workaround by + continuing to remove the testsuite; (bnc#796448). + +------------------------------------------------------------------- +Tue Dec 4 12:15:41 UTC 2012 - ddiss@suse.com + +- Fix race conditions in pmie and pmlogger startup scripts. + + Add fix_pmie_pmlogger_startup_races.patch + + Upstream fix for regression caused by CVE-2012-5530 fix. + +------------------------------------------------------------------- +Thu Nov 29 16:38:46 UTC 2012 - meissner@suse.com + +- use permissions framework for handling the worldwriteable+sticky + bit directories. (bnc#782967) + +------------------------------------------------------------------- +Wed Nov 21 13:27:25 UTC 2012 - ddiss@suse.com + +- Create pcp user and group during installation. +- Package pre-populated tmp directory. The directory must be world writeable + (with the sticky-bit set), as it may be used by any PMDAs or client tools; + (bnc#782967). + +------------------------------------------------------------------- +Mon Nov 19 17:19:01 UTC 2012 - ddiss@suse.com + +- Remove fix_configure_path_tests.patch + + fixed upstream. +- Remove configure_append_pcp_subdir.patch + + fixed upstream. +- Add create-pmlogger-and-pmie-logdirs-during-install.patch + + pmcd and pmproxy logdirs are created, pmlogger and pmie were missing. + + Submitted upstream. + +- Update to pcp-3.6.10. + + Transition daemons to run under an unprivileged account. + + Fixes for security advisory CVE-2012-5530: tmpfile flaws; + (bnc#782967). + + Fix pcp(1) command short-form pmlogger reporting. + + Fix pmdalogger error handling for directory files. + + Fix pmstat handling of odd corner case in CPU metrics. + + Correct the python ctype used for pmAtomValue 32bit ints. + + Add missing RPM spec dependency for python-ctypes. + + Corrections to pmdamysql metrics units. + + Add pmdamysql slave status metrics. + + Improve pmcollectl error messages. + + Parameterize pmcollectl CPU counts in interrupt subsys. + + Fix generic RPM packaging for powerpc builds. + + Fix python API use of reentrant libpcp string routines. + + Python code backporting for RHEL5 in qa and pmcollectl. + + Fix edge cases in capturing interrupt error counts. + +- Update to pcp-3.6.9. + + Python wrapper for the pmimport API + + Make sar2pcp work with the sysstat versions from RHEL5, + RHEL6, and all recent Fedora versions (which is almost + all current versions of sysstat verified). + + Added a number of additional metrics into the importer + for people starting to use it to analyse sar data from + real customer incidents. + + Rework use of C99 "restrict" keyword in pmdalogger + (Debian bug: 689552) + + Alot of work on the PCP QA suite, special thanks to Tomas + Dohnalek for all his efforts there. + + Win32 build updates + + Add "raw" disk active metrics so that existing tools like + iostat can be emulated + + Allow sar2pcp to accept XML input directly (.xml suffix), + allowing it to not have to run on the same platform as the + sadc/sadf that originally generated it. + + Add PMI error codes into the PCP::LogImport perl module. + + Fix a typo in pmiUnits man page synopsis section + + Resolve pmdalinux ordering issue in NUMA/CPU indom setup + (Redhat bug: 858384) + + Remove unused pmcollectl imports (Redhat bug: 863210) + + Allow event traces to be used in libpcp interpolate mode + +- Update to pcp-3.6.8. + + Corrects the disk/partition identification for the MMC + driver, which makes disk indom handling correct on the + Raspberry Pi (http://www.raspberrypi.org/) + + Several minor/basic fixes for pmdaoracle. + + Improve pmcollectl compatibility. + + Make a few clarifications to pmcollectl.1. + + Improve python API test coverage. + + Numerous updates to the test suite in general. + + Allow pmda Install scripts to specify own dso name again. + + Reconcile spec file differences between PCP flavours. + + Fix handling of multiple contexts with a remote namespace. + + Core socket interface abstractions to support NSS (later). + + Fix man page SYNOPSIS section for pmUnpackEventRecords. + + Add --disable-shared build option for static builds. + +- Update to pcp-3.6.6. + + Added the python PMAPI bindings and an initial python client + in pmcollectl. Separate, new package exists for python libs + for those platforms that split out packages (rpm, deb). + + Added a pcp-testsuite package for those platforms that might + want this (rpm, deb again, mainly) + + Re-introduced the pcp/qa subdirectory in pcp and deprecated + the external pcpqa git tree. + + Fix potential buffer overflow in pmlogger host name handling. + + Reworked the configure --prefix handling to be more like the + rest of the open source world. + + Ensure the __pmDecodeText ident parameter is always set + Resolves Red Hat bugzilla bug #841306. + +------------------------------------------------------------------- +Tue Nov 13 11:10:58 UTC 2012 - ddiss@suse.com + +- Ensure pmlogger and pmie temporary state is always placed under + PCP_TMP_DIR. + +------------------------------------------------------------------- +Mon Nov 12 14:14:20 UTC 2012 - ddiss@suse.com + +- Specify the PCP temporary file directory at configure time using the + --with-tempdir= argument. + +------------------------------------------------------------------- +Fri Nov 9 15:32:28 UTC 2012 - ddiss@suse.com + +- Use mktemp for the placement of init script temp files. Place global + temp files under run_dir; (bnc#782967). + +------------------------------------------------------------------- +Wed Aug 15 23:57:34 UTC 2012 - ddiss@suse.com + +- Update to pcp-3.6.5. + + Fixes for security advisory CVE-2012-3418; (bnc#775009). + o Add field validation to PCP instance PDU (Red Hat #841240) + o Fix __pmDecodeInstanceReq heap buffer overflow (Red Hat #841284) + o Fix __pmDecodeText heap overflow (Red Hat #841249) + o Multiple issues in result PDU decoding (Red Hat #841159) + o Fix __pmDecodeNameReq buffer overflow (Red Hat #841180) + o Add length checks to __pmDecodeLogControl (Red Hat #841290) + o Add size check to __pmDecodeIDList (Red Hat #841112) + o Fix __pmDecodeNameList buffer overflow (Red Hat #840920) + o Add missing __pmDecodeFetch namelen checks (Red Hat #841183) + o Add length checks to __pmDecodeProfile (Red Hat #841126) + o Add length checks to __pmDecodeCreds (Red Hat #840822) + + Workaround for security advisory CVE-2012-3419; (bnc#775010). + o Split the Linux kernel and proc PMDAs to prevent information + leakage in default installs - esp. /proc/pid/maps exposure, + but other proc metrics as well - and no longer export process + metrics by default (Red Hat #841702) + + Fixes for security advisory CVE-2012-3420; (bnc#775011). + o Memory leak in pmcd DoFetch error path (Red Hat #841298) + o Memory leak in __pmGetPDU in-band signalling (Red Hat #841319) + + Fixes for security advisory CVE-2012-3421; (bnc#775013). + o Resolve event-driven programming flaw in pmcd (Red Hat #841706) + + Correct buffer unpinning logic in a PMNS traversal error path + o Red Hat bugzilla bug #847314. + + All of the above issues were identified by Florian Weimer of the + Red Hat Security Team, who also assisted extensively in fixing + and testing; a huge thank you to Florian from all PCP developers + and users! + + Add modern gcc/glibc security protection mechanisms where + available. Thanks to the Frank Eigler. + + Harden all boundary checking in the remaining PDU decoders. + + Resolve an issue with configure script checking for the init(1) + process on Fedora 17 (and other systems using systemd). Thanks + to Lukas Berk. + + pmdaelasticsearch only reports on nodes in the cluster now, + and not other client nodes. Thanks to Nigel Donaldson. + + Added interfaces to PCP::PMDA Perl module to allow PMDAs to + use a hash instance domain (instead of int/string array). + These make use of the pmdaCacheOp(3) interfaces - the hash + keys are the (external) PCP instance names, and the value + associated with each key is an opaque reference. + + Added an interface to allow PMDAs to register event queues + with existing clients (pmdaEventNewActiveQueue). + + Initial version of the (experimental) bash tracing PMDA. + +------------------------------------------------------------------- +Mon Jul 30 11:54:34 UTC 2012 - ddiss@suse.com + +- use addFilter for rpmlintrc, setBadness is not acceptable for Factory. + +------------------------------------------------------------------- +Thu Jul 19 15:28:03 UTC 2012 - ddiss@suse.com + +- Spec file cleanups following feedback from Sascha. + + Do not remove the buildroot as part of %install + + Use %suse_version rather than %_vendor + + Add pcp-rpmlintrc script for devel-file-in-non-devel-package errors + + Remove runlevel 4 references from init scripts + + Add explicit perl version Requires + +------------------------------------------------------------------- +Wed Jun 27 10:36:49 UTC 2012 - ddiss@suse.com + +- Remove fix_cpan_pmda_manifest.patch, no longer needed with fixed + upstream tarball. + +------------------------------------------------------------------- +Mon Jun 18 11:01:29 UTC 2012 - ddiss@suse.com + +- Remove invalid cpan/PMDA manifest entry. + +------------------------------------------------------------------- +Fri Jun 15 14:59:26 UTC 2012 - ddiss@suse.com + +- Update to pcp-3.6.4. + + Fix build on s390x platform (thanks to Dan Horak) + + Rethink order of PATH setting for pcp start scripts, to ensure + binaries from other packages with names that conflict with pcp + binaries are not found ahead of the same-named pcp binary. + +------------------------------------------------------------------- +Wed Jun 6 12:49:13 UTC 2012 - ddiss@suse.com + +- Use upstream based spec file to support combined SUSE/RH builds; + (bnc#732763). + +- Update to pcp-3.6.3. + + Revert initial attempt at getting configure --prefix option to + make sense for local developer PCP installations + + Fix RPM changelog typo in in-tree spec file + + Further work on Debian/kFreeBSD port (thanks to Robert Millan) + +- Update to pcp-3.6.2. + + Fix Debian builds on FreeBSD (missing header files) + + Resolve Debian startup script (compat) lintian issue + + Resolve FreeBSD kernel PMDA build issue with PCP not installed + in the build root already. + +- Update to pcp-3.6.1. + + Resolve final Mac OS X pthreads build issues + + Debian packaging improvements for split pmlogger/pmcd scripts, + perl module pieces, and other lintian reported issues + + Update the startup script dependencies for /var use + + Support --prefix=... and --exec-prefix=... configure options + + Relaxed the "are you running as root?" test in startup scripts + + Win32 build updates and improvements + + Cache /proc/stat file handle in Linux kernel agent to reduce + syscalls on the most commonly fetched metric subtree + +- Update to pcp-3.6.0. + + Thread-safe libpcp, including additional re-entrant and thread-safe + variants for some routines + + Retire all asynchronous routines from libpcp + + Retire all V1 protocols and services (archive format, PMAPI and + PMDA_INTERFACE) + + PMNS moves to ASCII only (no binary PMNS) + + Rework "init" scripts, splitting pcp into pmcd and pmlogger + + Update elasticsearch PMDA to 0.19+, new transport and shard metrics + + Updates to PMDA new event queueing interfaces for agents wishing to + export that class of performance data. + + First round of Coverity cleanup fixes incorporated. + + Initial version of the SNMP PMDA, thanks to Hamish Coleman. + + Updates to postgres PMDA to export additional recovery metrics. + +- Update to pcp-3.5.11. + + Update FSF contact address in copyright notices to keep + rpmlint happy. + + Fix instance domain checks in elasticsearch PMDA. + + Make KVM PMDA to run as root once more (permissions issues). + + Integration of pmlogger_daily with pmlogrewrite. + + Fix pmlogger_merge corner case for empty archives. + +- Update to pcp-3.5.10. + + Support new 0.18+ elasticsearch metrics. + + Fix handling of elasticsearch version metric cluster. + + Fix trace PMDA build issues. + + Fix some Win32 build issues. + + Run with reduced privileges for more of the perl PMDAs. + + Name Solaris load average metric consistently. + + Small metric documentation tweaks for Solaris PMDA. + +- Update to pcp-3.5.9. + + Add rc script support for condrestart, and condrestart the pcp, + pmie and pmproxy services after an RPM install or upgrade. + + Fix a bug where hinv.ndisk is incorrect if CLUSTER_PARTITIONS + hasn't yet been refreshed immediately following a restart. + + Implementation of client event queueing logic for all PMDAs to + share (all PMDAs wishing to support event metrics, that is). + + New manual pages for new PMDA event queueing interfaces. + + PostgreSQL PMDA, supporting versions 9.0 and 9.1 (at least). + + Reserved ID 111 for Samba Clustered Trivial Database PMDA. + + Add perl interface to allow PMDAs to drop priveleges + + Add an elasticsearch version metric. + + Correct perl module type detection logic for 32/64-bit systems. + + Small pmlogconf source and man page fixes. + + Rework flex usage to resolve build warnings. + + Make Darwin CPU metrics 64 bit. + + Add (long) opaque key support to libpcp_pmda. + + Add pmdaCacheStoreInst() routine to libpcp_pmda. + + Added mssql PMDA for SQL server Dynamic Management View stats. + + Add pmlogrewrite(1) to rewrite archives (fix inconsistencies). + + Fix a cgroup option parsing error on consecutive fetch calls. + +------------------------------------------------------------------- +Mon Feb 13 10:51:49 UTC 2012 - coolo@suse.com + +- patch license to follow spdx.org standard + +------------------------------------------------------------------- +Thu Nov 10 20:39:01 CET 2011 - meissner@suse.de + +- wildcard a bit to make it package on ppc + +------------------------------------------------------------------- +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 + + Correct accounting of PMNS size in a libpcp_pmda helper routine. + +- Update to pcp-3.2.0. + + Change how PM_CONTEXT_LOCAL determines available PMDAs: + rework local context code to retire $PMDA_LOCAL_*, build DSO table + from pmcd.conf at run-time, new __pmLocalPMDA and __pmSpecLocalPMDA + routines in libpcp, -K options for pminfo, pmval and pmprobe. + + Make some pmda dynamic name operations take (const char *) args. + + Fix bash completion so dynamic names expanded, and stderr culled + (culling DSO agent initialisation messages). + + Improve pmlogger handling of alias names (same PMID, different names). + + Honour the -T command line option in pmlogreduce. + + Resolve an MMV issue evident in the Mac OS X installer, which resulted + in failed dmg (binary) installation attempts. + + Solaris startup script improvements. + + Add details of the extended hostname syntax to pcpintro(1). + + Fix a memory leak in pmdawindows help text handling. + + Fix a memory leak in pmdammv help text handling. + + Add anonymous huge page Linux memory utilisation metric. + + Fix local context reporting of help text. + + Solaris man page build changes. + + Clean up diagnostic messages in pmlogextract. + + Teach pmdaproc about Solaris' ping. + + If pmstat fails to connect to local pmcd, fallback to local context. + + Mark as const the final (requested units) pmConvScale argument + + Clean out SGI-isms from build related files (no longer used by SGI). + + Fix mem.numa.util.NFS_Unstable metric. + + Removed pmdajstat, this has long been superceded by the capabilities + of the Parfait package for instrumenting Java applications with PCP. + +- Update to pcp-3.1.2. + + Add indom save and restore logic into Windows PMDA. + + Fix a typo in the Postfix PMDA. + + Update and extend /proc/meminfo stats on Linux. + + Improve handling of monitored process in pmdammv, especially + when the monitored process exits (pmns not cleaned up before). + +- Update to pcp-3.1.1. + + Use a better MMV generation number, using all bits available. + + Fix a metric count calculation error in pmdammv. + + Add precision argument (-p) to pmwtf. + + Added an open socket sockname command to dbpmda. + + Remove use of grep -q, unavailable on OpenSolaris. + + Couple of trivial build fixes for the Win32 platform. + +- Update to pcp-3.1.0. + + Derived metric support. + + Fix a memory leak in the Solaris kernel PMDA. + + Extract information about network links on Solaris. + + MMV PMDA (DSO) is now installed and enabled by default. + + Reintroduced MMV support for cross-(mmap-)file instances. + + Bug fix in pmdammv which was capable of causing SIGSEGV. + + Add dbpmda readline support (and packaging dependencies). + + Add in -Z option to pmwtf, to pass through to pmlogsummary. + + Export NUMA memory statistics from the linux kernel. + + Make pmie_check work on Solaris. + + Make perdisk stats part of the zpool hierarchy. + + dbpmda fix for name lookup and dynamic metrics. + + Add a new PMDA exporting the Postfix queue lengths. + + BuildRequires initscripts for %{_vendor} == redhat. + +- Update to pcp-3.0.2. + + Improvements and fixes to PCP::PMDA perl module. + + Added the SQL Server dtsrun log file parser PMDA. + + Switch MMV PMDA to use dynamic namespace interfaces, which resolves + long-standing spurious EAGAIN error on reconfiguration. + + Separate out the Infiniband and cluster PMDAs into their own + package - removing dependencies and configure complexities from + pcp into specialised, layered packages. + + Configure packaging to use libexecdir for private pcp binaries, + if supported on the platform (also honour --libexecdir configure flag) + + Add sysfs.kernel metrics cluster to Linux PMDA. + +- Update to pcp-3.0.1. + + Reverted rc scripts default start/stop settings back to how + it was in 2.9.3-1, for Debian bug #544350. On Red Hat platforms, + the RPM spec overrides this to be chkconfig off by default. + + Lexical analyser tweaks (various tools) to work on Windows. + + pmlogextract change timezone selection algorithm, add -f for old behaviour + + configure.in clean up more thoroughly on Mac OS X + + Get pcp building on Debian GNU/kFreeBSD port. + + Add missing return statement causing incorrect mem.util on Win32. + + Improved support for Slackware distro makepkg packaging + + Solaris fixes: pass information about compiler into Perl PMDA makefiles, + don't change pointer types of pmCtime's arguments, deal with default lex + + Move Infiniband and Cluster PMDAs to a stand-alone packages + + Trim the set of RPM files marked as %config to just those + that are actually likely to be edited (rpm -qlcv pcp pcp-libs). + +- Update to pcp-3.0.0. + + PMDA_INTERFACE_4 and the support of dynamic subtrees of the PMNS + where the PMDA (not PMCD) maintains knowledge of the PMNS. + + RPM 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-libs-devel can be installed with or without each other. + + Added separate specific licenses for the new subpackages, + particularly pcp-libs, which is LGPL. + + Added ldconfig %post and %postun scriptlets for -libs + + Don't explicitly require Infiniband libs, since they're libs and RPM + figures it out + + No need to explicitly BuildRequire gcc-c++ libstdc++-devel + + Add BuildRequires on perl-ExtUtils-MakeMaker + + Remove explicit ia64 Requires: libunwind + + Preserve generated gram.tab.c in several places since debuginfo needs it + + Create %{_localstatedir}/run/pcp and ship it (so it'll be removed) + + Use %doc in spec for CHANGELOG COPYING INSTALL README VERSION.pcp pcp.lsm + + Tweak configure to move PCP_BINADM_DIR out of /usr/share, into /usr/lib. + Arch dependent binaries should not be installed below /usr/share. + + Delete unneeded "explicit script interpreter" in several places + to keep rpmlint happy + + Remove setuid from pmpost, not needed (and not in debian either) + + Nuke the migrate_pcp_var_dir, script and it's %post scriptlet + + Default "chkconfig off" for all PCP services (retain settings on upgrade) + + Clean-up and simplify the %post scriptlets (rather dramatically) + + Don't ship static libraries in Fedora, we have the debug package for that + + Install .NeedRebuild, add to %files and remove crud from %post scriptlets + + Added %changelog in RPM spec and moved %files to end before %changelog + + Move demos, examples and demo PMDAS to the libs-devel package since they + are not used for production (but are useful for devel and needed for QA). + + Don't install trace demo binaries since src is installed anyway + + Reconciled build/rpm/pcp.spec.in with build/rpm/pcp_fedora.spec + + Integrated RPM packaging support for perl-PCP-PMDA and perl-PCP-MMV + (but perl-PCP-Logsummary is not currently shipped in RPM packages) + + RPM build requires perl(ExtUtils::MakeMaker) rather than + perl-extutils-makemaker (this is the standard notation) + + For easier upgrades, the perl PMDAs only really require pcp >= package + version (until we change or extend an API). + + ReplacePmnsSubtree fix bad signal handling botch (affecting MMV PMDA) + + Fix pmcd.timezone metric such that value updates on daylight savings + (or other timezone) changes. + + Initial packaging work for Slackware Linux, thanks to Roman Revyakin. + +- Update to pcp-2.9.3. + + configure.in fix for Windows iptypes.h header. + + Fixup Windows SQL Server metrics on 64 bit platforms. + +- Update to pcp-2.9.2. + + Final iteration on pmval sample count changes. + + Build fallout on Mac/Win32 in MMV client library. + + Tidy configure.in sys/stat time field/types handling for Alpha builds. + +- Update to pcp-2.9.1. + + Fix a long-standing pmval sample count miscalculation. + + Add missing runlevels and dependencies in start scripts. + + Fix a segv observed in the Windows PMDA accessing SQL Server metrics. + + Fix logic error causing wrong Windows version to be reported sometimes. + + Add kernel.all.uptime to the Windows kernel agent. + + Initial version of the (perl-based) Samba PMDA. + + Fixes to pmdasimple.pl so it functions correctly on all platforms. + + Add PCP::PMDA helper routines for determining native long sizes. + + Extend MMV to allow teardown of MMV file, and set errno on failure. + + Initial stable (1.00) version of MMV Perl interface. + + Correct the metric units for several Windows per-process memory metrics. + + Add network metrics to Solaris PMDA + + Report ZFS statistics from Solaris PMDA + + Export zpool stats from Solaris PMDA + + Generate packages for Solaris + + Allow user to choose her compiler (proper use of AC_PROG_CC) + +- Update to pcp-2.9.0. + + Fix Linux PMDA issue with -fstack-protector gcc option. + + Get socket daemon PMDAs working with Win32 pmcd. + + Bind 9.4 PMDA. + + PowerDNS PMDA. + + Fix atexit handling in the Perl PMDA module. + + Fix a duplicate PMID in the MySQL PMDA. + + Infiniband PMDA improvements and man page. + + Minor packaging tweaks for rpm and deb formats. + +- Update to pcp-2.8.12. + + Bug fixes in Zimbra and MySQL PMDAs. + + Fix memory leaks in the Perl PMDA interface. + + Fix the Mac OS X pmdadarwin metric table direct mapping. + +- Update to pcp-2.8.11. + + Rework namespace file generation for Perl PMDAs. + +- Update to pcp-2.8.10. + + RPM packaging fixes for Perl modules. + +- Update to pcp-2.8.9. + + Remove Cygwin support, we're now committed to native Win32 + port - first production install yesterday, hooray! + + Further Win32 work - wrapper batch files for shell scripts + run as commands, moved daemon configs into $PCP_DIR/etc, + bug fixes to process creation code. + + Significant work on the MMV PMDA, including revamped API, + Perl API, updated on-disk support with string values and + help text support, amongst other changes. + + Fix build of Perl PMDA module when PCP not installed. + + Fix Zimbra PMDA status metrics. + +- Update to pcp-2.8.8. + + Added a Zimbra Collaboration Suite PMDA. + + Build fixes for OpenSolaris. + + Perl PMDA fixes in tail mode. + + Correct physical memory reporting in Windows PMDA on 32 bit + machines. + + Other small tweaks and improvements to Windows PMDA also. + +- Update to pcp-2.8.7. + + Windows PMDA major rework to improve memory footprint. + + Yet another Mac OS X build issue resolution. + +- Update to pcp-2.8.6. + + Fix build on Mac OS X after lex warning cleanups. + + Fix pmdate build when PCP headers not in the root. + + A single PMNS domain number file now used in-tree. + + Added tmpfs filesystem metrics to Linux PMDA. + +- Update to pcp-2.8.5. + + Packaging tweaks for Debian (builddefs/rules moved). + + Make timezone manipulation in Windows work (mimic MSYS). + + Numerous warnings fixed. + + Several changes to tempfile handling for Vista. + + Make setting pcp_rc_dir in configure.in more robust. + + Further pathname separator auditing for Windows. + + Fixed a libpcp_gui linker issue on Mac OS X. + +- Update to pcp-2.8.4. + + Descend into src/bashrc. D'oh! + +- Update to pcp-2.8.3. + + Bash auto-completion of metric names. + + Fix a memory leak in xfs project quotas metrics. + + Several Win32 fixes for Windows Server 2008. + + Add Linux per-CPU and aggregate "guest" CPU utilisation metrics. + + Add a pmlogsummary option to report a "header" line (-H). + + Add optional pmstat support for time control via pmtime. + + Add pmcd.client.* metrics for identifying connected clients. + +- Update to pcp-2.8.2. + + Fix pmie bug in the handling of && and || operators. + + Improve daily pmie/pmlogger script behaviour. + +- Update to pcp-2.8.1. + + Fix build issue with libpcp_mmv - would not build-from-source + if was not in the root filesystem. + + Finer control of pmie2col(1) reporting precision. + +- Update to pcp-2.8.0. + + Linux netfilter (IP connection tracking) PMDA included + + Memory Mapped Value (MMV) PMDA and client library included + + Linux bonding (bonded network interface) PMDA included + + Lustre PMDA included + + Added pcp_gui library as pcpmon replacement, supporting the + new (open source) version of pmtime for console tools. + + Perl PCP::LogSummary module included. + + KVM (Linux Kernel Virtualisation layer) PMDA + + Infiniband PMDA included + + VMware PMDA included + + Perl PCP::PMDA module completed, stabilised and incorporated. + + Default pmcd and pmproxy ports changed to IANA registered ones. + ( The old behaviour - i.e. both original and IANA ports - is + still available using PMCD_PORTS and PMPROXY_PORTS variables ). + +- Update to pcp-2.7.7. + + Infiniband metric enhancements + + Handle missing "which" binary during rpm installation + + Added new quota metrics (XFS project quota) + + Aggregate and per-CPU hypervisor "steal" time metrics added + + NFS v4 metrics + + commitLimit meminfo metric added + + Namespace locking fix in pmdaproc.sh + + Additional Windows memory metrics + + Several pmie fixes from Ken + + Kens pmlogreduce archive corruption fix + + Kens pmproxy PDU size fix + + Nathan's pmlogsummary sum calulation fix + + Added a (cheap) runnable processes metric. + +- Update to pcp-2.7.4. + + MaxOSX and Debian/Ubuntu build/package fixes + + Add sqlserver active_transactions metrics to the Windows PMDA. + + Fix a pmie_check typo causing mis-identification of pmie processes. + + Allow pmie and/or operators to function with some data missing. + + Resolve path naming issues with more recent versions of autoconf. + + pmlogsummary report sum option + + pmval kmtime support + + Additional Linux SNMP metrics + + Fix Linux vmstat nr_slab metrics + + Make pcp status command report build version + + Windows split_io metrics + + Fix pmdapmcd empty pmie instance + + pmdamailq filename regex + + Windows TCP metrics + + pmie log file rotation + + Changed the default compression program to be bzip2(1) + +- Update to pcp-2.7.3. + + add network.ib.control to timeout infiniband stats workthread + + add mem.util.anonpages + +- Update to pcp-2.7.2. + + pcp doc updates + + pmdalinux death from open file descriptors: pclose needed in network.ib + + network.ib stats updated to cope with OFED 1.2 changes + + some numa.link fixes for shub2 & NL4 + + Improve start/stop times of pmcd,pmlogger,pmie + + create portable pmsleep (subsecond sleep) exe + +- Update to pcp-2.7.0. + This log has been allowed to lapse for some time. Blanket catch-up.. + the following PVs describe changes made in that time: + + 947510 - UNIX95 patches break pcp tools + + 948548 - [SUSE#182852] Buffer overflow in linux proc_pmda + + 948551 - Update pcp configure and build infrastructure + + 948799 - Move telnet-probe to oss part of pcp + + 948958 - *nodeid conversions have inconsistent naming + + 952623 - possible use-after-free of pmProfile objects used by pmda + + 952932 - pcp-open RPM requires libpcp.so.2 but doesn't provide it + + 953015 - Promote libpcp_pmc to DSO + + 953301 - Update irix pcp bits + + 953876 - Use swap.pagesin/pagesout instead of swap.in/.out in pmstat + + 954035 - Update macosx build infrastructure + + 954165 - pmdumptext reports wrong time with sub-second intervals + + 954173 - pmReceiveNamesOfChildren returns bogus value + + 954203 - pmnscomp generates bogus binary pmns files + + 954342 - Add support for FreeBSD + + 954343 - Update windows pmda + + 954432 - Use a pidfile to stop pcp + + 954652 - telnet-probe ate my arguments + + 954842 - Update qa on sles10 for pcp 2.5 and 2.6 + + 956190 - add IB traffic stats to linux PMDA + + 956199 - pmlogsummary double free causes graph failures + + 957598 - add debuginfo to pcp-open build in mangrove + + 957758 - valgrind finds "invalid read of size 8" etc in __pmStuffValue + + 957884 - need network.ib.status for per-port IB status and description + + 958273 - If OFED is installed but no ports are found, return PM_ERR_VALUE from refresh_ib + + 958379 - IB PMDA broken (port num appearing twice in perfquery calls) + + 958476 - path to pmie_check binary incorrect in pmie crontab config file + +- Update to pcp-2.5.0-2. + + 947602 - pmdas/aix/common.h is missing from the tarball + +------------------------------------------------------------------- +Thu Feb 11 00:44:51 UTC 2010 - jengelh@medozas.de + +- SPARC requiers use large PIC + +------------------------------------------------------------------- +Wed Jun 10 10:55:48 CEST 2009 - coolo@novell.com + +- filter out -fomit-frame-pointer to fix build + +------------------------------------------------------------------- +Tue Jun 9 17:10:20 CEST 2009 - coolo@novell.com + +- continue previous work + +------------------------------------------------------------------- +Wed Feb 25 20:21:59 CET 2009 - crrodriguez@suse.de + +- fix build with GCC44, #ident is a deprecated GCC extension + +------------------------------------------------------------------- +Thu Nov 6 17:23:58 CET 2008 - ro@suse.de + +- fix build failure in obs + +------------------------------------------------------------------- +Tue Oct 7 16:42:23 CEST 2008 - kukuk@suse.de + +- Fix possible buffer overflow + +------------------------------------------------------------------- +Thu Aug 28 23:28:57 CEST 2008 - cthiel@suse.de + +- fix init scripts + +------------------------------------------------------------------- +Wed Dec 5 02:33:52 CET 2007 - ro@suse.de + +- fix build with gcc-4.3 + (package could possibly be updated anyway) + +------------------------------------------------------------------- +Thu Jul 12 16:28:26 CEST 2007 - rw@suse.de + +- Split off development package. + +------------------------------------------------------------------- +Fri Mar 30 01:24:31 CEST 2007 - ro@suse.de + +- Add procps,ncurses-devel,bison to buildreq. + +------------------------------------------------------------------- +Fri Jun 16 16:20:58 CEST 2006 - schwab@suse.de + +- Set datadir. +- Use RPM_OPT_FLAGS. + +------------------------------------------------------------------- +Fri Jun 2 17:46:18 CEST 2006 - rw@suse.de + +- Remove fake dependency on gdbm-devel headers. (#177730) + +------------------------------------------------------------------- +Wed Jan 25 21:39:19 CET 2006 - mls@suse.de + +- Convert neededforbuild to BuildRequires + +------------------------------------------------------------------- +Mon Jan 16 17:04:58 CET 2006 - rw@suse.de + +- Update to version 2.5.0. (FATE 153129) + +------------------------------------------------------------------- +Thu Oct 20 16:32:42 CEST 2005 - rw@suse.de + +- Fix permission of a demo directory. (#129486) + +------------------------------------------------------------------- +Sat Apr 9 20:30:07 CEST 2005 - coolo@suse.de + +- Fix gcc4 compilation + +------------------------------------------------------------------- +Fri Nov 12 14:38:06 CET 2004 - ro@suse.de + +- Correct permissions handling for pmpost + +------------------------------------------------------------------- +Mon Oct 18 05:21:36 CEST 2004 - nashif@suse.de + +- Update to version 2.4.0 + +------------------------------------------------------------------- +Wed Apr 28 16:52:27 CEST 2004 - nashif@suse.de + +- #39324: fixes for SuSE and 2.6 kernels in general from SGI + +------------------------------------------------------------------- +Tue Mar 16 07:19:24 CET 2004 - nashif@suse.de + +- Update to version 2.3.2 + +------------------------------------------------------------------- +Wed Nov 5 17:08:13 CET 2003 - ro@suse.de + +- package according to permissions.secure and add run_permissions +- don't build as root + +------------------------------------------------------------------- +Mon Jul 21 15:43:49 CEST 2003 - nashif@suse.de + +- update to version 2.3.1 + +------------------------------------------------------------------- +Thu Jun 19 07:10:26 CEST 2003 - nashif@suse.de + +- Update to version 2.3.0 +- Fixed file list + +------------------------------------------------------------------- +Fri Apr 11 00:52:01 CEST 2003 - ro@suse.de + +- fix build with coreutils + (deprecated calling syntax for head,tail,sort) + +------------------------------------------------------------------- +Mon Jan 20 15:16:34 CET 2003 - ro@suse.de + +- make it compile with latest glibc (pcp-2.2.2-st_mtime.patch) + +------------------------------------------------------------------- +Mon Dec 2 18:15:37 CET 2002 - ro@suse.de + +- include errno.h where needed +- use yacc instead of bison for now (make it compile) + +------------------------------------------------------------------- +Fri Aug 16 18:18:55 CEST 2002 - nashif@suse.de + +- Fixed bug #17954: Added PreReq + +------------------------------------------------------------------- +Thu Apr 25 11:40:56 CEST 2002 - coolo@suse.de + +- fix build for x86_64 and s390x + +------------------------------------------------------------------- +Fri Feb 15 18:31:58 CET 2002 - nashif@suse.de + +- fix bug #13321: made init script pmie LSB compliant + - Added header note + - Status returns correct value +- Fixed pcp init script: status did not work + +------------------------------------------------------------------- +Fri Jan 18 08:02:29 CET 2002 - nashif@suse.de + +- Update to version 2.2.2 + +------------------------------------------------------------------- +Thu Dec 6 16:51:03 CET 2001 - nashif@suse.de + +- Removed START_ variable +- Changed escaped { to non escaped to stop awk from complaining + +------------------------------------------------------------------- +Mon Jul 9 23:20:50 CEST 2001 - nashif@suse.de + +- Update to version 2.2.1 +- Fixed bug # 9068 + +------------------------------------------------------------------- +Thu Jun 7 02:39:24 CEST 2001 - nashif@suse.de + +- fixed configure.in + +------------------------------------------------------------------- +Wed May 9 20:42:05 CEST 2001 - mfabian@suse.de + +- bzip2 sources + +------------------------------------------------------------------- +Thu Mar 15 16:57:21 CET 2001 - nashif@suse.de + +- added -fpic to fix compile error on ia64 + +------------------------------------------------------------------- +Fri Feb 9 07:02:18 MET 2001 - nashif@suse.de + +- Update headers +- Modified init scripts + +------------------------------------------------------------------- +Sun Dec 3 17:29:42 MET 2000 - nashif@suse.de + +- Fixed %post (exit before insserv) +- Added sub-package pcp-mysql +- Added mysql PMDA to monitor mysql sessions + +------------------------------------------------------------------- +Thu Nov 30 15:29:22 MET 2000 - nashif@suse.de + +- Update to 2.2.11 + +------------------------------------------------------------------- +Wed Nov 29 18:15:47 CET 2000 - ro@suse.de + +- move rcscript to etc/init.d + +------------------------------------------------------------------- +Sun Nov 26 18:29:28 MET 2000 - nashif@suse.de + +- Use insserv + +------------------------------------------------------------------- +Mon Oct 30 04:32:01 MET 2000 - nashif@suse.de + +- Update to version 2.2.10 + +------------------------------------------------------------------- +Wed Sep 27 03:19:06 MEST 2000 - nashif@suse.de + +- Update to 2.1.7 + +------------------------------------------------------------------- +Fri Jul 7 14:13:33 CEST 2000 - kukuk@suse.de + +- Fix for SPARC + +------------------------------------------------------------------- +Wed May 24 09:30:43 CEST 2000 - nashif@suse.de + +- Initial Release (2.1.4) + diff --git a/pcp.spec b/pcp.spec new file mode 100644 index 0000000..69ddeea --- /dev/null +++ b/pcp.spec @@ -0,0 +1,4065 @@ +# +# spec file for package pcp +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%if ! %{defined _fillupdir} + %define _fillupdir /var/adm/fillup-templates +%endif + +%if 0%{?suse_version} +%global pcp_gr System/Monitoring +%global lib_pkg libpcp3 +%global lib_pkg_conflict pcp-libs +%global lib_gr System/Libraries +%global lib_devel_pkg libpcp-devel +%global lib_devel_pkg_conflict pcp-libs-devel +%global lib_devel_gr Development/Libraries/Other +%global license_apache2 Apache-2.0 +%global license_cc_by CC-BY-SA-3.0 +%global license_gplv2 GPL-2.0 +%global license_gplv2plus GPL-2.0+ +%global license_lgplv2 LGPL-2.0 +%global license_lgplv2plus LGPL-2.0+ +%global license_lgplv21plus LGPL-2.1+ +%global license_mit MIT +%else +%global pcp_gr Applications/System +%global lib_pkg pcp-libs +%global lib_pkg_conflict libpcp3 +%global lib_gr System Environment/Libraries +%global lib_devel_pkg pcp-libs-devel +%global lib_devel_pkg_conflict libpcp-devel +%global lib_devel_gr Development/Libraries +%global license_apache2 ASL2.0 +%global license_cc_by CC-BY +%global license_gplv2 GPLv2 +%global license_gplv2plus GPLv2+ +%global license_lgplv2 LGPLv2 +%global license_lgplv2plus LGPLv2+ +%global license_lgplv21plus LGPLv2.1+ +%global license_mit MIT +%endif + +%global libpcp_pmda_sover 3 +%global libpcp_gui_sover 2 +%global libpcp_mmv_sover 1 +%global libpcp_trace_sover 2 +%global libpcp_import_sover 1 +%global libpcp_web_sover 1 +%global libpcp_fault_sover 3 + +Summary: System-level performance monitoring and performance management +License: %{license_gplv2plus} AND %{license_lgplv2plus} AND %{license_cc_by} +Group: %{pcp_gr} +Name: pcp +Version: 6.2.1 +Release: 0 +%global buildversion 1 + +URL: https://pcp.io +Source0: https://github.com/performancecopilot/pcp/archive/refs/tags/%{version}.tar.gz#/pcp-%{version}.tar.gz +%if 0%{?suse_version} +Source2: pcp-rpmlintrc +%endif + +# PATCH-FIX-OPENSUSE, kkaempf@suse.de +Patch1: 0001-Install-libraries-without-exec-permission.patch +# PATCH-FIX-OPENSUSE, kkaempf@suse.de +Patch2: 0002-Remove-CPAN-rpaths.patch +# PATCH-FIX-OPENSUSE, kkaempf@suse.de +Patch3: 0003-Remove-runlevel-4-from-init-scripts.patch +# PATCH-FIX-OPENSUSE, kkaempf@suse.de +Patch5: 0005-SUSE-fy-pmsnap-control-path.patch +# PATCH-FIX-OPENSUSE, kkaempf@suse.de +Patch6: 0006-pmsnap-control-var-www-srv-www.patch +# PATCH-FIX-UPSTREAM, ddiss@suse.de +Patch10: 0010-services-switch-logutil-and-pmieutil-scripts-from-ty.patch + +%global disable_selinux 0 +%if 0%{?suse_version} < 1600 +%global disable_selinux 1 +%endif + +%global disable_snmp 0 + +# No libpfm devel packages for s390, armv7hl nor for some rhels, disable +%ifarch s390 s390x armv7hl +%global disable_perfevent 1 +%else +%if 0%{?fedora} >= 20 || 0%{?rhel} > 6 || 0%{?suse_version} +%global disable_perfevent 0 +%else +%global disable_perfevent 1 +%endif +%endif + +# libvarlink and pmdapodman +%if 0%{?fedora} >= 28 || 0%{?rhel} > 7 +%global disable_podman 0 +%else +%global disable_podman 1 +%endif + +# libchan, libhdr_histogram and pmdastatsd +%if 0%{?fedora} >= 29 || 0%{?rhel} > 8 +%global disable_statsd 0 +%else +%global disable_statsd 1 +%endif + +%global disable_sheet2pcp 1 + +%global disable_python3 0 +# drop python2 packages +%global _with_python2 --with-python=no + +%if 0%{?fedora} >= 24 || 0%{?rhel} > 7 +%global perl_interpreter perl-interpreter +%else +%global perl_interpreter perl +%endif + +# support for pmdabcc +%if 0%{?fedora} >= 25 || 0%{?rhel} > 6 +%ifarch s390 s390x armv7hl aarch64 i686 +%global disable_bcc 1 +%else +%global disable_bcc 0 +%endif +%else +%global disable_bcc 1 +%endif + +# support for pmdabpftrace +%if 0%{?fedora} >= 30 || 0%{?rhel} > 8 +%ifarch s390 s390x armv7hl aarch64 i686 +%global disable_bpftrace 1 +%else +%global disable_bpftrace 0 +%endif +%else +%global disable_bpftrace 1 +%endif + +# support for pmdajson +%if 0%{?rhel} == 0 || 0%{?rhel} > 6 +%if !%{disable_python3} +%global disable_json 0 +%else +%global disable_json 1 +%endif +%else +%global disable_json 1 +%endif + +# No mssql ODBC driver on non-x86 platforms +%ifarch x86_64 +%if !%{disable_python3} +%global disable_mssql 1 +%else +%global disable_mssql 1 +%endif +%else +%global disable_mssql 1 +%endif + +%ifarch x86_64 +%global disable_resctrl 0 +%else +%global disable_resctrl 1 +%endif + +# support for pmdanutcracker (perl deps missing on rhel) +%if 0%{?rhel} == 0 +%global disable_nutcracker 0 +%else +%global disable_nutcracker 1 +%endif + +# support for pmdarpm +%if 0%{?rhel} == 0 || 0%{?rhel} > 5 +%global disable_rpm 0 +%else +%global disable_rpm 1 +%endif + +# Qt development and runtime environment missing components before el6 +%if 0%{?rhel} && 0%{?rhel} <= 5 +%global disable_qt 1 +%else +%if 0%{?suse_version} < 1500 +%global disable_qt 1 +%else +%global disable_qt 0 +%endif +%endif + +# We need qt5 for fedora and openSUSE / SLE factory +%if 0%{?fedora} != 0 || 0%{?suse_version} > 1320 +%global default_qt 5 +%endif + +# systemd services and pmdasystemd +%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 || 0%{?suse_version} +%global disable_systemd 0 +%else +%global disable_systemd 1 +%endif + +# systemtap static probing, missing before el6 and on some architectures +%if 0%{?rhel} == 0 || 0%{?rhel} > 5 +%global disable_sdt 0 +%else +%ifnarch ppc ppc64 +%global disable_sdt 0 +%else +%global disable_sdt 1 +%endif +%endif + +# libuv async event library +%if 0%{?fedora} >= 28 || 0%{?rhel} > 7 || 0%{?suse_version} +%global disable_libuv 0 +%else +%global disable_libuv 1 +%endif + +# libvirt pmda introduces a dependency loop: ffmpeg-4=>gstreamer-plugins-bad +# =>libquicktime=>libvirt=>pcp=>samba=>Wireshark +%global disable_libvirt 1 + +%if 0%{?suse_version} +# SUSE doesn't currently ship the python psycopg2 dependency +%global disable_postgresql 1 +%else +%global disable_postgresql 0 +%endif + +# rpm producing "noarch" packages +%if 0%{?rhel} == 0 || 0%{?rhel} > 5 || 0%{?suse_version} >= 1315 +%global disable_noarch 0 +%else +%global disable_noarch 1 +%endif + +%if 0%{?fedora} >= 24 +%global disable_xlsx 0 +%else +%global disable_xlsx 1 +%endif + +%if 0%{?suse_version} <= 1500 && !%{disable_python3} +%global disable_lio 1 +%else +%global disable_lio 0 +%endif + +%if 0%{?suse_version} +# pcp-export-zabbix-agent installs under a zabbix owned directory +%global disable_zabbix_agent 1 +%else +%global disable_zabbix_agent 0 +%endif + +# declare the user/group we create in the preinstall script +Provides: user(pcp) +Provides: group(pcp) + +# KVM PMDA moved into pcp (no longer using Perl, default on) +Obsoletes: pcp-pmda-kvm < %{version} +Provides: pcp-pmda-kvm = %{version} + +# PCP REST APIs are now provided by pmproxy +Obsoletes: pcp-webapi < 5.0.0 +Provides: pcp-webapi = %{version} +Obsoletes: pcp-webapi-debuginfo < 5.0.0 +Provides: pcp-webapi-debuginfo = %{version} + +# PCP discovery service now provided by pmfind +Obsoletes: pcp-manager < 5.2.0 +Provides: pcp-manager = %{version} +Obsoletes: pcp-manager-debuginfo < 5.2.0 +Provides: pcp-manager-debuginfo = %{version} + +BuildRequires: autoconf +BuildRequires: avahi-devel +BuildRequires: bison +BuildRequires: flex +BuildRequires: gcc-c++ +BuildRequires: zlib-devel +%if 0%{?suse_version} +BuildRequires: fdupes +BuildRequires: mozilla-nss-devel +%else # suse_version +BuildRequires: nss-devel +%endif # suse_version +BuildRequires: perl +BuildRequires: procps +BuildRequires: rpm-devel +BuildRequires: perl(JSON) +BuildRequires: perl(LWP::UserAgent) +%if !%{disable_python3} +BuildRequires: python3-devel +%endif +BuildRequires: cyrus-sasl-devel +BuildRequires: ncurses-devel +BuildRequires: readline-devel +%if !%{disable_podman} +BuildRequires: libvarlink-devel +%endif +%if !%{disable_statsd} +BuildRequires: HdrHistogram_c-devel +BuildRequires: chan-devel +BuildRequires: ragel +%endif +%if !%{disable_perfevent} +BuildRequires: libpfm-devel >= 4.4 +%endif +%if !%{disable_sdt} +BuildRequires: systemtap-sdt-devel +%endif +%if !%{disable_libuv} +BuildRequires: libuv-devel >= 1.0 +%endif +BuildRequires: openssl-devel >= 1.0.2p +BuildRequires: perl-ExtUtils-MakeMaker +%if 0%{?suse_version} +BuildRequires: update-desktop-files +%else +BuildRequires: initscripts +%endif +BuildRequires: man +%if !%{disable_systemd} +BuildRequires: pkgconfig(libsystemd) +BuildRequires: pkgconfig(systemd) +%{?systemd_requires} +%endif +%if !%{disable_qt} +BuildRequires: desktop-file-utils +%if 0%{?default_qt} != 5 +%if 0%{?suse_version} +BuildRequires: libqt4-devel >= 4.4 +%else # suse_version +BuildRequires: qt4-devel >= 4.4 +%endif # suse_version +%else # default_qt +%if 0%{?suse_version} +BuildRequires: libqt5-qtbase-devel +BuildRequires: libqt5-qtsvg-devel +%else # suse_version +BuildRequires: qt5-qtbase-devel +BuildRequires: qt5-qtsvg-devel +%endif # suse_version +%endif # default_qt +%endif # !disable_qt +%if !%{disable_selinux} +Requires: (pcp-selinux = %{version}-%{release} if selinux-policy-targeted) +%endif + +Requires: bash +%if %{disable_systemd} +Requires: cron +%endif +Requires: fileutils +Requires: findutils +Requires: gawk +Requires: grep +Requires: perl +Requires: sed +Requires: which +%if 0%{?suse_version} +Requires: /usr/bin/hostname +Requires: cpp +Requires: cyrus-sasl +%else +Requires: initscripts +%endif + +Requires: %{lib_pkg} = %{version}-%{release} +Obsoletes: pcp-pmda-nvidia < %{version} +Provides: pcp-pmda-nvidia = %{version} + +%global _confdir %{_sysconfdir}/pcp +%global _logsdir %{_localstatedir}/log/pcp +%global _pmnsdir %{_localstatedir}/lib/pcp/pmns +%global _pmnsexecdir %{_libexecdir}/pcp/pmns +%global _tempsdir %{_localstatedir}/lib/pcp/tmp +%global _pmdasdir %{_localstatedir}/lib/pcp/pmdas +%global _pmdasexecdir %{_libexecdir}/pcp/pmdas +%global _testsdir %{_localstatedir}/lib/pcp/testsuite +%global _selinuxdir %{_datadir}/selinux/packages/targeted +%global _logconfdir %{_localstatedir}/lib/pcp/config/pmlogconf +%global _ieconfdir %{_localstatedir}/lib/pcp/config/pmieconf +%global _tapsetdir %{_datadir}/systemtap/tapset +%global _bashcompdir %{_datadir}/bash-completion/completions +%if 0%{?suse_version} +%global _pixmapdir %{_datadir}/pixmaps +%global _booksdir %{_docdir}/pcp-doc +%if 0%{?suse_version} >= 1500 +%global _hicolordir %{_datadir}/icons/hicolor +%endif +%else +%global _pixmapdir %{_datadir}/pcp-gui/pixmaps +%global _booksdir %{_datadir}/doc/pcp-doc +%global _hicolordir %{_datadir}/icons/hicolor +%endif + +%if 0%{?fedora} >= 20 || 0%{?rhel} >= 8 || 0%{?suse_version} +# FIXME: PCP defaults to using %%{_datadir}/doc/pcp-doc +%global _with_doc --with-docdir=%{_docdir}/%{name} +%endif +%if !%{disable_systemd} +%global _initddir %{_datadir}/pcp/lib +%else +%if 0%{?suse_version} +%global _initddir %{_sysconfdir}/init.d +%else +%global _initddir %{_sysconfdir}/rc.d/init.d +%endif +%global _with_initd --with-rcdir=%{_initddir} +%endif + +# we never want Infiniband on s390 platforms +%ifarch s390 s390x +%global disable_infiniband 1 +%else +# we never want Infiniband on versions earlier than SLE-15 +%if 0%{?suse_version} != 0 && 0%{?suse_version} < 1500 +%global disable_infiniband 1 +%else +# we never want Infiniband on RHEL5 or earlier +%if 0%{?rhel} != 0 && 0%{?rhel} < 6 +%global disable_infiniband 1 +%else +%global disable_infiniband 0 +%endif +%endif +%endif + +%if !%{disable_infiniband} +%global _with_ib --with-infiniband=yes +%endif + +%if %{disable_perfevent} +%global _with_perfevent --with-perfevent=no +%else +%global _with_perfevent --with-perfevent=yes +%endif + +%if %{disable_podman} +%global _with_podman --with-podman=no +%else +%global _with_podman --with-podman=yes +%endif + +%if %{disable_statsd} +%global _with_statsd --with-statsd=no +%else +%global _with_statsd --with-statsd=yes +%endif + +%if %{disable_bcc} +%global _with_bcc --with-pmdabcc=no +%else +%global _with_bcc --with-pmdabcc=yes +%endif + +%if %{disable_bpftrace} +%global _with_bpftrace --with-pmdabpftrace=no +%else +%global _with_bpftrace --with-pmdabpftrace=yes +%endif + +%if %{disable_json} +%global _with_json --with-pmdajson=no +%else +%global _with_json --with-pmdajson=yes +%endif + +%if %{disable_nutcracker} +%global _with_nutcracker --with-pmdanutcracker=no +%else +%global _with_nutcracker --with-pmdanutcracker=yes +%endif + +%if %{disable_snmp} +%global _with_snmp --with-pmdasnmp=no +%else +%global _with_snmp --with-pmdasnmp=yes +%endif + +%global pmda_remove() %{expand: +if [ %1 -eq 0 ] +then + PCP_PMDAS_DIR=%{_pmdasdir} + PCP_PMCDCONF_PATH=%{_confdir}/pmcd/pmcd.conf + if [ -f "$PCP_PMCDCONF_PATH" -a -f "$PCP_PMDAS_DIR/%2/domain.h" ] + then + (cd "$PCP_PMDAS_DIR/%2/" && ./Remove >/dev/null 2>&1) + fi +fi +} + +%global install_file() %{expand: +if [ -w "%1" ] +then + (cd "%1" && touch "%2" && chmod 644 "%2") +else + echo "WARNING: Cannot write to %1, skipping %2 creation." >&2 +fi +} + +%global rebuild_pmns() %{expand: +if [ -w "%1" ] +then + (cd "%1" && ./Rebuild -s && rm -f "%2") +else + echo "WARNING: Cannot write to %1, skipping namespace rebuild." >&2 +fi +} + +%description +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-conf +# +%package conf +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot run-time configuration +License: %{license_lgplv21plus} +Group: %{lib_gr} +URL: https://pcp.io +# http://fedoraproject.org/wiki/Packaging:Conflicts "Splitting Packages" +Conflicts: pcp-libs < 3.9 + +%description conf +Performance Co-Pilot (PCP) run-time configuration + + + +# +# pcp-libs +# +%package -n %{lib_pkg} +Summary: Performance Co-Pilot run-time libraries +License: %{license_lgplv21plus} +Group: %{lib_gr} +URL: https://pcp.io +Conflicts: %{lib_pkg_conflict} +Requires: pcp-conf >= %{version}-%{release} + +%description -n %{lib_pkg} +Performance Co-Pilot (PCP) run-time libraries + +%if 0%{?suse_version} +%package -n libpcp_gui%{libpcp_gui_sover} +Summary: Performance Co-Pilot run-time GUI library +License: %{license_lgplv21plus} +Group: %{lib_gr} +URL: https://pcp.io + +%description -n libpcp_gui%{libpcp_gui_sover} +Performance Co-Pilot (PCP) run-time graphical user interface library + +%package -n libpcp_mmv%{libpcp_mmv_sover} +Summary: Performance Co-Pilot run-time MMV library +License: %{license_lgplv21plus} +Group: %{lib_gr} +URL: https://pcp.io + +%description -n libpcp_mmv%{libpcp_mmv_sover} +Performance Co-Pilot (PCP) run-time Memory Mapped Values library + +%package -n libpcp_trace%{libpcp_trace_sover} +Summary: Performance Co-Pilot run-time tracing library +License: %{license_lgplv21plus} +Group: %{lib_gr} +URL: https://pcp.io + +%description -n libpcp_trace%{libpcp_trace_sover} +Performance Co-Pilot (PCP) run-time tracing library + +%package -n libpcp_import%{libpcp_import_sover} +Summary: Performance Co-Pilot run-time import library +License: %{license_lgplv21plus} +Group: %{lib_gr} +URL: https://pcp.io + +%description -n libpcp_import%{libpcp_import_sover} +Performance Co-Pilot (PCP) run-time import library + +%package -n libpcp_web%{libpcp_web_sover} +Summary: Performance Co-Pilot run-time web library +License: %{license_lgplv21plus} +Group: %{lib_gr} +URL: https://pcp.io + +%description -n libpcp_web%{libpcp_web_sover} +Performance Co-Pilot (PCP) run-time web library +%endif + +# +# pcp-libs-devel +# SLE uses the legacy libpcp-devel package name. +# +%package -n %{lib_devel_pkg} +Summary: Performance Co-Pilot (PCP) development headers +License: %{license_gplv2plus} AND %{license_lgplv21plus} +Group: %{lib_devel_gr} +URL: https://pcp.io +Requires: %{lib_pkg} = %{version}-%{release} +Requires: libpcp_gui%{libpcp_gui_sover} = %{version} +Requires: libpcp_import%{libpcp_import_sover} = %{version}-%{release} +Requires: libpcp_mmv%{libpcp_mmv_sover} = %{version}-%{release} +Requires: libpcp_trace%{libpcp_trace_sover} = %{version}-%{release} +Requires: libpcp_web%{libpcp_web_sover} = %{version}-%{release} +Conflicts: %{lib_devel_pkg_conflict} +%if (0%{?suse_version} > 0) +Obsoletes: pcp-devel < %{version} +Provides: pcp-devel = %{version} +%endif + +%description -n %{lib_devel_pkg} +Performance Co-Pilot (PCP) headers for development. + + + +# +# pcp-devel +# +%package devel +Summary: Performance Co-Pilot (PCP) development tools and documentation +License: %{license_gplv2plus} AND %{license_lgplv21plus} +Group: %{lib_devel_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_devel_pkg} = %{version}-%{release} +Requires: %{lib_pkg} = %{version}-%{release} +Requires: pcp = %{version}-%{release} +Requires: pcp = %{version}-%{release} +%endif + +%description devel +Performance Co-Pilot (PCP) documentation and tools for development. + + + +# +# pcp-testsuite +# +%package testsuite +Summary: Performance Co-Pilot (PCP) test suite +License: %{license_gplv2plus} AND %{license_mit} +Group: %{lib_devel_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_devel_pkg} = %{version}-%{release} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: pcp = %{version}-%{release} +Requires: pcp-devel = %{version}-%{release} +Obsoletes: pcp-gui-testsuite < %{version} +Provides: pcp-gui-testsuite = %{version} +# declare the user/group we create in the preinstall script +Provides: user(pcpqa) +Provides: group(pcpqa) + +%description testsuite +Quality assurance test suite for Performance Co-Pilot (PCP). + + + +# +# perl-PCP-PMDA. This is the PCP agent perl binding. +# +%package -n perl-PCP-PMDA +Summary: Performance Co-Pilot (PCP) Perl bindings and documentation +License: %{license_gplv2plus} +Group: %{lib_devel_gr} +URL: https://pcp.io +%if 0%{?suse_version} +%perl_requires +%endif +Requires: %{lib_pkg} = %{version}-%{release} + +%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 +Summary: Performance Co-Pilot (PCP) Perl bindings for PCP Memory Mapped Values +License: %{license_gplv2plus} +Group: %{lib_devel_gr} +URL: https://pcp.io +%if 0%{?suse_version} +%perl_requires +%endif +Requires: %{lib_pkg} = %{version}-%{release} + +%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. + + + +# +# perl-PCP-LogImport +# +%package -n perl-PCP-LogImport +Summary: Performance Co-Pilot Perl bindings for importing external archive data +License: %{license_gplv2plus} +Group: %{lib_devel_gr} +URL: https://pcp.io +%if 0%{?suse_version} +%perl_requires +%endif +Requires: %{lib_pkg} = %{version}-%{release} + +%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. + + + +# +# perl-PCP-LogSummary +# +%package -n perl-PCP-LogSummary +Summary: Performance Co-Pilot Perl bindings for processing pmlogsummary output +License: %{license_gplv2plus} +Group: %{lib_devel_gr} +URL: https://pcp.io +%if 0%{?suse_version} +%perl_requires +%endif +Requires: %{lib_pkg} = %{version}-%{release} + +%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). + + + +# +# pcp-import-sar2pcp +# +%package import-sar2pcp +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot archive tools for importing sar data +License: %{license_lgplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: perl-PCP-LogImport = %{version}-%{release} +Requires: 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 +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot archive tools for importing iostat data +License: %{license_lgplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: perl-PCP-LogImport = %{version}-%{release} +Requires: 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. + +%if !%{disable_sheet2pcp} +# +# pcp-import-sheet2pcp +# +%package import-sheet2pcp +Summary: Performance Co-Pilot archive tools for importing spreadsheet data +License: %{license_lgplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: perl-PCP-LogImport = %{version}-%{release} +Requires: 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. + +%endif + +# +# pcp-import-mrtg2pcp +# +%package import-mrtg2pcp +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot archive tools for importing MTRG data +License: %{license_lgplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: perl-PCP-LogImport = %{version}-%{release} + +%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. + + + +# +# pcp-import-ganglia2pcp +# +%package import-ganglia2pcp +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot archive tools for importing ganglia data +License: %{license_lgplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: perl-PCP-LogImport = %{version}-%{release} + +%description import-ganglia2pcp +Performance Co-Pilot (PCP) front-end tools for importing ganglia data +into standard PCP archive logs for replay with any PCP monitoring tool. + + + +# +# pcp-import-collectl2pcp +# +%package import-collectl2pcp +Summary: Performance Co-Pilot archive tools for importing collectl data +License: %{license_lgplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif + +%description import-collectl2pcp +Performance Co-Pilot (PCP) front-end tools for importing collectl data +into standard PCP archive logs for replay with any PCP monitoring tool. + +%if !%{disable_zabbix_agent} +# +# pcp-export-zabbix-agent +# +%package export-zabbix-agent +Summary: Module for exporting from PCP into a Zabbix agent daemon +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} >= %{version}-%{release} +%else +# this package nests files under %%{_sysconfdir}/zabbix, which is provided by: +Requires: zabbix-server +%endif + +%description export-zabbix-agent +Performance Co-Pilot (PCP) module for exporting metrics from PCP to +Zabbix via the Zabbix agent - see zbxpcp(3) for further details. +%endif + +%if !%{disable_python3} +# +# pcp-export-pcp2elasticsearch +# +%package export-pcp2elasticsearch +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot tools for exporting PCP metrics to ElasticSearch +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: %{lib_pkg} >= %{version}-%{release} +Requires: python3-pcp = %{version}-%{release} +Requires: python3-requests +BuildRequires: python3-requests + +%description export-pcp2elasticsearch +Performance Co-Pilot (PCP) front-end tools for exporting metric values +to Elasticsearch - a distributed, RESTful search and analytics engine. +See https://www.elastic.co/community for further details. + + + +# +# pcp-export-pcp2graphite +# +%package export-pcp2graphite +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot tools for exporting PCP metrics to Graphite +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: python3-pcp = %{version}-%{release} + +%description export-pcp2graphite +Performance Co-Pilot (PCP) front-end tools for exporting metric values +to graphite (http://graphite.readthedocs.org). + + + +# pcp-export-pcp2influxdb +# +%package export-pcp2influxdb +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot tools for exporting PCP metrics to InfluxDB +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} >= %{version}-%{release} +%endif +Requires: python3-pcp = %{version}-%{release} +Requires: python3-requests +BuildRequires: python3-requests + +%description export-pcp2influxdb +Performance Co-Pilot (PCP) front-end tools for exporting metric values +to InfluxDB (https://influxdata.com/time-series-platform/influxdb). + + + +# +# pcp-export-pcp2json +# +%package export-pcp2json +%if !%{disable_noarch} +BuildArch: noarch +%endif +URL: https://pcp.io +Summary: Performance Co-Pilot tools for exporting PCP metrics in JSON format +License: %{license_gplv2plus} +Group: %{pcp_gr} +Requires: %{lib_pkg} >= %{version}-%{release} +Requires: python3-pcp = %{version}-%{release} + +%description export-pcp2json +Performance Co-Pilot (PCP) front-end tools for exporting metric values +in JSON format. + + + +# +# pcp-export-pcp2spark +# +%package export-pcp2spark +%if !%{disable_noarch} +BuildArch: noarch +%endif +URL: https://pcp.io +Summary: Performance Co-Pilot tools for exporting PCP metrics to Apache Spark +License: %{license_gplv2plus} +Group: %{pcp_gr} +Requires: %{lib_pkg} >= %{version}-%{release} +Requires: python3-pcp = %{version}-%{release} + +%description export-pcp2spark +Performance Co-Pilot (PCP) front-end tools for exporting metric values +in JSON format to Apache Spark. See https://spark.apache.org/ for +further details on Apache Spark. + +# +# pcp-export-pcp2xlsx +# +%if !%{disable_xlsx} +%package export-pcp2xlsx +URL: https://pcp.io +Summary: Performance Co-Pilot tools for exporting PCP metrics to Excel +License: %{license_gplv2plus} +Group: %{pcp_gr} +Requires: %{lib_pkg} >= %{version}-%{release} +Requires: python3-openpyxl +Requires: python3-pcp = %{version}-%{release} +BuildRequires: python3-openpyxl + +%description export-pcp2xlsx +Performance Co-Pilot (PCP) front-end tools for exporting metric values +in Excel spreadsheet format. +%endif + +# +# pcp-export-pcp2xml +# +%package export-pcp2xml +%if !%{disable_noarch} +BuildArch: noarch +%endif +URL: https://pcp.io +Summary: Performance Co-Pilot tools for exporting PCP metrics in XML format +License: %{license_gplv2plus} +Group: %{pcp_gr} +Requires: %{lib_pkg} >= %{version}-%{release} +Requires: python3-pcp = %{version}-%{release} + +%description export-pcp2xml +Performance Co-Pilot (PCP) front-end tools for exporting metric values +in XML format. + + + +# +# pcp-export-pcp2zabbix +# +%package export-pcp2zabbix +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot tools for exporting PCP metrics to Zabbix +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp = %{version}-%{release} + +%description export-pcp2zabbix +Performance Co-Pilot (PCP) front-end tools for exporting metric values +to the Zabbix (https://www.zabbix.org/) monitoring software. +%endif + +%if !%{disable_statsd} +# +# pcp-pmda-statsd +# +%package pmda-statsd +Summary: Performance Co-Pilot (PCP) metrics from statsd +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: pcp = %{version}-%{release} +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: HdrHistogram_c +Requires: chan + +%description pmda-statsd +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting statistics from the statsd daemon. +%endif + +%if !%{disable_perfevent} +# +# pcp-pmda-perfevent +# +%package pmda-perfevent +Summary: Performance Co-Pilot (PCP) metrics for hardware counters +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +Requires: libpfm >= 4.4 +%endif +BuildRequires: libpfm-devel >= 4.4 +Obsoletes: pcp-pmda-papi < 5.0.0 +Provides: pcp-pmda-papi = %{version} +Obsoletes: pcp-pmda-papi-debuginfo < 5.0.0 +Provides: pcp-pmda-papi-debuginfo = %{version} + +%description pmda-perfevent +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting hardware counters statistics through libpfm. +%endif + +%if !%{disable_infiniband} +# +# pcp-pmda-infiniband +# +%package pmda-infiniband +Summary: Performance Co-Pilot (PCP) metrics for Infiniband HCAs and switches +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +Requires: libibmad >= 1.3.7 +Requires: libibumad >= 1.3.7 +%endif +BuildRequires: libibmad-devel >= 1.3.7 +BuildRequires: libibumad-devel >= 1.3.7 + +%description pmda-infiniband +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting Infiniband statistics. By default, it monitors the local HCAs +but can also be configured to monitor remote GUIDs such as IB switches. +%endif + +# +# pcp-pmda-activemq +# +%package pmda-activemq +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for ActiveMQ +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl(LWP::UserAgent) + +%description pmda-activemq +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the ActiveMQ message broker. + + + +#end pcp-pmda-activemq +# +# pcp-pmda-bind2 +# +%package pmda-bind2 +Summary: Performance Co-Pilot (PCP) metrics for BIND servers +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl(File::Slurp) +Requires: perl(LWP::UserAgent) +Requires: perl(XML::LibXML) + +%description pmda-bind2 +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics from BIND (Berkeley Internet Name Domain). + + + +#end pcp-pmda-bind2 +# +# pcp-pmda-redis +# +%package pmda-redis +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for Redis +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} + +%description pmda-redis +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics from Redis servers (redis.io). + +#end pcp-pmda-redis +%if !%{disable_nutcracker} +# +# pcp-pmda-nutcracker +# +%package pmda-nutcracker +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for NutCracker (TwemCache) +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl(JSON) +Requires: perl(YAML::XS) + +%description pmda-nutcracker +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics from NutCracker (TwemCache). +#end pcp-pmda-nutcracker +%endif + +# +# pcp-pmda-bonding +# +%package pmda-bonding +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for Bonded network interfaces +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Supplements: pcp + +%description pmda-bonding +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about bonded network interfaces. + + + +#end pcp-pmda-bonding +# +# pcp-pmda-dbping +# +%package pmda-dbping +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for Database responsiveness +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Supplements: pcp + +%description pmda-dbping +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Database response times and Availablility. + + + +#end pcp-pmda-dbping +# +# pcp-pmda-ds389 +# +%package pmda-ds389 +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for 389 Directory Servers +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if 0%{?suse_version} +Requires: perl-ldap +%else +Requires: perl-LDAP +%endif +Requires: perl-PCP-PMDA = %{version}-%{release} + +%description pmda-ds389 +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about a 389 Directory Server. + + + +#end pcp-pmda-ds389 +# +# pcp-pmda-ds389log +# +%package pmda-ds389log +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for 389 Directory Server Loggers +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-Date-Manip +Requires: perl-PCP-PMDA = %{version}-%{release} + +%description pmda-ds389log +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics from a 389 Directory Server log. + + + +#end pcp-pmda-ds389log +# +# pcp-pmda-gpfs +# +%package pmda-gpfs +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for GPFS Filesystem +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} + +%description pmda-gpfs +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the GPFS filesystem. + + + +#end pcp-pmda-gpfs +# +# pcp-pmda-gpsd +# +%package pmda-gpsd +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for a GPS Daemon +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Supplements: pcp + +%description pmda-gpsd +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about a GPS Daemon. + + + +#end pcp-pmda-gpsd +# +# pcp-pmda-docker +# +%package pmda-docker +Summary: Performance Co-Pilot (PCP) metrics from the Docker daemon +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io + +%description pmda-docker +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics using the Docker daemon REST API. + + + +#end pcp-pmda-docker +# +# pcp-pmda-lustre +# +%package pmda-lustre +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for the Lustre Filesytem +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} + +%description pmda-lustre +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Lustre Filesystem. + + + +#end pcp-pmda-lustre +# +# pcp-pmda-lustrecomm +# +%package pmda-lustrecomm +Summary: Performance Co-Pilot (PCP) metrics for the Lustre Filesytem Comms +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: pcp = %{version}-%{release} +Supplements: pcp + +%description pmda-lustrecomm +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Lustre Filesystem Comms. + + + +#end pcp-pmda-lustrecomm +# +# pcp-pmda-memcache +# +%package pmda-memcache +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for Memcached +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Supplements: pcp + +%description pmda-memcache +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about Memcached. + + + +#end pcp-pmda-memcache +# +# pcp-pmda-mysql +# +%package pmda-mysql +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for MySQL +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl(DBD::mysql) +Requires: perl(DBI) +BuildRequires: perl(DBD::mysql) +BuildRequires: perl(DBI) +Supplements: pcp + +%description pmda-mysql +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the MySQL database. + + + +#end pcp-pmda-mysql +# +# pcp-pmda-named +# +%package pmda-named +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for Named +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Supplements: pcp + +%description pmda-named +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Named nameserver. + + + +#end pcp-pmda-named +# pcp-pmda-netfilter +# +%package pmda-netfilter +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for Netfilter framework +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Supplements: pcp + +%description pmda-netfilter +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Netfilter packet filtering framework. + + + +#end pcp-pmda-netfilter +# +# pcp-pmda-news +# +%package pmda-news +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for Usenet News +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Supplements: pcp + +%description pmda-news +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about Usenet News. + + + +#end pcp-pmda-news +# +# pcp-pmda-nginx +# +%package pmda-nginx +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for the Nginx Webserver +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl(LWP::UserAgent) +BuildRequires: perl(LWP::UserAgent) + +%description pmda-nginx +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Nginx Webserver. + + + +#end pcp-pmda-nginx +# +# pcp-pmda-oracle +# +%package pmda-oracle +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for the Oracle database +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl(DBI) +BuildRequires: perl(DBI) + +%description pmda-oracle +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Oracle database. + + + +#end pcp-pmda-oracle +# +# pcp-pmda-pdns +# +%package pmda-pdns +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for PowerDNS +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Supplements: pcp + +%description pmda-pdns +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the PowerDNS. + + + +#end pcp-pmda-pdns +# +# pcp-pmda-postfix +# +%package pmda-postfix +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for the Postfix (MTA) +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +%if 0%{?fedora} > 16 || 0%{?rhel} > 5 +Requires: postfix-perl-scripts +BuildRequires: postfix-perl-scripts +%endif +%if 0%{?rhel} <= 5 +Requires: postfix +BuildRequires: postfix +%endif +%if "%{_vendor}" == "suse" +Requires: postfix-doc +BuildRequires: postfix-doc +%endif +%if 0%{?suse_version} >= 1500 +Supplements: (pcp and postfix) +%else +Supplements: pcp +Supplements: postfix +%endif + +%description pmda-postfix +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Postfix (MTA). + + + +#end pcp-pmda-postfix +# +# pcp-pmda-rsyslog +# +%package pmda-rsyslog +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for Rsyslog +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +%if 0%{?suse_version} >= 1500 +Supplements: (pcp and rsyslog) +%else +Supplements: pcp +Supplements: rsyslog +%endif + +%description pmda-rsyslog +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about Rsyslog. + + + +#end pcp-pmda-rsyslog +# +# pcp-pmda-samba +# +%package pmda-samba +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for Samba +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Supplements: pcp + +%description pmda-samba +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about Samba. + + + +#end pcp-pmda-samba +# +# pcp-pmda-slurm +# +%package pmda-slurm +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for NFS Clients +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} + +%description pmda-slurm +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics from the SLURM Workload Manager. + +#end pcp-pmda-slurm +%if !%{disable_snmp} +# +# pcp-pmda-snmp +# +%package pmda-snmp +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for Simple Network Management Protocol +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +# There are no perl-Net-SNMP packages in rhel, disable unless non-rhel or epel5 +%if 0%{?rhel} == 0 || 0%{?rhel} < 6 +Requires: perl(Net::SNMP) +%endif +Supplements: pcp + +%description pmda-snmp +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about SNMP. +#end pcp-pmda-snmp +%endif + +# +# pcp-pmda-vmware +# +%package pmda-vmware +Summary: Performance Co-Pilot (PCP) metrics for VMware +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Supplements: pcp + +%description pmda-vmware +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics for VMware. + + + +#end pcp-pmda-vmware +# +# pcp-pmda-zimbra +# +%package pmda-zimbra +Summary: Performance Co-Pilot (PCP) metrics for Zimbra +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: perl-PCP-PMDA = %{version}-%{release} +Supplements: pcp + +%description pmda-zimbra +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about Zimbra. + + + +#end pcp-pmda-zimbra +# +# pcp-pmda-dm +# +%package pmda-dm +Summary: Performance Co-Pilot (PCP) metrics for the Device Mapper Cache and Thin Client +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif + +%description pmda-dm +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Device Mapper Cache and Thin Client. + +# end pcp-pmda-dm +%if !%{disable_python3} +# +# pcp-pmda-gluster +# +%package pmda-gluster +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for the Gluster filesystem +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp + +%description pmda-gluster +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the gluster filesystem. + + + +# end pcp-pmda-gluster +# +# pcp-pmda-nfsclient +# +%package pmda-nfsclient +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for NFS Clients +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp + +%description pmda-nfsclient +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics for NFS Clients. + +#end pcp-pmda-nfsclient +%if !%{disable_postgresql} +# +# pcp-pmda-postgresql +# +%package pmda-postgresql +Summary: Performance Co-Pilot (PCP) metrics for PostgreSQL +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp +Requires: python3-psycopg2 +BuildRequires: python3-psycopg2 + +%description pmda-postgresql +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the PostgreSQL database. +#end pcp-pmda-postgresql +%endif + +# +# pcp-pmda-zswap +# +%package pmda-zswap +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for compressed swap +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp + +%description pmda-zswap +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about compressed swap. + + + +# end pcp-pmda-zswap +# +# pcp-pmda-unbound +# +%package pmda-unbound +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for the Unbound DNS Resolver +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp + +%description pmda-unbound +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Unbound DNS Resolver. + + + +# end pcp-pmda-unbound +# +# pcp-pmda-mic +# +%package pmda-mic +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for Intel MIC cards +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp + +%description pmda-mic +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about Intel MIC cards. + + + +# end pcp-pmda-mic +# +# pcp-pmda-haproxy +# +%package pmda-haproxy +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for HAProxy +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp + +%description pmda-haproxy +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +extracting performance metrics from HAProxy over the HAProxy stats socket. + +# end pcp-pmda-haproxy +%if !%{disable_libvirt} +# +# pcp-pmda-libvirt +# +%package pmda-libvirt +Summary: Performance Co-Pilot (PCP) metrics for virtual machines +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if 0%{?suse_version} +Requires: python3-libvirt-python +BuildRequires: python3-libvirt-python +%else +Requires: libvirt-python3 +BuildRequires: libvirt-python3 +%endif +Requires: python3-lxml +BuildRequires: python3-lxml +Requires: python3-pcp + +%description pmda-libvirt +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +extracting virtualisation statistics from libvirt about behaviour of guest +and hypervisor machines. +# end pcp-pmda-libvirt +%endif + +# +# pcp-pmda-elasticsearch +# +%package pmda-elasticsearch +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for Elasticsearch +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp + +%description pmda-elasticsearch +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about Elasticsearch. + + + +#end pcp-pmda-elasticsearch +# +# pcp-pmda-openvswitch +# +%package pmda-openvswitch +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for Open vSwitch +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp + +%description pmda-openvswitch +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics from Open vSwitch. + + + +#end pcp-pmda-openvswitch +# +# pcp-pmda-rabbitmq +# +%package pmda-rabbitmq +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for RabbitMQ queues +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp + +%description pmda-rabbitmq +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about RabbitMQ message queues. + +#end pcp-pmda-rabbitmq +%if !%{disable_lio} +# +# pcp-pmda-lio +# +%package pmda-lio +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for the LIO subsystem +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp +%if 0%{?suse_version} +Requires: python3-rtslib-fb +BuildRequires: python3-rtslib-fb +%else +Requires: python3-rtslib +BuildRequires: python3-rtslib +%endif + +%description pmda-lio +This package provides a PMDA to gather performance metrics from the kernels +iSCSI target interface (LIO). The metrics are stored by LIO within the Linux +kernels configfs filesystem. The PMDA provides per LUN level stats, and a +summary instance per iSCSI target, which aggregates all LUN metrics within the +target. +#end pcp-pmda-lio +%endif # !%%{disable_lio} + +# +# pcp-pmda-openmetrics +# +%package pmda-openmetrics +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics from OpenMetrics endpoints +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp +Requires: python3-requests +BuildRequires: python3-requests +Obsoletes: pcp-pmda-prometheus < 5.0.0 +Provides: pcp-pmda-prometheus = %{version} + +%description pmda-openmetrics +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +extracting metrics from OpenMetrics (https://openmetrics.io/) endpoints. + + + +#end pcp-pmda-openmetrics +# +# pcp-pmda-lmsensors +# +%package pmda-lmsensors +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for hardware sensors +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp +# rewritten in python, so there is no longer a debuginfo package +Obsoletes: pcp-pmda-lmsensors-debuginfo < %{version} +Provides: pcp-pmda-lmsensors-debuginfo = %{version} + +%description pmda-lmsensors +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Linux hardware monitoring sensors. + + + +# end pcp-pmda-lmsensors +# +# pcp-pmda-netcheck +# +%package pmda-netcheck +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for simple network checks +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: python3-pcp + +%description pmda-netcheck +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics from simple network checks. + +# end pcp-pmda-netcheck +%endif # !%%{disable_python3} + +%if !%{disable_mssql} +# +# pcp-pmda-mssql +# +%package pmda-mssql +Summary: Performance Co-Pilot (PCP) metrics for Microsoft SQL Server +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: python3-pcp + +%description pmda-mssql +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics from Microsoft SQL Server. +# end pcp-pmda-mssql +%endif + +%if !%{disable_resctrl} +# +# pcp-pmda-resctrl +# +%package pmda-resctrl +Summary: Performance Co-Pilot (PCP) metrics for the /sys/fs/resctrl interface +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif + +%description pmda-resctrl +This package contains the PCP Performance Metrics Domain Agent (PMDA) +which exposes performance metrics values from the /sys/fs/resctrl +interface to provide information on the last level cache. +# end pcp-pmda-resctrl +%endif + +# +# pcp-pmda-uwsgi +# +%package pmda-uwsgi +Summary: Performance Co-Pilot (PCP) metrics uWSGI servers +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif + +%description pmda-uwsgi +This package contains the PCP Performance Metrics Domain Agent (PMDA) +for collecting metrics from uWSGI servers. + +# end pcp-pmda-uwsgi +%if !%{disable_json} +# +# pcp-pmda-json +# +%package pmda-json +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) metrics for JSON data +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp +Requires: python3-six +BuildRequires: python3-six +Requires: python3-jsonpointer +BuildRequires: python3-jsonpointer + +%description pmda-json +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics output in JSON. +# end pcp-pmda-json +%endif # !%%{disable_json} + +# +# C pmdas +# pcp-pmda-apache +# +%package pmda-apache +Summary: Performance Co-Pilot (PCP) metrics for the Apache webserver +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Supplements: pcp + +%description pmda-apache +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Apache webserver. + + + +# end pcp-pmda-apache +# +# pcp-pmda-bash +# +%package pmda-bash +Summary: Performance Co-Pilot (PCP) metrics for the Bash shell +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Supplements: pcp + +%description pmda-bash +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Bash shell. + + + +# end pcp-pmda-bash +# +# pcp-pmda-cifs +# +%package pmda-cifs +Summary: Performance Co-Pilot (PCP) metrics for the CIFS protocol +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif + +%description pmda-cifs +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Common Internet Filesytem. + + + +# end pcp-pmda-cifs +# +# pcp-pmda-cisco +# +%package pmda-cisco +Summary: Performance Co-Pilot (PCP) metrics for Cisco routers +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Supplements: pcp + +%description pmda-cisco +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about Cisco routers. + + + +# end pcp-pmda-cisco +# +# pcp-pmda-gfs2 +# +%package pmda-gfs2 +Summary: Performance Co-Pilot (PCP) metrics for the GFS2 filesystem +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif + +%description pmda-gfs2 +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Global Filesystem v2. + + + +# end pcp-pmda-gfs2 +# +# pcp-pmda-logger +# +%package pmda-logger +Summary: Performance Co-Pilot (PCP) metrics from arbitrary log files +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Supplements: pcp + +%description pmda-logger +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics from a specified set of log files (or pipes). The PMDA +supports both sampled and event-style metrics. + + + +# end pcp-pmda-logger +# +# pcp-pmda-mailq +# +%package pmda-mailq +Summary: Performance Co-Pilot (PCP) metrics for the sendmail queue +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Supplements: pcp + +%description pmda-mailq +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about email queues managed by sendmail. + + + +# end pcp-pmda-mailq +# +# pcp-pmda-mounts +# +%package pmda-mounts +Summary: Performance Co-Pilot (PCP) metrics for filesystem mounts +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Supplements: pcp + +%description pmda-mounts +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about filesystem mounts. + + + +# end pcp-pmda-mounts +# +# pcp-pmda-nvidia-gpu +# +%package pmda-nvidia-gpu +Summary: Performance Co-Pilot (PCP) metrics for the Nvidia GPU +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif + +%description pmda-nvidia-gpu +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about Nvidia GPUs. + + + +# end pcp-pmda-nvidia-gpu +# +# pcp-pmda-roomtemp +# +%package pmda-roomtemp +Summary: Performance Co-Pilot (PCP) metrics for the room temperature +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: pcp = %{version}-%{release} +Supplements: pcp + +%description pmda-roomtemp +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the room temperature. + +# end pcp-pmda-roomtemp +%if !%{disable_rpm} +# +# pcp-pmda-rpm +# +%package pmda-rpm +Summary: Performance Co-Pilot (PCP) metrics for the RPM package manager +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: pcp = %{version}-%{release} + +%description pmda-rpm +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the installed RPM packages. +%endif +# end pcp-pmda-rpm + +# +# pcp-pmda-sendmail +# +%package pmda-sendmail +Summary: Performance Co-Pilot (PCP) metrics for Sendmail +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: pcp = %{version}-%{release} +Supplements: pcp + +%description pmda-sendmail +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about Sendmail traffic. + + + +# end pcp-pmda-sendmail +# +# pcp-pmda-shping +# +%package pmda-shping +Summary: Performance Co-Pilot (PCP) metrics for shell command responses +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Supplements: pcp + +%description pmda-shping +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about quality of service and response time measurements of +arbitrary shell commands. + + + +# end pcp-pmda-shping +# +# pcp-pmda-smart +# +%package pmda-smart +Summary: Performance Co-Pilot (PCP) metrics for S.M.A.R.T values +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: %{lib_pkg} = %{version}-%{release} + +%description pmda-smart +This package contains the PCP Performance Metric Domain Agent (PMDA) for +collecting metrics of disk S.M.A.R.T values making use of data from the +smartmontools package. + + + +#end pcp-pmda-smart +# +# pcp-pmda-sockets +# +%package pmda-sockets +License: %{license_gplv2plus} +Summary: Performance Co-Pilot (PCP) per-socket metrics +URL: https://pcp.io +Requires: %{lib_pkg} = %{version}-%{release} +Requires: iproute +Requires: pcp = %{version}-%{release} + +%description pmda-sockets +This package contains the PCP Performance Metric Domain Agent (PMDA) for +collecting per-socket statistics, making use of utilities such as 'ss'. + + + +#end pcp-pmda-sockets +# +# pcp-pmda-hacluster +# +%package pmda-hacluster +License: %{license_gplv2plus} +Summary: Performance Co-Pilot (PCP) metrics for High Availability Clusters +URL: https://pcp.io +Requires: %{lib_pkg} = %{version}-%{release} +Requires: pcp = %{version}-%{release} + +%description pmda-hacluster +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about linux High Availability (HA) Clusters. + + + +# end pcp-pmda-hacluster +# +# pcp-pmda-summary +# +%package pmda-summary +Summary: Performance Co-Pilot (PCP) summary metrics from pmie +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: pcp = %{version}-%{release} +Supplements: pcp + +%description pmda-summary +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about other installed pmdas. + +# end pcp-pmda-summary +%if !%{disable_systemd} +# +# pcp-pmda-systemd +# +%package pmda-systemd +Summary: Performance Co-Pilot (PCP) metrics from the Systemd journal +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif + +%description pmda-systemd +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics from the Systemd journal. +# end pcp-pmda-systemd +%endif + +# +# pcp-pmda-trace +# +%package pmda-trace +Summary: Performance Co-Pilot (PCP) metrics for application tracing +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Supplements: pcp + +%description pmda-trace +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about trace performance data in applications. + + + +# end pcp-pmda-trace +# +# pcp-pmda-weblog +# +%package pmda-weblog +Summary: Performance Co-Pilot (PCP) metrics from web server logs +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif +Requires: pcp = %{version}-%{release} +Supplements: pcp + +%description pmda-weblog +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about web server logs. + + + +# end pcp-pmda-weblog +# end C pmdas + +%package zeroconf +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Performance Co-Pilot (PCP) Zeroconf Package +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: pcp +Requires: pcp-doc +Requires: pcp-pmda-dm +Requires: pcp-pmda-nfsclient +Requires: pcp-system-tools + +# to make pcp-zeroconf replace sysstat, uncomment the next line +# Obsoletes: sysstat +%description zeroconf +This package contains configuration tweaks and files to increase metrics +gathering frequency, several extended pmlogger configurations, as well as +automated pmie diagnosis, alerting and self-healing for the localhost. +A timer script also writes daily performance summary reports similar to +those written by sysstat. + +%if !%{disable_python3} +# +# python3-pcp. This is the PCP library bindings for python3. +# +%package -n python3-pcp +Summary: Performance Co-Pilot (PCP) Python3 bindings and documentation +License: %{license_gplv2plus} +Group: %{lib_gr} +URL: https://pcp.io +Requires: %{lib_pkg} = %{version}-%{release} +%if 0%{?suse_version} +Requires: libpcp_gui%{libpcp_gui_sover} = %{version}-%{release} +Requires: libpcp_import%{libpcp_import_sover} = %{version}-%{release} +Requires: libpcp_mmv%{libpcp_mmv_sover} = %{version}-%{release} +%endif +Requires: python3 +BuildRequires: python3-setuptools + +%description -n python3-pcp +This python PCP module contains the language bindings for +Performance Metric API (PMAPI) monitor tools and Performance +Metric Domain Agent (PMDA) collector tools written in Python3. +%endif + +%if !%{disable_python3} +# +# pcp-system-tools +# +%package system-tools +Summary: Performance Co-Pilot (PCP) System and Monitoring Tools +License: %{license_gplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +Requires: python3-pcp = %{version}-%{release} +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +%endif + +%description system-tools +This PCP module contains additional system monitoring tools written +in python. +%endif +#end pcp-system-tools + +%if !%{disable_qt} +# +# pcp-gui package for Qt tools +# +%package gui +Summary: Visualization tools for the Performance Co-Pilot toolkit +License: %{license_gplv2plus} AND %{license_lgplv2plus} +Group: %{pcp_gr} +URL: https://pcp.io +%if !0%{?suse_version} +Requires: %{lib_pkg} = %{version}-%{release} +Requires: liberation-sans-fonts +%else +Requires: dejavu-fonts +%endif +BuildRequires: hicolor-icon-theme + +%description gui +Visualization tools for the Performance Co-Pilot toolkit. +The pcp-gui package primarily includes visualization tools for +monitoring systems using live and archived Performance Co-Pilot +(PCP) sources. +%endif + +# +# pcp-doc package +# +%package doc +%if !%{disable_noarch} +BuildArch: noarch +%endif +Summary: Documentation and tutorial for the Performance Co-Pilot +License: %{license_gplv2plus} AND %{license_cc_by} +Group: Documentation/Other +URL: https://pcp.io +# http://fedoraproject.org/wiki/Packaging:Conflicts "Splitting Packages" +# (all man pages migrated to pcp-doc during great package split of '15) +Conflicts: pcp-pmda-pmda < 3.10.5 +Conflicts: pcp-pmda-infiniband < 3.10.5 + +%description doc +Documentation and tutorial for the Performance Co-Pilot +Performance Co-Pilot (PCP) provides a framework and services to support +system-level performance monitoring and performance management. + +The pcp-doc package provides useful information on using and +configuring the Performance Co-Pilot (PCP) toolkit for system +level performance management. It includes tutorials, HOWTOs, +and other detailed documentation about the internals of core +PCP utilities and daemons, and the PCP graphical tools. + +# +# pcp-selinux package +# +%if !%{disable_selinux} +%package selinux +Summary: Selinux policy package +License: %{license_gplv2plus} AND %{license_cc_by} +Group: Applications/System +URL: https://pcp.io +BuildRequires: selinux-policy-devel +%if 0%{?rhel} == 5 +BuildRequires: setools +%else +BuildRequires: setools-console +%endif +Requires: pcp = %{version}-%{release} +Requires: policycoreutils + +%description selinux +This package contains SELinux support for PCP. The package contains +interface rules, type enforcement and file context adjustments for an +updated policy package. +%endif + +%prep +%autosetup -p1 + +%build +autoconf +%define _lto_cflags %{nil} +%if 0%{?suse_version} +# in case we're building without os-release (bsc#1123311)... +export PACKAGE_DISTRIBUTION="suse" +%endif +# tmpdir used during build https://github.com/performancecopilot/pcp/issues/1140 +export PACKAGE_BUILD_DATE=`date -u -r CHANGELOG +%Y-%m-%d` +PCP_CFLAGS="%{optflags}" CFLAGS="%{optflags} -std=c99" CCFLAGS="%{optflags}" CXXFLAGS="%{optflags}" %configure \ + --with-tmpdir=%{_tempsdir} \ + --datarootdir=%{_datadir} \ + --docdir=%{_docdir} \ + --with-dstat-symlink=no \ + %{?_with_initd} \ + %{?_with_doc} \ + %{?_with_dstat} \ + %{?_with_ib} \ + %{?_with_podman} \ + %{?_with_statsd} \ + %{?_with_perfevent} \ + %{?_with_bcc} \ + %{?_with_bpftrace} \ + %{?_with_json} \ + %{?_with_snmp} \ + %{?_with_nutcracker} \ + %{?_with_python2} +%make_jobs default_pcp + +############################################################################### + +%install +BACKDIR=`pwd` +NO_CHOWN=true +DIST_ROOT="%{buildroot}" +DIST_TMPFILES=$BACKDIR/install.tmpfiles +export NO_CHOWN DIST_ROOT DIST_TMPFILES +make install_pcp + +PCP_GUI='pmchart|pmconfirm|pmdumptext|pmmessage|pmquery|pmsnap|pmtime' + +# Fix stuff we do/don't want to ship +rm -f %{buildroot}/%{_libdir}/*.a + +# Make all shared libraries executable +find %{buildroot}/%{_libdir} -name "*.so*" -exec chmod a+x {} \; + +# Fix all #!/usr/bin/env shebangs +find %{buildroot}/%{_bindir} -type f -exec sed -i -E 's@#!/usr/bin/env ([a-zA-Z0-9]+)@#!/usr/bin/\1@g' {} \; +find %{buildroot}/%{_usr}/lib -type f -exec sed -i -E 's@#!/usr/bin/env ([a-zA-Z0-9]+)@#!/usr/bin/\1@g' {} \; +find %{buildroot}/%{_libdir} -type f -exec sed -i -E 's@#!/usr/bin/env ([a-zA-Z0-9]+)@#!/usr/bin/\1@g' {} \; +find %{buildroot}/%{_datadir} -type f -exec sed -i -E 's@#!/usr/bin/env ([a-zA-Z0-9]+)@#!/usr/bin/\1@g' {} \; +find %{buildroot}/%{_libexecdir}/pcp -type f -exec sed -i -E 's@#!/usr/bin/env ([a-zA-Z0-9]+)@#!/usr/bin/\1@g' {} \; + +%if %{disable_sheet2pcp} +# remove sheet2pcp until BZ 830923 and BZ 754678 are resolved. +rm -f %{buildroot}/%{_bindir}/sheet2pcp %{buildroot}/%{_mandir}/man1/sheet2pcp.1* +%endif + +%if %{disable_libvirt} +rm -fr %{buildroot}/%{_pmdasdir}/libvirt +%endif + +%if %{disable_postgresql} +rm -fr %{buildroot}/%{_pmdasdir}/postgresql +%endif + +# remove {config,platform}sz.h as these are not multilib friendly. +rm -f %{buildroot}/%{_includedir}/pcp/configsz.h +rm -f %{buildroot}/%{_includedir}/pcp/platformsz.h + +%if %{disable_infiniband} +# remove pmdainfiniband on platforms lacking IB devel packages. +rm -f %{buildroot}/%{_pmdasdir}/ib +rm -fr %{buildroot}/%{_pmdasdir}/infiniband +%endif + +%if %{disable_mssql} +# remove pmdamssql on platforms lacking MSODBC driver packages. +rm -fr %{buildroot}/%{_pmdasdir}/mssql +rm -fr %{buildroot}/%{_pmdasexecdir}/mssql +rm -fr %{buildroot}/%{_confdir}/mssql +%endif + +%if %{disable_zabbix_agent} +rm -fr %{buildroot}/%{_libdir}/zabbix +rm -fr %{buildroot}/%{_sysconfdir}/zabbix +%endif + +%if %{disable_sdt} +rm -fr %{buildroot}/%{_tapsetdir} +%endif + +%if %{disable_selinux} +rm -fr %{buildroot}/%{_selinuxdir} +%endif + +%if %{disable_qt} +%if !0%{?suse_version} +rm -fr %{buildroot}/%{_pixmapdir} +%endif +rm -fr %{buildroot}/%{_hicolordir} +rm -fr %{buildroot}/%{_confdir}/pmsnap +rm -fr %{buildroot}/%{_localstatedir}/lib/pcp/config/pmsnap +rm -fr %{buildroot}/%{_localstatedir}/lib/pcp/config/pmchart +rm -f %{buildroot}/%{_localstatedir}/lib/pcp/config/pmafm/pcp-gui +rm -f %{buildroot}/%{_datadir}/applications/pmchart.desktop +rm -f `find %{buildroot}/%{_mandir}/man1 | grep -E "$PCP_GUI"` +%else +rm -rf %{buildroot}/usr/share/doc/pcp-gui +%if 0%{?suse_version} +mkdir -p %{buildroot}/%{_pixmapdir} +mv %{buildroot}/%{_datadir}/pcp-gui/pixmaps/*.png %{buildroot}/%{_pixmapdir} +rm -rf %{buildroot}/%{_datadir}/pcp-gui/pixmaps +%suse_update_desktop_file -r -G 'Performance Copilot Chart' %{buildroot}/%{_datadir}/applications/pmchart.desktop System Monitor +%else +desktop-file-validate %{buildroot}/%{_datadir}/applications/pmchart.desktop +%endif +%endif + +%if %{disable_xlsx} +rm -f %{buildroot}/%{_bashcompdir}/pcp2xlsx +%endif + +%if %{disable_lio} +rm -fr %{buildroot}/%{_pmdasdir}/lio +%endif + +%if 0%{?rhel} || 0%{?fedora} || 0%{?suse_version} +# Fedora and RHEL default local only access for pmcd and pmlogger +sed -i -e '/^# .*_LOCAL=1/s/^# //' %{buildroot}/%{_sysconfdir}/sysconfig/{pmcd,pmlogger} +%endif + +rm -f %{buildroot}/%{_localstatedir}/lib/pcp/testsuite/perfevent/perfevent_coverage # drop unreproducible file (boo#1040589) +%fdupes %{buildroot}%{_testsdir} + +%if 0%{?suse_version} +mkdir -p %{buildroot}/%{_tempsdir} + +install -d -m 0755 %{buildroot}/%{_sbindir} +ln -sf /sbin/service %{buildroot}/%{_sbindir}/rcpmcd +ln -sf /sbin/service %{buildroot}/%{_sbindir}/rcpmie +ln -sf /sbin/service %{buildroot}/%{_sbindir}/rcpmlogger +ln -sf /sbin/service %{buildroot}/%{_sbindir}/rcpmproxy + +# SUSE requires use of %%fillup_and_insserv +mkdir -p %{buildroot}/%{_fillupdir} +for f in pmlogger pmproxy pmcd pmie_timers pmlogger_timers pmlogger_farm pmfind; do + mv %{buildroot}/%{_sysconfdir}/sysconfig/${f} \ + %{buildroot}/%{_fillupdir}/sysconfig.${f} +done + +%else +# default chkconfig off for Fedora and RHEL +for f in %{buildroot}/%{_initddir}/{pcp,pmcd,pmlogger,pmie,pmwebd,pmmgr,pmproxy}; do + test -f "$f" || continue + sed -i -e '/^# chkconfig/s/:.*$/: - 95 05/' -e '/^# Default-Start:/s/:.*$/:/' $f +done +%endif + +# list of PMDAs in the base pcp package +for pmda in jbd2 kvm linux mmv pipe pmcd proc root xfs zfs; do + for alt in %{_pmdasdir} %{_pmdasexecdir} %{_confdir}; do + [ -d %{buildroot}/$alt/$pmda ] && echo $alt/$pmda >>base_pmdas.list + done +done + +# list of conf directories in base pcp package +for conf in discover labels nssdb pmafm pmcd pmfind pmie pmieconf pmlogconf \ + proc pipe linux pmlogger pmlogrewrite pmproxy pmsearch pmseries; do + for alt in %{_confdir} %{_localstatedir}/lib/pcp/config; do + replace=""; [ "$alt" = "%{_confdir}" ] && replace="%config(noreplace)" + [ -d %{buildroot}/$alt/$conf ] && echo "$replace $alt/$conf" >>base_conf.list + done +done + +# all base binary files except those split out into sub-packages +ls -1 %{buildroot}/%{_bindir} |\ + grep -E -v 'pmiostat|zabbix|zbxpcp|dstat|pmrep|pcp2csv' |\ + grep -E -v 'pcp2spark|pcp2graphite|pcp2influxdb|pcp2zabbix' |\ + grep -E -v 'pcp2elasticsearch|pcp2json|pcp2xlsx|pcp2xml' |\ + grep -E -v 'pmdbg|pmclient|pmerr|genpmda' |\ +sed -e 's#^#'%{_bindir}'\/#' >base_bin.list + +# all base pmns files +echo %{_pmnsdir} >>base_pmns.list +echo %{_pmnsexecdir} >>base_pmns.list + +ls -1 %{buildroot}/%{_bashcompdir} |\ + grep -E -v 'pcp2spark|pcp2graphite|pcp2influxdb|pcp2zabbix' |\ + grep -E -v 'pcp2elasticsearch|pcp2json|pcp2xlsx|pcp2xml' |\ + grep -E -v 'pcp2csv|pmrep|pmdumptext' |\ +sed -e 's#^#'%{_bashcompdir}'\/#' >base_bashcomp.list + +# Separate the pcp-system-tools package files. +# pmiostat is a back-compat symlink to its pcp(1) sub-command variant +# so its also in pcp-system-tools. +%if !%{disable_python3} +ls -1 %{buildroot}/%{_bindir} |\ + grep -E -e 'pmiostat|pmrep|dstat|pcp2csv' |\ + sed -e 's#^#'%{_bindir}'\/#' >pcp-system-tools.list +ls -1 %{buildroot}/%{_libexecdir}/pcp/bin |\ + grep -E -e 'atop|dmcache|dstat|free|iostat|ipcs|lvmcache|mpstat' \ + -e 'numastat|pidstat|shping|tapestat|uptime|verify' |\ + sed -e 's#^#'%{_libexecdir}/pcp/bin'\/#' >>pcp-system-tools.list +%endif +# Separate the pcp-selinux package files. +%if !%{disable_selinux} +ls -1 %{buildroot}/%{_selinuxdir} |\ + sed -e 's#^#'%{_selinuxdir}'\/#' > pcp-selinux.list +ls -1 %{buildroot}/%{_libexecdir}/pcp/bin |\ + grep -E 'selinux-setup' |\ + sed -e 's#^#'%{_libexecdir}/pcp/bin'\/#' >> pcp-selinux.list +%endif + +ls -1 %{buildroot}/%{_libexecdir}/pcp/bin |\ +%if !%{disable_python3} + grep -E -v 'atop|dmcache|dstat|free|iostat|ipcs|lvmcache|mpstat' |\ + grep -E -v 'numastat|shping|tapestat|uptime|verify|selinux-setup' |\ +%endif + grep -E -v 'pmsnap' |\ + sed -e 's#^#'%{_libexecdir}/pcp/bin'\/#' >base_exec.list +echo %{_libexecdir}/pcp/lib >>base_exec.list + +ls -1 %{buildroot}/%{_booksdir} |\ + sed -e 's#^#'%{_booksdir}'\/#' > pcp-doc.list +ls -1 %{buildroot}/%{_mandir}/man1 |\ + sed -e 's#^#'%{_mandir}'\/man1\/#' >>pcp-doc.list +ls -1 %{buildroot}/%{_mandir}/man5 |\ + sed -e 's#^#'%{_mandir}'\/man5\/#' >>pcp-doc.list +%if 0%{?suse_version} +mv %{buildroot}/%{_datadir}/pcp/demos %{buildroot}/%{_docdir}/pcp +ls -1 %{buildroot}/%{_docdir}/pcp/demos/tutorials |\ + sed -e 's#^#'%{_docdir}/pcp/demos/tutorials'\/#' >>pcp-doc.list +%else +ls -1 %{buildroot}/%{_datadir}/pcp/demos/tutorials |\ + sed -e 's#^#'%{_datadir}/pcp/demos/tutorials'\/#' >>pcp-doc.list +%endif + +%if !%{disable_qt} +ls -1 %{buildroot}/%{_pixmapdir} |\ + sed -e 's#^#'%{_pixmapdir}'\/#' > pcp-gui.list +ls -1 %{buildroot}/%{_hicolordir} |\ + sed -e 's#^#'%{_hicolordir}'\/#' >> pcp-gui.list +cat base_bin.list base_exec.list base_bashcomp.list |\ + grep -E "$PCP_GUI" >> pcp-gui.list +echo %{_confdir}/pmchart >>pcp-gui.list +echo %{_libexecdir}/pcp/bin/pmsnap >>pcp-gui.list +%endif + +ls -1 %{buildroot}/%{_logconfdir}/ |\ + sed -e 's#^#'%{_logconfdir}'\/#' |\ + grep -E -v 'zeroconf' >pcp-logconf.list +ls -1 %{buildroot}/%{_ieconfdir}/ |\ + sed -e 's#^#'%{_ieconfdir}'\/#' |\ + grep -E -v 'zeroconf' >pcp-ieconf.list + +# generate full base package file list +cat base_pmdas.list base_conf.list base_bin.list base_exec.list base_bashcomp.list \ + pcp-logconf.list pcp-ieconf.list base_pmns.list |\ + grep -E -v 'pmdaib|pmsnap|2pcp|pmdas/systemd|zeroconf' |\ + grep -E -v "$PCP_GUI|pixmaps|hicolor|pcp-doc|tutorials|selinux" |\ + grep -E -v %{_logsdir} > base.list +%if !%{disable_systemd} +mkdir -p %{buildroot}/%{_tmpfilesdir} +mv $DIST_TMPFILES %{buildroot}/%{_tmpfilesdir}/pcp.conf +echo %{_tmpfilesdir}/pcp.conf >> base.list +%endif + +# all devel pcp package files except those split out into sub packages +ls -1 %{buildroot}/%{_mandir}/man3 |\ +sed -e 's#^#'%{_mandir}'\/man3\/#' | grep -v '3pm' >>pcp-doc.list + +# populate devel.list +%if 0%{?suse_version} +ls -1 %{buildroot}/%{_docdir}/pcp/demos |\ +sed -e 's#^#'%{_docdir}'\/pcp\/demos\/#' | grep -E -v tutorials >> devel.list +%else +ls -1 %{buildroot}/%{_datadir}/pcp/demos |\ +sed -e 's#^#'%{_datadir}'\/pcp\/demos\/#' | grep -E -v tutorials >> devel.list +%endif + +ls -1 %{buildroot}/%{_bindir} |\ +grep -E 'pmdbg|pmclient|pmerr|genpmda' |\ +sed -e 's#^#'%{_bindir}'\/#' >>devel.list + +for pmda in sample simple trivial txmon; do + echo %{_libexecdir}/pcp/pmdas/$pmda >>devel.list +done +echo %{_confdir}/simple/simple.conf >>devel.list + +%pre testsuite +test -d %{_testsdir} || mkdir -p -m 755 %{_testsdir} +getent group pcpqa >/dev/null || groupadd -r pcpqa +getent passwd pcpqa >/dev/null || \ + useradd -c "PCP Quality Assurance" -g pcpqa -d %{_testsdir} -M -r -s /bin/bash pcpqa 2>/dev/null + +%pre +%if 0%{?suse_version} && !%{disable_systemd} +%service_add_pre pmcd pmlogger pmie pmproxy pmie_check.timer pmie_daily.timer pmlogger_daily.timer pmlogger_check.timer +%endif +getent group pcp >/dev/null || groupadd -r pcp +getent passwd pcp >/dev/null || \ + useradd -c "Performance Co-Pilot" -g pcp -d %{_localstatedir}/lib/pcp -M -r -s /sbin/nologin pcp + +%preun +%if 0%{?suse_version} +%if !%{disable_systemd} +%service_del_preun pmlogger pmie pmproxy pmcd +%else +%{?stop_on_removal:%{stop_on_removal pmlogger pmie pmproxy pmcd}} +%endif +%else +if [ "$1" -eq 0 ] +then + # stop daemons before erasing the package + %if !%{disable_systemd} + systemctl --no-reload disable pmlogger pmie pmproxy pmcd >/dev/null 2>&1 + systemctl stop pmlogger pmie pmproxy pmcd >/dev/null 2>&1 + %else + /sbin/service pmlogger stop >/dev/null 2>&1 + /sbin/service pmie stop >/dev/null 2>&1 + /sbin/service pmproxy stop >/dev/null 2>&1 + /sbin/service pmcd stop >/dev/null 2>&1 + + /sbin/chkconfig --del pcp >/dev/null 2>&1 + /sbin/chkconfig --del pmcd >/dev/null 2>&1 + /sbin/chkconfig --del pmlogger >/dev/null 2>&1 + /sbin/chkconfig --del pmie >/dev/null 2>&1 + /sbin/chkconfig --del pmproxy >/dev/null 2>&1 + %endif + # cleanup namespace state/flag, may still exist + PCP_PMNS_DIR=%{_pmnsdir} + rm -f "$PCP_PMNS_DIR/.NeedRebuild" >/dev/null 2>&1 +fi +%endif + +%post zeroconf +%if 0%{?suse_version} +%else +%if !%{disable_systemd} + systemctl restart pmcd >/dev/null 2>&1 + systemctl restart pmlogger >/dev/null 2>&1 + systemctl restart pmie >/dev/null 2>&1 + systemctl enable pmcd >/dev/null 2>&1 + systemctl enable pmlogger >/dev/null 2>&1 + systemctl enable pmlogger_daily >/dev/null 2>&1 + systemctl enable pmie >/dev/null 2>&1 +%else + /sbin/chkconfig --add pmcd >/dev/null 2>&1 + /sbin/chkconfig --add pmlogger >/dev/null 2>&1 + /sbin/chkconfig --add pmie >/dev/null 2>&1 + /sbin/service pmcd condrestart + /sbin/service pmlogger condrestart + /sbin/service pmie condrestart +%endif +%endif #zeroconf + +%post +PCP_PMNS_DIR=%{_pmnsdir} +PCP_LOG_DIR=%{_logsdir} +%{install_file "$PCP_PMNS_DIR" .NeedRebuild} +%{install_file "$PCP_LOG_DIR/pmlogger" .NeedRewrite} +%if 0%{?suse_version} +%if !%{disable_systemd} +%{fillup_only -n pmcd} +%{fillup_only -n pmlogger} +%{fillup_only -n pmproxy} +%service_add_post pmcd pmlogger pmie pmproxy pmie_check.timer pmie_daily.timer pmlogger_daily.timer pmlogger_check.timer +%else +%{fillup_and_insserv pmcd} +%{fillup_and_insserv pmlogger} +%{fillup_and_insserv pmie} +%{fillup_and_insserv pmproxy} +%{fillup_and_insserv pmie_timers} +%{fillup_and_insserv pmlogger_timers} +%{fillup_and_insserv pmlogger_farm} +%endif +%else +%if !%{disable_systemd} + %systemd_postun_with_restart pmcd.service + %systemd_post pmcd.service + %systemd_postun_with_restart pmlogger.service + %systemd_post pmlogger.service + %systemd_postun_with_restart pmie.service + %systemd_post pmie.service + systemctl condrestart pmproxy.service >/dev/null 2>&1 +%else + /sbin/chkconfig --add pmcd >/dev/null 2>&1 + /sbin/service pmcd condrestart + /sbin/chkconfig --add pmlogger >/dev/null 2>&1 + /sbin/service pmlogger condrestart + /sbin/chkconfig --add pmie >/dev/null 2>&1 + /sbin/service pmie condrestart + /sbin/chkconfig --add pmproxy >/dev/null 2>&1 + /sbin/service pmproxy condrestart +%endif +%endif +%{rebuild_pmns "$PCP_PMNS_DIR" .NeedRebuild} + +%post -n %{lib_pkg} -p /sbin/ldconfig +%postun -n %{lib_pkg} -p /sbin/ldconfig +%if 0%{?suse_version} +%post -n libpcp_gui%{libpcp_gui_sover} -p /sbin/ldconfig +%postun -n libpcp_gui%{libpcp_gui_sover} -p /sbin/ldconfig + +%post -n libpcp_mmv%{libpcp_mmv_sover} -p /sbin/ldconfig +%postun -n libpcp_mmv%{libpcp_mmv_sover} -p /sbin/ldconfig + +%post -n libpcp_trace%{libpcp_trace_sover} -p /sbin/ldconfig +%postun -n libpcp_trace%{libpcp_trace_sover} -p /sbin/ldconfig + +%post -n libpcp_import%{libpcp_import_sover} -p /sbin/ldconfig +%postun -n libpcp_import%{libpcp_import_sover} -p /sbin/ldconfig + +%post -n libpcp_web%{libpcp_web_sover} -p /sbin/ldconfig +%postun -n libpcp_web%{libpcp_web_sover} -p /sbin/ldconfig +%endif + +%if 0%{?suse_version} +%postun +/sbin/ldconfig +%if !%{disable_systemd} +%service_del_postun pmcd pmlogger pmproxy pmie pmie_check.timer pmie_daily.timer pmlogger_daily.timer pmlogger_check.timer +%else +%{?restart_on_update:%{restart_on_update pcp pmproxy pmie}} +%{?insserv_cleanup:%{insserv_cleanup}} +%endif +%endif + +%if !%{disable_selinux} +%pre selinux +%selinux_relabel_pre -s targeted + +%post selinux +PCP_SELINUX_DIR=%{_selinuxdir} +semodule -r pcpupstream-container >/dev/null 2>&1 || true +semodule -r pcpupstream-docker >/dev/null 2>&1 || true +semodule -r pcpupstream >/dev/null 2>&1 || true +%selinux_modules_install -s targeted "$PCP_SELINUX_DIR/pcp.pp.bz2" +%selinux_relabel_post -s targeted + +%postun selinux +if [ $1 -eq 0 ]; then + %selinux_modules_uninstall -s targeted pcp + %selinux_relabel_post -s targeted +fi +%endif + +%files -f base.list +# +# Note: there are some headers (e.g. domain.h) and in a few cases some +# C source files that rpmlint complains about. These are not devel files, +# but rather they are (slightly obscure) PMDA config files. +# +%doc CHANGELOG INSTALL.md README.md VERSION.pcp pcp.lsm +%license COPYING +%if 0%{?suse_version} +%exclude %{_docdir}/pcp/demos +%exclude %{_testsdir} +%endif + +%config(noreplace) %{_sysconfdir}/pcp/sockets/filter.conf +%config(noreplace) %{_sysconfdir}/pcp/kvm/kvm.conf +%{_prefix}/lib/systemd/system/pmie_farm.service +%{_prefix}/lib/systemd/system/pmie_farm_check.service +%{_prefix}/lib/systemd/system/pmie_farm_check.timer +%{_prefix}/lib/systemd/system/pmlogger_farm.service +%{_prefix}/lib/systemd/system/pmlogger_farm_check.service +%{_prefix}/lib/systemd/system/pmlogger_farm_check.timer +%{_libexecdir}/pcp/pmdas/denki/Install +%{_libexecdir}/pcp/pmdas/denki/README +%{_libexecdir}/pcp/pmdas/denki/Remove +%{_libexecdir}/pcp/pmdas/denki/domain.h +%{_libexecdir}/pcp/pmdas/denki/help +%{_libexecdir}/pcp/pmdas/denki/pmda_denki.so +%{_libexecdir}/pcp/pmdas/denki/pmdadenki +%{_libexecdir}/pcp/pmdas/denki/root +%{_libexecdir}/pcp/pmdas/podman/Install +%{_libexecdir}/pcp/pmdas/podman/Remove +%{_libexecdir}/pcp/pmdas/podman/domain.h +%{_libexecdir}/pcp/pmdas/podman/help +%{_libexecdir}/pcp/pmdas/podman/pmda_podman.so +%{_libexecdir}/pcp/pmdas/podman/pmdapodman +%{_libexecdir}/pcp/pmdas/podman/root +%{_datadir}/pcp/htop/columns/container +%{_datadir}/pcp/htop/columns/delayacct +%{_datadir}/pcp/htop/columns/fdcount +%{_datadir}/pcp/htop/columns/guest +%{_datadir}/pcp/htop/columns/memory +%{_datadir}/pcp/htop/columns/sched +%{_datadir}/pcp/htop/columns/swap +%{_datadir}/pcp/htop/columns/tcp +%{_datadir}/pcp/htop/columns/udp +%{_datadir}/pcp/htop/columns/wchan +%{_datadir}/pcp/htop/meters/entropy +%{_datadir}/pcp/htop/meters/freespace +%{_datadir}/pcp/htop/meters/ipc +%{_datadir}/pcp/htop/meters/locks +%{_datadir}/pcp/htop/meters/memcache +%{_datadir}/pcp/htop/meters/mysql +%{_datadir}/pcp/htop/meters/postfix +%{_datadir}/pcp/htop/meters/redis +%{_datadir}/pcp/htop/meters/tcp +%{_datadir}/pcp/zeroconf/pmlogger +%{_localstatedir}/lib/pcp/pmdas/denki/Install +%{_localstatedir}/lib/pcp/pmdas/denki/README +%{_localstatedir}/lib/pcp/pmdas/denki/Remove +%{_localstatedir}/lib/pcp/pmdas/denki/domain.h +%{_localstatedir}/lib/pcp/pmdas/denki/help +%{_localstatedir}/lib/pcp/pmdas/denki/pmda_denki.so +%{_localstatedir}/lib/pcp/pmdas/denki/pmdadenki +%{_localstatedir}/lib/pcp/pmdas/denki/root +%{_localstatedir}/lib/pcp/pmdas/podman/Install +%{_localstatedir}/lib/pcp/pmdas/podman/Remove +%{_localstatedir}/lib/pcp/pmdas/podman/domain.h +%{_localstatedir}/lib/pcp/pmdas/podman/help +%{_localstatedir}/lib/pcp/pmdas/podman/pmda_podman.so +%{_localstatedir}/lib/pcp/pmdas/podman/pmdapodman +%{_localstatedir}/lib/pcp/pmdas/podman/root + +%dir %{_sysconfdir}/pcp/sockets +%dir %{_libexecdir}/pcp/pmdas/denki +%dir %{_libexecdir}/pcp/pmdas/podman +%dir %{_datadir}/pcp/htop +%dir %{_datadir}/pcp/htop/columns +%dir %{_datadir}/pcp/htop/meters +%dir %{_datadir}/pcp/zeroconf +%dir %{_localstatedir}/lib/pcp/pmdas/denki +%dir %{_localstatedir}/lib/pcp/pmdas/podman + +%dir %{_confdir} +%dir %{_pmdasdir} +%dir %{_pmdasexecdir} +%dir %{_datadir}/pcp +%dir %{_libexecdir}/pcp +%dir %{_libexecdir}/pcp/bin +%dir %{_localstatedir}/lib/pcp +%dir %{_localstatedir}/lib/pcp/config +%if %{disable_qt} +# part of pcp-gui +%exclude %{_localstatedir}/lib/pcp/config/pmafm/pcp-gui +%endif +%dir %attr(0775,pcp,pcp) %{_tempsdir} +%dir %attr(0775,pcp,pcp) %{_tempsdir}/bash +%dir %attr(0775,pcp,pcp) %{_tempsdir}/json +%dir %attr(0775,pcp,pcp) %{_tempsdir}/mmv +%dir %attr(0775,pcp,pcp) %{_tempsdir}/pmie +%dir %attr(0775,pcp,pcp) %{_tempsdir}/pmlogger +%dir %attr(0775,pcp,pcp) %{_tempsdir}/pmproxy + +%dir %{_datadir}/pcp/lib +%{_datadir}/pcp/lib/ReplacePmnsSubtree +%{_datadir}/pcp/lib/bashproc.sh +%{_datadir}/pcp/lib/lockpmns +%{_datadir}/pcp/lib/pmdaproc.sh +%{_datadir}/pcp/lib/utilproc.sh +%{_datadir}/pcp/lib/rc-proc.sh +%{_datadir}/pcp/lib/rc-proc.sh.minimal +%{_datadir}/pcp/lib/unlockpmns +%{_datadir}/pcp/lib/checkproc.sh +%{_datadir}/pcp/lib/pmcheck/pmcd +%{_datadir}/pcp/lib/pmcheck/pmda-overhead +%{_datadir}/pcp/lib/pmcheck/pmda-postgresql +%{_datadir}/pcp/lib/pmcheck/pmda-redis +%{_datadir}/pcp/lib/pmcheck/pmda-sample +%{_datadir}/pcp/lib/pmcheck/pmda-uwsgi +%{_datadir}/pcp/lib/pmcheck/pmie +%{_datadir}/pcp/lib/pmcheck/pmlogger +%{_datadir}/pcp/lib/pmcheck/pmproxy +%{_datadir}/pcp/lib/pmcheck/zeroconf +%dir %{_datadir}/pcp/lib/pmcheck + +%config %{_sysusersdir}/pcp-testsuite.conf +%config %{_sysusersdir}/pcp.conf +%config %{_tmpfilesdir}/pcp-reboot-init.conf +%config(noreplace) %{_sysconfdir}/pcp/indom.conf +%config(noreplace) %{_sysconfdir}/pcp/overhead/conf.d/default.conf +%config(noreplace) %{_sysconfdir}/pcp/overhead/examples/sample.conf +%config(noreplace) %{_sysconfdir}/pcp/tls.conf +%{_libdir}/libpcp_archive.so +%{_libdir}/libpcp_archive.so.1 +%{_libdir}/pkgconfig/libpcp_archive.pc +%{_libexecdir}/pcp/bin/pmlogger_daily_report +%{_libexecdir}/pcp/pmdas/denki/pmns +%{_libexecdir}/pcp/pmdas/farm/Install +%{_libexecdir}/pcp/pmdas/farm/Remove +%{_libexecdir}/pcp/pmdas/farm/domain.h +%{_libexecdir}/pcp/pmdas/farm/help +%{_libexecdir}/pcp/pmdas/farm/pmda_farm.so +%{_libexecdir}/pcp/pmdas/farm/pmdafarm +%{_libexecdir}/pcp/pmdas/farm/pmns +%{_libexecdir}/pcp/pmdas/farm/root +%{_libexecdir}/pcp/pmdas/overhead/Install +%{_libexecdir}/pcp/pmdas/overhead/README +%{_libexecdir}/pcp/pmdas/overhead/Remove +%{_libexecdir}/pcp/pmdas/overhead/domain.h +%{_libexecdir}/pcp/pmdas/overhead/pmdaoverhead +%{_libexecdir}/pcp/pmdas/overhead/pmns +%{_libexecdir}/pcp/pmdas/overhead/root +%{_libexecdir}/pcp/pmdas/podman/pmns +%{_localstatedir}/lib/pcp/config/pmlogredact/network +%{_localstatedir}/lib/pcp/config/pmlogredact/usernames +%{_localstatedir}/lib/pcp/pmdas/denki/pmns +%{_localstatedir}/lib/pcp/pmdas/farm/Install +%{_localstatedir}/lib/pcp/pmdas/farm/Remove +%{_localstatedir}/lib/pcp/pmdas/farm/domain.h +%{_localstatedir}/lib/pcp/pmdas/farm/help +%{_localstatedir}/lib/pcp/pmdas/farm/pmda_farm.so +%{_localstatedir}/lib/pcp/pmdas/farm/pmdafarm +%{_localstatedir}/lib/pcp/pmdas/farm/pmns +%{_localstatedir}/lib/pcp/pmdas/farm/root +%{_localstatedir}/lib/pcp/pmdas/overhead/Install +%{_localstatedir}/lib/pcp/pmdas/overhead/README +%{_localstatedir}/lib/pcp/pmdas/overhead/Remove +%{_localstatedir}/lib/pcp/pmdas/overhead/default.conf +%{_localstatedir}/lib/pcp/pmdas/overhead/domain.h +%{_localstatedir}/lib/pcp/pmdas/overhead/pmdaoverhead +%{_localstatedir}/lib/pcp/pmdas/overhead/pmns +%{_localstatedir}/lib/pcp/pmdas/overhead/root +%{_localstatedir}/lib/pcp/pmdas/overhead/sample.conf +%{_localstatedir}/lib/pcp/pmdas/podman/pmns +%{_sysconfdir}/pcp/pmlogredact/network +%{_sysconfdir}/pcp/pmlogredact/usernames +%{_unitdir}/pcp-geolocate.service +%{_unitdir}/pcp-reboot-init.service +%{_usr}/share/pcp/htop/screens/biosnoop +%{_usr}/share/pcp/htop/screens/cgroups +%{_usr}/share/pcp/htop/screens/cgroupsio +%{_usr}/share/pcp/htop/screens/cgroupsmem +%{_usr}/share/pcp/htop/screens/devices +%{_usr}/share/pcp/htop/screens/execsnoop +%{_usr}/share/pcp/htop/screens/exitsnoop +%{_usr}/share/pcp/htop/screens/filesystems +%{_usr}/share/pcp/htop/screens/opensnoop +%dir %{_libexecdir}/pcp/pmdas/farm +%dir %{_libexecdir}/pcp/pmdas/overhead +%dir %{_localstatedir}/lib/pcp/config/pmlogredact +%dir %{_localstatedir}/lib/pcp/pmdas/farm +%dir %{_localstatedir}/lib/pcp/pmdas/overhead +%dir %{_sysconfdir}/pcp/overhead +%dir %{_sysconfdir}/pcp/overhead/conf.d +%dir %{_sysconfdir}/pcp/overhead/examples +%dir %{_sysconfdir}/pcp/pmlogredact +%dir %{_usr}/share/pcp/htop/screens + +%dir %attr(0775,pcp,pcp) %{_logsdir} +%attr(0775,pcp,pcp) %{_logsdir}/pmcd +%attr(0775,pcp,pcp) %{_logsdir}/pmlogger +%attr(0775,pcp,pcp) %{_logsdir}/pmie +%attr(0775,pcp,pcp) %{_logsdir}/pmproxy +%attr(0775,pcp,pcp) %{_logsdir}/pmfind +%{_localstatedir}/lib/pcp/pmns +%if %{disable_systemd} +%{_initddir}/pcp +%{_initddir}/pmcd +%{_initddir}/pmlogger +%{_initddir}/pmie +%{_initddir}/pmproxy +%else +%{_unitdir}/pmcd.service +%{_unitdir}/pmproxy.service +%{_unitdir}/pmlogger.service +%{_unitdir}/pmfind.service +%{_unitdir}/pmie.service +%{_sbindir}/rcpmcd +%{_sbindir}/rcpmie +%{_sbindir}/rcpmlogger +%{_sbindir}/rcpmproxy +%endif +%if %{disable_systemd} +%config(noreplace) %{_sysconfdir}/cron.d/pcp-pmlogger +%config(noreplace) %{_sysconfdir}/cron.d/pcp-pmlogger-daily-report +%config(noreplace) %{_sysconfdir}/cron.d/pcp-pmfind +%config(noreplace) %{_sysconfdir}/cron.d/pcp-pmie +%else +%{_unitdir}/pmlogger_daily.service +%{_unitdir}/pmlogger_daily.timer +%{_unitdir}/pmlogger_check.service +%{_unitdir}/pmlogger_check.timer +%{_unitdir}/pmie_check.service +%{_unitdir}/pmie_check.timer +%{_unitdir}/pmie_daily.service +%{_unitdir}/pmie_daily.timer +%{_unitdir}/pmfind.timer +%endif +%if 0%{?suse_version} +%{_fillupdir}/sysconfig.pmlogger +%{_fillupdir}/sysconfig.pmproxy +%{_fillupdir}/sysconfig.pmfind +%{_fillupdir}/sysconfig.pmcd +%{_fillupdir}/sysconfig.pmie_timers +%{_fillupdir}/sysconfig.pmlogger_timers +%{_fillupdir}/sysconfig.pmlogger_farm +%else +%config(noreplace) %{_sysconfdir}/sysconfig/pmlogger +%config(noreplace) %{_sysconfdir}/sysconfig/pmproxy +%config(noreplace) %{_sysconfdir}/sysconfig/pmfind +%config(noreplace) %{_sysconfdir}/sysconfig/pmcd +%config(noreplace) %{_sysconfdir}/sysconfig/pmie_timers +%config(noreplace) %{_sysconfdir}/sysconfig/pmlogger_timers +%config(noreplace) %{_sysconfdir}/sysconfig/pmlogger_farm +%endif +%dir %{_sysconfdir}/sasl2 +%config(noreplace) %{_sysconfdir}/sasl2/pmcd.conf +%config %{_sysconfdir}/pcp.env +%dir %{_confdir}/labels +%dir %{_confdir}/labels/optional +%config(noreplace) %{_confdir}/labels.conf +%dir %{_confdir}/pipe.conf.d +%dir %{_confdir}/pmcd +%config(noreplace) %{_confdir}/pmcd/pmcd.conf +%config(noreplace) %{_confdir}/pmcd/pmcd.options +%config(noreplace) %{_confdir}/pmcd/rc.local +%dir %{_confdir}/pmproxy +%config(noreplace) %{_confdir}/pmproxy/pmproxy.options +%config(noreplace) %{_confdir}/pmproxy/pmproxy.conf +%dir %{_confdir}/pmie +%dir %{_confdir}/pmie/control.d +%config(noreplace) %{_confdir}/pmie/control +%config(noreplace) %{_confdir}/pmie/control.d/local +%dir %{_confdir}/pmlogger +%dir %{_confdir}/pmlogger/control.d +%config(noreplace) %{_confdir}/pmlogger/control +%config(noreplace) %{_confdir}/pmlogger/control.d/local +%dir %{_confdir}/discover +%config(noreplace) %{_confdir}/discover/pcp-kube-pods.conf +%if !%{disable_libuv} +%dir %{_confdir}/pmseries +%config(noreplace) %{_confdir}/pmseries/pmseries.conf +%endif + +%{_localstatedir}/lib/pcp/config/pmafm +%dir %attr(0775,pcp,pcp) %{_localstatedir}/lib/pcp/config/pmie +# exclude pmieconf for pmda-dm +%exclude %{_confdir}/pmieconf/dm +%exclude %{_ieconfdir}/dm +# exclude zeroconf +%exclude %{_ieconfdir}/zeroconf +%exclude %{_logconfdir}/zeroconf +%exclude %{_confdir}/pmlogconf/zeroconf +%exclude %{_confdir}/pmieconf/zeroconf +%dir %attr(0775,pcp,pcp) %{_localstatedir}/lib/pcp/config/pmlogger +%attr(0644,pcp,pcp) %{_localstatedir}/lib/pcp/config/pmlogger/* +%dir %{_logconfdir} +%{_localstatedir}/lib/pcp/config/pmlogrewrite +%dir %attr(0775,pcp,pcp) %{_localstatedir}/lib/pcp/config/pmda + +%dir %{_datadir}/zsh +%dir %{_datadir}/zsh/site-functions +%{_datadir}/zsh/site-functions/_pcp +%if !%{disable_sdt} +%{_tapsetdir}/pmcd.stp +%endif + +%files zeroconf +%if !%{disable_systemd} +%else +%endif +%config(noreplace) %{_confdir}/pmieconf/zeroconf +%config(noreplace) %{_confdir}/pmlogconf/zeroconf +%config(noreplace) %{_ieconfdir}/zeroconf +%config(noreplace) %{_logconfdir}/zeroconf + +#additional pmlogger config files + +%files conf +%config %{_confdir}/derived/* +%config %{_localstatedir}/lib/pcp/config/derived/* +%config %{_sysconfdir}/pcp.conf +%dir %{_confdir}/derived +%dir %{_includedir}/pcp +%dir %{_localstatedir}/lib/pcp/config/derived +%{_includedir}/pcp/builddefs +%{_includedir}/pcp/buildrules + +%files -n %{lib_pkg} +%{_libdir}/libpcp.so.%{libpcp_pmda_sover} +%{_libdir}/libpcp_pmda.so.%{libpcp_pmda_sover} +%{_libdir}/libpcp_fault.so.%{libpcp_fault_sover} +%if !0%{?suse_version} +%{_libdir}/libpcp_gui.so.%{libpcp_gui_sover} +%{_libdir}/libpcp_import.so.%{libpcp_import_sover} +%{_libdir}/libpcp_mmv.so.%{libpcp_mmv_sover} +%{_libdir}/libpcp_trace.so.%{libpcp_trace_sover} +%{_libdir}/libpcp_web.so.%{libpcp_web_sover} +%else + +%files -n libpcp_gui%{libpcp_gui_sover} +%{_libdir}/libpcp_gui.so.%{libpcp_gui_sover} + +%files -n libpcp_mmv%{libpcp_mmv_sover} +%{_libdir}/libpcp_mmv.so.%{libpcp_mmv_sover} + +%files -n libpcp_trace%{libpcp_trace_sover} +%{_libdir}/libpcp_trace.so.%{libpcp_trace_sover} + +%files -n libpcp_import%{libpcp_import_sover} +%{_libdir}/libpcp_import.so.%{libpcp_import_sover} + +%files -n libpcp_web%{libpcp_web_sover} +%{_libdir}/libpcp_web.so.%{libpcp_web_sover} +%endif + +%files -n %{lib_devel_pkg} +%{_libdir}/libpcp.so +%{_libdir}/libpcp_gui.so +%{_libdir}/libpcp_mmv.so +%{_libdir}/libpcp_pmda.so +%{_libdir}/libpcp_fault.so +%{_libdir}/libpcp_trace.so +%{_libdir}/libpcp_import.so +%{_libdir}/libpcp_web.so +%{_libdir}/pkgconfig/libpcp.pc +%{_libdir}/pkgconfig/libpcp_pmda.pc +%{_libdir}/pkgconfig/libpcp_import.pc +%{_includedir}/pcp/*.h + +%files devel -f devel.list +%{_datadir}/pcp/examples + +# PMDAs that ship src and are not for production use +# straight out-of-the-box, for devel or QA use only. +%{_pmdasdir}/simple +%config(noreplace) %{_confdir}/simple +%{_pmdasdir}/sample +%{_pmdasdir}/trivial +%{_pmdasdir}/txmon + +%files testsuite +%{_testsdir} + +%files import-sar2pcp +%{_bindir}/sar2pcp + +%files import-iostat2pcp +%{_bindir}/iostat2pcp + +%if !%{disable_sheet2pcp} +%files import-sheet2pcp +%{_bindir}/sheet2pcp +%endif + +%files import-mrtg2pcp +%{_bindir}/mrtg2pcp + +%files import-ganglia2pcp +%{_bindir}/ganglia2pcp + +%files import-collectl2pcp +%{_bindir}/collectl2pcp + +%if !%{disable_podman} +%files pmda-podman +%{_pmdasdir}/podman +%{_pmdasexecdir}/podman +%endif + +%if !%{disable_statsd} +%files pmda-statsd +%{_pmdasdir}/statsd +%{_pmdasexecdir}/statsd +%{_confdir}/statsd +%config(noreplace) %{_pmdasdir}/statsd/pmdastatsd.ini +%endif + +%if !%{disable_perfevent} +%files pmda-perfevent +%{_pmdasdir}/perfevent +%{_pmdasexecdir}/perfevent +%dir %{_confdir}/perfevent +%config(noreplace) %{_pmdasdir}/perfevent/perfevent.conf +%config(noreplace) %{_confdir}/perfevent/perfevent.conf +%endif + +%if !%{disable_infiniband} +%files pmda-infiniband +%{_pmdasdir}/infiniband +%{_pmdasexecdir}/infiniband +%endif + +%files pmda-activemq +%{_pmdasdir}/activemq +%{_pmdasexecdir}/activemq + +%files pmda-bonding +%{_pmdasdir}/bonding +%{_pmdasexecdir}/bonding + +%files pmda-dbping +%{_pmdasdir}/dbping +%{_pmdasexecdir}/dbping + +%files pmda-ds389log +%{_pmdasdir}/ds389log +%{_pmdasexecdir}/ds389log + +%files pmda-ds389 +%{_pmdasdir}/ds389 +%{_pmdasexecdir}/ds389 + +%files pmda-elasticsearch +%dir %{_confdir}/elasticsearch +%config(noreplace) %{_confdir}/elasticsearch/elasticsearch.conf +%{_pmdasdir}/elasticsearch +%{_pmdasexecdir}/elasticsearch + +%files pmda-openvswitch +%{_pmdasdir}/openvswitch +%{_pmdasexecdir}/openvswitch + +%files pmda-rabbitmq +%dir %{_confdir}/rabbitmq +%config(noreplace) %{_confdir}/rabbitmq/rabbitmq.conf +%{_pmdasdir}/rabbitmq +%{_pmdasexecdir}/rabbitmq + +%files pmda-gpfs +%{_pmdasdir}/gpfs +%{_pmdasexecdir}/gpfs + +%files pmda-gpsd +%{_pmdasdir}/gpsd +%{_pmdasexecdir}/gpsd + +%files pmda-docker +%{_pmdasdir}/docker +%{_pmdasexecdir}/docker + +%if !%{disable_lio} +%files pmda-lio +%{_pmdasdir}/lio +%{_pmdasexecdir}/lio +%endif + +%files pmda-openmetrics +%{_pmdasdir}/openmetrics +%{_pmdasexecdir}/openmetrics +%config(noreplace) %{_confdir}/openmetrics + +%files pmda-lustre +%{_pmdasdir}/lustre +%{_pmdasexecdir}/lustre +%config(noreplace) %{_confdir}/lustre + +%files pmda-lustrecomm +%{_pmdasdir}/lustrecomm +%{_pmdasexecdir}/lustrecomm + +%files pmda-memcache +%{_pmdasdir}/memcache +%{_pmdasexecdir}/memcache + +%files pmda-mysql +%{_pmdasdir}/mysql +%{_pmdasexecdir}/mysql + +%files pmda-named +%{_pmdasdir}/named +%{_pmdasexecdir}/named + +%files pmda-netfilter +%{_pmdasdir}/netfilter +%{_pmdasexecdir}/netfilter + +%files pmda-news +%{_pmdasdir}/news +%{_pmdasexecdir}/news + +%files pmda-nginx +%{_pmdasdir}/nginx +%{_pmdasexecdir}/nginx +%config(noreplace) %{_confdir}/nginx + +%files pmda-nfsclient +%{_pmdasdir}/nfsclient +%{_pmdasexecdir}/nfsclient + +%if !%{disable_nutcracker} +%files pmda-nutcracker +%{_pmdasdir}/nutcracker +%{_pmdasexecdir}/nutcracker +%config(noreplace) %{_confdir}/nutcracker +%endif + +%files pmda-oracle +%{_pmdasdir}/oracle +%{_pmdasexecdir}/oracle +%config(noreplace) %{_confdir}/oracle + +%files pmda-pdns +%{_pmdasdir}/pdns +%{_pmdasexecdir}/pdns + +%files pmda-postfix +%{_pmdasdir}/postfix +%{_pmdasexecdir}/postfix + +%if !%{disable_postgresql} +%files pmda-postgresql +%{_pmdasdir}/postgresql +%{_pmdasexecdir}/postgresql +%dir %{_confdir}/postgresql +%config(noreplace) %{_confdir}/postgresql/pmdapostgresql.conf +%endif + +%files pmda-redis +%dir %{_confdir}/redis +%config(noreplace) %{_confdir}/redis/redis.conf +%{_pmdasdir}/redis +%{_pmdasexecdir}/redis + +%files pmda-rsyslog +%{_pmdasdir}/rsyslog +%{_pmdasexecdir}/rsyslog + +%files pmda-samba +%{_pmdasdir}/samba +%{_pmdasexecdir}/samba + +%if !%{disable_snmp} +%files pmda-snmp +%dir %{_confdir}/snmp +%config(noreplace) %{_confdir}/snmp/snmp.conf +%{_pmdasdir}/snmp +%{_pmdasexecdir}/snmp +%endif + +%files pmda-slurm +%{_pmdasdir}/slurm +%{_pmdasexecdir}/slurm + +%files pmda-zimbra +%{_pmdasdir}/zimbra +%{_pmdasexecdir}/zimbra + +%files pmda-dm +%{_pmdasdir}/dm +%{_pmdasexecdir}/dm +%{_ieconfdir}/dm +%dir %{_confdir}/pmieconf/dm +%config(noreplace) %{_confdir}/pmieconf/dm + +%if !%{disable_bcc} +%files pmda-bcc +%{_pmdasdir}/bcc +%{_pmdasexecdir}/bcc +%endif + +%if !%{disable_bpftrace} +%files pmda-bpftrace +%{_pmdasdir}/bpftrace +%{_pmdasexecdir}/bpftrace +%config(noreplace) %{_confdir}/bpftrace +%endif + +%if !%{disable_python3} +%files pmda-gluster +%{_pmdasdir}/gluster +%{_pmdasexecdir}/gluster + +%files pmda-zswap +%{_pmdasdir}/zswap +%{_pmdasexecdir}/zswap + +%files pmda-unbound +%{_pmdasdir}/unbound +%{_pmdasexecdir}/unbound + +%files pmda-mic +%{_pmdasdir}/mic +%{_pmdasexecdir}/mic + +%files pmda-haproxy +%dir %{_confdir}/haproxy +%config(noreplace) %{_confdir}/haproxy/haproxy.conf +%{_pmdasdir}/haproxy +%{_pmdasexecdir}/haproxy + +%if !%{disable_libvirt} +%files pmda-libvirt +%{_pmdasdir}/libvirt +%{_pmdasexecdir}/libvirt +%{_confdir}/libvirt +%endif + +%files export-pcp2elasticsearch +%{_bindir}/pcp2elasticsearch +%{_bashcompdir}/pcp2elasticsearch + +%files export-pcp2graphite +%{_bindir}/pcp2graphite +%{_bashcompdir}/pcp2graphite + +%files export-pcp2influxdb +%{_bindir}/pcp2influxdb +%{_bashcompdir}/pcp2influxdb + +%files export-pcp2json +%{_bindir}/pcp2json +%{_bashcompdir}/pcp2json + +%files export-pcp2spark +%{_bindir}/pcp2spark +%{_bashcompdir}/pcp2spark + +%if !%{disable_xlsx} +%files export-pcp2xlsx +%{_bindir}/pcp2xlsx +%{_bashcompdir}/pcp2xlsx +%endif + +%files export-pcp2xml +%{_bindir}/pcp2xml +%{_bashcompdir}/pcp2xml + +%files export-pcp2zabbix +%{_bindir}/pcp2zabbix +%{_bashcompdir}/pcp2zabbix + +%files pmda-lmsensors +%{_pmdasdir}/lmsensors +%{_pmdasexecdir}/lmsensors + +%files pmda-netcheck +%dir %{_confdir}/netcheck +%config(noreplace) %{_confdir}/netcheck/netcheck.conf +%{_pmdasdir}/netcheck +%{_pmdasexecdir}/netcheck + +%endif # !%%{disable_python3} + +%if !%{disable_zabbix_agent} +%files export-zabbix-agent +%{_libdir}/zabbix +%dir %{_sysconfdir}/zabbix/zabbix_agentd.d +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_agentd.d/zbxpcp.conf +%endif + +%if !%{disable_mssql} +%files pmda-mssql +%{_pmdasdir}/mssql +%{_pmdasexecdir}/mssql +%config(noreplace) %{_confdir}/mssql +%endif + +%if !%{disable_resctrl} +%files pmda-resctrl +%{_libexecdir}/pcp/pmdas/resctrl/Install +%{_libexecdir}/pcp/pmdas/resctrl/Remove +%{_libexecdir}/pcp/pmdas/resctrl/domain.h +%{_libexecdir}/pcp/pmdas/resctrl/help +%{_libexecdir}/pcp/pmdas/resctrl/pmda_resctrl.so +%{_libexecdir}/pcp/pmdas/resctrl/pmdaresctrl +%{_libexecdir}/pcp/pmdas/resctrl/pmns +%{_libexecdir}/pcp/pmdas/resctrl/root +%{_localstatedir}/lib/pcp/pmdas/resctrl/Install +%{_localstatedir}/lib/pcp/pmdas/resctrl/Remove +%{_localstatedir}/lib/pcp/pmdas/resctrl/domain.h +%{_localstatedir}/lib/pcp/pmdas/resctrl/help +%{_localstatedir}/lib/pcp/pmdas/resctrl/pmda_resctrl.so +%{_localstatedir}/lib/pcp/pmdas/resctrl/pmdaresctrl +%{_localstatedir}/lib/pcp/pmdas/resctrl/pmns +%{_localstatedir}/lib/pcp/pmdas/resctrl/root +%{_unitdir}/sys-fs-resctrl.mount +%dir %{_libexecdir}/pcp/pmdas/resctrl +%dir %{_localstatedir}/lib/pcp/pmdas/resctrl +%endif + +%files pmda-uwsgi +%config(noreplace) %{_confdir}/uwsgi/uwsgi.conf +%{_libexecdir}/pcp/pmdas/uwsgi/Install +%{_libexecdir}/pcp/pmdas/uwsgi/Remove +%{_libexecdir}/pcp/pmdas/uwsgi/pmdauwsgi.python +%{_localstatedir}/lib/pcp/pmdas/uwsgi/Install +%{_localstatedir}/lib/pcp/pmdas/uwsgi/Remove +%{_localstatedir}/lib/pcp/pmdas/uwsgi/pmdauwsgi.python +%{_localstatedir}/lib/pcp/pmdas/uwsgi/uwsgi.conf +%dir %{_confdir}/uwsgi +%dir %{_libexecdir}/pcp/pmdas/uwsgi +%dir %{_localstatedir}/lib/pcp/pmdas/uwsgi + +%if !%{disable_json} +%files pmda-json +%{_pmdasdir}/json +%{_pmdasexecdir}/json +%config(noreplace) %{_confdir}/json +%endif + +%files pmda-apache +%{_pmdasdir}/apache +%{_pmdasexecdir}/apache + +%files pmda-bash +%{_pmdasdir}/bash +%{_pmdasexecdir}/bash + +%files pmda-cifs +%{_pmdasdir}/cifs +%{_pmdasexecdir}/cifs + +%files pmda-cisco +%{_pmdasdir}/cisco +%{_pmdasexecdir}/cisco + +%files pmda-gfs2 +%{_pmdasdir}/gfs2 +%{_pmdasexecdir}/gfs2 + +%files pmda-logger +%{_pmdasdir}/logger +%{_pmdasexecdir}/logger + +%files pmda-mailq +%{_pmdasdir}/mailq +%{_pmdasexecdir}/mailq + +%files pmda-mounts +%{_pmdasdir}/mounts +%{_pmdasexecdir}/mounts +%config(noreplace) %{_confdir}/mounts + +%files pmda-nvidia-gpu +%{_pmdasdir}/nvidia +%{_pmdasexecdir}/nvidia + +%files pmda-roomtemp +%{_pmdasdir}/roomtemp +%{_pmdasexecdir}/roomtemp + +%files pmda-sendmail +%{_pmdasdir}/sendmail +%{_pmdasexecdir}/sendmail + +%files pmda-shping +%{_pmdasdir}/shping +%{_pmdasexecdir}/shping +%config(noreplace) %{_confdir}/shping + +%files pmda-smart +%{_pmdasdir}/smart +%{_pmdasexecdir}/smart + +%files pmda-sockets +%{_pmdasdir}/sockets +%{_pmdasexecdir}/sockets + +%files pmda-hacluster +%{_pmdasdir}/hacluster +%{_pmdasexecdir}/hacluster + +%files pmda-summary +%{_pmdasdir}/summary +%{_pmdasexecdir}/summary +%config(noreplace) %{_confdir}/summary + +%if !%{disable_systemd} +%files pmda-systemd +%{_pmdasdir}/systemd +%{_pmdasexecdir}/systemd +%endif + +%files pmda-trace +%{_pmdasdir}/trace +%{_pmdasexecdir}/trace + +%files pmda-weblog +%{_pmdasdir}/weblog +%{_pmdasexecdir}/weblog + +%files -n perl-PCP-PMDA -f perl-pcp-pmda.list +%if 0%{?suse_version} +%dir %{_prefix}/lib/perl5/vendor_perl/*/*-linux-thread-multi*/PCP +%dir %{_prefix}/lib/perl5/vendor_perl/*/*-linux-thread-multi*/auto/PCP +%dir %{_prefix}/lib/perl5/vendor_perl/*/*-linux-thread-multi*/auto/PCP/PMDA +%endif + +%files -n perl-PCP-MMV -f perl-pcp-mmv.list +%if 0%{?suse_version} +%dir %{_prefix}/lib/perl5/vendor_perl/*/*-linux-thread-multi*/PCP +%dir %{_prefix}/lib/perl5/vendor_perl/*/*-linux-thread-multi*/auto/PCP +%dir %{_prefix}/lib/perl5/vendor_perl/*/*-linux-thread-multi*/auto/PCP/MMV +%endif + +%files -n perl-PCP-LogImport -f perl-pcp-logimport.list +%if 0%{?suse_version} +%dir %{_prefix}/lib/perl5/vendor_perl/*/*-linux-thread-multi*/PCP +%dir %{_prefix}/lib/perl5/vendor_perl/*/*-linux-thread-multi*/auto/PCP +%dir %{_prefix}/lib/perl5/vendor_perl/*/*-linux-thread-multi*/auto/PCP/LogImport +%endif + +%files -n perl-PCP-LogSummary -f perl-pcp-logsummary.list +%if 0%{?suse_version} +%dir %{_prefix}/lib/perl5/vendor_perl/*/PCP +%endif + +%if !%{disable_python3} +%files -n python3-pcp -f python3-pcp.list.rpm +%endif + +%if !%{disable_qt} +%files gui -f pcp-gui.list +%{_pixmapdir}/pmchart.png +%{_confdir}/pmsnap +%config(noreplace) %{_confdir}/pmsnap/control +%{_localstatedir}/lib/pcp/config/pmsnap +%{_localstatedir}/lib/pcp/config/pmchart +%{_localstatedir}/lib/pcp/config/pmafm/pcp-gui +%{_datadir}/applications/pmchart.desktop +%{_bashcompdir}/pmdumptext +%endif + +%files doc -f pcp-doc.list +%if 0%{?suse_version} +%exclude %{_docdir}/pcp/CHANGELOG +%exclude %{_docdir}/pcp/COPYING +%exclude %{_docdir}/pcp/INSTALL.md +%exclude %{_docdir}/pcp/README.md +%exclude %{_docdir}/pcp/VERSION.pcp +%exclude %{_docdir}/pcp/pcp.lsm +%dir %{_docdir}/pcp/demos +%dir %{_docdir}/pcp/demos/tutorials +%dir %{_datadir}/doc/pcp-doc +%{_datadir}/doc/pcp-doc/html +%endif + +%if !%{disable_selinux} +%files selinux -f pcp-selinux.list +%dir %{_selinuxdir} +%endif + +%if !%{disable_python3} +%files system-tools -f pcp-system-tools.list +%dir %{_confdir}/dstat +%dir %{_confdir}/pmrep +%config(noreplace) %{_confdir}/dstat/* +%config(noreplace) %{_confdir}/pmrep/* +%{_bashcompdir}/pmrep +%endif + +%changelog From 77574db62f92f3bf551e33c124ec1ec53ab56456d60d0944d8ff05ad2e40b0bb Mon Sep 17 00:00:00 2001 From: David Disseldorp Date: Mon, 2 Sep 2024 06:40:02 +0000 Subject: [PATCH 2/2] Fix changelog ordering. OBS-URL: https://build.opensuse.org/package/show/Base:System/pcp?expand=0&rev=140 --- pcp.changes | 10 ++++----- pcp.spec | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+), 5 deletions(-) diff --git a/pcp.changes b/pcp.changes index 9209493..0f86d84 100644 --- a/pcp.changes +++ b/pcp.changes @@ -1,8 +1,3 @@ -------------------------------------------------------------------- -Tue May 14 15:36:47 UTC 2024 - Cathy Hu - -- Enable custom pcp-selinux module (bsc#1223260) - ------------------------------------------------------------------- Tue May 14 20:25:32 UTC 2024 - Martin Schreiner @@ -64,6 +59,11 @@ Tue May 14 20:25:32 UTC 2024 - Martin Schreiner man pages: man-spell and corrections docs: updated donations page with new fiscal sponsor details +------------------------------------------------------------------- +Tue May 14 15:36:47 UTC 2024 - Cathy Hu + +- Enable custom pcp-selinux module (bsc#1223260) + ------------------------------------------------------------------- Mon Apr 15 10:51:06 UTC 2024 - Dirk Müller diff --git a/pcp.spec b/pcp.spec index 69ddeea..ace2506 100644 --- a/pcp.spec +++ b/pcp.spec @@ -542,6 +542,7 @@ applications to easily retrieve and process any subset of that data. + # # pcp-conf # @@ -561,6 +562,7 @@ Performance Co-Pilot (PCP) run-time configuration + # # pcp-libs # @@ -648,6 +650,7 @@ Performance Co-Pilot (PCP) headers for development. + # # pcp-devel # @@ -668,6 +671,7 @@ Performance Co-Pilot (PCP) documentation and tools for development. + # # pcp-testsuite # @@ -693,6 +697,7 @@ Quality assurance test suite for Performance Co-Pilot (PCP). + # # perl-PCP-PMDA. This is the PCP agent perl binding. # @@ -715,6 +720,7 @@ an application, etc. + # # perl-PCP-MMV # @@ -738,6 +744,7 @@ and analysis with pmchart, pmie, pmlogger and other PCP tools. + # # perl-PCP-LogImport # @@ -758,6 +765,7 @@ they can be replayed with standard PCP monitoring tools. + # # perl-PCP-LogSummary # @@ -781,6 +789,7 @@ exporting this data into third-party tools (e.g. spreadsheets). + # # pcp-import-sar2pcp # @@ -804,6 +813,7 @@ into standard PCP archive logs for replay with any PCP monitoring tool. + # # pcp-import-iostat2pcp # @@ -868,6 +878,7 @@ into standard PCP archive logs for replay with any PCP monitoring tool. + # # pcp-import-ganglia2pcp # @@ -890,6 +901,7 @@ into standard PCP archive logs for replay with any PCP monitoring tool. + # # pcp-import-collectl2pcp # @@ -951,6 +963,7 @@ See https://www.elastic.co/community for further details. + # # pcp-export-pcp2graphite # @@ -973,6 +986,7 @@ to graphite (http://graphite.readthedocs.org). + # pcp-export-pcp2influxdb # %package export-pcp2influxdb @@ -996,6 +1010,7 @@ to InfluxDB (https://influxdata.com/time-series-platform/influxdb). + # # pcp-export-pcp2json # @@ -1016,6 +1031,7 @@ in JSON format. + # # pcp-export-pcp2spark # @@ -1074,6 +1090,7 @@ in XML format. + # # pcp-export-pcp2zabbix # @@ -1180,6 +1197,7 @@ collecting metrics about the ActiveMQ message broker. + #end pcp-pmda-activemq # # pcp-pmda-bind2 @@ -1200,6 +1218,7 @@ collecting metrics from BIND (Berkeley Internet Name Domain). + #end pcp-pmda-bind2 # # pcp-pmda-redis @@ -1261,6 +1280,7 @@ collecting metrics about bonded network interfaces. + #end pcp-pmda-bonding # # pcp-pmda-dbping @@ -1282,6 +1302,7 @@ collecting metrics about the Database response times and Availablility. + #end pcp-pmda-dbping # # pcp-pmda-ds389 @@ -1307,6 +1328,7 @@ collecting metrics about a 389 Directory Server. + #end pcp-pmda-ds389 # # pcp-pmda-ds389log @@ -1328,6 +1350,7 @@ collecting metrics from a 389 Directory Server log. + #end pcp-pmda-ds389log # # pcp-pmda-gpfs @@ -1348,6 +1371,7 @@ collecting metrics about the GPFS filesystem. + #end pcp-pmda-gpfs # # pcp-pmda-gpsd @@ -1369,6 +1393,7 @@ collecting metrics about a GPS Daemon. + #end pcp-pmda-gpsd # # pcp-pmda-docker @@ -1385,6 +1410,7 @@ collecting metrics using the Docker daemon REST API. + #end pcp-pmda-docker # # pcp-pmda-lustre @@ -1405,6 +1431,7 @@ collecting metrics about the Lustre Filesystem. + #end pcp-pmda-lustre # # pcp-pmda-lustrecomm @@ -1426,6 +1453,7 @@ collecting metrics about the Lustre Filesystem Comms. + #end pcp-pmda-lustrecomm # # pcp-pmda-memcache @@ -1447,6 +1475,7 @@ collecting metrics about Memcached. + #end pcp-pmda-memcache # # pcp-pmda-mysql @@ -1472,6 +1501,7 @@ collecting metrics about the MySQL database. + #end pcp-pmda-mysql # # pcp-pmda-named @@ -1493,6 +1523,7 @@ collecting metrics about the Named nameserver. + #end pcp-pmda-named # pcp-pmda-netfilter # @@ -1513,6 +1544,7 @@ collecting metrics about the Netfilter packet filtering framework. + #end pcp-pmda-netfilter # # pcp-pmda-news @@ -1534,6 +1566,7 @@ collecting metrics about Usenet News. + #end pcp-pmda-news # # pcp-pmda-nginx @@ -1556,6 +1589,7 @@ collecting metrics about the Nginx Webserver. + #end pcp-pmda-nginx # # pcp-pmda-oracle @@ -1578,6 +1612,7 @@ collecting metrics about the Oracle database. + #end pcp-pmda-oracle # # pcp-pmda-pdns @@ -1599,6 +1634,7 @@ collecting metrics about the PowerDNS. + #end pcp-pmda-pdns # # pcp-pmda-postfix @@ -1637,6 +1673,7 @@ collecting metrics about the Postfix (MTA). + #end pcp-pmda-postfix # # pcp-pmda-rsyslog @@ -1663,6 +1700,7 @@ collecting metrics about Rsyslog. + #end pcp-pmda-rsyslog # # pcp-pmda-samba @@ -1684,6 +1722,7 @@ collecting metrics about Samba. + #end pcp-pmda-samba # # pcp-pmda-slurm @@ -1745,6 +1784,7 @@ collecting metrics for VMware. + #end pcp-pmda-vmware # # pcp-pmda-zimbra @@ -1763,6 +1803,7 @@ collecting metrics about Zimbra. + #end pcp-pmda-zimbra # # pcp-pmda-dm @@ -1801,6 +1842,7 @@ collecting metrics about the gluster filesystem. + # end pcp-pmda-gluster # # pcp-pmda-nfsclient @@ -1858,6 +1900,7 @@ collecting metrics about compressed swap. + # end pcp-pmda-zswap # # pcp-pmda-unbound @@ -1878,6 +1921,7 @@ collecting metrics about the Unbound DNS Resolver. + # end pcp-pmda-unbound # # pcp-pmda-mic @@ -1898,6 +1942,7 @@ collecting metrics about Intel MIC cards. + # end pcp-pmda-mic # # pcp-pmda-haproxy @@ -1963,6 +2008,7 @@ collecting metrics about Elasticsearch. + #end pcp-pmda-elasticsearch # # pcp-pmda-openvswitch @@ -1983,6 +2029,7 @@ collecting metrics from Open vSwitch. + #end pcp-pmda-openvswitch # # pcp-pmda-rabbitmq @@ -2055,6 +2102,7 @@ extracting metrics from OpenMetrics (https://openmetrics.io/) endpoints. + #end pcp-pmda-openmetrics # # pcp-pmda-lmsensors @@ -2078,6 +2126,7 @@ collecting metrics about the Linux hardware monitoring sensors. + # end pcp-pmda-lmsensors # # pcp-pmda-netcheck @@ -2203,6 +2252,7 @@ collecting metrics about the Apache webserver. + # end pcp-pmda-apache # # pcp-pmda-bash @@ -2223,6 +2273,7 @@ collecting metrics about the Bash shell. + # end pcp-pmda-bash # # pcp-pmda-cifs @@ -2242,6 +2293,7 @@ collecting metrics about the Common Internet Filesytem. + # end pcp-pmda-cifs # # pcp-pmda-cisco @@ -2262,6 +2314,7 @@ collecting metrics about Cisco routers. + # end pcp-pmda-cisco # # pcp-pmda-gfs2 @@ -2281,6 +2334,7 @@ collecting metrics about the Global Filesystem v2. + # end pcp-pmda-gfs2 # # pcp-pmda-logger @@ -2302,6 +2356,7 @@ supports both sampled and event-style metrics. + # end pcp-pmda-logger # # pcp-pmda-mailq @@ -2322,6 +2377,7 @@ collecting metrics about email queues managed by sendmail. + # end pcp-pmda-mailq # # pcp-pmda-mounts @@ -2342,6 +2398,7 @@ collecting metrics about filesystem mounts. + # end pcp-pmda-mounts # # pcp-pmda-nvidia-gpu @@ -2361,6 +2418,7 @@ collecting metrics about Nvidia GPUs. + # end pcp-pmda-nvidia-gpu # # pcp-pmda-roomtemp @@ -2421,6 +2479,7 @@ collecting metrics about Sendmail traffic. + # end pcp-pmda-sendmail # # pcp-pmda-shping @@ -2442,6 +2501,7 @@ arbitrary shell commands. + # end pcp-pmda-shping # # pcp-pmda-smart @@ -2460,6 +2520,7 @@ smartmontools package. + #end pcp-pmda-smart # # pcp-pmda-sockets @@ -2478,6 +2539,7 @@ collecting per-socket statistics, making use of utilities such as 'ss'. + #end pcp-pmda-sockets # # pcp-pmda-hacluster @@ -2495,6 +2557,7 @@ collecting metrics about linux High Availability (HA) Clusters. + # end pcp-pmda-hacluster # # pcp-pmda-summary @@ -2553,6 +2616,7 @@ collecting metrics about trace performance data in applications. + # end pcp-pmda-trace # # pcp-pmda-weblog @@ -2574,6 +2638,7 @@ collecting metrics about web server logs. + # end pcp-pmda-weblog # end C pmdas