app-metrics/collectd: drop old

Package-Manager: Portage-2.3.44, Repoman-2.3.10
This commit is contained in:
Thomas Deutschmann
2018-08-02 20:40:08 +02:00
parent 7cce61e7bd
commit 230977ee8c
6 changed files with 0 additions and 1919 deletions

View File

@@ -1,2 +1 @@
DIST collectd-5.7.2.tar.bz2 1798777 BLAKE2B 4af359a773457bb9c05b6a301d7728eea7598c200f7ca534875b07d1d011b280ab138f680d9607723f14523dd71dcbec3a41e0d8d183848c8ef809cef86c2b8f SHA512 8844b67159f8da2203b5ac57ef19fce0a01050a016174d196b48b5fb24925ad2935af9bdd9af06097ff663499abc496cdcc2d9e9a10f403f8d707c465c1a88f3
DIST collectd-5.8.0.tar.bz2 1686017 BLAKE2B 26d995cdb9c25869bf96a056e6ba879de9f009fd4bbf1364a7dedba93b822e57c4b606ca8c84da68cc29db8e77333047695e85d7eb101080de9cee783240f5ea SHA512 1b3d0cc44e2ca54e13eebf292074f1efa8b33d6800d04405e0eaaa2dd1cb2416c6eae580729fb5aead23a5039f41ffe8a9989a907a8c18be8f867f1099fc0008

View File

@@ -1,548 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
JAVA_PKG_OPT_USE="collectd_plugins_java"
inherit autotools fcaps flag-o-matic java-pkg-opt-2 linux-info multilib perl-functions python-single-r1 systemd tmpfiles user
DESCRIPTION="Collects system statistics and provides mechanisms to store the values"
HOMEPAGE="https://collectd.org/"
SRC_URI="${HOMEPAGE%/}/files/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 arm x86"
IUSE="contrib debug java kernel_Darwin kernel_FreeBSD kernel_linux perl selinux static-libs udev xfs"
# The plugin lists have to follow here since they extend IUSE
# Plugins that don't build (e.g. dependencies not in Gentoo)
# apple_sensors: Requires libIOKit
# aquaero: Requires aerotools-ng/libaquaero5
# barometer: Requires libi2c (i2c_smbus_read_i2c_block_data)
# dpdkstat: Requires dpdk
# grpc: Requires libgrpc
# intel_rdt Requires libpqos from intel-cmt-cat project
# lpar: Requires libperfstat (AIX only)
# mic: Requires Intel Many Integrated Core Architecture API
# (part of Intel's Xeon Phi software)
# netapp: Requires libnetapp (http://communities.netapp.com/docs/DOC-1110)
# pf: Requires BSD packet filter
# pinba: Requires MySQL Pinba engine (http://pinba.org/)
# tape: Requires libkstat (Solaris only)
# write_mongodb: https://github.com/collectd/collectd/issues/492
# write_riemann: Requires riemann-c-client
# xmms: Requires libxmms (v1)
# zone: Solaris only...
COLLECTD_IMPOSSIBLE_PLUGINS="apple_sensors aquaero barometer dpdkstat grpc
intel_rdt lpar mic netapp pf pinba tape write_mongodb
write_riemann xmms zone"
# Plugins that have been (compile) tested and can be enabled via COLLECTD_PLUGINS
COLLECTD_TESTED_PLUGINS="aggregation amqp apache apcups ascent battery bind
ceph cgroups chrony conntrack contextswitch cpu cpufreq cpusleep
csv curl curl_json curl_xml dbi df disk dns drbd email
entropy ethstat exec fhcount filecount fscache gmond gps hddtemp
hugepages interface ipc ipmi iptables ipvs irq java lua
load logfile log_logstash lvm madwifi match_empty_counter
match_hashed match_regex match_timediff match_value mbmon md
memcachec memcached memory modbus mqtt multimeter mysql netlink
network network nfs nginx notify_desktop notify_email notify_nagios
ntpd numa nut olsrd onewire openldap openvpn oracle perl ping
postgresql powerdns processes protocols python python redis
routeros rrdcached rrdtool sensors serial sigrok smart snmp statsd
swap syslog table tail tail_csv target_notification target_replace
target_scale target_set tcpconns teamspeak2 ted thermal threshold
tokyotyrant turbostat unixsock uptime users uuid varnish virt
vmem vserver wireless write_graphite write_http write_kafka
write_log write_prometheus write_redis write_sensu write_tsdb
xencpu zfs_arc zookeeper"
COLLECTD_DISABLED_PLUGINS="${COLLECTD_IMPOSSIBLE_PLUGINS}"
COLLECTD_ALL_PLUGINS=${COLLECTD_TESTED_PLUGINS}
for plugin in ${COLLECTD_ALL_PLUGINS}; do
IUSE="${IUSE} collectd_plugins_${plugin}"
done
unset plugin
# Now come the dependencies.
COMMON_DEPEND="
dev-libs/libgcrypt:=
dev-libs/libltdl:0=
perl? ( dev-lang/perl:=[ithreads] )
udev? ( virtual/udev )
xfs? ( sys-fs/xfsprogs )
collectd_plugins_amqp? ( net-libs/rabbitmq-c )
collectd_plugins_apache? ( net-misc/curl:0= )
collectd_plugins_ascent? ( net-misc/curl:0= dev-libs/libxml2:2= )
collectd_plugins_bind? ( net-misc/curl:0= dev-libs/libxml2:2= )
collectd_plugins_ceph? ( dev-libs/yajl:= )
collectd_plugins_curl? ( net-misc/curl:0= )
collectd_plugins_curl_json? ( net-misc/curl:0= dev-libs/yajl:= )
collectd_plugins_curl_xml? ( net-misc/curl:0= dev-libs/libxml2:2= )
collectd_plugins_dbi? ( dev-db/libdbi )
collectd_plugins_dns? ( net-libs/libpcap )
collectd_plugins_gmond? ( sys-cluster/ganglia )
collectd_plugins_gps? ( sci-geosciences/gpsd:= )
collectd_plugins_ipmi? ( >=sys-libs/openipmi-2.0.16-r1 )
collectd_plugins_iptables? ( >=net-firewall/iptables-1.4.13:0= )
collectd_plugins_log_logstash? ( dev-libs/yajl:= )
collectd_plugins_lua? ( dev-lang/lua:0= )
collectd_plugins_lvm? ( sys-fs/lvm2 )
collectd_plugins_memcachec? ( dev-libs/libmemcached )
collectd_plugins_modbus? ( dev-libs/libmodbus )
collectd_plugins_mqtt? ( app-misc/mosquitto )
collectd_plugins_mysql? ( virtual/libmysqlclient:= )
collectd_plugins_netlink? ( net-libs/libmnl )
collectd_plugins_nginx? ( net-misc/curl:0= )
collectd_plugins_notify_desktop? ( x11-libs/libnotify )
collectd_plugins_notify_email? ( net-libs/libesmtp )
collectd_plugins_nut? ( >=sys-power/nut-2.7.2-r2 )
collectd_plugins_openldap? ( net-nds/openldap )
collectd_plugins_onewire? ( >=sys-fs/owfs-3.1:= )
collectd_plugins_oracle? ( dev-db/oracle-instantclient-basic )
collectd_plugins_perl? ( dev-lang/perl:=[ithreads] )
collectd_plugins_ping? ( net-libs/liboping )
collectd_plugins_postgresql? ( dev-db/postgresql:= )
collectd_plugins_python? ( ${PYTHON_DEPS} )
collectd_plugins_redis? ( dev-libs/hiredis:= )
collectd_plugins_routeros? ( net-libs/librouteros )
collectd_plugins_rrdcached? ( net-analyzer/rrdtool:= )
collectd_plugins_rrdtool? ( net-analyzer/rrdtool:= )
collectd_plugins_sensors? ( sys-apps/lm_sensors )
collectd_plugins_sigrok? ( <sci-libs/libsigrok-0.4:= dev-libs/glib:2 )
collectd_plugins_smart? ( dev-libs/libatasmart )
collectd_plugins_snmp? ( net-analyzer/net-snmp )
collectd_plugins_tokyotyrant? ( net-misc/tokyotyrant )
collectd_plugins_varnish? ( www-servers/varnish )
collectd_plugins_virt? ( app-emulation/libvirt:= dev-libs/libxml2:2= )
collectd_plugins_write_http? ( net-misc/curl:0= dev-libs/yajl:= )
collectd_plugins_write_kafka? ( >=dev-libs/librdkafka-0.9.0.99:= dev-libs/yajl:= )
collectd_plugins_write_prometheus? ( >=dev-libs/protobuf-c-1.2.1-r1:= net-libs/libmicrohttpd:= )
collectd_plugins_write_redis? ( dev-libs/hiredis:= )
collectd_plugins_xencpu? ( app-emulation/xen-tools:= )
kernel_FreeBSD? (
collectd_plugins_disk? ( sys-libs/libstatgrab:= )
collectd_plugins_interface? ( sys-libs/libstatgrab:= )
collectd_plugins_load? ( sys-libs/libstatgrab:= )
collectd_plugins_memory? ( sys-libs/libstatgrab:= )
collectd_plugins_swap? ( sys-libs/libstatgrab:= )
collectd_plugins_users? ( sys-libs/libstatgrab:= )
)"
# Enforcing !=sys-kernel/linux-headers-4.5 > due to #577846
DEPEND="${COMMON_DEPEND}
collectd_plugins_iptables? ( || ( <=sys-kernel/linux-headers-4.4 >=sys-kernel/linux-headers-4.6 ) )
collectd_plugins_java? ( >=virtual/jdk-1.6 )
virtual/pkgconfig"
RDEPEND="${COMMON_DEPEND}
collectd_plugins_java? ( >=virtual/jre-1.6 )
collectd_plugins_syslog? ( virtual/logger )
selinux? ( sec-policy/selinux-collectd )
!<sys-apps/openrc-0.18.2"
REQUIRED_USE="
collectd_plugins_python? ( ${PYTHON_REQUIRED_USE} )
collectd_plugins_smart? ( udev )"
PATCHES=(
"${FILESDIR}"/${PN}-5.6.0-gentoo.patch
"${FILESDIR}"/${PN}-5.7.2-issue-2443.patch
"${FILESDIR}"/${PN}-5.7.2-CVE-2017-16820.patch
"${FILESDIR}"/${PN}-5.7.2-varnish-5.2+.patch
)
# @FUNCTION: collectd_plugin_kernel_linux
# @DESCRIPTION:
# USAGE: <plugin name> <kernel_options> <severity>
# kernel_options is a list of kernel configurations options; the check tests whether at least
# one of them is enabled. If no, depending on the third argument an elog, ewarn, or eerror message
# is emitted.
collectd_plugin_kernel_linux() {
local multi_opt opt
if has ${1} ${COLLECTD_ALL_PLUGINS}; then
if use collectd_plugins_${1}; then
for opt in ${2}; do
if linux_chkconfig_present ${opt}; then
return 0;
fi
done
multi_opt=${2//\ /\ or\ }
case ${3} in
(info)
elog "The ${1} plugin can use kernel features that are disabled now; enable ${multi_opt} in your kernel"
;;
(warn)
ewarn "The ${1} plugin uses kernel features that are disabled now; enable ${multi_opt} in your kernel"
;;
(error)
eerror "The ${1} plugin needs kernel features that are disabled now; enable ${multi_opt} in your kernel"
;;
(*)
die "function collectd_plugin_kernel_linux called with invalid third argument"
;;
esac
fi
fi
}
collectd_linux_kernel_checks() {
if ! linux_chkconfig_present PROC_FS; then
ewarn "/proc file system support is disabled, many plugins will not be able to read any statistics from your system unless you enable PROC_FS in your kernel"
fi
if ! linux_chkconfig_present SYSFS; then
ewarn "/sys file system support is disabled, many plugins will not be able to read any statistics from your system unless you enable SYSFS in your kernel"
fi
# battery.c: /proc/pmu/battery_%i
# battery.c: /proc/acpi/battery
collectd_plugin_kernel_linux battery ACPI_BATTERY warn
# cgroups.c: /sys/fs/cgroup/
collectd_plugin_kernel_linux cgroups CGROUPS warn
# cpufreq.c: /sys/devices/system/cpu/cpu%d/cpufreq/
collectd_plugin_kernel_linux cpufreq SYSFS warn
collectd_plugin_kernel_linux cpufreq CPU_FREQ_STAT warn
# drbd.c: /proc/drbd
collectd_plugin_kernel_linux drbd BLK_DEV_DRBD warn
# conntrack.c: /proc/sys/net/netfilter/*
collectd_plugin_kernel_linux conntrack NETFILTER warn
# fscache.c: /proc/fs/fscache/stats
collectd_plugin_kernel_linux fscache FSCACHE warn
# nfs.c: /proc/net/rpc/nfs
# nfs.c: /proc/net/rpc/nfsd
collectd_plugin_kernel_linux nfs NFS_COMMON warn
# serial.c: /proc/tty/driver/serial
# serial.c: /proc/tty/driver/ttyS
collectd_plugin_kernel_linux serial SERIAL_CORE warn
# swap.c: /proc/meminfo
collectd_plugin_kernel_linux swap SWAP warn
# thermal.c: /proc/acpi/thermal_zone
# thermal.c: /sys/class/thermal
collectd_plugin_kernel_linux thermal ACPI_THERMAL warn
# turbostat.c: /dev/cpu/%d/msr
collectd_plugin_kernel_linux turbostat X86_MSR warn
# vmem.c: /proc/vmstat
collectd_plugin_kernel_linux vmem VM_EVENT_COUNTERS warn
# vserver.c: /proc/virtual
collectd_plugin_kernel_linux vserver VSERVER warn
# uuid.c: /sys/hypervisor/uuid
collectd_plugin_kernel_linux uuid SYSFS info
# wireless.c: /proc/net/wireless
collectd_plugin_kernel_linux wireless "WIRELESS MAC80211 IEEE80211" warn
# zfs_arc.c: /proc/spl/kstat/zfs/arcstats
collectd_plugin_kernel_linux zfs_arc "SPL ZFS" warn
}
pkg_setup() {
if use kernel_linux; then
linux-info_pkg_setup
if linux_config_exists; then
einfo "Checking your linux kernel configuration:"
collectd_linux_kernel_checks
else
elog "Cannot find a linux kernel configuration. Continuing anyway."
fi
fi
if use collectd_plugins_java; then
java-pkg-opt-2_pkg_setup
fi
use collectd_plugins_python && python-single-r1_pkg_setup
enewgroup collectd
enewuser collectd -1 -1 /var/lib/collectd collectd
}
src_prepare() {
default
# There's some strange prefix handling in the default config file, resulting in
# paths like "/usr/var/..."
sed -i -e "s:@prefix@/var:/var:g" src/collectd.conf.in || die
# fix installdirs for perl, bug 444360
sed -i -e 's/INSTALL_BASE=$(DESTDIR)$(prefix) //' bindings/Makefile.am || die
# Adjust upstream's systemd unit
# - Get rid of EnvironmentFile directive; These files don't exist on Gentoo!
# - Add User=collectd to run collectd as user "collectd" per default
sed -i \
-e '/^EnvironmentFile=.*/d' \
-e '/^\[Service\]/aUser=collectd' \
contrib/systemd.${PN}.service || die
if use collectd_plugins_java; then
# Set javac -source and -target flags according to (R)DEPEND.
sed -i -e "s/\$(JAVAC)/\0 $(java-pkg_javac-args)/g" bindings/java/Makefile.am || die
fi
ebegin "Removing bundled libltdl"
rm -rf libltdl || die
eend 0
eautoreconf
}
src_configure() {
# Now come the lists of os-dependent plugins. Any plugin that is not listed anywhere here
# should work independent of the operating system.
local linux_plugins="barometer battery cpu cpufreq disk
drbd entropy ethstat hugepages interface iptables
ipvs irq ipc load memory md netlink nfs numa processes
serial swap tcpconns thermal turbostat users vmem wireless
zfc_arc"
local need_libstatgrab=0
local libstatgrab_plugins="cpu disk interface load memory swap users"
local bsd_plugins="cpu tcpconns ${libstatgrab_plugins} zfc_arc"
local darwin_plugins="apple_sensors battery cpu disk interface memory processes tcpconns"
local osdependent_plugins="${linux_plugins} ${bsd_plugins} ${darwin_plugins}"
local myos_plugins=""
if use kernel_linux; then
einfo "Enabling Linux plugins."
myos_plugins=${linux_plugins}
elif use kernel_FreeBSD; then
einfo "Enabling FreeBSD plugins."
myos_plugins=${bsd_plugins}
elif use kernel_Darwin; then
einfo "Enabling Darwin plugins."
myos_plugins=${darwin_plugins}
fi
local myconf="--disable-werror"
# Do we debug?
myconf+=" $(use_enable debug)"
# udev support?
# Required for smart plugin via REQUIRED_USE; Optional for disk plugin
if use udev; then
myconf+=" --with-libudev"
else
myconf+=" --without-libudev"
fi
local plugin
# Disable what needs to be disabled.
for plugin in ${COLLECTD_DISABLED_PLUGINS}; do
myconf+=" --disable-${plugin}"
done
# Set enable/disable for each single plugin.
for plugin in ${COLLECTD_ALL_PLUGINS}; do
if has ${plugin} ${osdependent_plugins}; then
# plugin is os-dependent ...
if has ${plugin} ${myos_plugins}; then
# ... and available in this os
myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
# ... must we link against libstatgrab? Bug #541518
if use kernel_FreeBSD && has ${plugin} ${libstatgrab_plugins}; then
einfo "We must link against libstatgrab due to plugin \"${plugin}\" ..."
need_libstatgrab=1
fi
else
# ... and NOT available in this os
if use collectd_plugins_${plugin}; then
ewarn "You try to enable the ${plugin} plugin, but it is not available for this"
ewarn "kernel. Disabling it automatically."
fi
myconf+=" --disable-${plugin}"
fi
elif [[ "${plugin}" = "collectd_plugins_perl" ]]; then
if use collectd_plugins_perl && ! use perl; then
ewarn "Perl plugin disabled as perl bindings disabled by -perl use flag"
myconf+= --disable-perl
else
myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
fi
else
myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
fi
done
if [ "${need_libstatgrab}" -eq 1 ]; then
myconf+=" --with-libstatgrab"
else
myconf+=" --without-libstatgrab"
fi
# JAVA_HOME is set by eclasses.
if use collectd_plugins_java; then
myconf+=" --with-java"
fi
# Need libiptc ONLY for iptables. If we try to use it otherwise bug 340109 happens.
# lots of libs are only needed for plugins, if they are disabled, also disable the lib
use collectd_plugins_iptables || myconf+=" --with-libiptc=no"
use collectd_plugins_openldap || myconf+=" --with-libldap=no"
use collectd_plugins_redis || use collectd_plugins_write_redis || myconf+=" --with-libhiredis=no"
use collectd_plugins_smart || myconf+=" --with-libatasmart=no"
use collectd_plugins_gps || myconf+=" --with-libgps=no"
if use perl; then
myconf+=" --with-perl-bindings=INSTALLDIRS=vendor"
else
myconf+=" --without-perl-bindings"
fi
# No need for v5upgrade
myconf+=" --disable-target_v5upgrade"
# Python
if use collectd_plugins_python; then
myconf+=" --with-libpython=yes"
export PYTHON_CONFIG=$(python_get_PYTHON_CONFIG)
else
myconf+=" --with-libpython=no"
fi
# XFS support
myconf+=" $(use_enable xfs)"
# Finally, run econf.
KERNEL_DIR="${KERNEL_DIR}" econf --config-cache \
$(use_enable static-libs static) \
--localstatedir=/var ${myconf}
}
src_install() {
emake DESTDIR="${D%/}" install
perl_delete_localpod
find "${ED}"usr/ -name "*.la" -delete || die
if use collectd_plugins_java; then
java-pkg_regjar "${ED}"usr/share/${PN}/java/*.jar
fi
fowners root:collectd /etc/collectd.conf
fperms u=rw,g=r,o= /etc/collectd.conf
dodoc AUTHORS ChangeLog README
if use contrib ; then
insinto /usr/share/doc/${PF}
doins -r contrib
fi
keepdir /var/lib/${PN}
fowners collectd:collectd /var/lib/${PN}
newinitd "${FILESDIR}/${PN}.initd-r2" ${PN}
newconfd "${FILESDIR}/${PN}.confd-r2" ${PN}
systemd_newunit "contrib/systemd.${PN}.service" ${PN}.service
insinto /etc/logrotate.d
newins "${FILESDIR}/${PN}.logrotate" ${PN}
newtmpfiles "${FILESDIR}"/${PN}.tmpfile ${PN}.conf
sed -i -e 's:^.*PIDFile "/var/run/collectd.pid":#PIDFile "/run/collectd.pid":' "${ED}"etc/collectd.conf || die
sed -i -e 's:^# SocketFile "/var/run/collectd-unixsock":# SocketFile "/run/collectd/collectd.socket":' "${ED}"etc/collectd.conf || die
sed -i -e 's:^.*LoadPlugin perl$:# The new, correct way to load the perl plugin -- \n# <LoadPlugin perl>\n# Globals true\n# </LoadPlugin>:' "${ED}"etc/collectd.conf || die
sed -i -e 's:^.*LoadPlugin python$:# The new, correct way to load the python plugin -- \n# <LoadPlugin python>\n# Globals true\n# </LoadPlugin>:' "${ED}"etc/collectd.conf || die
}
pkg_postinst() {
tmpfiles_process "${PN}.conf"
if use filecaps; then
local caps=()
use collectd_plugins_ceph && caps+=('CAP_DAC_OVERRIDE')
use collectd_plugins_exec && caps+=('CAP_SETUID' 'CAP_SETGID')
use collectd_plugins_iptables && caps+=('CAP_NET_ADMIN')
use collectd_plugins_filecount && caps+=('CAP_DAC_READ_SEARCH')
if use collectd_plugins_dns || use collectd_plugins_ping; then
caps+=('CAP_NET_RAW')
fi
if use collectd_plugins_turbostat || use collectd_plugins_smart; then
caps+=('CAP_SYS_RAWIO')
fi
if [ ${#caps[@]} -gt 0 ]; then
local caps_str=$(IFS=","; echo "${caps[*]}")
fcaps ${caps_str} usr/sbin/collectd
elog "Capabilities for ${EROOT}usr/sbin/collectd set to:"
elog " ${caps_str}+EP"
elog
local systemd_unit="$(systemd_get_systemunitdir)/collectd.service"
if [[ -e "${systemd_unit}" ]]; then
caps_str="${caps[*]}"
sed -i -e "s:^CapabilityBoundingSet=.*:CapabilityBoundingSet=${caps_str}:" "${systemd_unit}" || \
die "Failed to set CapabilityBoundingSet in '${systemd_unit}'"
elog "CapabilityBoundingSet in '${systemd_unit}'"
elog "updated to match capabilities set above."
elog
else
if has_version "sys-apps/systemd"; then
# Bug 596852
ewarn "Failed to update CapabilityBoundingSet in '${systemd_unit}'"
ewarn "because unit was not found. Please file a bug about this."
fi
fi
fi
fi
elog "Note: Collectd is only the collector."
elog " You need to install 'data' sources (applications) locally or"
elog " remotely on your own."
elog
elog "Collectd is configured to run as unprivileged user by default."
elog "You may want to revisit the configuration."
elog
if use collectd_plugins_email; then
ewarn "The email plug-in is deprecated. To submit statistics please use the unixsock plugin."
fi
if use collectd_plugins_smart; then
elog ""
elog "If you are using smart plugin and don't run collectd as root make sure"
elog "that the collectd user is allowed to access the disk you want to monitor"
elog "(can be done via udev rule for example) and that collectd has the required"
elog "capabilities set (which is the default when package was emerged with"
elog "'filecaps' USE flag set)."
fi
if use contrib; then
elog "The scripts in /usr/share/doc/${PF}/collection3 for generating graphs need dev-perl/HTML-Parser,"
elog "dev-perl/config-general, dev-perl/regexp-common, and net-analyzer/rrdtool[perl] to be installed."
fi
}

View File

@@ -1,153 +0,0 @@
From 8fe20883e248572690798e4dd1423511aa2f4e5d Mon Sep 17 00:00:00 2001
From: Thomas Deutschmann <whissi@gentoo.org>
Date: Thu, 22 Sep 2016 00:53:58 +0200
Subject: [PATCH 1/3] Remove bundled libltdl
---
Makefile.am | 6 ------
configure.ac | 8 ++++----
2 files changed, 4 insertions(+), 10 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 03bdd39..ad04a3c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,11 +1,5 @@
-ACLOCAL_AMFLAGS = -I libltdl/m4
-
SUBDIRS =
-if BUILD_INCLUDED_LTDL
-SUBDIRS += libltdl
-endif
-
SUBDIRS += proto src bindings .
AM_CPPFLAGS = $(LTDLINCL)
diff --git a/configure.ac b/configure.ac
index 9a6da11..68e15e0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3,7 +3,6 @@ AC_PREREQ([2.60])
AC_INIT([collectd],[m4_esyscmd(./version-gen.sh)])
AC_CONFIG_SRCDIR(src/target_set.c)
AC_CONFIG_HEADERS(src/config.h)
-AC_CONFIG_AUX_DIR([libltdl/config])
dnl older automake's default of ARFLAGS=cru is noisy on newer binutils;
dnl we don't really need the 'u' even in older toolchains. Then there is
@@ -13,7 +12,6 @@ m4_divert_text([DEFAULTS], [: "${ARFLAGS=cr} ${AR_FLAGS=cr}"])
m4_ifdef([LT_PACKAGE_VERSION],
# libtool >= 2.2
[
- LT_CONFIG_LTDL_DIR([libltdl])
LT_INIT([dlopen])
LTDL_INIT([convenience])
AC_DEFINE(LIBTOOL_VERSION, 2, [Define to used libtool version.])
@@ -25,12 +23,14 @@ m4_ifdef([LT_PACKAGE_VERSION],
AC_SUBST(LTDLINCL)
AC_SUBST(LIBLTDL)
AC_LIBTOOL_DLOPEN
- AC_CONFIG_SUBDIRS(libltdl)
AC_DEFINE(LIBTOOL_VERSION, 1, [Define to used libtool version.])
]
)
-AM_CONDITIONAL([BUILD_INCLUDED_LTDL], [test "x$LTDLDEPS" != "x"])
+if test "x$LTDLDEPS" != "x"
+then
+ AC_MSG_ERROR(["system's libltdl is too old! Should never happen. Please file a bug at https://bugs.gentoo.org"])
+fi
AM_INIT_AUTOMAKE([subdir-objects tar-pax dist-bzip2 no-dist-gzip foreign])
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
--
2.10.0
From 0b00f519ce183b8ceaab5cf8e56f574ecd2cb7c4 Mon Sep 17 00:00:00 2001
From: Thomas Deutschmann <whissi@gentoo.org>
Date: Thu, 22 Sep 2016 00:54:08 +0200
Subject: [PATCH 2/3] Remove libhal dependency
X-Gentoo-Bug: 353839
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=353839
---
configure.ac | 24 ------------------------
1 file changed, 24 deletions(-)
diff --git a/configure.ac b/configure.ac
index 68e15e0..1700c44 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1663,30 +1663,6 @@ AM_CONDITIONAL(BUILD_WITH_LIBRESOLV, test "x$with_libresolv" = "xyes")
dnl Check for HAL (hardware abstraction library)
with_libhal="no"
-PKG_CHECK_MODULES([HAL], [hal],
- [
- SAVE_LIBS="$LIBS"
- LIBS="$HAL_LIBS $LIBS"
- AC_CHECK_LIB([hal], [libhal_device_property_exists],
- [
- SAVE_CPPFLAGS="$CPPFLAGS"
- CPPFLAGS="$HAL_CFLAGS $CPPFLAGS"
- AC_CHECK_HEADERS([libhal.h],
- [
- with_libhal="yes"
- BUILD_WITH_LIBHAL_CFLAGS="$HAL_CFLAGS"
- BUILD_WITH_LIBHAL_LIBS="$HAL_LIBS"
- ])
- CPPFLAGS="$SAVE_CPPFLAGS"
- ],
- [ : ]
- )
- LIBS="$SAVE_LIBS"
- ],
- [ : ]
-)
-AC_SUBST(BUILD_WITH_LIBHAL_CFLAGS)
-AC_SUBST(BUILD_WITH_LIBHAL_LIBS)
SAVE_LIBS="$LIBS"
--
2.10.0
From 380c61888bed5856319fa32816d8f2f4c88ee7bc Mon Sep 17 00:00:00 2001
From: Thomas Deutschmann <whissi@gentoo.org>
Date: Thu, 22 Sep 2016 00:54:19 +0200
Subject: [PATCH 3/3] Link Oracle plug-in against libocci
Author: Aurelien Minet
X-Gentoo-Bug: 347607
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=347607
---
configure.ac | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index 1700c44..83909a0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3587,14 +3587,14 @@ AC_ARG_WITH(oracle, [AS_HELP_STRING([--with-oracle@<:@=ORACLE_HOME@:>@], [Path t
])
if test "x$ORACLE_HOME" != "x"
then
- with_oracle_cppflags="-I$ORACLE_HOME/rdbms/public"
+ with_oracle_cppflags="-I$ORACLE_HOME/rdbms/public -locci"
if test -e "$ORACLE_HOME/lib/ldflags"
then
with_oracle_libs=`cat "$ORACLE_HOME/lib/ldflags"`
fi
#with_oracle_libs="-L$ORACLE_HOME/lib $with_oracle_libs -lclntsh"
- with_oracle_libs="-L$ORACLE_HOME/lib -lclntsh"
+ with_oracle_libs="-L$ORACLE_HOME/lib -lclntsh -locci"
fi
if test "x$with_oracle" = "xyes"
then
--
2.10.0

View File

@@ -1,39 +0,0 @@
CVE-2017-16820: Fix double free of request PDU
https://github.com/collectd/collectd/commit/d16c24542b2f96a194d43a73c2e5778822b9cb47
--- a/src/snmp.c
+++ b/src/snmp.c
@@ -1357,11 +1357,13 @@ static int csnmp_read_table(host_definition_t *host, data_definition_t *data) {
if (oid_list_todo_num == 0) {
/* The request is still empty - so we are finished */
DEBUG("snmp plugin: all variables have left their subtree");
+ snmp_free_pdu(req);
status = 0;
break;
}
res = NULL;
+ /* snmp_sess_synch_response always frees our req PDU */
status = snmp_sess_synch_response(host->sess_handle, req, &res);
if ((status != STAT_SUCCESS) || (res == NULL)) {
char *errstr = NULL;
@@ -1376,8 +1378,6 @@ static int csnmp_read_table(host_definition_t *host, data_definition_t *data) {
snmp_free_pdu(res);
res = NULL;
- /* snmp_synch_response already freed our PDU */
- req = NULL;
sfree(errstr);
csnmp_host_close_session(host);
@@ -1492,9 +1492,6 @@ static int csnmp_read_table(host_definition_t *host, data_definition_t *data) {
snmp_free_pdu(res);
res = NULL;
- if (req != NULL)
- snmp_free_pdu(req);
- req = NULL;
if (status == 0)
csnmp_dispatch_table(host, data, instance_list_head, value_list_head);

View File

@@ -1,160 +0,0 @@
turbostat: import msr-index header from linux to allow building against
>=linux-4.12
Backport of https://github.com/collectd/collectd/pull/2446
--- a/configure.ac
+++ b/configure.ac
@@ -805,28 +805,6 @@ AC_CACHE_CHECK([whether clock_boottime and clock_monotonic are supported],
# For the turbostat plugin
-have_asm_msrindex_h="no"
-AC_CHECK_HEADERS(asm/msr-index.h, [have_asm_msrindex_h="yes"])
-
-if test "x$have_asm_msrindex_h" = "xyes"
-then
- AC_CACHE_CHECK([whether asm/msr-index.h has MSR_PKG_C10_RESIDENCY],
- [c_cv_have_usable_asm_msrindex_h],
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
-[[[
-#include<asm/msr-index.h>
-]]],
-[[[
-int y = MSR_PKG_C10_RESIDENCY;
-return(y);
-]]]
- )],
- [c_cv_have_usable_asm_msrindex_h="yes"],
- [c_cv_have_usable_asm_msrindex_h="no"],
- )
- )
-fi
-
have_cpuid_h="no"
AC_CHECK_HEADERS(cpuid.h, [have_cpuid_h="yes"])
@@ -6108,7 +6086,7 @@ then
then
plugin_ipvs="yes"
fi
- if test "x$c_cv_have_usable_asm_msrindex_h" = "xyes" && test "x$have_cpuid_h" = "xyes"
+ if test "x$have_cpuid_h" = "xyes"
then
plugin_turbostat="yes"
fi
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1212,7 +1212,9 @@ endif
if BUILD_PLUGIN_TURBOSTAT
pkglib_LTLIBRARIES += turbostat.la
-turbostat_la_SOURCES = turbostat.c
+turbostat_la_SOURCES = \
+ turbostat.c \
+ msr-index.h
turbostat_la_LDFLAGS = $(PLUGIN_LDFLAGS)
endif
--- /dev/null
+++ b/src/msr-index.h
@@ -0,0 +1,88 @@
+/*
+ * Partial header file imported from the linux kernel
+ * (arch/x86/include/asm/msr-index.h)
+ * as it is not provided by the kernel sources anymore
+ *
+ * Only the minimal blocks of macro have been included
+ * ----
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
+ * ----
+ */
+
+#ifndef _ASM_X86_MSR_INDEX_H
+#define _ASM_X86_MSR_INDEX_H
+
+/*
+ * CPU model specific register (MSR) numbers.
+ *
+ * Do not add new entries to this file unless the definitions are shared
+ * between multiple compilation units.
+ */
+
+/* Intel MSRs. Some also available on other CPUs */
+
+/* C-state Residency Counters */
+#define MSR_PKG_C3_RESIDENCY 0x000003f8
+#define MSR_PKG_C6_RESIDENCY 0x000003f9
+#define MSR_ATOM_PKG_C6_RESIDENCY 0x000003fa
+#define MSR_PKG_C7_RESIDENCY 0x000003fa
+#define MSR_CORE_C3_RESIDENCY 0x000003fc
+#define MSR_CORE_C6_RESIDENCY 0x000003fd
+#define MSR_CORE_C7_RESIDENCY 0x000003fe
+#define MSR_KNL_CORE_C6_RESIDENCY 0x000003ff
+#define MSR_PKG_C2_RESIDENCY 0x0000060d
+#define MSR_PKG_C8_RESIDENCY 0x00000630
+#define MSR_PKG_C9_RESIDENCY 0x00000631
+#define MSR_PKG_C10_RESIDENCY 0x00000632
+
+/* Run Time Average Power Limiting (RAPL) Interface */
+
+#define MSR_RAPL_POWER_UNIT 0x00000606
+
+#define MSR_PKG_POWER_LIMIT 0x00000610
+#define MSR_PKG_ENERGY_STATUS 0x00000611
+#define MSR_PKG_PERF_STATUS 0x00000613
+#define MSR_PKG_POWER_INFO 0x00000614
+
+#define MSR_DRAM_POWER_LIMIT 0x00000618
+#define MSR_DRAM_ENERGY_STATUS 0x00000619
+#define MSR_DRAM_PERF_STATUS 0x0000061b
+#define MSR_DRAM_POWER_INFO 0x0000061c
+
+#define MSR_PP0_POWER_LIMIT 0x00000638
+#define MSR_PP0_ENERGY_STATUS 0x00000639
+#define MSR_PP0_POLICY 0x0000063a
+#define MSR_PP0_PERF_STATUS 0x0000063b
+
+#define MSR_PP1_POWER_LIMIT 0x00000640
+#define MSR_PP1_ENERGY_STATUS 0x00000641
+#define MSR_PP1_POLICY 0x00000642
+
+
+
+/* Intel defined MSRs. */
+#define MSR_IA32_TSC 0x00000010
+#define MSR_SMI_COUNT 0x00000034
+
+#define MSR_IA32_MPERF 0x000000e7
+#define MSR_IA32_APERF 0x000000e8
+
+#define MSR_IA32_THERM_STATUS 0x0000019c
+
+#define MSR_IA32_TEMPERATURE_TARGET 0x000001a2
+
+#define MSR_IA32_PACKAGE_THERM_STATUS 0x000001b1
+
+
+#endif /* _ASM_X86_MSR_INDEX_H */
--- a/src/turbostat.c
+++ b/src/turbostat.c
@@ -41,7 +41,7 @@
#include "plugin.h"
#include "utils_time.h"
-#include <asm/msr-index.h>
+#include "msr-index.h"
#include <cpuid.h>
#ifdef HAVE_SYS_CAPABILITY_H
#include <sys/capability.h>

File diff suppressed because it is too large Load Diff