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