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