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
19 PKG_BUILD_DEPENDS
:=+libxml2
+libnetsnmp
+libcurl
+librrd1
+zlib
21 include $(INCLUDE_DIR
)/package.mk
22 include $(INCLUDE_DIR
)/kernel.mk
24 define Package
/collectd
/common_info
27 TITLE
:=Lightweight system statistics collection daemon
28 URL
:=http
://verplant.org
/collectd
/
31 define Package
/collectd
/description
32 collectd is a small daemon which collects system information periodically
33 and provides mechanismns to store the values in a variety of ways.
36 define Package
/collectd
37 $(call Package
/collectd
/common_info
)
38 DEPENDS
:=+libgcc
+libpthread
+libz
46 define Package
/collectd-mod-csv
47 $(call Package
/collectd
/common_info
)
48 TITLE
:=collectd
- csv output plugin
52 define Package
/collectd-mod-email
53 $(call Package
/collectd
/common_info
)
54 TITLE
:=collectd
- email output plugin
58 define Package
/collectd-mod-logfile
59 $(call Package
/collectd
/common_info
)
60 TITLE
:=collectd
- logfile output plugin
64 define Package
/collectd-mod-network
65 $(call Package
/collectd
/common_info
)
66 TITLE
:=collectd
- network input
/output plugin
70 define Package
/collectd-mod-syslog
71 $(call Package
/collectd
/common_info
)
72 TITLE
:=collectd
- syslog output plugin
76 define Package
/collectd-mod-unixsock
77 $(call Package
/collectd
/common_info
)
78 TITLE
:=collectd
- unix socket output plugin
86 define Package
/collectd-mod-apache
87 $(call Package
/collectd
/common_info
)
88 TITLE
:=collectd
- apache status input plugin
89 DEPENDS
:=collectd
+libcurl
92 define Package
/collectd-mod-apcups
93 $(call Package
/collectd
/common_info
)
94 TITLE
:=collectd
- apcups status input plugin
98 define Package
/collectd-mod-ascent
99 $(call Package
/collectd
/common_info
)
100 TITLE
:=collectd
- ascent status input plugin
101 DEPENDS
:=collectd
+libcurl
+libxml2
104 define Package
/collectd-mod-cpu
105 $(call Package
/collectd
/common_info
)
106 TITLE
:=collectd
- cpu input plugin
110 define Package
/collectd-mod-df
111 $(call Package
/collectd
/common_info
)
112 TITLE
:=collectd
- disk space input plugin
116 define Package
/collectd-mod-disk
117 $(call Package
/collectd
/common_info
)
118 TITLE
:=collectd
- disk usage
/timing input plugin
122 define Package
/collectd-mod-dns
123 $(call Package
/collectd
/common_info
)
124 TITLE
:=collectd
- dns traffic input plugin
125 DEPENDS
:=collectd
+libpcap
128 define Package
/collectd-mod-exec
129 $(call Package
/collectd
/common_info
)
130 TITLE
:=collectd
- process exec input plugin
134 define Package
/collectd-mod-interface
135 $(call Package
/collectd
/common_info
)
136 TITLE
:=collectd
- network interfaces input plugin
140 define Package
/collectd-mod-iptables
141 $(call Package
/collectd
/common_info
)
142 TITLE
:=collectd
- iptables status input plugin
143 DEPENDS
:=collectd
+iptables
146 define Package
/collectd-mod-irq
147 $(call Package
/collectd
/common_info
)
148 TITLE
:=collectd
- interrupt usage input plugin
152 define Package
/collectd-mod-load
153 $(call Package
/collectd
/common_info
)
154 TITLE
:=collectd
- system load input plugin
158 define Package
/collectd-mod-netlink
159 $(call Package
/collectd
/common_info
)
160 TITLE
:=collectd
- netlink input plugin
(uses iproute2
)
161 DEPENDS
:=collectd
+ip
164 define Package
/collectd-mod-nginx
165 $(call Package
/collectd
/common_info
)
166 TITLE
:=collectd
- nginx status input plugin
167 DEPENDS
:=collectd
+libcurl
170 define Package
/collectd-mod-ntpd
171 $(call Package
/collectd
/common_info
)
172 TITLE
:=collectd
- ntp daemon status input plugin
176 define Package
/collectd-mod-nut
177 $(call Package
/collectd
/common_info
)
178 TITLE
:=collectd
- UPS monitoring input plugin
179 DEPENDS
:=collectd @BROKEN
182 define Package
/collectd-mod-ping
183 $(call Package
/collectd
/common_info
)
184 TITLE
:=collectd
- ping status input plugin
188 define Package
/collectd-mod-powerdns
189 $(call Package
/collectd
/common_info
)
190 TITLE
:=collectd
- powerdns server status input plugin
194 define Package
/collectd-mod-processes
195 $(call Package
/collectd
/common_info
)
196 TITLE
:=collectd
- process status plugin
201 define Package
/collectd-mod-rrdtool1
202 $(call Package
/collectd
/common_info
)
203 TITLE
:=collectd
- rrdtool
1.0.x output plugin
204 DEPENDS
:=collectd
+librrd1
207 define Package
/collectd-mod-sensors
208 $(call Package
/collectd
/common_info
)
209 TITLE
:=collectd
- lm_sensors input plugin
210 DEPENDS
:=collectd
+libsensors @BROKEN
213 define Package
/collectd-mod-snmp
214 $(call Package
/collectd
/common_info
)
215 TITLE
:=collectd
- snmp input plugin
216 DEPENDS
:=collectd
+libnetsnmp
219 define Package
/collectd-mod-tail
220 $(call Package
/collectd
/common_info
)
221 TITLE
:=collectd
- tail input plugin
225 define Package
/collectd-mod-teamspeak2
226 $(call Package
/collectd
/common_info
)
227 TITLE
:=collectd
- teamspeak2 input plugin
231 define Package
/collectd-mod-tcpconns
232 $(call Package
/collectd
/common_info
)
233 TITLE
:=collectd
- tcp connection tracking input plugin
237 define Package
/collectd-mod-users
238 $(call Package
/collectd
/common_info
)
239 TITLE
:=collectd
- user login status input plugin
243 define Package
/collectd-mod-vmem
244 $(call Package
/collectd
/common_info
)
245 TITLE
:=collectd
- virtual memory usage input plugin
249 define Package
/collectd-mod-wireless
250 $(call Package
/collectd
/common_info
)
251 TITLE
:=collectd
- wireless status input plugin
256 define Package
/collectd
/conffiles
260 define Build
/Configure
264 -$(MAKE
) -C
$(PKG_BUILD_DIR
) clean
265 $(call Build
/Configure
/Default
, $(PKG_CONFIGURE_OPTS
))
266 $(call Build
/Compile
/Default
)
271 # Build PKG_CONFIGURE_OPTS
274 # common configure args
275 PKG_CONFIGURE_OPTS
:= \
278 --enable-getifaddrs \
279 --with-nan-emulation \
280 --with-fp-layout
=nothing
283 CPPFLAGS
="-I$(STAGING_DIR)/usr/include/libxml2 $$$$CPPFLAGS $(FPIC)" \
284 KERNEL_DIR
="$(LINUX_DIR)"
286 # list of permanently disabled plugins
287 disabled_plugins
:= apple_sensors battery cpufreq entropy hddtemp ipmi ipvs libvirt mbmon memcached \
288 multimeter mysql nfs perl serial swap tape uuid vserver xmms
290 # list of selectable plugins
291 selectable_plugins
:= apache apcups ascent cpu csv df disk dns email exec interface iptables irq load \
292 logfile memory netlink network nginx ntpd nut ping powerdns processes sensors \
293 snmp syslog tail tcpconns teamspeak2 unixsock users vmem wireless
295 # makro to enable / disable plugin
297 ifneq ($$(CONFIG_PACKAGE_collectd-mod-
$(1)),)
298 PKG_CONFIGURE_OPTS
+= --enable-
$(1)
300 PKG_CONFIGURE_OPTS
+= --disable-
$(1)
304 # build args for permanently disabled plugins
305 PKG_CONFIGURE_OPTS
+= $(foreach plugin
,$(disabled_plugins
),--disable-
$(plugin
))
307 # build args for selectable plugins
308 $(foreach plugin
,$(selectable_plugins
),$(eval
$(call enable_plugin
,$(plugin
))))
310 # exception: mod-netlink needs iproute2
311 ifneq ($(CONFIG_PACKAGE_collectd-mod-netlink
),)
312 PKG_CONFIGURE_OPTS
+= --with-libnetlink
=$(wildcard $(BUILD_DIR
)/iproute2-
*)
315 # exception: mod-rrdtool(1) needs rrdtool
316 ifneq ($(CONFIG_PACKAGE_collectd-mod-rrdtool1
),)
317 PKG_CONFIGURE_OPTS
+= --with-rrdtool
=$(wildcard $(BUILD_DIR
)/rrdtool-1.0.
*)
318 TARGET_LDFLAGS
:= -L
$(wildcard $(BUILD_DIR
)/rrdtool-1.0.
*)/src
/.libs
-lz
-lm
$(TARGET_LDFLAGS
)
323 DESTDIR
="$(PKG_INSTALL_DIR)" \
326 define Package
/collectd
/install
327 $(INSTALL_DIR
) $(1)/usr
/sbin
328 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/collectd
$(1)/usr
/sbin
/
329 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
330 $(INSTALL_CONF
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/types.db
$(1)/usr
/lib
/collectd
/
331 $(INSTALL_DIR
) $(1)/etc
332 $(INSTALL_CONF
) .
/files
/collectd.conf
$(1)/etc
/
333 $(INSTALL_DIR
) $(1)/etc
/init.d
334 $(INSTALL_BIN
) .
/files
/collectd.init
$(1)/etc
/init.d
/collectd
337 define Package
/collectd-mod-apache
/install
338 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
339 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/apache.so
$(1)/usr
/lib
/collectd
/
342 define Package
/collectd-mod-apcups
/install
343 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
344 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/apcups.so
$(1)/usr
/lib
/collectd
/
347 define Package
/collectd-mod-ascent
/install
348 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
349 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/ascent.so
$(1)/usr
/lib
/collectd
/
352 define Package
/collectd-mod-cpu
/install
353 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
354 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/cpu.so
$(1)/usr
/lib
/collectd
/
357 define Package
/collectd-mod-csv
/install
358 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
359 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/csv.so
$(1)/usr
/lib
/collectd
/
362 define Package
/collectd-mod-df
/install
363 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
364 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/df.so
$(1)/usr
/lib
/collectd
/
367 define Package
/collectd-mod-disk
/install
368 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
369 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/disk.so
$(1)/usr
/lib
/collectd
/
372 define Package
/collectd-mod-dns
/install
373 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
374 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/dns.so
$(1)/usr
/lib
/collectd
/
377 define Package
/collectd-mod-email
/install
378 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
379 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/email.so
$(1)/usr
/lib
/collectd
/
382 define Package
/collectd-mod-exec
/install
383 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
384 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/exec.so
$(1)/usr
/lib
/collectd
/
387 define Package
/collectd-mod-interface
/install
388 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
389 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/interface.so
$(1)/usr
/lib
/collectd
/
392 define Package
/collectd-mod-iptables
/install
393 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
394 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/iptables.so
$(1)/usr
/lib
/collectd
/
397 define Package
/collectd-mod-irq
/install
398 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
399 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/irq.so
$(1)/usr
/lib
/collectd
/
402 define Package
/collectd-mod-load
/install
403 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
404 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/load.so
$(1)/usr
/lib
/collectd
/
407 define Package
/collectd-mod-logfile
/install
408 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
409 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/logfile.so
$(1)/usr
/lib
/collectd
/
412 define Package
/collectd-mod-netlink
/install
413 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
414 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/netlink.so
$(1)/usr
/lib
/collectd
/
417 define Package
/collectd-mod-network
/install
418 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
419 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/network.so
$(1)/usr
/lib
/collectd
/
422 define Package
/collectd-mod-nginx
/install
423 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
424 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/nginx.so
$(1)/usr
/lib
/collectd
/
427 define Package
/collectd-mod-ntpd
/install
428 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
429 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/ntpd.so
$(1)/usr
/lib
/collectd
/
432 define Package
/collectd-mod-nut
/install
433 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
434 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/nut.so
$(1)/usr
/lib
/collectd
/
437 define Package
/collectd-mod-ping
/install
438 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
439 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/ping.so
$(1)/usr
/lib
/collectd
/
442 define Package
/collectd-mod-powerdns
/install
443 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
444 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/powerdns.so
$(1)/usr
/lib
/collectd
/
447 define Package
/collectd-mod-processes
/install
448 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
449 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/processes.so
$(1)/usr
/lib
/collectd
/
452 define Package
/collectd-mod-rrdtool1
/install
453 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
454 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/rrdtool.so
$(1)/usr
/lib
/collectd
/
457 define Package
/collectd-mod-sensors
/install
458 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
459 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/sensors.so
$(1)/usr
/lib
/collectd
/
462 define Package
/collectd-mod-snmp
/install
463 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
464 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/snmp.so
$(1)/usr
/lib
/collectd
/
467 define Package
/collectd-mod-syslog
/install
468 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
469 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/syslog.so
$(1)/usr
/lib
/collectd
/
472 define Package
/collectd-mod-tail
/install
473 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
474 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/tail.so
$(1)/usr
/lib
/collectd
/
477 define Package
/collectd-mod-teamspeak2
/install
478 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
479 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/teamspeak2.so
$(1)/usr
/lib
/collectd
/
482 define Package
/collectd-mod-tcpconns
/install
483 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
484 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/tcpconns.so
$(1)/usr
/lib
/collectd
/
487 define Package
/collectd-mod-unixsock
/install
488 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
489 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/unixsock.so
$(1)/usr
/lib
/collectd
/
492 define Package
/collectd-mod-users
/install
493 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
494 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/users.so
$(1)/usr
/lib
/collectd
/
497 define Package
/collectd-mod-vmem
/install
498 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
499 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/vmem.so
$(1)/usr
/lib
/collectd
/
502 define Package
/collectd-mod-wireless
/install
503 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
504 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/wireless.so
$(1)/usr
/lib
/collectd
/
508 $(eval
$(call BuildPackage
,collectd
))
509 $(eval
$(call BuildPackage
,collectd-mod-apache
))
510 $(eval
$(call BuildPackage
,collectd-mod-apcups
))
511 $(eval
$(call BuildPackage
,collectd-mod-ascent
))
512 $(eval
$(call BuildPackage
,collectd-mod-cpu
))
513 $(eval
$(call BuildPackage
,collectd-mod-csv
))
514 $(eval
$(call BuildPackage
,collectd-mod-df
))
515 $(eval
$(call BuildPackage
,collectd-mod-disk
))
516 $(eval
$(call BuildPackage
,collectd-mod-dns
))
517 $(eval
$(call BuildPackage
,collectd-mod-email
))
518 $(eval
$(call BuildPackage
,collectd-mod-exec
))
519 $(eval
$(call BuildPackage
,collectd-mod-interface
))
520 $(eval
$(call BuildPackage
,collectd-mod-iptables
))
521 $(eval
$(call BuildPackage
,collectd-mod-irq
))
522 $(eval
$(call BuildPackage
,collectd-mod-load
))
523 $(eval
$(call BuildPackage
,collectd-mod-logfile
))
524 $(eval
$(call BuildPackage
,collectd-mod-netlink
))
525 $(eval
$(call BuildPackage
,collectd-mod-network
))
526 $(eval
$(call BuildPackage
,collectd-mod-nginx
))
527 $(eval
$(call BuildPackage
,collectd-mod-ntpd
))
528 $(eval
$(call BuildPackage
,collectd-mod-nut
))
529 $(eval
$(call BuildPackage
,collectd-mod-ping
))
530 $(eval
$(call BuildPackage
,collectd-mod-powerdns
))
531 $(eval
$(call BuildPackage
,collectd-mod-processes
))
532 $(eval
$(call BuildPackage
,collectd-mod-rrdtool1
))
533 $(eval
$(call BuildPackage
,collectd-mod-sensors
))
534 $(eval
$(call BuildPackage
,collectd-mod-snmp
))
535 $(eval
$(call BuildPackage
,collectd-mod-syslog
))
536 $(eval
$(call BuildPackage
,collectd-mod-tail
))
537 $(eval
$(call BuildPackage
,collectd-mod-teamspeak2
))
538 $(eval
$(call BuildPackage
,collectd-mod-tcpconns
))
539 $(eval
$(call BuildPackage
,collectd-mod-unixsock
))
540 $(eval
$(call BuildPackage
,collectd-mod-users
))
541 $(eval
$(call BuildPackage
,collectd-mod-vmem
))
542 $(eval
$(call BuildPackage
,collectd-mod-wireless
))