collectd.spec: sort list
[collectd.git] / contrib / redhat / collectd.spec
1 #
2 # q: What is this ?
3 # a: A specfile for building RPM packages of current collectd releases, for
4 #    RHEL/CentOS versions 5, 6 and 7. By default all the plugins which are
5 #    buildable based on the libraries available in the distribution + the
6 #    EPEL repository, will be built. Plugins depending on external libs will
7 #    be packaged in separate RPMs.
8 #
9 # q: And how can I do that ?
10 # a: By following these instructions, using mock:
11 #
12 # - install and configure mock (https://fedoraproject.org/wiki/Projects/Mock)
13 #
14 # - enable the EPEL repository (http://dl.fedoraproject.org/pub/epel/) in the
15 #   configuration files for your target systems (/etc/mock/*.cfg).
16 #
17 # - fetch the desired collectd release file from https://collectd.org/files/
18 #   and save it in your ~/rpmbuild/SOURCES/ directory (or build your own out of
19 #   the git repository: ./build.sh && ./configure && make-dist-bz2)
20 #
21 # - copy this file in your ~/rpmbuild/SPECS/ directory. Make sure the
22 #   "Version:" tag matches the version from the tarball.
23 #
24 # - build the SRPM first:
25 #   mock -r centos-6-x86_64 --buildsrpm --spec ~/rpmbuild/SPECS/collectd.spec \
26 #     --sources ~/rpmbuild/SOURCES/
27 #
28 # - then build the RPMs:
29 #   mock -r centos-6-x86_64 --no-clean --rebuild \
30 #     /var/lib/mock/centos-6-x86_64/result/collectd-X.Y.Z-NN.src.rpm
31 #
32 # - you can also optionally enable/disable plugins which are disabled/enabled
33 #   by default:
34 #   mock -r centos-6-x86_64 --no-clean --without=java --with=oracle --rebuild \
35 #     /var/lib/mock/centos-6-x86_64/result/collectd-X.Y.Z-NN.src.rpm
36 #
37
38 %global _hardened_build 1
39 %{?perl_default_filter}
40
41 # plugins only buildable on RHEL6
42 # (NB: %{elN} macro is not available on RHEL < 6)
43 %{?el6:%global _has_libyajl 1}
44 %{?el6:%global _has_recent_libpcap 1}
45 %{?el6:%global _has_recent_sockios_h 1}
46 %{?el6:%global _has_recent_libganglia 1}
47 %{?el6:%global _has_working_libiptc 1}
48 %{?el6:%global _has_ip_vs_h 1}
49 %{?el6:%global _has_lvm2app_h 1}
50 %{?el6:%global _has_libmodbus 1}
51 %{?el6:%global _has_libudev 1}
52 %{?el6:%global _has_iproute 1}
53 %{?el6:%global _has_atasmart 1}
54 %{?el6:%global _has_hiredis 1}
55 %{?el6:%global _has_asm_msr_index 1}
56
57 %{?el7:%global _has_libyajl 1}
58 %{?el7:%global _has_recent_libpcap 1}
59 %{?el7:%global _has_recent_sockios_h 1}
60 %{?el7:%global _has_recent_libganglia 1}
61 %{?el7:%global _has_working_libiptc 1}
62 %{?el7:%global _has_ip_vs_h 1}
63 %{?el7:%global _has_lvm2app_h 1}
64 %{?el7:%global _has_libmodbus 1}
65 %{?el7:%global _has_libudev 1}
66 %{?el7:%global _has_recent_librrd 1}
67 %{?el7:%global _has_iproute 1}
68 %{?el7:%global _has_atasmart 1}
69 %{?el7:%global _has_hiredis 1}
70 %{?el7:%global _has_asm_msr_index 1}
71 %{?el7:%global _has_libmosquitto 1}
72 %{?el7:%global _has_xmms 1}
73
74 # plugins enabled by default
75 %define with_aggregation 0%{!?_without_aggregation:1}
76 %define with_amqp 0%{!?_without_amqp:1}
77 %define with_apache 0%{!?_without_apache:1}
78 %define with_apcups 0%{!?_without_apcups:1}
79 %define with_ascent 0%{!?_without_ascent:1}
80 %define with_battery 0%{!?_without_battery:1}
81 %define with_bind 0%{!?_without_bind:1}
82 %define with_ceph 0%{!?_without_ceph:0%{?_has_libyajl}}
83 %define with_cgroups 0%{!?_without_cgroups:1}
84 %define with_chrony 0%{!?_without_chrony:1}
85 %define with_conntrack 0%{!?_without_conntrack:1}
86 %define with_contextswitch 0%{!?_without_contextswitch:1}
87 %define with_cpu 0%{!?_without_cpu:1}
88 %define with_cpufreq 0%{!?_without_cpufreq:1}
89 %define with_csv 0%{!?_without_csv:1}
90 %define with_curl 0%{!?_without_curl:1}
91 %define with_curl_json 0%{!?_without_curl_json:0%{?_has_libyajl}}
92 %define with_curl_xml 0%{!?_without_curl_xml:1}
93 %define with_dbi 0%{!?_without_dbi:1}
94 %define with_df 0%{!?_without_df:1}
95 %define with_disk 0%{!?_without_disk:1}
96 %define with_dns 0%{!?_without_dns:0%{?_has_recent_libpcap}}
97 %define with_drbd 0%{!?_without_drbd:1}
98 %define with_email 0%{!?_without_email:1}
99 %define with_entropy 0%{!?_without_entropy:1}
100 %define with_ethstat 0%{!?_without_ethstat:0%{?_has_recent_sockios_h}}
101 %define with_exec 0%{!?_without_exec:1}
102 %define with_fhcount 0%{!?_without_fhcount:1}
103 %define with_filecount 0%{!?_without_filecount:1}
104 %define with_fscache 0%{!?_without_fscache:1}
105 %define with_gmond 0%{!?_without_gmond:0%{?_has_recent_libganglia}}
106 %define with_hddtemp 0%{!?_without_hddtemp:1}
107 %define with_interface 0%{!?_without_interface:1}
108 %define with_ipc 0%{!?_without_ipc:1}
109 %define with_ipmi 0%{!?_without_ipmi:1}
110 %define with_iptables 0%{!?_without_iptables:0%{?_has_working_libiptc}}
111 %define with_ipvs 0%{!?_without_ipvs:0%{?_has_ip_vs_h}}
112 %define with_irq 0%{!?_without_irq:1}
113 %define with_java 0%{!?_without_java:1}
114 %define with_load 0%{!?_without_load:1}
115 %define with_log_logstash 0%{!?_without_log_logstash:0%{?_has_libyajl}}
116 %define with_logfile 0%{!?_without_logfile:1}
117 %define with_lvm 0%{!?_without_lvm:0%{?_has_lvm2app_h}}
118 %define with_madwifi 0%{!?_without_madwifi:1}
119 %define with_mbmon 0%{!?_without_mbmon:1}
120 %define with_md 0%{!?_without_md:1}
121 %define with_memcachec 0%{!?_without_memcachec:1}
122 %define with_memcached 0%{!?_without_memcached:1}
123 %define with_memory 0%{!?_without_memory:1}
124 %define with_modbus 0%{!?_without_modbus:0%{?_has_libmodbus}}
125 %define with_mqtt 0%{!?_without_mqtt:0%{?_has_libmosquitto}}
126 %define with_multimeter 0%{!?_without_multimeter:1}
127 %define with_mysql 0%{!?_without_mysql:1}
128 %define with_netlink 0%{!?_without_netlink:0%{?_has_iproute}}
129 %define with_network 0%{!?_without_network:1}
130 %define with_nfs 0%{!?_without_nfs:1}
131 %define with_nginx 0%{!?_without_nginx:1}
132 %define with_notify_desktop 0%{!?_without_notify_desktop:1}
133 %define with_notify_email 0%{!?_without_notify_email:1}
134 %define with_notify_nagios 0%{!?_without_notify_nagios:1}
135 %define with_ntpd 0%{!?_without_ntpd:1}
136 %define with_numa 0%{!?_without_numa:1}
137 %define with_nut 0%{!?_without_nut:1}
138 %define with_olsrd 0%{!?_without_olsrd:1}
139 %define with_openldap 0%{!?_without_openldap:1}
140 %define with_openvpn 0%{!?_without_openvpn:1}
141 %define with_perl 0%{!?_without_perl:1}
142 %define with_pinba 0%{!?_without_pinba:1}
143 %define with_ping 0%{!?_without_ping:1}
144 %define with_postgresql 0%{!?_without_postgresql:1}
145 %define with_powerdns 0%{!?_without_powerdns:1}
146 %define with_processes 0%{!?_without_processes:1}
147 %define with_protocols 0%{!?_without_protocols:1}
148 %define with_python 0%{!?_without_python:1}
149 %define with_redis 0%{!?_without_redis:0%{?_has_hiredis}}
150 %define with_rrdcached 0%{!?_without_rrdcached:0%{?_has_recent_librrd}}
151 %define with_rrdtool 0%{!?_without_rrdtool:1}
152 %define with_sensors 0%{!?_without_sensors:1}
153 %define with_serial 0%{!?_without_serial:1}
154 %define with_smart 0%{!?_without_smart:0%{?_has_atasmart}}
155 %define with_snmp 0%{!?_without_snmp:1}
156 %define with_statsd 0%{!?_without_statsd:1}
157 %define with_swap 0%{!?_without_swap:1}
158 %define with_syslog 0%{!?_without_syslog:1}
159 %define with_table 0%{!?_without_table:1}
160 %define with_tail 0%{!?_without_tail:1}
161 %define with_tail_csv 0%{!?_without_tail_csv:1}
162 %define with_tcpconns 0%{!?_without_tcpconns:1}
163 %define with_teamspeak2 0%{!?_without_teamspeak2:1}
164 %define with_ted 0%{!?_without_ted:1}
165 %define with_thermal 0%{!?_without_thermal:1}
166 %define with_threshold 0%{!?_without_threshold:1}
167 %define with_turbostat 0%{!?_without_turbostat:0%{?_has_asm_msr_index}}
168 %define with_unixsock 0%{!?_without_unixsock:1}
169 %define with_uptime 0%{!?_without_uptime:1}
170 %define with_users 0%{!?_without_users:1}
171 %define with_uuid 0%{!?_without_uuid:1}
172 %define with_varnish 0%{!?_without_varnish:1}
173 %define with_virt 0%{!?_without_virt:1}
174 %define with_vmem 0%{!?_without_vmem:1}
175 %define with_vserver 0%{!?_without_vserver:1}
176 %define with_wireless 0%{!?_without_wireless:1}
177 %define with_write_graphite 0%{!?_without_write_graphite:1}
178 %define with_write_http 0%{!?_without_write_http:1}
179 %define with_write_log 0%{!?_without_write_log:1}
180 %define with_write_redis 0%{!?_without_write_redis:0%{?_has_hiredis}}
181 %define with_write_riemann 0%{!?_without_write_riemann:0%{?_has_recent_riemann_c_client}}
182 %define with_write_sensu 0%{!?_without_write_sensu:1}
183 %define with_write_tsdb 0%{!?_without_write_tsdb:1}
184 %define with_xmms 0%{!?_without_xmms:0%{?_has_xmms}}
185 %define with_zfs_arc 0%{!?_without_zfs_arc:1}
186 %define with_zookeeper 0%{!?_without_zookeeper:1}
187
188 # Plugins not built by default because of dependencies on libraries not
189 # available in RHEL or EPEL:
190
191 # plugin apple_sensors disabled, requires a Mac
192 %define with_apple_sensors 0%{!?_without_apple_sensors:0}
193 # plugin aquaero disabled, requires a libaquaero5
194 %define with_aquaero 0%{!?_without_aquaero:0}
195 # plugin barometer disabled, requires a libi2c
196 %define with_barometer 0%{!?_without_barometer:0}
197 # plugin lpar disabled, requires AIX
198 %define with_lpar 0%{!?_without_lpar:0}
199 # plugin mic disabled, requires Mic
200 %define with_mic 0%{!?_without_mic:0}
201 # plugin netapp disabled, requires libnetapp
202 %define with_netapp 0%{!?_without_netapp:0}
203 # plugin onewire disabled, requires libowfs
204 %define with_onewire 0%{!?_without_onewire:0}
205 # plugin oracle disabled, requires Oracle
206 %define with_oracle 0%{!?_without_oracle:0}
207 # plugin oracle disabled, requires BSD
208 %define with_pf 0%{!?_without_pf:0}
209 # plugin routeros disabled, requires librouteros
210 %define with_routeros 0%{!?_without_routeros:0}
211 # plugin sigrok disabled, requires libsigrok
212 %define with_sigrok 0%{!?_without_sigrok:0}
213 # plugin tape disabled, requires libkstat
214 %define with_tape 0%{!?_without_tape:0}
215 # plugin tokyotyrant disabled, requires tcrdb.h
216 %define with_tokyotyrant 0%{!?_without_tokyotyrant:0}
217 # plugin write_kafka disabled, requires librdkafka
218 %define with_write_kafka 0%{!?_without_write_kafka:0}
219 # plugin write_mongodb disabled, requires libmongoc
220 %define with_write_mongodb 0%{!?_without_write_mongodb:0}
221 # plugin xencpu disabled, requires xen-devel from non-default repo
222 %define with_xencpu 0%{!?_without_xencpu:0}
223 # plugin zone disabled, requires Solaris
224 %define with_zone 0%{!?_without_zone:0}
225
226 Summary:        statistics collection and monitoring daemon
227 Name:           collectd
228 Version:        5.5.1
229 Release:        1%{?dist}
230 URL:            http://collectd.org
231 Source:         http://collectd.org/files/%{name}-%{version}.tar.bz2
232 License:        GPLv2
233 Group:          System Environment/Daemons
234 BuildRoot:      %{_tmppath}/%{name}-%{version}-root
235 BuildRequires:  libgcrypt-devel, kernel-headers, libtool-ltdl-devel, libcap-devel
236 Vendor:         collectd development team <collectd@verplant.org>
237
238 %if 0%{?el7:1}
239 Requires(pre):          initscripts
240 Requires(post):         systemd
241 Requires(preun):        systemd
242 Requires(postun):       systemd
243 %else
244 Requires(post):         chkconfig
245 Requires(preun):        chkconfig, initscripts
246 Requires(postun):       initscripts
247 %endif
248
249 %description
250 collectd is a small daemon which collects system information periodically and
251 provides mechanisms to monitor and store the values in a variety of ways. It
252 is written in C for performance. Since the daemon doesn't need to start up
253 every time it wants to update the values it's very fast and easy on the
254 system. Also, the statistics are very fine grained since the files are updated
255 every 10 seconds by default.
256
257 %if %{with_amqp}
258 %package amqp
259 Summary:        AMQP plugin for collectd
260 Group:          System Environment/Daemons
261 Requires:       %{name}%{?_isa} = %{version}-%{release}
262 BuildRequires:  librabbitmq-devel
263 %description amqp
264 The AMQP plugin transmits or receives values collected by collectd via the
265 Advanced Message Queuing Protocol (AMQP).
266 %endif
267
268 %if %{with_apache}
269 %package apache
270 Summary:        Apache plugin for collectd
271 Group:          System Environment/Daemons
272 Requires:       %{name}%{?_isa} = %{version}-%{release}
273 BuildRequires:  curl-devel
274 %description apache
275 This plugin collects data provided by Apache's `mod_status'.
276 %endif
277
278 %if %{with_aquaero}
279 %package aquaero
280 Summary:        aquaero plugin for collectd
281 Group:          System Environment/Daemons
282 Requires:       %{name}%{?_isa} = %{version}-%{release}
283 %description aquaero
284 Various sensors in the Aquaero 5 watercooling board made by Aquacomputer.
285 %endif
286
287 %if %{with_ascent}
288 %package ascent
289 Summary:        Ascent plugin for collectd
290 Group:          System Environment/Daemons
291 Requires:       %{name}%{?_isa} = %{version}-%{release}
292 BuildRequires:  libxml2-devel, curl-devel
293 %description ascent
294 The Ascent plugin reads and parses the statistics page of Ascent, a free and
295 open-source server software for the game World of Warcraft by Blizzard
296 Entertainment.
297 %endif
298
299 %if %{with_barometer}
300 %package barometer
301 Summary:       barometer plugin for collectd
302 Group:         System Environment/Daemons
303 Requires:      %{name}%{?_isa} = %{version}-%{release}
304 %description barometer
305 Collects pressure and temperature from digital barometers.
306 %endif
307
308 %if %{with_bind}
309 %package bind
310 Summary:        Bind plugin for collectd
311 Group:          System Environment/Daemons
312 Requires:       %{name}%{?_isa} = %{version}-%{release}
313 BuildRequires:  libxml2-devel, curl-devel
314 %description bind
315 The BIND plugin retrieves this information that's encoded in XML and provided
316 via HTTP and submits the values to collectd.
317 %endif
318
319 %if %{with_ceph}
320 %package ceph
321 Summary:       Ceph plugin for collectd
322 Group:         System Environment/Daemons
323 Requires:      %{name}%{?_isa} = %{version}-%{release}
324 BuildRequires: yajl-devel
325 %description ceph
326 Ceph plugin for collectd
327 %endif
328
329 %if %{with_chrony}
330 %package chrony
331 Summary:       Chrony plugin for collectd
332 Group:         System Environment/Daemons
333 Requires:      %{name}%{?_isa} = %{version}-%{release}
334 %description chrony
335 Chrony plugin for collectd
336 %endif
337
338 %if %{with_curl}
339 %package curl
340 Summary:        Curl plugin for collectd
341 Group:          System Environment/Daemons
342 Requires:       %{name}%{?_isa} = %{version}-%{release}
343 BuildRequires:  curl-devel
344 %description curl
345 The cURL plugin uses libcurl to read files and then parses them according to
346 the configuration.
347 %endif
348
349 %if %{with_curl_json}
350 %package curl_json
351 Summary:        Curl_json plugin for collectd
352 Group:          System Environment/Daemons
353 Requires:       %{name}%{?_isa} = %{version}-%{release}
354 BuildRequires:  curl-devel, yajl-devel
355 %description curl_json
356 The cURL-JSON plugin queries JavaScript Object Notation (JSON) data using the
357 cURL library and parses it according to the user's configuration.
358 %endif
359
360 %if %{with_curl_xml}
361 %package curl_xml
362 Summary:        Curl_xml plugin for collectd
363 Group:          System Environment/Daemons
364 Requires:       %{name}%{?_isa} = %{version}-%{release}
365 BuildRequires:  curl-devel, libxml2-devel
366 %description curl_xml
367 The cURL-XML plugin reads files using libcurl and parses it as Extensible
368 Markup Language (XML).
369 %endif
370
371 %if %{with_dbi}
372 %package dbi
373 Summary:        DBI plugin for collectd
374 Group:          System Environment/Daemons
375 Requires:       %{name}%{?_isa} = %{version}-%{release}
376 BuildRequires:  libdbi-devel
377 %description dbi
378 The DBI plugin uses libdbi, a database abstraction library, to execute SQL
379 statements on a database and read back the result.
380 %endif
381
382 %if %{with_disk}
383 %package disk
384 Summary:        disk plugin for collectd
385 Group:          System Environment/Daemons
386 Requires:       %{name}%{?_isa} = %{version}-%{release}
387 %{?_has_libudev:BuildRequires:  libudev-devel}
388 %description disk
389 The "disk" plugin collects information about the usage of physical disks and
390 logical disks (partitions).
391 %endif
392
393 %if %{with_dns}
394 %package dns
395 Summary:        DNS plugin for collectd
396 Group:          System Environment/Daemons
397 Requires:       %{name}%{?_isa} = %{version}-%{release}, libpcap >= 1.0
398 BuildRequires:  libpcap-devel >= 1.0
399 %description dns
400 The DNS plugin has a similar functionality to dnstop: It uses libpcap to get a
401 copy of all traffic from/to port UDP/53 (that's the DNS port), interprets the
402 packets and collects statistics of your DNS traffic.
403 %endif
404
405 %if %{with_email}
406 %package email
407 Summary:        Email plugin for collectd
408 Group:          System Environment/Daemons
409 Requires:       %{name}%{?_isa} = %{version}-%{release}, spamassassin
410 %description email
411 This plugin collects data provided by spamassassin.
412 %endif
413
414 %if %{with_gmond}
415 %package gmond
416 Summary:        Gmond plugin for collectd
417 Group:          System Environment/Daemons
418 Requires:       %{name}%{?_isa} = %{version}-%{release}
419 BuildRequires:  ganglia-devel
420 %description gmond
421 The gmond plugin subscribes to a Multicast group to receive data from gmond,
422 the client daemon of the Ganglia project.
423 %endif
424
425 %if %{with_hddtemp}
426 %package hddtemp
427 Summary:        Hddtemp plugin for collectd
428 Group:          System Environment/Daemons
429 Requires:       %{name}%{?_isa} = %{version}-%{release}, hddtemp
430 %description hddtemp
431 The HDDTemp plugin collects the temperature of hard disks. The temperatures are
432 provided via SMART and queried by the external hddtemp daemon.
433 %endif
434
435 %if %{with_ipmi}
436 %package ipmi
437 Summary:        IPMI plugin for collectd
438 Group:          System Environment/Daemons
439 Requires:       %{name}%{?_isa} = %{version}-%{release}
440 BuildRequires:  OpenIPMI-devel
441 %description ipmi
442 The IPMI plugin uses the OpenIPMI library to read hardware sensors from servers
443 using the Intelligent Platform Management Interface (IPMI).
444 %endif
445
446 %if %{with_iptables}
447 %package iptables
448 Summary:        IPtables plugin for collectd
449 Group:          System Environment/Daemons
450 Requires:       %{name}%{?_isa} = %{version}-%{release}
451 BuildRequires:  iptables-devel
452 %description iptables
453 The IPtables plugin can gather statistics from your ip_tables based packet
454 filter (aka. firewall) for both the IPv4 and the IPv6 protocol. It can collect
455 the byte- and packet-counters of selected rules and submit them to collectd.
456 %endif
457
458 %if %{with_java}
459 %package java
460 Summary:        Java plugin for collectd
461 Group:          System Environment/Daemons
462 Requires:       %{name}%{?_isa} = %{version}-%{release}
463 BuildRequires:  java-devel, jpackage-utils
464 Requires:       java, jpackage-utils
465 %description java
466 This plugin for collectd allows plugins to be written in Java and executed
467 in an embedded JVM.
468 %endif
469
470 %if %{with_log_logstash}
471 %package log_logstash
472 Summary:       log_logstash plugin for collectd
473 Group:         System Environment/Daemons
474 Requires:      %{name}%{?_isa} = %{version}-%{release}
475 BuildRequires: yajl-devel
476 %description log_logstash
477 This plugin logs in logstash JSON format
478 %endif
479
480 %if %{with_lvm}
481 %package lvm
482 Summary:        LVM plugin for collectd
483 Group:          System Environment/Daemons
484 Requires:       %{name}%{?_isa} = %{version}-%{release}
485 BuildRequires:  lvm2-devel
486 %description lvm
487 This plugin collects size of “Logical Volumes” (LV) and “Volume Groups” (VG)
488 of Linux' “Logical Volume Manager” (LVM).
489 %endif
490
491 %if %{with_memcachec}
492 %package memcachec
493 Summary:        Memcachec plugin for collectd
494 Group:          System Environment/Daemons
495 Requires:       %{name}%{?_isa} = %{version}-%{release}
496 BuildRequires:  libmemcached-devel
497 %description memcachec
498 The Memcachec plugin uses libmemcached to read statistics from a Memcached
499 instance. Note that another plugin, named `memcached', exists and does a
500 similar job, without requiring the installation of libmemcached.
501 %endif
502
503 %if %{with_mic}
504 %package mic
505 Summary:        mic plugin for collectd
506 Group:          System Environment/Daemons
507 Requires:       %{name}%{?_isa} = %{version}-%{release}
508 %description mic
509 The mic plugin collects CPU usage, memory usage, temperatures and power
510 consumption from Intel Many Integrated Core (MIC) CPUs.
511 %endif
512
513 %if %{with_modbus}
514 %package modbus
515 Summary:       modbus plugin for collectd
516 Group:         System Environment/Daemons
517 Requires:      %{name}%{?_isa} = %{version}-%{release}
518 BuildRequires:  libmodbus-devel
519 %description modbus
520 The modbus plugin collects values from Modbus/TCP enabled devices
521 %endif
522
523 %if %{with_mysql}
524 %package mysql
525 Summary:        MySQL plugin for collectd
526 Group:          System Environment/Daemons
527 Requires:       %{name}%{?_isa} = %{version}-%{release}
528 BuildRequires:  mysql-devel
529 %description mysql
530 MySQL querying plugin. This plugin provides data of issued commands, called
531 handlers and database traffic.
532 %endif
533
534 %if %{with_mqtt}
535 %package mqtt
536 Summary:        mqtt plugin for collectd
537 Group:          System Environment/Daemons
538 Requires:       %{name}%{?_isa} = %{version}-%{release}
539 BuildRequires:  mosquitto-devel
540 %description mqtt
541 The MQTT plugin publishes and subscribes to MQTT topics.
542 %endif
543
544 %if %{with_netlink}
545 %package netlink
546 Summary:        netlink plugin for collectd
547 Group:          System Environment/Daemons
548 Requires:       %{name}%{?_isa} = %{version}-%{release}
549 BuildRequires:  libmnl-devel, iproute-devel
550 %description netlink
551 The netlink plugin collects detailed network interface and routing statistics.
552 %endif
553
554 %if %{with_nginx}
555 %package nginx
556 Summary:        Nginx plugin for collectd
557 Group:          System Environment/Daemons
558 Requires:       %{name}%{?_isa} = %{version}-%{release}
559 BuildRequires:  curl-devel
560 %description nginx
561 This plugin gets data provided by nginx.
562 %endif
563
564 %if %{with_notify_desktop}
565 %package notify_desktop
566 Summary:        Notify_desktop plugin for collectd
567 Group:          System Environment/Daemons
568 Requires:       %{name}%{?_isa} = %{version}-%{release}
569 BuildRequires:  libnotify-devel, gtk2-devel
570 %description notify_desktop
571 The Notify Desktop plugin uses libnotify to display notifications to the user
572 via the desktop notification specification, i. e. on an X display.
573 %endif
574
575 %if %{with_notify_email}
576 %package notify_email
577 Summary:        Notify_email plugin for collectd
578 Group:          System Environment/Daemons
579 Requires:       %{name}%{?_isa} = %{version}-%{release}
580 BuildRequires:  libesmtp-devel
581 %description notify_email
582 The Notify Email plugin uses libESMTP to send notifications to a configured
583 email address.
584 %endif
585
586 %if %{with_nut}
587 %package nut
588 Summary:        Nut plugin for collectd
589 Group:          System Environment/Daemons
590 Requires:       %{name}%{?_isa} = %{version}-%{release}
591 BuildRequires:  nut-devel
592 %description nut
593 This plugin for collectd provides Network UPS Tools support.
594 %endif
595
596 %if %{with_openldap}
597 %package openldap
598 Summary:       Openldap plugin for collectd
599 Group:         System Environment/Daemons
600 Requires:      %{name}%{?_isa} = %{version}-%{release}
601 BuildRequires: openldap-devel
602 %description openldap
603 This plugin reads monitoring information from OpenLDAP's cn=Monitor subtree.
604 %endif
605
606 %if %{with_perl}
607 %package perl
608 Summary:        Perl plugin for collectd
609 Group:          System Environment/Daemons
610 Requires:       %{name}%{?_isa} = %{version}-%{release}
611 Requires:       perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
612         %if 0%{?rhel} >= 6
613 BuildRequires:  perl-ExtUtils-Embed
614         %else
615 BuildRequires:  perl
616         %endif
617 %description perl
618 The Perl plugin embeds a Perl interpreter into collectd and exposes the
619 application programming interface (API) to Perl-scripts.
620 %endif
621
622 %if %{with_pinba}
623 %package pinba
624 Summary:        Pinba plugin for collectd
625 Group:          System Environment/Daemons
626 Requires:       %{name}%{?_isa} = %{version}-%{release}
627 BuildRequires:  protobuf-c-devel
628 %description pinba
629 The Pinba plugin receives and dispatches timing values from Pinba, a profiling
630 extension for PHP.
631 %endif
632
633 %if %{with_ping}
634 %package ping
635 Summary:        Ping plugin for collectd
636 Group:          System Environment/Daemons
637 Requires:       %{name}%{?_isa} = %{version}-%{release}
638 BuildRequires:  liboping-devel
639 %description ping
640 The Ping plugin measures network latency using ICMP “echo requests”, usually
641 known as “ping”.
642 %endif
643
644 %if %{with_postgresql}
645 %package postgresql
646 Summary:        PostgreSQL plugin for collectd
647 Group:          System Environment/Daemons
648 Requires:       %{name}%{?_isa} = %{version}-%{release}
649 BuildRequires:  postgresql-devel
650 %description postgresql
651 The PostgreSQL plugin connects to and executes SQL statements on a PostgreSQL
652 database.
653 %endif
654
655 %if %{with_python}
656 %package python
657 Summary:        Python plugin for collectd
658 Group:          System Environment/Daemons
659 Requires:       %{name}%{?_isa} = %{version}-%{release}
660         %if 0%{?rhel} >= 6
661 BuildRequires: python-devel
662         %else
663 BuildRequires: python26-devel
664         %endif
665 %description python
666 The Python plugin embeds a Python interpreter into collectd and exposes the
667 application programming interface (API) to Python-scripts.
668 %endif
669
670 %if %{with_redis}
671 %package redis
672 Summary:        Redis plugin for collectd
673 Group:          System Environment/Daemons
674 Requires:       %{name}%{?_isa} = %{version}-%{release}
675 BuildRequires:  hiredis-devel
676 %description redis
677 The Redis plugin connects to one or more instances of Redis, a key-value store,
678 and collects usage information using the hiredis library.
679 %endif
680
681 %if %{with_rrdcached}
682 %package rrdcached
683 Summary:        RRDCached plugin for collectd
684 Group:          System Environment/Daemons
685 Requires:       %{name}%{?_isa} = %{version}-%{release}, rrdtool >= 1.4
686 BuildRequires:  rrdtool-devel
687 %description rrdcached
688 The RRDCacheD plugin connects to the “RRD caching daemon”, rrdcached and
689 submits updates for RRD files to that daemon.
690 %endif
691
692 %if %{with_rrdtool}
693 %package rrdtool
694 Summary:        RRDtool plugin for collectd
695 Group:          System Environment/Daemons
696 Requires:       %{name}%{?_isa} = %{version}-%{release}
697 BuildRequires:  rrdtool-devel
698 %description rrdtool
699 The RRDtool plugin writes values to RRD-files using librrd.
700 %endif
701
702 %if %{with_sensors}
703 %package sensors
704 Summary:        Sensors plugin for collectd
705 Group:          System Environment/Daemons
706 Requires:       %{name}%{?_isa} = %{version}-%{release}
707 BuildRequires:  lm_sensors-devel
708 %description sensors
709 This plugin for collectd provides querying of sensors supported by lm_sensors.
710 %endif
711
712 %if %{with_sigrok}
713 %package sigrok
714 Summary:        sigrok plugin for collectd
715 Group:          System Environment/Daemons
716 Requires:       %{name}%{?_isa} = %{version}-%{release}
717 %description sigrok
718 Uses libsigrok as a backend, allowing any sigrok-supported device to have its
719 measurements fed to collectd. This includes multimeters, sound level meters,
720 thermometers, and much more.
721 %endif
722
723 %if %{with_smart}
724 %package smart
725 Summary:       SMART plugin for collectd
726 Group:         System Environment/Daemons
727 Requires:      %{name}%{?_isa} = %{version}-%{release}
728 BuildRequires: libatasmart-devel
729 %description smart
730 Collect SMART statistics, notably load cycle count, temperature and bad
731 sectors.
732 %endif
733
734 %if %{with_snmp}
735 %package snmp
736 Summary:        SNMP plugin for collectd
737 Group:          System Environment/Daemons
738 Requires:       %{name}%{?_isa} = %{version}-%{release}
739 BuildRequires:  net-snmp-devel
740 %description snmp
741 This plugin for collectd allows querying of network equipment using SNMP.
742 %endif
743
744 %if %{with_varnish}
745 %package varnish
746 Summary:        Varnish plugin for collectd
747 Group:          System Environment/Daemons
748 Requires:       %{name}%{?_isa} = %{version}-%{release}
749 BuildRequires:  varnish-libs-devel
750 %description varnish
751 The Varnish plugin collects information about Varnish, an HTTP accelerator.
752 %endif
753
754 %if %{with_virt}
755 %package virt
756 Summary:        Virt plugin for collectd
757 Group:          System Environment/Daemons
758 Requires:       %{name}%{?_isa} = %{version}-%{release}
759 BuildRequires:  libvirt-devel
760 %description virt
761 This plugin collects information from virtualized guests.
762 %endif
763
764 %if %{with_write_http}
765 %package write_http
766 Summary:        Write-HTTP plugin for collectd
767 Group:          System Environment/Daemons
768 Requires:       %{name}%{?_isa} = %{version}-%{release}
769 BuildRequires:  curl-devel
770 %description write_http
771 The Write-HTTP plugin sends the values collected by collectd to a web-server
772 using HTTP POST requests.
773 %endif
774
775 %if %{with_write_kafka}
776 %package write_kafka
777 Summary:       Write-kafka plugin for collectd
778 Group:         System Environment/Daemons
779 Requires:      %{name}%{?_isa} = %{version}-%{release}
780 BuildRequires: rdkafka-devel
781 %description write_kafka
782 The write_kafka plugin sends values to kafka, a distributed messaging system.
783 %endif
784
785 %if %{with_write_redis}
786 %package write_redis
787 Summary:        Write-Redis plugin for collectd
788 Group:          System Environment/Daemons
789 Requires:       %{name}%{?_isa} = %{version}-%{release}
790 BuildRequires:  hiredis-devel
791 %description write_redis
792 The Write Redis plugin stores values in Redis, a “data structures server”.
793 %endif
794
795 %if %{with_write_riemann}
796 %package write_riemann
797 Summary:        riemann plugin for collectd
798 Group:          System Environment/Daemons
799 Requires:       %{name}%{?_isa} = %{version}-%{release}
800 BuildRequires:  protobuf-c-devel
801 %description write_riemann
802 The riemann plugin submits values to Riemann, an event stream processor.
803 %endif
804
805 %if %{with_xencpu}
806 %package xencpu
807 Summary:        xencpu plugin for collectd
808 Group:          System Environment/Daemons
809 Requires:       %{name}%{?_isa} = %{version}-%{release}
810 BuildRequires:  xen-devel
811 %description xencpu
812 The xencpu plugin collects CPU statistics from Xen.
813 %endif
814
815 %if %{with_xmms}
816 %package xmms
817 Summary:        XMMS plugin for collectd
818 Group:          System Environment/Daemons
819 Requires:       %{name}%{?_isa} = %{version}-%{release}
820 BuildRequires:  xmms-devel
821 %description xmms
822 The xmms plugin collects information from the XMMS music player.
823 %endif
824
825 %package collection3
826 Summary:        Web-based viewer for collectd
827 Group:          System Environment/Daemons
828 Requires:       %{name}%{?_isa} = %{version}-%{release}
829 Requires: httpd
830 %description collection3
831 collection3 is a graphing front-end for the RRD files created by and filled
832 with collectd. It is written in Perl and should be run as an CGI-script.
833 Graphs are generated on-the-fly, so no cron job or similar is necessary.
834
835 %package php-collection
836 Summary:        collect php webfrontent
837 Group:          System Environment/Daemons
838 Requires:       collectd = %{version}-%{release}
839 Requires:       httpd
840 Requires:       php
841 Requires:       php-rrdtool
842 %description php-collection
843 PHP graphing frontend for RRD files created by and filled with collectd.
844
845 %package contrib
846 Summary:        Contrib files for collectd
847 Group:          System Environment/Daemons
848 Requires:       %{name}%{?_isa} = %{version}-%{release}
849 %description contrib
850 All the files found under contrib/ in the source tree are bundled in this
851 package.
852
853 %package -n libcollectdclient
854 Summary:        Collectd client library
855 Group:          System Environment/Daemons
856 %description -n libcollectdclient
857 Collectd client library
858
859 %package -n libcollectdclient-devel
860 Summary:        Development files for libcollectdclient
861 Group:          System Environment/Daemons
862 Requires:       pkgconfig
863 Requires:       libcollectdclient%{?_isa} = %{version}-%{release}
864 %description -n libcollectdclient-devel
865 Development files for libcollectdclient
866
867 %package -n collectd-utils
868 Summary:        Collectd utilities
869 Group:          System Environment/Daemons
870 Requires:       libcollectdclient%{?_isa} = %{version}-%{release}
871 Requires:       collectd%{?_isa} = %{version}-%{release}
872 %description -n collectd-utils
873 Collectd utilities
874
875 %prep
876 %setup -q
877
878 %build
879 %if %{with_aggregation}
880 %define _with_aggregation --enable-aggregation
881 %else
882 %define _with_aggregation --disable-aggregation
883 %endif
884
885 %if %{with_amqp}
886 %define _with_amqp --enable-amqp
887 %else
888 %define _with_amqp --disable-amqp
889 %endif
890
891 %if %{with_apache}
892 %define _with_apache --enable-apache
893 %else
894 %define _with_apache --disable-apache
895 %endif
896
897 %if %{with_apcups}
898 %define _with_apcups --enable-apcups
899 %else
900 %define _with_apcups --disable-apcups
901 %endif
902
903 %if %{with_apple_sensors}
904 %define _with_apple_sensors --enable-apple_sensors
905 %else
906 %define _with_apple_sensors --disable-apple_sensors
907 %endif
908
909 %if %{with_aquaero}
910 %define _with_aquaero --enable-aquaero
911 %else
912 %define _with_aquaero --disable-aquaero
913 %endif
914
915 %if %{with_ascent}
916 %define _with_ascent --enable-ascent
917 %else
918 %define _with_ascent --disable-ascent
919 %endif
920
921 %if %{with_barometer}
922 %define _with_barometer --enable-barometer
923 %else
924 %define _with_barometer --disable-barometer
925 %endif
926
927 %if %{with_battery}
928 %define _with_battery --enable-battery
929 %else
930 %define _with_battery --disable-battery
931 %endif
932
933 %if %{with_bind}
934 %define _with_bind --enable-bind
935 %else
936 %define _with_bind --disable-bind
937 %endif
938
939 %if %{with_cgroups}
940 %define _with_cgroups --enable-cgroups
941 %else
942 %define _with_cgroups --disable-cgroups
943 %endif
944
945 %if %{with_chrony}
946 %define _with_chrony --enable-chrony
947 %else
948 %define _with_chrony --disable-chrony
949 %endif
950
951 %if %{with_conntrack}
952 %define _with_conntrack --enable-conntrack
953 %else
954 %define _with_conntrack --disable-conntrack
955 %endif
956
957 %if %{with_contextswitch}
958 %define _with_contextswitch --enable-contextswitch
959 %else
960 %define _with_contextswitch --disable-contextswitch
961 %endif
962
963 %if %{with_cpu}
964 %define _with_cpu --enable-cpu
965 %else
966 %define _with_cpu --disable-cpu
967 %endif
968
969 %if %{with_cpufreq}
970 %define _with_cpufreq --enable-cpufreq
971 %else
972 %define _with_cpufreq --disable-cpufreq
973 %endif
974
975 %if %{with_csv}
976 %define _with_csv --enable-csv
977 %else
978 %define _with_csv --disable-csv
979 %endif
980
981 %if %{with_ceph}
982 %define _with_ceph --enable-ceph
983 %else
984 %define _with_ceph --disable-ceph
985 %endif
986
987 %if %{with_curl}
988 %define _with_curl --enable-curl
989 %else
990 %define _with_curl --disable-curl
991 %endif
992
993 %if %{with_curl_json}
994 %define _with_curl_json --enable-curl_json
995 %else
996 %define _with_curl_json --disable-curl_json
997 %endif
998
999 %if %{with_curl_xml}
1000 %define _with_curl_xml --enable-curl_xml
1001 %else
1002 %define _with_curl_xml --disable-curl_xml
1003 %endif
1004
1005 %if %{with_dbi}
1006 %define _with_dbi --enable-dbi
1007 %else
1008 %define _with_dbi --disable-dbi
1009 %endif
1010
1011 %if %{with_df}
1012 %define _with_df --enable-df
1013 %else
1014 %define _with_df --disable-df
1015 %endif
1016
1017 %if %{with_disk}
1018 %define _with_disk --enable-disk
1019 %else
1020 %define _with_disk --disable-disk
1021 %endif
1022
1023 %if %{with_dns}
1024 %define _with_dns --enable-dns
1025 %else
1026 %define _with_dns --disable-dns
1027 %endif
1028
1029 %if %{with_drbd}
1030 %define _with_drbd --enable-drbd
1031 %else
1032 %define _with_drbd --disable-drbd
1033 %endif
1034
1035 %if %{with_email}
1036 %define _with_email --enable-email
1037 %else
1038 %define _with_email --disable-email
1039 %endif
1040
1041 %if %{with_entropy}
1042 %define _with_entropy --enable-entropy
1043 %else
1044 %define _with_entropy --disable-entropy
1045 %endif
1046
1047 %if %{with_ethstat}
1048 %define _with_ethstat --enable-ethstat
1049 %else
1050 %define _with_ethstat --disable-ethstat
1051 %endif
1052
1053 %if %{with_exec}
1054 %define _with_exec --enable-exec
1055 %else
1056 %define _with_exec --disable-exec
1057 %endif
1058
1059 %if %{with_fhcount}
1060 %define _with_fhcount --enable-fhcount
1061 %else
1062 %define _with_fhcount --disable-fhcount
1063 %endif
1064
1065 %if %{with_filecount}
1066 %define _with_filecount --enable-filecount
1067 %else
1068 %define _with_filecount --disable-filecount
1069 %endif
1070
1071 %if %{with_fscache}
1072 %define _with_fscache --enable-fscache
1073 %else
1074 %define _with_fscache --disable-fscache
1075 %endif
1076
1077 %if %{with_gmond}
1078 %define _with_gmond --enable-gmond
1079 %else
1080 %define _with_gmond --disable-gmond
1081 %endif
1082
1083 %if %{with_hddtemp}
1084 %define _with_hddtemp --enable-hddtemp
1085 %else
1086 %define _with_hddtemp --disable-hddtemp
1087 %endif
1088
1089 %if %{with_interface}
1090 %define _with_interface --enable-interface
1091 %else
1092 %define _with_interface --disable-interface
1093 %endif
1094
1095 %if %{with_ipc}
1096 %define _with_ipc --enable-ipc
1097 %else
1098 %define _with_ipc --disable-ipc
1099 %endif
1100
1101 %if %{with_ipmi}
1102 %define _with_ipmi --enable-ipmi
1103 %else
1104 %define _with_ipmi --disable-ipmi
1105 %endif
1106
1107 %if %{with_iptables}
1108 %define _with_iptables --enable-iptables
1109 %else
1110 %define _with_iptables --disable-iptables
1111 %endif
1112
1113 %if %{with_ipvs}
1114 %define _with_ipvs --enable-ipvs
1115 %else
1116 %define _with_ipvs --disable-ipvs
1117 %endif
1118
1119 %if %{with_irq}
1120 %define _with_irq --enable-irq
1121 %else
1122 %define _with_irq --disable-irq
1123 %endif
1124
1125 %if %{with_java}
1126 %define _with_java --enable-java --with-java=%{java_home}/
1127 %else
1128 %define _with_java --disable-java
1129 %endif
1130
1131 %if %{with_virt}
1132 %define _with_virt --enable-virt
1133 %else
1134 %define _with_virt --disable-virt
1135 %endif
1136
1137 %if %{with_load}
1138 %define _with_load --enable-load
1139 %else
1140 %define _with_load --disable-load
1141 %endif
1142
1143 %if %{with_logfile}
1144 %define _with_logfile --enable-logfile
1145 %else
1146 %define _with_logfile --disable-logfile
1147 %endif
1148
1149 %if %{with_log_logstash}
1150 %define _with_log_logstash --enable-log_logstash
1151 %else
1152 %define _with_log_logstash --disable-log_logstash
1153 %endif
1154
1155 %if %{with_lpar}
1156 %define _with_lpar --enable-lpar
1157 %else
1158 %define _with_lpar --disable-lpar
1159 %endif
1160
1161 %if %{with_lvm}
1162 %define _with_lvm --enable-lvm
1163 %else
1164 %define _with_lvm --disable-lvm
1165 %endif
1166
1167 %if %{with_madwifi}
1168 %define _with_madwifi --enable-madwifi
1169 %else
1170 %define _with_madwifi --disable-madwifi
1171 %endif
1172
1173 %if %{with_mbmon}
1174 %define _with_mbmon --enable-mbmon
1175 %else
1176 %define _with_mbmon --disable-mbmon
1177 %endif
1178
1179 %if %{with_md}
1180 %define _with_md --enable-md
1181 %else
1182 %define _with_md --disable-md
1183 %endif
1184
1185 %if %{with_memcachec}
1186 %define _with_memcachec --enable-memcachec
1187 %else
1188 %define _with_memcachec --disable-memcachec
1189 %endif
1190
1191 %if %{with_memcached}
1192 %define _with_memcached --enable-memcached
1193 %else
1194 %define _with_memcached --disable-memcached
1195 %endif
1196
1197 %if %{with_memory}
1198 %define _with_memory --enable-memory
1199 %else
1200 %define _with_memory --disable-memory
1201 %endif
1202
1203 %if %{with_mic}
1204 %define _with_mic --enable-mic
1205 %else
1206 %define _with_mic --disable-mic
1207 %endif
1208
1209 %if %{with_modbus}
1210 %define _with_modbus --enable-modbus
1211 %else
1212 %define _with_modbus --disable-modbus
1213 %endif
1214
1215 %if %{with_multimeter}
1216 %define _with_multimeter --enable-multimeter
1217 %else
1218 %define _with_multimeter --disable-multimeter
1219 %endif
1220
1221 %if %{with_mqtt}
1222 %define _with_mqtt --enable-mqtt
1223 %else
1224 %define _with_mqtt --disable-mqtt
1225 %endif
1226
1227 %if %{with_mysql}
1228 %define _with_mysql --enable-mysql
1229 %else
1230 %define _with_mysql --disable-mysql
1231 %endif
1232
1233 %if %{with_netapp}
1234 %define _with_netapp --enable-netapp
1235 %else
1236 %define _with_netapp --disable-netapp
1237 %endif
1238
1239 %if %{with_netlink}
1240 %define _with_netlink --enable-netlink
1241 %else
1242 %define _with_netlink --disable-netlink
1243 %endif
1244
1245 %if %{with_network}
1246 %define _with_network --enable-network
1247 %else
1248 %define _with_network --disable-network
1249 %endif
1250
1251 %if %{with_nfs}
1252 %define _with_nfs --enable-nfs
1253 %else
1254 %define _with_nfs --disable-nfs
1255 %endif
1256
1257 %if %{with_nginx}
1258 %define _with_nginx --enable-nginx
1259 %else
1260 %define _with_nginx --disable-nginx
1261 %endif
1262
1263 %if %{with_notify_desktop}
1264 %define _with_notify_desktop --enable-notify_desktop
1265 %else
1266 %define _with_notify_desktop --disable-notify_desktop
1267 %endif
1268
1269 %if %{with_notify_email}
1270 %define _with_notify_email --enable-notify_email
1271 %else
1272 %define _with_notify_email --disable-notify_email
1273 %endif
1274
1275 %if %{with_notify_nagios}
1276 %define _with_notify_nagios --enable-notify_nagios
1277 %else
1278 %define _with_notify_nagios --disable-notify_nagios
1279 %endif
1280
1281 %if %{with_ntpd}
1282 %define _with_ntpd --enable-ntpd
1283 %else
1284 %define _with_ntpd --disable-ntpd
1285 %endif
1286
1287 %if %{with_numa}
1288 %define _with_numa --enable-numa
1289 %else
1290 %define _with_numa --disable-numa
1291 %endif
1292
1293 %if %{with_nut}
1294 %define _with_nut --enable-nut
1295 %else
1296 %define _with_nut --disable-nut
1297 %endif
1298
1299 %if %{with_olsrd}
1300 %define _with_olsrd --enable-olsrd
1301 %else
1302 %define _with_olsrd --disable-olsrd
1303 %endif
1304
1305 %if %{with_onewire}
1306 %define _with_onewire --enable-onewire
1307 %else
1308 %define _with_onewire --disable-onewire
1309 %endif
1310
1311 %if %{with_openldap}
1312 %define _with_openldap --enable-openldap
1313 %else
1314 %define _with_openldap --disable-openldap
1315 %endif
1316
1317 %if %{with_openvpn}
1318 %define _with_openvpn --enable-openvpn
1319 %else
1320 %define _with_openvpn --disable-openvpn
1321 %endif
1322
1323 %if %{with_oracle}
1324 %define _with_oracle --enable-oracle
1325 %else
1326 %define _with_oracle --disable-oracle
1327 %endif
1328
1329 %if %{with_perl}
1330 %define _with_perl --enable-perl --with-perl-bindings="INSTALLDIRS=vendor"
1331 %else
1332 %define _with_perl --disable-perl
1333 %endif
1334
1335 %if %{with_pf}
1336 %define _with_pf --enable-pf
1337 %else
1338 %define _with_pf --disable-pf
1339 %endif
1340
1341 %if %{with_pinba}
1342 %define _with_pinba --enable-pinba
1343 %else
1344 %define _with_pinba --disable-pinba
1345 %endif
1346
1347 %if %{with_ping}
1348 %define _with_ping --enable-ping
1349 %else
1350 %define _with_ping --disable-ping
1351 %endif
1352
1353 %if %{with_postgresql}
1354 %define _with_postgresql --enable-postgresql
1355 %else
1356 %define _with_postgresql --disable-postgresql
1357 %endif
1358
1359 %if %{with_powerdns}
1360 %define _with_powerdns --enable-powerdns
1361 %else
1362 %define _with_powerdns --disable-powerdns
1363 %endif
1364
1365 %if %{with_processes}
1366 %define _with_processes --enable-processes
1367 %else
1368 %define _with_processes --disable-processes
1369 %endif
1370
1371 %if %{with_protocols}
1372 %define _with_protocols --enable-protocols
1373 %else
1374 %define _with_protocols --disable-protocols
1375 %endif
1376
1377 %if %{with_python}
1378         %if 0%{?rhel} >= 6
1379 %define _with_python --enable-python
1380         %else
1381 %define _with_python --enable-python --with-python=%{_bindir}/python2.6
1382         %endif
1383 %else
1384 %define _with_python --disable-python
1385 %endif
1386
1387 %if %{with_redis}
1388 %define _with_redis --enable-redis
1389 %else
1390 %define _with_redis --disable-redis
1391 %endif
1392
1393 %if %{with_routeros}
1394 %define _with_routeros --enable-routeros
1395 %else
1396 %define _with_routeros --disable-routeros
1397 %endif
1398
1399 %if %{with_rrdcached}
1400 %define _with_rrdcached --enable-rrdcached
1401 %else
1402 %define _with_rrdcached --disable-rrdcached
1403 %endif
1404
1405 %if %{with_rrdtool}
1406 %define _with_rrdtool --enable-rrdtool
1407 %else
1408 %define _with_rrdtool --disable-rrdtool
1409 %endif
1410
1411 %if %{with_sensors}
1412 %define _with_sensors --enable-sensors
1413 %else
1414 %define _with_sensors --disable-sensors
1415 %endif
1416
1417 %if %{with_serial}
1418 %define _with_serial --enable-serial
1419 %else
1420 %define _with_serial --disable-serial
1421 %endif
1422
1423 %if %{with_sigrok}
1424 %define _with_sigrok --enable-sigrok
1425 %else
1426 %define _with_sigrok --disable-sigrok
1427 %endif
1428
1429 %if %{with_smart}
1430 %define _with_smart --enable-smart
1431 %else
1432 %define _with_smart --disable-smart
1433 %endif
1434
1435 %if %{with_snmp}
1436 %define _with_snmp --enable-snmp
1437 %else
1438 %define _with_snmp --disable-snmp
1439 %endif
1440
1441 %if %{with_statsd}
1442 %define _with_statsd --enable-statsd
1443 %else
1444 %define _with_statsd --disable-statsd
1445 %endif
1446
1447 %if %{with_swap}
1448 %define _with_swap --enable-swap
1449 %else
1450 %define _with_swap --disable-swap
1451 %endif
1452
1453 %if %{with_syslog}
1454 %define _with_syslog --enable-syslog
1455 %else
1456 %define _with_syslog --disable-syslog
1457 %endif
1458
1459 %if %{with_table}
1460 %define _with_table --enable-table
1461 %else
1462 %define _with_table --disable-table
1463 %endif
1464
1465 %if %{with_tail}
1466 %define _with_tail --enable-tail
1467 %else
1468 %define _with_tail --disable-tail
1469 %endif
1470
1471 %if %{with_tail_csv}
1472 %define _with_tail_csv --enable-tail_csv
1473 %else
1474 %define _with_tail_csv --disable-tail_csv
1475 %endif
1476
1477 %if %{with_tape}
1478 %define _with_tape --enable-tape
1479 %else
1480 %define _with_tape --disable-tape
1481 %endif
1482
1483 %if %{with_tcpconns}
1484 %define _with_tcpconns --enable-tcpconns
1485 %else
1486 %define _with_tcpconns --disable-tcpconns
1487 %endif
1488
1489 %if %{with_teamspeak2}
1490 %define _with_teamspeak2 --enable-teamspeak2
1491 %else
1492 %define _with_teamspeak2 --disable-teamspeak2
1493 %endif
1494
1495 %if %{with_ted}
1496 %define _with_ted --enable-ted
1497 %else
1498 %define _with_ted --disable-ted
1499 %endif
1500
1501 %if %{with_thermal}
1502 %define _with_thermal --enable-thermal
1503 %else
1504 %define _with_thermal --disable-thermal
1505 %endif
1506
1507 %if %{with_threshold}
1508 %define _with_threshold --enable-threshold
1509 %else
1510 %define _with_threshold --disable-threshold
1511 %endif
1512
1513 %if %{with_tokyotyrant}
1514 %define _with_tokyotyrant --enable-tokyotyrant
1515 %else
1516 %define _with_tokyotyrant --disable-tokyotyrant
1517 %endif
1518
1519 %if %{with_turbostat}
1520 %define _with_turbostat --enable-turbostat
1521 %else
1522 %define _with_turbostat --disable-turbostat
1523 %endif
1524
1525 %if %{with_unixsock}
1526 %define _with_unixsock --enable-unixsock
1527 %else
1528 %define _with_unixsock --disable-unixsock
1529 %endif
1530
1531 %if %{with_uptime}
1532 %define _with_uptime --enable-uptime
1533 %else
1534 %define _with_uptime --disable-uptime
1535 %endif
1536
1537 %if %{with_users}
1538 %define _with_users --enable-users
1539 %else
1540 %define _with_users --disable-users
1541 %endif
1542
1543 %if %{with_uuid}
1544 %define _with_uuid --enable-uuid
1545 %else
1546 %define _with_uuid --disable-uuid
1547 %endif
1548
1549 %if %{with_varnish}
1550 %define _with_varnish --enable-varnish
1551 %else
1552 %define _with_varnish --disable-varnish
1553 %endif
1554
1555 %if %{with_vmem}
1556 %define _with_vmem --enable-vmem
1557 %else
1558 %define _with_vmem --disable-vmem
1559 %endif
1560
1561 %if %{with_vserver}
1562 %define _with_vserver --enable-vserver
1563 %else
1564 %define _with_vserver --disable-vserver
1565 %endif
1566
1567 %if %{with_wireless}
1568 %define _with_wireless --enable-wireless
1569 %else
1570 %define _with_wireless --disable-wireless
1571 %endif
1572
1573 %if %{with_write_graphite}
1574 %define _with_write_graphite --enable-write_graphite
1575 %else
1576 %define _with_write_graphite --disable-write_graphite
1577 %endif
1578
1579 %if %{with_write_http}
1580 %define _with_write_http --enable-write_http
1581 %else
1582 %define _with_write_http --disable-write_http
1583 %endif
1584
1585 %if %{with_write_kafka}
1586 %define _with_write_kafka --enable-write_kafka
1587 %else
1588 %define _with_write_kafka --disable-write_kafka
1589 %endif
1590
1591 %if %{with_write_log}
1592 %define _with_write_log --enable-write_log
1593 %else
1594 %define _with_write_log --disable-write_log
1595 %endif
1596
1597 %if %{with_write_mongodb}
1598 %define _with_write_mongodb --enable-write_mongodb
1599 %else
1600 %define _with_write_mongodb --disable-write_mongodb
1601 %endif
1602
1603 %if %{with_write_redis}
1604 %define _with_write_redis --enable-write_redis
1605 %else
1606 %define _with_write_redis --disable-write_redis
1607 %endif
1608
1609 %if %{with_write_riemann}
1610 %define _with_write_riemann --enable-write_riemann
1611 %else
1612 %define _with_write_riemann --disable-write_riemann
1613 %endif
1614
1615 %if %{with_write_sensu}
1616 %define _with_write_sensu --enable-write_sensu
1617 %else
1618 %define _with_write_sensu --disable-write_sensu
1619 %endif
1620
1621 %if %{with_write_tsdb}
1622 %define _with_write_tsdb --enable-write_tsdb
1623 %else
1624 %define _with_write_tsdb --disable-write_tsdb
1625 %endif
1626
1627 %if %{with_xencpu}
1628 %define _with_xencpu --enable-xencpu
1629 %else
1630 %define _with_xencpu --disable-xencpu
1631 %endif
1632
1633 %if %{with_xmms}
1634 %define _with_xmms --enable-xmms
1635 %else
1636 %define _with_xmms --disable-xmms
1637 %endif
1638
1639 %if %{with_zfs_arc}
1640 %define _with_zfs_arc --enable-zfs_arc
1641 %else
1642 %define _with_zfs_arc --disable-zfs_arc
1643 %endif
1644
1645 %if %{with_zone}
1646 %define _with_zone --enable-zone
1647 %else
1648 %define _with_zone --disable-zone
1649 %endif
1650
1651 %if %{with_zookeeper}
1652 %define _with_zookeeper --enable-zookeeper
1653 %else
1654 %define _with_zookeeper --disable-zookeeper
1655 %endif
1656
1657 %configure CFLAGS="%{optflags} -DLT_LAZY_OR_NOW=\"RTLD_LAZY|RTLD_GLOBAL\"" \
1658         --disable-static \
1659         --without-included-ltdl \
1660         --enable-all-plugins=yes \
1661         --enable-match_empty_counter \
1662         --enable-match_hashed \
1663         --enable-match_regex \
1664         --enable-match_timediff \
1665         --enable-match_value \
1666         --enable-target_notification \
1667         --enable-target_replace \
1668         --enable-target_scale \
1669         --enable-target_set \
1670         --enable-target_v5upgrade \
1671         %{?_with_aggregation} \
1672         %{?_with_amqp} \
1673         %{?_with_apache} \
1674         %{?_with_apcups} \
1675         %{?_with_apple_sensors} \
1676         %{?_with_aquaero} \
1677         %{?_with_ascent} \
1678         %{?_with_barometer} \
1679         %{?_with_battery} \
1680         %{?_with_bind} \
1681         %{?_with_ceph} \
1682         %{?_with_cgroups} \
1683         %{?_with_chrony} \
1684         %{?_with_conntrack} \
1685         %{?_with_contextswitch} \
1686         %{?_with_cpufreq} \
1687         %{?_with_cpu} \
1688         %{?_with_csv} \
1689         %{?_with_curl_json} \
1690         %{?_with_curl_xml} \
1691         %{?_with_curl} \
1692         %{?_with_dbi} \
1693         %{?_with_df} \
1694         %{?_with_disk} \
1695         %{?_with_dns} \
1696         %{?_with_drbd} \
1697         %{?_with_email} \
1698         %{?_with_entropy} \
1699         %{?_with_ethstat} \
1700         %{?_with_exec} \
1701         %{?_with_fhcount} \
1702         %{?_with_filecount} \
1703         %{?_with_fscache} \
1704         %{?_with_gmond} \
1705         %{?_with_hddtemp} \
1706         %{?_with_interface} \
1707         %{?_with_ipc} \
1708         %{?_with_ipmi} \
1709         %{?_with_iptables} \
1710         %{?_with_ipvs} \
1711         %{?_with_irq} \
1712         %{?_with_java} \
1713         %{?_with_load} \
1714         %{?_with_log_logstash} \
1715         %{?_with_logfile} \
1716         %{?_with_lpar} \
1717         %{?_with_lvm} \
1718         %{?_with_madwifi} \
1719         %{?_with_mbmon} \
1720         %{?_with_md} \
1721         %{?_with_memcachec} \
1722         %{?_with_memcached} \
1723         %{?_with_memory} \
1724         %{?_with_mic} \
1725         %{?_with_modbus} \
1726         %{?_with_mqtt} \
1727         %{?_with_multimeter} \
1728         %{?_with_mysql} \
1729         %{?_with_netapp} \
1730         %{?_with_netlink} \
1731         %{?_with_network} \
1732         %{?_with_nfs} \
1733         %{?_with_nginx} \
1734         %{?_with_notify_desktop} \
1735         %{?_with_notify_email} \
1736         %{?_with_notify_nagios} \
1737         %{?_with_ntpd} \
1738         %{?_with_numa} \
1739         %{?_with_nut} \
1740         %{?_with_olsrd} \
1741         %{?_with_onewire} \
1742         %{?_with_openldap} \
1743         %{?_with_openvpn} \
1744         %{?_with_oracle} \
1745         %{?_with_perl} \
1746         %{?_with_pf} \
1747         %{?_with_pinba} \
1748         %{?_with_ping} \
1749         %{?_with_postgresql} \
1750         %{?_with_powerdns} \
1751         %{?_with_processes} \
1752         %{?_with_protocols} \
1753         %{?_with_python} \
1754         %{?_with_redis} \
1755         %{?_with_routeros} \
1756         %{?_with_rrdcached} \
1757         %{?_with_rrdtool} \
1758         %{?_with_sensors} \
1759         %{?_with_serial} \
1760         %{?_with_sigrok} \
1761         %{?_with_smart} \
1762         %{?_with_snmp} \
1763         %{?_with_statsd} \
1764         %{?_with_swap} \
1765         %{?_with_syslog} \
1766         %{?_with_table} \
1767         %{?_with_tail_csv} \
1768         %{?_with_tail} \
1769         %{?_with_tape} \
1770         %{?_with_tcpconns} \
1771         %{?_with_teamspeak2} \
1772         %{?_with_ted} \
1773         %{?_with_thermal} \
1774         %{?_with_threshold} \
1775         %{?_with_tokyotyrant} \
1776         %{?_with_turbostat} \
1777         %{?_with_unixsock} \
1778         %{?_with_uptime} \
1779         %{?_with_users} \
1780         %{?_with_uuid} \
1781         %{?_with_varnish} \
1782         %{?_with_virt} \
1783         %{?_with_vmem} \
1784         %{?_with_vserver} \
1785         %{?_with_wireless}\
1786         %{?_with_write_graphite} \
1787         %{?_with_write_http} \
1788         %{?_with_write_http} \
1789         %{?_with_write_kafka} \
1790         %{?_with_write_log} \
1791         %{?_with_write_mongodb} \
1792         %{?_with_write_redis} \
1793         %{?_with_write_riemann} \
1794         %{?_with_write_sensu} \
1795         %{?_with_write_tsdb} \
1796         %{?_with_xencpu} \
1797         %{?_with_xmms} \
1798         %{?_with_zfs_arc} \
1799         %{?_with_zone} \
1800         %{?_with_zookeeper}
1801
1802
1803 %{__make} %{?_smp_mflags}
1804
1805
1806 %install
1807 rm -rf %{buildroot}
1808 %{__make} install DESTDIR=%{buildroot}
1809 %if 0%{?el7:1}
1810 %{__install} -Dp -m0644 contrib/systemd.collectd.service %{buildroot}%{_unitdir}/collectd.service
1811 %else
1812 %{__install} -Dp -m0755 contrib/redhat/init.d-collectd %{buildroot}%{_initrddir}/collectd
1813 %endif
1814 %{__install} -Dp -m0644 src/collectd.conf %{buildroot}%{_sysconfdir}/collectd.conf
1815 %{__install} -d %{buildroot}%{_sharedstatedir}/collectd/
1816 %{__install} -d %{buildroot}%{_sysconfdir}/collectd.d/
1817
1818 %{__mkdir} -p %{buildroot}%{_localstatedir}/www
1819 %{__mkdir} -p %{buildroot}/%{_sysconfdir}/httpd/conf.d
1820
1821 %{__mv} contrib/collection3 %{buildroot}%{_localstatedir}/www
1822 %{__mv} contrib/redhat/collection3.conf %{buildroot}/%{_sysconfdir}/httpd/conf.d/
1823
1824 %{__mv} contrib/php-collection %{buildroot}%{_localstatedir}/www
1825 %{__mv} contrib/redhat/php-collection.conf %{buildroot}/%{_sysconfdir}/httpd/conf.d/
1826
1827 ### Clean up docs
1828 find contrib/ -type f -exec %{__chmod} a-x {} \;
1829 # *.la files shouldn't be distributed.
1830 rm -f %{buildroot}/%{_libdir}/{collectd/,}*.la
1831
1832 # Remove Perl hidden .packlist files.
1833 find %{buildroot} -type f -name .packlist -delete
1834 # Remove Perl temporary file perllocal.pod
1835 find %{buildroot} -type f -name perllocal.pod -delete
1836
1837 %if ! %{with_java}
1838 rm -f %{buildroot}%{_datadir}/collectd/java/collectd-api.jar
1839 rm -f %{buildroot}%{_datadir}/collectd/java/generic-jmx.jar
1840 rm -f %{buildroot}%{_mandir}/man5/collectd-java.5*
1841 %endif
1842
1843 %if ! %{with_perl}
1844 rm -f %{buildroot}%{_mandir}/man5/collectd-perl.5*
1845 rm -f %{buildroot}%{_mandir}/man3/Collectd::Unixsock.3pm*
1846 rm -fr %{buildroot}/usr/lib/perl5/
1847 %endif
1848
1849 %if ! %{with_postgresql}
1850 rm -f %{buildroot}%{_datadir}/collectd/postgresql_default.conf
1851 %endif
1852
1853 %if ! %{with_python}
1854 rm -f %{buildroot}%{_mandir}/man5/collectd-python.5*
1855 %endif
1856
1857 %if ! %{with_snmp}
1858 rm -f %{buildroot}%{_mandir}/man5/collectd-snmp.5*
1859 %endif
1860
1861
1862 %clean
1863 rm -rf %{buildroot}
1864
1865 %pre
1866 %if 0%{?el7:1}
1867 # stop sysv-based instance before upgrading to systemd
1868 if [ $1 -eq 2 ] && [ -f /var/lock/subsys/collectd ]; then
1869         SYSTEMCTL_SKIP_REDIRECT=1 %{_initddir}/collectd stop >/dev/null 2>&1 || :
1870 fi
1871 %endif
1872
1873 %post
1874 %if 0%{?el7:1}
1875 if [ $1 -eq 2 ]; then
1876         /usr/bin/systemctl daemon-reload >/dev/null 2>&1 || :
1877 fi
1878 %systemd_post collectd.service
1879 %else
1880 /sbin/chkconfig --add collectd || :
1881 %endif
1882
1883 %preun
1884 %if 0%{?el7:1}
1885 %systemd_preun collectd.service
1886 %else
1887 # stop collectd only when uninstalling
1888 if [ $1 -eq 0 ]; then
1889         /sbin/service collectd stop >/dev/null 2>&1 || :
1890         /sbin/chkconfig --del collectd || :
1891 fi
1892 %endif
1893
1894 %postun
1895 %if 0%{?el7:1}
1896 %systemd_postun_with_restart collectd.service
1897 %else
1898 # restart collectd only when upgrading
1899 if [ $1 -eq 1 ]; then
1900         /sbin/service collectd condrestart >/dev/null 2>&1 || :
1901 fi
1902 %endif
1903
1904 %post -n libcollectdclient -p /sbin/ldconfig
1905 %postun -n libcollectdclient -p /sbin/ldconfig
1906
1907
1908 %files
1909 %doc AUTHORS COPYING ChangeLog README
1910 %config(noreplace) %{_sysconfdir}/collectd.conf
1911 %if 0%{?el7:1}
1912 %{_unitdir}/collectd.service
1913 %else
1914 %{_initrddir}/collectd
1915 %endif
1916 %{_sbindir}/collectd
1917 %{_sbindir}/collectdmon
1918 %{_datadir}/collectd/types.db
1919 %{_sharedstatedir}/collectd
1920 %{_mandir}/man1/collectd.1*
1921 %{_mandir}/man1/collectdmon.1*
1922 %{_mandir}/man5/collectd-email.5*
1923 %{_mandir}/man5/collectd-exec.5*
1924 %{_mandir}/man5/collectd-threshold.5*
1925 %{_mandir}/man5/collectd-unixsock.5*
1926 %{_mandir}/man5/collectd.conf.5*
1927 %{_mandir}/man5/types.db.5*
1928
1929 # all plugins bundled with the main collectd package
1930 %{_libdir}/%{name}/match_empty_counter.so
1931 %{_libdir}/%{name}/match_hashed.so
1932 %{_libdir}/%{name}/match_regex.so
1933 %{_libdir}/%{name}/match_timediff.so
1934 %{_libdir}/%{name}/match_value.so
1935 %{_libdir}/%{name}/target_notification.so
1936 %{_libdir}/%{name}/target_replace.so
1937 %{_libdir}/%{name}/target_scale.so
1938 %{_libdir}/%{name}/target_set.so
1939 %{_libdir}/%{name}/target_v5upgrade.so
1940
1941 %if %{with_aggregation}
1942 %{_libdir}/%{name}/aggregation.so
1943 %endif
1944 %if %{with_apcups}
1945 %{_libdir}/%{name}/apcups.so
1946 %endif
1947 %if %{with_battery}
1948 %{_libdir}/%{name}/battery.so
1949 %endif
1950 %if %{with_cgroups}
1951 %{_libdir}/%{name}/cgroups.so
1952 %endif
1953 %if %{with_conntrack}
1954 %{_libdir}/%{name}/conntrack.so
1955 %endif
1956 %if %{with_contextswitch}
1957 %{_libdir}/%{name}/contextswitch.so
1958 %endif
1959 %if %{with_cpu}
1960 %{_libdir}/%{name}/cpu.so
1961 %endif
1962 %if %{with_cpufreq}
1963 %{_libdir}/%{name}/cpufreq.so
1964 %endif
1965 %if %{with_csv}
1966 %{_libdir}/%{name}/csv.so
1967 %endif
1968 %if %{with_df}
1969 %{_libdir}/%{name}/df.so
1970 %endif
1971 %if %{with_drbd}
1972 %{_libdir}/%{name}/drbd.so
1973 %endif
1974 %if %{with_ethstat}
1975 %{_libdir}/%{name}/ethstat.so
1976 %endif
1977 %if %{with_entropy}
1978 %{_libdir}/%{name}/entropy.so
1979 %endif
1980 %if %{with_exec}
1981 %{_libdir}/%{name}/exec.so
1982 %endif
1983 %if %{with_fhcount}
1984 %{_libdir}/%{name}/fhcount.so
1985 %endif
1986 %if %{with_filecount}
1987 %{_libdir}/%{name}/filecount.so
1988 %endif
1989 %if %{with_fscache}
1990 %{_libdir}/%{name}/fscache.so
1991 %endif
1992 %if %{with_interface}
1993 %{_libdir}/%{name}/interface.so
1994 %endif
1995 %if %{with_ipc}
1996 %{_libdir}/%{name}/ipc.so
1997 %endif
1998 %if %{with_ipvs}
1999 %{_libdir}/%{name}/ipvs.so
2000 %endif
2001 %if %{with_irq}
2002 %{_libdir}/%{name}/irq.so
2003 %endif
2004 %if %{with_load}
2005 %{_libdir}/%{name}/load.so
2006 %endif
2007 %if %{with_logfile}
2008 %{_libdir}/%{name}/logfile.so
2009 %endif
2010 %if %{with_madwifi}
2011 %{_libdir}/%{name}/madwifi.so
2012 %endif
2013 %if %{with_mbmon}
2014 %{_libdir}/%{name}/mbmon.so
2015 %endif
2016 %if %{with_md}
2017 %{_libdir}/%{name}/md.so
2018 %endif
2019 %if %{with_memcached}
2020 %{_libdir}/%{name}/memcached.so
2021 %endif
2022 %if %{with_memory}
2023 %{_libdir}/%{name}/memory.so
2024 %endif
2025 %if %{with_multimeter}
2026 %{_libdir}/%{name}/multimeter.so
2027 %endif
2028 %if %{with_network}
2029 %{_libdir}/%{name}/network.so
2030 %endif
2031 %if %{with_nfs}
2032 %{_libdir}/%{name}/nfs.so
2033 %endif
2034 %if %{with_notify_nagios}
2035 %{_libdir}/%{name}/notify_nagios.so
2036 %endif
2037 %if %{with_ntpd}
2038 %{_libdir}/%{name}/ntpd.so
2039 %endif
2040 %if %{with_numa}
2041 %{_libdir}/%{name}/numa.so
2042 %endif
2043 %if %{with_openvpn}
2044 %{_libdir}/%{name}/openvpn.so
2045 %endif
2046 %if %{with_olsrd}
2047 %{_libdir}/%{name}/olsrd.so
2048 %endif
2049 %if %{with_powerdns}
2050 %{_libdir}/%{name}/powerdns.so
2051 %endif
2052 %if %{with_processes}
2053 %{_libdir}/%{name}/processes.so
2054 %endif
2055 %if %{with_protocols}
2056 %{_libdir}/%{name}/protocols.so
2057 %endif
2058 %if %{with_serial}
2059 %{_libdir}/%{name}/serial.so
2060 %endif
2061 %if %{with_statsd}
2062 %{_libdir}/%{name}/statsd.so
2063 %endif
2064 %if %{with_swap}
2065 %{_libdir}/%{name}/swap.so
2066 %endif
2067 %if %{with_syslog}
2068 %{_libdir}/%{name}/syslog.so
2069 %endif
2070 %if %{with_table}
2071 %{_libdir}/%{name}/table.so
2072 %endif
2073 %if %{with_tail}
2074 %{_libdir}/%{name}/tail.so
2075 %endif
2076 %if %{with_tail_csv}
2077 %{_libdir}/%{name}/tail_csv.so
2078 %endif
2079 %if %{with_tcpconns}
2080 %{_libdir}/%{name}/tcpconns.so
2081 %endif
2082 %if %{with_teamspeak2}
2083 %{_libdir}/%{name}/teamspeak2.so
2084 %endif
2085 %if %{with_ted}
2086 %{_libdir}/%{name}/ted.so
2087 %endif
2088 %if %{with_thermal}
2089 %{_libdir}/%{name}/thermal.so
2090 %endif
2091 %if %{with_threshold}
2092 %{_libdir}/%{name}/threshold.so
2093 %endif
2094 %if %{with_turbostat}
2095 %{_libdir}/%{name}/turbostat.so
2096 %endif
2097 %if %{with_unixsock}
2098 %{_libdir}/%{name}/unixsock.so
2099 %endif
2100 %if %{with_uptime}
2101 %{_libdir}/%{name}/uptime.so
2102 %endif
2103 %if %{with_users}
2104 %{_libdir}/%{name}/users.so
2105 %endif
2106 %if %{with_uuid}
2107 %{_libdir}/%{name}/uuid.so
2108 %endif
2109 %if %{with_vmem}
2110 %{_libdir}/%{name}/vmem.so
2111 %endif
2112 %if %{with_vserver}
2113 %{_libdir}/%{name}/vserver.so
2114 %endif
2115 %if %{with_wireless}
2116 %{_libdir}/%{name}/wireless.so
2117 %endif
2118 %if %{with_write_graphite}
2119 %{_libdir}/%{name}/write_graphite.so
2120 %endif
2121 %if %{with_write_log}
2122 %{_libdir}/%{name}/write_log.so
2123 %endif
2124 %if %{with_write_sensu}
2125 %{_libdir}/%{name}/write_sensu.so
2126 %endif
2127 %if %{with_write_tsdb}
2128 %{_libdir}/%{name}/write_tsdb.so
2129 %endif
2130 %if %{with_zfs_arc}
2131 %{_libdir}/%{name}/zfs_arc.so
2132 %endif
2133 %if %{with_zookeeper}
2134 %{_libdir}/%{name}/zookeeper.so
2135 %endif
2136
2137 %files -n libcollectdclient-devel
2138 %{_includedir}/collectd/client.h
2139 %{_includedir}/collectd/network.h
2140 %{_includedir}/collectd/network_buffer.h
2141 %{_includedir}/collectd/lcc_features.h
2142 %{_libdir}/pkgconfig/libcollectdclient.pc
2143 %{_libdir}/libcollectdclient.so
2144
2145 %files -n libcollectdclient
2146 %{_libdir}/libcollectdclient.so.*
2147
2148 %files -n collectd-utils
2149 %{_bindir}/collectd-nagios
2150 %{_bindir}/collectd-tg
2151 %{_bindir}/collectdctl
2152 %{_mandir}/man1/collectdctl.1*
2153 %{_mandir}/man1/collectd-nagios.1*
2154 %{_mandir}/man1/collectd-tg.1*
2155
2156 %if %{with_amqp}
2157 %files amqp
2158 %{_libdir}/%{name}/amqp.so
2159 %endif
2160
2161 %if %{with_apache}
2162 %files apache
2163 %{_libdir}/%{name}/apache.so
2164 %endif
2165
2166 %if %{with_aquaero}
2167 %files aquaero
2168 %{_libdir}/%{name}/aquaero.so
2169 %endif
2170
2171 %if %{with_ascent}
2172 %files ascent
2173 %{_libdir}/%{name}/ascent.so
2174 %endif
2175
2176 %if %{with_barometer}
2177 %files barometer
2178 %{_libdir}/%{name}/barometer.so
2179 %endif
2180
2181 %if %{with_bind}
2182 %files bind
2183 %{_libdir}/%{name}/bind.so
2184 %endif
2185
2186 %if %{with_ceph}
2187 %files ceph
2188 %{_libdir}/%{name}/ceph.so
2189 %endif
2190
2191 %if %{with_chrony}
2192 %files chrony
2193 %{_libdir}/%{name}/chrony.so
2194 %endif
2195
2196 %if %{with_curl}
2197 %files curl
2198 %{_libdir}/%{name}/curl.so
2199 %endif
2200
2201 %if %{with_curl_json}
2202 %files curl_json
2203 %{_libdir}/%{name}/curl_json.so
2204 %endif
2205
2206 %if %{with_curl_xml}
2207 %files curl_xml
2208 %{_libdir}/%{name}/curl_xml.so
2209 %endif
2210
2211 %if %{with_disk}
2212 %files disk
2213 %{_libdir}/%{name}/disk.so
2214 %endif
2215
2216 %if %{with_dns}
2217 %files dns
2218 %{_libdir}/%{name}/dns.so
2219 %endif
2220
2221 %if %{with_dbi}
2222 %files dbi
2223 %{_libdir}/%{name}/dbi.so
2224 %endif
2225
2226 %if %{with_email}
2227 %files email
2228 %{_libdir}/%{name}/email.so
2229 %endif
2230
2231 %if %{with_gmond}
2232 %files gmond
2233 %{_libdir}/%{name}/gmond.so
2234 %endif
2235
2236 %if %{with_hddtemp}
2237 %files hddtemp
2238 %{_libdir}/%{name}/hddtemp.so
2239 %endif
2240
2241 %if %{with_ipmi}
2242 %files ipmi
2243 %{_libdir}/%{name}/ipmi.so
2244 %endif
2245
2246 %if %{with_iptables}
2247 %files iptables
2248 %{_libdir}/%{name}/iptables.so
2249 %endif
2250
2251 %if %{with_java}
2252 %files java
2253 %{_datadir}/collectd/java/collectd-api.jar
2254 %{_datadir}/collectd/java/generic-jmx.jar
2255 %{_libdir}/%{name}/java.so
2256 %{_mandir}/man5/collectd-java.5*
2257 %endif
2258
2259 %if %{with_virt}
2260 %files virt
2261 %{_libdir}/%{name}/virt.so
2262 %endif
2263
2264 %if %{with_log_logstash}
2265 %files log_logstash
2266 %{_libdir}/%{name}/log_logstash.so
2267 %endif
2268
2269 %if %{with_lvm}
2270 %files lvm
2271 %{_libdir}/%{name}/lvm.so
2272 %endif
2273
2274 %if %{with_memcachec}
2275 %files memcachec
2276 %{_libdir}/%{name}/memcachec.so
2277 %endif
2278
2279 %if %{with_mic}
2280 %files mic
2281 %{_libdir}/%{name}/mic.so
2282 %endif
2283
2284 %if %{with_modbus}
2285 %files modbus
2286 %{_libdir}/%{name}/modbus.so
2287 %endif
2288
2289 %if %{with_mqtt}
2290 %files mqtt
2291 %{_libdir}/%{name}/mqtt.so
2292 %endif
2293
2294 %if %{with_mysql}
2295 %files mysql
2296 %{_libdir}/%{name}/mysql.so
2297 %endif
2298
2299 %if %{with_netlink}
2300 %files netlink
2301 %{_libdir}/%{name}/netlink.so
2302 %endif
2303
2304 %if %{with_nginx}
2305 %files nginx
2306 %{_libdir}/%{name}/nginx.so
2307 %endif
2308
2309 %if %{with_notify_desktop}
2310 %files notify_desktop
2311 %{_libdir}/%{name}/notify_desktop.so
2312 %endif
2313
2314 %if %{with_notify_email}
2315 %files notify_email
2316 %{_libdir}/%{name}/notify_email.so
2317 %endif
2318
2319 %if %{with_nut}
2320 %files nut
2321 %{_libdir}/%{name}/nut.so
2322 %endif
2323
2324 %if %{with_openldap}
2325 %files openldap
2326 %{_libdir}/%{name}/openldap.so
2327 %endif
2328
2329 %if %{with_perl}
2330 %files perl
2331 %{perl_vendorlib}/Collectd.pm
2332 %{perl_vendorlib}/Collectd/
2333 %{_mandir}/man3/Collectd::Unixsock.3pm*
2334 %{_mandir}/man5/collectd-perl.5*
2335 %{_libdir}/%{name}/perl.so
2336 %endif
2337
2338 %if %{with_pinba}
2339 %files pinba
2340 %{_libdir}/%{name}/pinba.so
2341 %endif
2342
2343 %if %{with_ping}
2344 %files ping
2345 %{_libdir}/%{name}/ping.so
2346 %endif
2347
2348 %if %{with_postgresql}
2349 %files postgresql
2350 %{_datadir}/collectd/postgresql_default.conf
2351 %{_libdir}/%{name}/postgresql.so
2352 %endif
2353
2354 %if %{with_python}
2355 %files python
2356 %{_mandir}/man5/collectd-python*
2357 %{_libdir}/%{name}/python.so
2358 %endif
2359
2360 %if %{with_redis}
2361 %files redis
2362 %{_libdir}/%{name}/redis.so
2363 %endif
2364
2365 %if %{with_rrdcached}
2366 %files rrdcached
2367 %{_libdir}/%{name}/rrdcached.so
2368 %endif
2369
2370 %if %{with_rrdtool}
2371 %files rrdtool
2372 %{_libdir}/%{name}/rrdtool.so
2373 %endif
2374
2375 %if %{with_sensors}
2376 %files sensors
2377 %{_libdir}/%{name}/sensors.so
2378 %endif
2379
2380 %if %{with_sigrok}
2381 %files sigrok
2382 %{_libdir}/%{name}/sigrok.so
2383 %endif
2384
2385 %if %{with_smart}
2386 %files smart
2387 %{_libdir}/%{name}/smart.so
2388 %endif
2389
2390 %if %{with_snmp}
2391 %files snmp
2392 %{_mandir}/man5/collectd-snmp.5*
2393 %{_libdir}/%{name}/snmp.so
2394 %endif
2395
2396 %if %{with_varnish}
2397 %files varnish
2398 %{_libdir}/%{name}/varnish.so
2399 %endif
2400
2401 %if %{with_write_http}
2402 %files write_http
2403 %{_libdir}/%{name}/write_http.so
2404 %endif
2405
2406 %if %{with_write_kafka}
2407 %files write_kafka
2408 %{_libdir}/%{name}/write_kafka.so
2409 %endif
2410
2411 %if %{with_write_redis}
2412 %files write_redis
2413 %{_libdir}/%{name}/write_redis.so
2414 %endif
2415
2416 %if %{with_write_riemann}
2417 %files write_riemann
2418 %{_libdir}/%{name}/write_riemann.so
2419 %endif
2420
2421 %if %{with_xencpu}
2422 %files xencpu
2423 %{_libdir}/%{name}/xencpu.so
2424 %endif
2425
2426 %if %{with_xmms}
2427 %files xmms
2428 %{_libdir}/%{name}/xmms.so
2429 %endif
2430
2431 %files collection3
2432 %{_localstatedir}/www/collection3
2433 %{_sysconfdir}/httpd/conf.d/collection3.conf
2434
2435 %files php-collection
2436 %{_localstatedir}/www/php-collection
2437 %{_sysconfdir}/httpd/conf.d/php-collection.conf
2438
2439 %files contrib
2440 %doc contrib/
2441
2442 %changelog
2443 * Sat Jun 04 2016 Ruben Kerkhof <ruben@rubenkerkhof.com> 5.5.1-1
2444 - New upstream version
2445 - New plugins enabled by default: chrony, mqtt, notify_nagios
2446 - New plugins disabled by default: zone, xencpu
2447
2448 * Wed May 27 2015 Marc Fournier <marc.fournier@camptocamp.com> 5.5.0-1
2449 - New upstream version
2450 - New plugins enabled by default: ceph, drbd, log_logstash, write_tsdb, smart,
2451   openldap, redis, write_redis, zookeeper, write_log, write_sensu, ipc,
2452   turbostat, fhcount
2453 - New plugins disabled by default: barometer, write_kafka
2454 - Enable zfs_arc, now supported on Linux
2455 - Install disk plugin in a dedicated package, as it depends on libudev
2456 - use systemd on EL7, sysvinit on EL6 & EL5
2457 - Install collectdctl, collectd-tg and collectd-nagios in collectd-utils.rpm
2458 - Add build-dependency on libcap-devel
2459
2460 * Mon Aug 19 2013 Marc Fournier <marc.fournier@camptocamp.com> 5.4.2-1
2461 - New upstream version
2462 - Build netlink plugin by default
2463 - Enable cgroups, lvm and statsd plugins
2464 - Enable (but don't build by default) mic, aquaero and sigrok plugins
2465 - Enable modbus, memcachec and xmms plugins on RHEL7
2466
2467 * Tue Aug 06 2013 Marc Fournier <marc.fournier@camptocamp.com> 5.3.1-1
2468 - New upstream version
2469 - Added RHEL5 support:
2470   * conditionally disable plugins not building on this platform
2471   * add/specify some build dependencies and options
2472   * replace some RPM macros not available on this platform
2473 - Removed duplicate --enable-aggregation
2474 - Added some comments & usage examples
2475 - Replaced a couple of "Buildrequires" by "BuildRequires"
2476 - Enabled modbus plugin on RHEL6
2477 - Enabled netlink plugin on RHEL6 and RHEL7
2478 - Allow perl plugin to build on RHEL5
2479 - Add support for RHEL7
2480 - Misc perl-related improvements:
2481   * prevent rpmbuild from extracting dependencies from files in /usr/share/doc
2482   * don't package collection3 and php-collection twice
2483   * keep perl scripts from contrib/ in collectd-contrib
2484
2485 * Wed Apr 10 2013 Marc Fournier <marc.fournier@camptocamp.com> 5.3.0-1
2486 - New upstream version
2487 - Enabled write_riemann plugin
2488 - Enabled tail_csv plugin
2489 - Installed collectd-tc manpage
2490
2491 * Fri Jan 11 2013 Marc Fournier <marc.fournier@camptocamp.com> 5.2.0-3
2492 - remove dependency on libstatgrab, which isn't required on linux
2493
2494 * Thu Jan 03 2013 Marc Fournier <marc.fournier@camptocamp.com> 5.2.0-2
2495 - collection3 and php-collection viewers are now in separate packages
2496
2497 * Fri Dec 21 2012 Marc Fournier <marc.fournier@camptocamp.com> 5.2.0-1
2498 - New upstream version
2499 - Enabled aggregation plugin
2500 - Installed collectd-tc
2501 - Added network.h and network_buffer.h to libcollectdclient-devel
2502 - Moved libxml2-devel and libcurl-devel BRs to relevant plugins sections
2503 - Moved libcollectdclient.so from libcollectdclient-devel to libcollectdclient
2504 - Added rrdcached and redis plugin descriptions
2505 - Mentioned new pf plugin in disabled plugins list
2506
2507 * Sun Nov 18 2012 Ruben Kerkhof <ruben@tilaa.nl> 5.1.0-3
2508 - Follow Fedora Packaging Guidelines in java subpackage
2509
2510 * Sat Nov 17 2012 Ruben Kerkhof <ruben@tilaa.nl> 5.1.0-2
2511 - Move perl stuff to perl_vendorlib
2512 - Replace hardcoded paths with macros
2513 - Remove unnecessary Requires
2514 - Removed .a and .la files
2515 - Some other small cleanups
2516
2517 * Fri Nov 16 2012 Marc Fournier <marc.fournier@camptocamp.com> 5.1.0-1
2518 - New upstream version
2519 - Changes to support 5.1.0
2520 - Enabled all buildable plugins based on libraries available on EL6 + EPEL
2521 - All plugins requiring external libraries are now shipped in separate
2522   packages.
2523 - No longer treat Java plugin as an exception, correctly set $JAVA_HOME during
2524   the build process + ensure build deps are installed.
2525 - Dropped per-plugin configuration files, as they tend to diverge from upstream
2526   defaults.
2527 - Moved perl stuff to /usr/share/perl5/
2528 - Don't alter Interval and ReadThreads by default, let the user change this
2529   himself.
2530 - Initscript improvements:
2531   * checks configuration before (re)starting, based on debian's initscript
2532   * use /etc/sysconfig instdead of /etc/default
2533   * include optional $ARGS in arguments passed to collectd.
2534 - Drop collection.cgi from main package, as it's been obsoleted by collection3
2535 - Moved contrib/ to its own package, to avoid cluttering the main package with
2536   non-essential stuff.
2537 - Replaced BuildPrereq by BuildRequires
2538
2539 * Mon Jan 03 2011 Monetate <jason.stelzer@monetate.com> 5.0.1
2540 - New upstream version
2541 - Changes to support 5.0.1
2542
2543 * Mon Jan 04 2010 Rackspace <stu.hood@rackspace.com> 4.9.0
2544 - New upstream version
2545 - Changes to support 4.9.0
2546 - Added support for Java/GenericJMX plugin
2547
2548 * Mon Mar 17 2008 RightScale <support@rightscale.com> 4.3.1
2549 - New upstream version
2550 - Changes to support 4.3.1
2551 - Added More Prereqs to support more plugins
2552 - Added support for perl plugin
2553
2554 * Mon Aug 06 2007 Kjell Randa <Kjell.Randa@broadpark.no> 4.0.6
2555 - New upstream version
2556
2557 * Wed Jul 25 2007 Kjell Randa <Kjell.Randa@broadpark.no> 4.0.5
2558 - New major releas
2559 - Changes to support 4.0.5
2560
2561 * Thu Jan 11 2007 Iain Lea <iain@bricbrac.de> 3.11.0-0
2562 - fixed spec file to build correctly on fedora core
2563 - added improved init.d script to work with chkconfig
2564 - added %%post and %%postun to call chkconfig automatically
2565
2566 * Sun Jul 09 2006 Florian octo Forster <octo@verplant.org> 3.10.0-1
2567 - New upstream version
2568
2569 * Sun Jun 25 2006 Florian octo Forster <octo@verplant.org> 3.9.4-1
2570 - New upstream version
2571
2572 * Thu Jun 01 2006 Florian octo Forster <octo@verplant.org> 3.9.3-1
2573 - New upstream version
2574
2575 * Tue May 09 2006 Florian octo Forster <octo@verplant.org> 3.9.2-1
2576 - New upstream version
2577
2578 * Tue May 09 2006 Florian octo Forster <octo@verplant.org> 3.8.5-1
2579 - New upstream version
2580
2581 * Fri Apr 21 2006 Florian octo Forster <octo@verplant.org> 3.9.1-1
2582 - New upstream version
2583
2584 * Fri Apr 14 2006 Florian octo Forster <octo@verplant.org> 3.9.0-1
2585 - New upstream version
2586 - Added the `apache' package.
2587
2588 * Tue Mar 14 2006 Florian octo Forster <octo@verplant.org> 3.8.2-1
2589 - New upstream version
2590
2591 * Mon Mar 13 2006 Florian octo Forster <octo@verplant.org> 3.8.1-1
2592 - New upstream version
2593
2594 * Thu Mar 09 2006 Florian octo Forster <octo@verplant.org> 3.8.0-1
2595 - New upstream version
2596
2597 * Sat Feb 18 2006 Florian octo Forster <octo@verplant.org> 3.7.2-1
2598 - Include `tape.so' so the build doesn't terminate because of missing files..
2599 - New upstream version
2600
2601 * Sat Feb 04 2006 Florian octo Forster <octo@verplant.org> 3.7.1-1
2602 - New upstream version
2603
2604 * Mon Jan 30 2006 Florian octo Forster <octo@verplant.org> 3.7.0-1
2605 - New upstream version
2606 - Removed the extra `hddtemp' package
2607
2608 * Tue Jan 24 2006 Florian octo Forster <octo@verplant.org> 3.6.2-1
2609 - New upstream version
2610
2611 * Fri Jan 20 2006 Florian octo Forster <octo@verplant.org> 3.6.1-1
2612 - New upstream version
2613
2614 * Fri Jan 20 2006 Florian octo Forster <octo@verplant.org> 3.6.0-1
2615 - New upstream version
2616 - Added config file, `collectd.conf(5)', `df.so'
2617 - Added package `collectd-mysql', dependency on `mysqlclient10 | mysql'
2618
2619 * Wed Dec 07 2005 Florian octo Forster <octo@verplant.org> 3.5.0-1
2620 - New upstream version
2621
2622 * Sat Nov 26 2005 Florian octo Forster <octo@verplant.org> 3.4.0-1
2623 - New upstream version
2624
2625 * Sat Nov 05 2005 Florian octo Forster <octo@verplant.org> 3.3.0-1
2626 - New upstream version
2627
2628 * Wed Oct 26 2005 Florian octo Forster <octo@verplant.org> 3.2.0-1
2629 - New upstream version
2630 - Added statement to remove the `*.la' files. This fixes a problem when
2631   `Unpackaged files terminate build' is in effect.
2632 - Added `processes.so*' to the main package
2633
2634 * Fri Oct 14 2005 Florian octo Forster <octo@verplant.org> 3.1.0-1
2635 - New upstream version
2636 - Added package `collectd-hddtemp'
2637
2638 * Fri Sep 30 2005 Florian octo Forster <octo@verplant.org> 3.0.0-1
2639 - New upstream version
2640 - Split the package into `collectd' and `collectd-sensors'
2641
2642 * Fri Sep 16 2005 Florian octo Forster <octo@verplant.org> 2.1.0-1
2643 - New upstream version
2644
2645 * Sat Sep 10 2005 Florian octo Forster <octo@verplant.org> 2.0.0-1
2646 - New upstream version
2647
2648 * Mon Aug 29 2005 Florian octo Forster <octo@verplant.org> 1.8.0-1
2649 - New upstream version
2650
2651 * Thu Aug 25 2005 Florian octo Forster <octo@verplant.org> 1.7.0-1
2652 - New upstream version
2653
2654 * Sun Aug 21 2005 Florian octo Forster <octo@verplant.org> 1.6.0-1
2655 - New upstream version
2656
2657 * Sun Jul 17 2005 Florian octo Forster <octo@verplant.org> 1.5.1-1
2658 - New upstream version
2659
2660 * Sun Jul 17 2005 Florian octo Forster <octo@verplant.org> 1.5-1
2661 - New upstream version
2662
2663 * Mon Jul 11 2005 Florian octo Forster <octo@verplant.org> 1.4.2-1
2664 - New upstream version
2665
2666 * Sat Jul 09 2005 Florian octo Forster <octo@verplant.org> 1.4-1
2667 - Built on RedHat 7.3