2 # Copyright (C) 2006 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
14 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.bz2
15 PKG_SOURCE_URL
:=http
://collectd.org
/files
/
16 PKG_MD5SUM
:=9e0e89150b1ff28fc0fdd8a198c9ac5e
20 include $(INCLUDE_DIR
)/package.mk
21 include $(INCLUDE_DIR
)/kernel.mk
23 define Package
/collectd
/common_info
26 TITLE
:=Lightweight system statistics collection daemon
27 URL
:=http
://verplant.org
/collectd
/
30 define Package
/collectd
/description
31 collectd is a small daemon which collects system information periodically
32 and provides mechanismns to store the values in a variety of ways.
35 define Package
/collectd
36 $(call Package
/collectd
/common_info
)
37 DEPENDS
:=+libgcc
+libpthread
+zlib
45 define Package
/collectd-mod-csv
46 $(call Package
/collectd
/common_info
)
47 TITLE
:=collectd
- csv output plugin
51 define Package
/collectd-mod-email
52 $(call Package
/collectd
/common_info
)
53 TITLE
:=collectd
- email output plugin
57 define Package
/collectd-mod-logfile
58 $(call Package
/collectd
/common_info
)
59 TITLE
:=collectd
- logfile output plugin
63 define Package
/collectd-mod-network
64 $(call Package
/collectd
/common_info
)
65 TITLE
:=collectd
- network input
/output plugin
69 define Package
/collectd-mod-syslog
70 $(call Package
/collectd
/common_info
)
71 TITLE
:=collectd
- syslog output plugin
75 define Package
/collectd-mod-unixsock
76 $(call Package
/collectd
/common_info
)
77 TITLE
:=collectd
- unix socket output plugin
85 define Package
/collectd-mod-apache
86 $(call Package
/collectd
/common_info
)
87 TITLE
:=collectd
- apache status input plugin
88 DEPENDS
:=collectd
+libcurl
91 define Package
/collectd-mod-apcups
92 $(call Package
/collectd
/common_info
)
93 TITLE
:=collectd
- apcups status input plugin
97 define Package
/collectd-mod-ascent
98 $(call Package
/collectd
/common_info
)
99 TITLE
:=collectd
- ascent status input plugin
100 DEPENDS
:=collectd
+libcurl
+libxml2
103 define Package
/collectd-mod-cpu
104 $(call Package
/collectd
/common_info
)
105 TITLE
:=collectd
- cpu input plugin
109 define Package
/collectd-mod-df
110 $(call Package
/collectd
/common_info
)
111 TITLE
:=collectd
- disk space input plugin
115 define Package
/collectd-mod-disk
116 $(call Package
/collectd
/common_info
)
117 TITLE
:=collectd
- disk usage
/timing input plugin
121 define Package
/collectd-mod-dns
122 $(call Package
/collectd
/common_info
)
123 TITLE
:=collectd
- dns traffic input plugin
124 DEPENDS
:=collectd
+libpcap
127 define Package
/collectd-mod-exec
128 $(call Package
/collectd
/common_info
)
129 TITLE
:=collectd
- process exec input plugin
133 define Package
/collectd-mod-interface
134 $(call Package
/collectd
/common_info
)
135 TITLE
:=collectd
- network interfaces input plugin
139 define Package
/collectd-mod-iptables
140 $(call Package
/collectd
/common_info
)
141 TITLE
:=collectd
- iptables status input plugin
142 DEPENDS
:=collectd
+iptables
145 define Package
/collectd-mod-irq
146 $(call Package
/collectd
/common_info
)
147 TITLE
:=collectd
- interrupt usage input plugin
151 define Package
/collectd-mod-load
152 $(call Package
/collectd
/common_info
)
153 TITLE
:=collectd
- system load input plugin
157 define Package
/collectd-mod-memory
158 $(call Package
/collectd
/common_info
)
159 TITLE
:=collectd
- physical memory usage input plugin
163 define Package
/collectd-mod-netlink
164 $(call Package
/collectd
/common_info
)
165 TITLE
:=collectd
- netlink input plugin
(uses iproute2
)
166 DEPENDS
:=collectd
+ip
169 define Package
/collectd-mod-nginx
170 $(call Package
/collectd
/common_info
)
171 TITLE
:=collectd
- nginx status input plugin
172 DEPENDS
:=collectd
+libcurl
175 define Package
/collectd-mod-ntpd
176 $(call Package
/collectd
/common_info
)
177 TITLE
:=collectd
- ntp daemon status input plugin
181 define Package
/collectd-mod-nut
182 $(call Package
/collectd
/common_info
)
183 TITLE
:=collectd
- UPS monitoring input plugin
184 DEPENDS
:=collectd @BROKEN
187 define Package
/collectd-mod-ping
188 $(call Package
/collectd
/common_info
)
189 TITLE
:=collectd
- ping status input plugin
193 define Package
/collectd-mod-powerdns
194 $(call Package
/collectd
/common_info
)
195 TITLE
:=collectd
- powerdns server status input plugin
199 define Package
/collectd-mod-processes
200 $(call Package
/collectd
/common_info
)
201 TITLE
:=collectd
- process status plugin
206 define Package
/collectd-mod-rrdtool1
207 $(call Package
/collectd
/common_info
)
208 TITLE
:=collectd
- rrdtool
1.0.x output plugin
209 DEPENDS
:=collectd
+librrd1
212 define Package
/collectd-mod-sensors
213 $(call Package
/collectd
/common_info
)
214 TITLE
:=collectd
- lm_sensors input plugin
215 DEPENDS
:=collectd
+libsensors @BROKEN
218 define Package
/collectd-mod-snmp
219 $(call Package
/collectd
/common_info
)
220 TITLE
:=collectd
- snmp input plugin
221 DEPENDS
:=collectd
+libnetsnmp
224 define Package
/collectd-mod-tail
225 $(call Package
/collectd
/common_info
)
226 TITLE
:=collectd
- tail input plugin
230 define Package
/collectd-mod-teamspeak2
231 $(call Package
/collectd
/common_info
)
232 TITLE
:=collectd
- teamspeak2 input plugin
236 define Package
/collectd-mod-tcpconns
237 $(call Package
/collectd
/common_info
)
238 TITLE
:=collectd
- tcp connection tracking input plugin
242 define Package
/collectd-mod-users
243 $(call Package
/collectd
/common_info
)
244 TITLE
:=collectd
- user login status input plugin
248 define Package
/collectd-mod-vmem
249 $(call Package
/collectd
/common_info
)
250 TITLE
:=collectd
- virtual memory usage input plugin
254 define Package
/collectd-mod-wireless
255 $(call Package
/collectd
/common_info
)
256 TITLE
:=collectd
- wireless status input plugin
261 define Package
/collectd
/conffiles
265 define Build
/Configure
269 -$(MAKE
) -C
$(PKG_BUILD_DIR
) clean
270 $(call Build
/Configure
/Default
, $(PKG_CONFIGURE_OPTS
))
271 $(call Build
/Compile
/Default
)
276 # Build PKG_CONFIGURE_OPTS
279 # common configure args
280 PKG_CONFIGURE_OPTS
:= \
283 --enable-getifaddrs \
284 --with-nan-emulation \
285 --with-fp-layout
=nothing
288 CPPFLAGS
="-I$(STAGING_DIR)/usr/include/libxml2 $$$$CPPFLAGS $(FPIC)" \
289 KERNEL_DIR
="$(LINUX_DIR)"
291 # list of permanently disabled plugins
292 disabled_plugins
:= apple_sensors battery cpufreq entropy hddtemp ipmi ipvs libvirt mbmon memcached \
293 multimeter mysql nfs perl serial swap tape uuid vserver xmms
295 # list of selectable plugins
296 selectable_plugins
:= apache apcups ascent cpu csv df disk dns email exec interface iptables irq load \
297 logfile memory netlink network nginx ntpd nut ping powerdns processes sensors \
298 snmp syslog tail tcpconns teamspeak2 unixsock users vmem wireless
300 # makro to enable / disable plugin
302 ifneq ($$(CONFIG_PACKAGE_collectd-mod-
$(1)),)
303 PKG_CONFIGURE_OPTS
+= --enable-
$(1)
305 PKG_CONFIGURE_OPTS
+= --disable-
$(1)
309 # build args for permanently disabled plugins
310 PKG_CONFIGURE_OPTS
+= $(foreach plugin
,$(disabled_plugins
),--disable-
$(plugin
))
312 # build args for selectable plugins
313 $(foreach plugin
,$(selectable_plugins
),$(eval
$(call enable_plugin
,$(plugin
))))
315 # exception: mod-netlink needs iproute2
316 ifneq ($(CONFIG_PACKAGE_collectd-mod-netlink
),)
317 PKG_CONFIGURE_OPTS
+= --with-libnetlink
=$(wildcard $(BUILD_DIR
)/iproute2-
*)
320 # exception: mod-rrdtool(1) needs rrdtool
321 ifneq ($(CONFIG_PACKAGE_collectd-mod-rrdtool1
),)
322 PKG_CONFIGURE_OPTS
+= --with-rrdtool
=$(wildcard $(BUILD_DIR
)/rrdtool-1.0.
*)
323 TARGET_LDFLAGS
:= -L
$(wildcard $(BUILD_DIR
)/rrdtool-1.0.
*)/src
/.libs
-lz
$(TARGET_LDFLAGS
)
326 TARGET_LDFLAGS
+= -lm
329 DESTDIR
="$(PKG_INSTALL_DIR)" \
332 define Package
/collectd
/install
333 $(INSTALL_DIR
) $(1)/usr
/sbin
334 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/collectd
$(1)/usr
/sbin
/
335 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
336 $(INSTALL_CONF
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/types.db
$(1)/usr
/lib
/collectd
/
337 $(INSTALL_DIR
) $(1)/etc
338 $(INSTALL_CONF
) .
/files
/collectd.conf
$(1)/etc
/
339 $(INSTALL_DIR
) $(1)/etc
/init.d
340 $(INSTALL_BIN
) .
/files
/collectd.init
$(1)/etc
/init.d
/collectd
343 define Package
/collectd-mod-apache
/install
344 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
345 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/apache.so
$(1)/usr
/lib
/collectd
/
348 define Package
/collectd-mod-apcups
/install
349 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
350 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/apcups.so
$(1)/usr
/lib
/collectd
/
353 define Package
/collectd-mod-ascent
/install
354 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
355 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/ascent.so
$(1)/usr
/lib
/collectd
/
358 define Package
/collectd-mod-cpu
/install
359 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
360 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/cpu.so
$(1)/usr
/lib
/collectd
/
363 define Package
/collectd-mod-csv
/install
364 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
365 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/csv.so
$(1)/usr
/lib
/collectd
/
368 define Package
/collectd-mod-df
/install
369 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
370 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/df.so
$(1)/usr
/lib
/collectd
/
373 define Package
/collectd-mod-disk
/install
374 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
375 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/disk.so
$(1)/usr
/lib
/collectd
/
378 define Package
/collectd-mod-dns
/install
379 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
380 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/dns.so
$(1)/usr
/lib
/collectd
/
383 define Package
/collectd-mod-email
/install
384 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
385 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/email.so
$(1)/usr
/lib
/collectd
/
388 define Package
/collectd-mod-exec
/install
389 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
390 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/exec.so
$(1)/usr
/lib
/collectd
/
393 define Package
/collectd-mod-interface
/install
394 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
395 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/interface.so
$(1)/usr
/lib
/collectd
/
398 define Package
/collectd-mod-iptables
/install
399 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
400 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/iptables.so
$(1)/usr
/lib
/collectd
/
403 define Package
/collectd-mod-irq
/install
404 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
405 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/irq.so
$(1)/usr
/lib
/collectd
/
408 define Package
/collectd-mod-load
/install
409 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
410 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/load.so
$(1)/usr
/lib
/collectd
/
413 define Package
/collectd-mod-logfile
/install
414 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
415 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/logfile.so
$(1)/usr
/lib
/collectd
/
418 define Package
/collectd-mod-memory
/install
419 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
420 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/memory.so
$(1)/usr
/lib
/collectd
/
423 define Package
/collectd-mod-netlink
/install
424 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
425 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/netlink.so
$(1)/usr
/lib
/collectd
/
428 define Package
/collectd-mod-network
/install
429 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
430 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/network.so
$(1)/usr
/lib
/collectd
/
433 define Package
/collectd-mod-nginx
/install
434 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
435 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/nginx.so
$(1)/usr
/lib
/collectd
/
438 define Package
/collectd-mod-ntpd
/install
439 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
440 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/ntpd.so
$(1)/usr
/lib
/collectd
/
443 define Package
/collectd-mod-nut
/install
444 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
445 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/nut.so
$(1)/usr
/lib
/collectd
/
448 define Package
/collectd-mod-ping
/install
449 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
450 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/ping.so
$(1)/usr
/lib
/collectd
/
453 define Package
/collectd-mod-powerdns
/install
454 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
455 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/powerdns.so
$(1)/usr
/lib
/collectd
/
458 define Package
/collectd-mod-processes
/install
459 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
460 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/processes.so
$(1)/usr
/lib
/collectd
/
463 define Package
/collectd-mod-rrdtool1
/install
464 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
465 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/rrdtool.so
$(1)/usr
/lib
/collectd
/
468 define Package
/collectd-mod-sensors
/install
469 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
470 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/sensors.so
$(1)/usr
/lib
/collectd
/
473 define Package
/collectd-mod-snmp
/install
474 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
475 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/snmp.so
$(1)/usr
/lib
/collectd
/
478 define Package
/collectd-mod-syslog
/install
479 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
480 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/syslog.so
$(1)/usr
/lib
/collectd
/
483 define Package
/collectd-mod-tail
/install
484 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
485 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/tail.so
$(1)/usr
/lib
/collectd
/
488 define Package
/collectd-mod-teamspeak2
/install
489 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
490 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/teamspeak2.so
$(1)/usr
/lib
/collectd
/
493 define Package
/collectd-mod-tcpconns
/install
494 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
495 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/tcpconns.so
$(1)/usr
/lib
/collectd
/
498 define Package
/collectd-mod-unixsock
/install
499 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
500 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/unixsock.so
$(1)/usr
/lib
/collectd
/
503 define Package
/collectd-mod-users
/install
504 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
505 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/users.so
$(1)/usr
/lib
/collectd
/
508 define Package
/collectd-mod-vmem
/install
509 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
510 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/vmem.so
$(1)/usr
/lib
/collectd
/
513 define Package
/collectd-mod-wireless
/install
514 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
515 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/wireless.so
$(1)/usr
/lib
/collectd
/
519 $(eval
$(call BuildPackage
,collectd
))
520 $(eval
$(call BuildPackage
,collectd-mod-apache
))
521 $(eval
$(call BuildPackage
,collectd-mod-apcups
))
522 $(eval
$(call BuildPackage
,collectd-mod-ascent
))
523 $(eval
$(call BuildPackage
,collectd-mod-cpu
))
524 $(eval
$(call BuildPackage
,collectd-mod-csv
))
525 $(eval
$(call BuildPackage
,collectd-mod-df
))
526 $(eval
$(call BuildPackage
,collectd-mod-disk
))
527 $(eval
$(call BuildPackage
,collectd-mod-dns
))
528 $(eval
$(call BuildPackage
,collectd-mod-email
))
529 $(eval
$(call BuildPackage
,collectd-mod-exec
))
530 $(eval
$(call BuildPackage
,collectd-mod-interface
))
531 $(eval
$(call BuildPackage
,collectd-mod-iptables
))
532 $(eval
$(call BuildPackage
,collectd-mod-irq
))
533 $(eval
$(call BuildPackage
,collectd-mod-load
))
534 $(eval
$(call BuildPackage
,collectd-mod-logfile
))
535 $(eval
$(call BuildPackage
,collectd-mod-memory
))
536 $(eval
$(call BuildPackage
,collectd-mod-netlink
))
537 $(eval
$(call BuildPackage
,collectd-mod-network
))
538 $(eval
$(call BuildPackage
,collectd-mod-nginx
))
539 $(eval
$(call BuildPackage
,collectd-mod-ntpd
))
540 $(eval
$(call BuildPackage
,collectd-mod-nut
))
541 $(eval
$(call BuildPackage
,collectd-mod-ping
))
542 $(eval
$(call BuildPackage
,collectd-mod-powerdns
))
543 $(eval
$(call BuildPackage
,collectd-mod-processes
))
544 $(eval
$(call BuildPackage
,collectd-mod-rrdtool1
))
545 $(eval
$(call BuildPackage
,collectd-mod-sensors
))
546 $(eval
$(call BuildPackage
,collectd-mod-snmp
))
547 $(eval
$(call BuildPackage
,collectd-mod-syslog
))
548 $(eval
$(call BuildPackage
,collectd-mod-tail
))
549 $(eval
$(call BuildPackage
,collectd-mod-teamspeak2
))
550 $(eval
$(call BuildPackage
,collectd-mod-tcpconns
))
551 $(eval
$(call BuildPackage
,collectd-mod-unixsock
))
552 $(eval
$(call BuildPackage
,collectd-mod-users
))
553 $(eval
$(call BuildPackage
,collectd-mod-vmem
))
554 $(eval
$(call BuildPackage
,collectd-mod-wireless
))