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