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.
9 include $(TOPDIR
)/rules.mk
15 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.bz2
16 PKG_SOURCE_URL
:=http
://collectd.org
/files
/
17 PKG_MD5SUM
:=9e0e89150b1ff28fc0fdd8a198c9ac5e
20 PKG_BUILD_DEPENDS
:=+libxml2
+libnetsnmp
+libcurl
+librrd1
22 include $(INCLUDE_DIR
)/package.mk
23 include $(INCLUDE_DIR
)/kernel.mk
25 define Package
/collectd
/common_info
28 TITLE
:=Lightweight system statistics collection daemon
29 URL
:=http
://verplant.org
/collectd
/
32 define Package
/collectd
/description
33 collectd is a small daemon which collects system information periodically
34 and provides mechanismns to store the values in a variety of ways.
37 define Package
/collectd
38 $(call Package
/collectd
/common_info
)
39 DEPENDS
:=+libgcc
+libpthread
47 define Package
/collectd-mod-csv
48 $(call Package
/collectd
/common_info
)
49 TITLE
:=collectd
- csv output plugin
53 define Package
/collectd-mod-email
54 $(call Package
/collectd
/common_info
)
55 TITLE
:=collectd
- email output plugin
59 define Package
/collectd-mod-logfile
60 $(call Package
/collectd
/common_info
)
61 TITLE
:=collectd
- logfile output plugin
65 define Package
/collectd-mod-network
66 $(call Package
/collectd
/common_info
)
67 TITLE
:=collectd
- network input
/output plugin
71 define Package
/collectd-mod-syslog
72 $(call Package
/collectd
/common_info
)
73 TITLE
:=collectd
- syslog output plugin
77 define Package
/collectd-mod-unixsock
78 $(call Package
/collectd
/common_info
)
79 TITLE
:=collectd
- unix socket output plugin
87 define Package
/collectd-mod-apache
88 $(call Package
/collectd
/common_info
)
89 TITLE
:=collectd
- apache status input plugin
90 DEPENDS
:=collectd
+libcurl
93 define Package
/collectd-mod-apcups
94 $(call Package
/collectd
/common_info
)
95 TITLE
:=collectd
- apcups status input plugin
99 define Package
/collectd-mod-ascent
100 $(call Package
/collectd
/common_info
)
101 TITLE
:=collectd
- ascent status input plugin
102 DEPENDS
:=collectd
+libcurl
+libxml2
105 define Package
/collectd-mod-cpu
106 $(call Package
/collectd
/common_info
)
107 TITLE
:=collectd
- cpu input plugin
111 define Package
/collectd-mod-df
112 $(call Package
/collectd
/common_info
)
113 TITLE
:=collectd
- disk space input plugin
117 define Package
/collectd-mod-disk
118 $(call Package
/collectd
/common_info
)
119 TITLE
:=collectd
- disk usage
/timing input plugin
123 define Package
/collectd-mod-dns
124 $(call Package
/collectd
/common_info
)
125 TITLE
:=collectd
- dns traffic input plugin
126 DEPENDS
:=collectd
+libpcap
129 define Package
/collectd-mod-exec
130 $(call Package
/collectd
/common_info
)
131 TITLE
:=collectd
- process exec input plugin
135 define Package
/collectd-mod-interface
136 $(call Package
/collectd
/common_info
)
137 TITLE
:=collectd
- network interfaces input plugin
141 define Package
/collectd-mod-iptables
142 $(call Package
/collectd
/common_info
)
143 TITLE
:=collectd
- iptables status input plugin
144 DEPENDS
:=collectd
+iptables
147 define Package
/collectd-mod-irq
148 $(call Package
/collectd
/common_info
)
149 TITLE
:=collectd
- interrupt usage input plugin
153 define Package
/collectd-mod-load
154 $(call Package
/collectd
/common_info
)
155 TITLE
:=collectd
- system load input plugin
159 define Package
/collectd-mod-netlink
160 $(call Package
/collectd
/common_info
)
161 TITLE
:=collectd
- netlink input plugin
(uses iproute2
)
162 DEPENDS
:=collectd
+ip
165 define Package
/collectd-mod-nginx
166 $(call Package
/collectd
/common_info
)
167 TITLE
:=collectd
- nginx status input plugin
168 DEPENDS
:=collectd
+libcurl
171 define Package
/collectd-mod-ntpd
172 $(call Package
/collectd
/common_info
)
173 TITLE
:=collectd
- ntp daemon status input plugin
177 define Package
/collectd-mod-nut
178 $(call Package
/collectd
/common_info
)
179 TITLE
:=collectd
- UPS monitoring input plugin
180 DEPENDS
:=collectd @BROKEN
183 define Package
/collectd-mod-ping
184 $(call Package
/collectd
/common_info
)
185 TITLE
:=collectd
- ping status input plugin
189 define Package
/collectd-mod-powerdns
190 $(call Package
/collectd
/common_info
)
191 TITLE
:=collectd
- powerdns server status input plugin
195 define Package
/collectd-mod-processes
196 $(call Package
/collectd
/common_info
)
197 TITLE
:=collectd
- process status plugin
202 define Package
/collectd-mod-rrdtool1
203 $(call Package
/collectd
/common_info
)
204 TITLE
:=collectd
- rrdtool
1.0.x output plugin
205 DEPENDS
:=collectd
+librrd1
208 define Package
/collectd-mod-sensors
209 $(call Package
/collectd
/common_info
)
210 TITLE
:=collectd
- lm_sensors input plugin
211 DEPENDS
:=collectd
+libsensors @BROKEN
214 define Package
/collectd-mod-snmp
215 $(call Package
/collectd
/common_info
)
216 TITLE
:=collectd
- snmp input plugin
217 DEPENDS
:=collectd
+libnetsnmp
220 define Package
/collectd-mod-tail
221 $(call Package
/collectd
/common_info
)
222 TITLE
:=collectd
- tail input plugin
226 define Package
/collectd-mod-teamspeak2
227 $(call Package
/collectd
/common_info
)
228 TITLE
:=collectd
- teamspeak2 input plugin
232 define Package
/collectd-mod-tcpconns
233 $(call Package
/collectd
/common_info
)
234 TITLE
:=collectd
- tcp connection tracking input plugin
238 define Package
/collectd-mod-users
239 $(call Package
/collectd
/common_info
)
240 TITLE
:=collectd
- user login status input plugin
244 define Package
/collectd-mod-vmem
245 $(call Package
/collectd
/common_info
)
246 TITLE
:=collectd
- virtual memory usage input plugin
250 define Package
/collectd-mod-wireless
251 $(call Package
/collectd
/common_info
)
252 TITLE
:=collectd
- wireless status input plugin
257 define Package
/collectd
/conffiles
261 define Build
/Configure
265 -$(MAKE
) -C
$(PKG_BUILD_DIR
) clean
266 $(call Build
/Configure
/Default
, $(PKG_CONFIGURE_OPTS
))
267 $(call Build
/Compile
/Default
)
272 # Build PKG_CONFIGURE_OPTS
275 # common configure args
276 PKG_CONFIGURE_OPTS
:= \
279 --enable-getifaddrs \
280 --with-nan-emulation \
281 --with-fp-layout
=nothing
284 CPPFLAGS
="-I$(STAGING_DIR)/usr/include/libxml2 $$$$CPPFLAGS $(FPIC)" \
285 KERNEL_DIR
="$(LINUX_DIR)"
287 # list of permanently disabled plugins
288 disabled_plugins
:= apple_sensors battery cpufreq entropy hddtemp ipmi ipvs libvirt mbmon memcached \
289 multimeter mysql nfs perl serial swap tape uuid vserver xmms
291 # list of selectable plugins
292 selectable_plugins
:= apache apcups ascent cpu csv df disk dns email exec interface iptables irq load \
293 logfile memory netlink network nginx ntpd nut ping powerdns processes sensors \
294 snmp syslog tail tcpconns teamspeak2 unixsock users vmem wireless
296 # makro to enable / disable plugin
298 ifneq ($$(CONFIG_PACKAGE_collectd-mod-
$(1)),)
299 PKG_CONFIGURE_OPTS
+= --enable-
$(1)
301 PKG_CONFIGURE_OPTS
+= --disable-
$(1)
305 # build args for permanently disabled plugins
306 PKG_CONFIGURE_OPTS
+= $(foreach plugin
,$(disabled_plugins
),--disable-
$(plugin
))
308 # build args for selectable plugins
309 $(foreach plugin
,$(selectable_plugins
),$(eval
$(call enable_plugin
,$(plugin
))))
311 # exception: mod-netlink needs iproute2
312 ifneq ($(CONFIG_PACKAGE_collectd-mod-netlink
),)
313 PKG_CONFIGURE_OPTS
+= --with-libnetlink
=$(wildcard $(BUILD_DIR
)/iproute2-
*)
316 # exception: mod-rrdtool(1) needs rrdtool
317 ifneq ($(CONFIG_PACKAGE_collectd-mod-rrdtool1
),)
318 PKG_CONFIGURE_OPTS
+= --with-rrdtool
=$(wildcard $(BUILD_DIR
)/rrdtool-1.0.
*)
319 TARGET_LDFLAGS
:= -L
$(wildcard $(BUILD_DIR
)/rrdtool-1.0.
*)/src
/.libs
-lz
$(TARGET_LDFLAGS
)
324 DESTDIR
="$(PKG_INSTALL_DIR)" \
327 define Package
/collectd
/install
328 $(INSTALL_DIR
) $(1)/usr
/sbin
329 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/collectd
$(1)/usr
/sbin
/
330 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
331 $(INSTALL_CONF
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/types.db
$(1)/usr
/lib
/collectd
/
332 $(INSTALL_DIR
) $(1)/etc
333 $(INSTALL_CONF
) .
/files
/collectd.conf
$(1)/etc
/
334 $(INSTALL_DIR
) $(1)/etc
/init.d
335 $(INSTALL_BIN
) .
/files
/collectd.init
$(1)/etc
/init.d
/collectd
338 define Package
/collectd-mod-apache
/install
339 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
340 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/apache.so
$(1)/usr
/lib
/collectd
/
343 define Package
/collectd-mod-apcups
/install
344 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
345 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/apcups.so
$(1)/usr
/lib
/collectd
/
348 define Package
/collectd-mod-ascent
/install
349 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
350 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/ascent.so
$(1)/usr
/lib
/collectd
/
353 define Package
/collectd-mod-cpu
/install
354 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
355 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/cpu.so
$(1)/usr
/lib
/collectd
/
358 define Package
/collectd-mod-csv
/install
359 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
360 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/csv.so
$(1)/usr
/lib
/collectd
/
363 define Package
/collectd-mod-df
/install
364 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
365 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/df.so
$(1)/usr
/lib
/collectd
/
368 define Package
/collectd-mod-disk
/install
369 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
370 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/disk.so
$(1)/usr
/lib
/collectd
/
373 define Package
/collectd-mod-dns
/install
374 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
375 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/dns.so
$(1)/usr
/lib
/collectd
/
378 define Package
/collectd-mod-email
/install
379 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
380 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/email.so
$(1)/usr
/lib
/collectd
/
383 define Package
/collectd-mod-exec
/install
384 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
385 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/exec.so
$(1)/usr
/lib
/collectd
/
388 define Package
/collectd-mod-interface
/install
389 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
390 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/interface.so
$(1)/usr
/lib
/collectd
/
393 define Package
/collectd-mod-iptables
/install
394 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
395 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/iptables.so
$(1)/usr
/lib
/collectd
/
398 define Package
/collectd-mod-irq
/install
399 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
400 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/irq.so
$(1)/usr
/lib
/collectd
/
403 define Package
/collectd-mod-load
/install
404 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
405 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/load.so
$(1)/usr
/lib
/collectd
/
408 define Package
/collectd-mod-logfile
/install
409 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
410 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/logfile.so
$(1)/usr
/lib
/collectd
/
413 define Package
/collectd-mod-netlink
/install
414 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
415 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/netlink.so
$(1)/usr
/lib
/collectd
/
418 define Package
/collectd-mod-network
/install
419 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
420 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/network.so
$(1)/usr
/lib
/collectd
/
423 define Package
/collectd-mod-nginx
/install
424 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
425 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/nginx.so
$(1)/usr
/lib
/collectd
/
428 define Package
/collectd-mod-ntpd
/install
429 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
430 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/ntpd.so
$(1)/usr
/lib
/collectd
/
433 define Package
/collectd-mod-nut
/install
434 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
435 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/nut.so
$(1)/usr
/lib
/collectd
/
438 define Package
/collectd-mod-ping
/install
439 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
440 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/ping.so
$(1)/usr
/lib
/collectd
/
443 define Package
/collectd-mod-powerdns
/install
444 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
445 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/powerdns.so
$(1)/usr
/lib
/collectd
/
448 define Package
/collectd-mod-processes
/install
449 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
450 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/processes.so
$(1)/usr
/lib
/collectd
/
453 define Package
/collectd-mod-rrdtool1
/install
454 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
455 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/rrdtool.so
$(1)/usr
/lib
/collectd
/
458 define Package
/collectd-mod-sensors
/install
459 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
460 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/sensors.so
$(1)/usr
/lib
/collectd
/
463 define Package
/collectd-mod-snmp
/install
464 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
465 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/snmp.so
$(1)/usr
/lib
/collectd
/
468 define Package
/collectd-mod-syslog
/install
469 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
470 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/syslog.so
$(1)/usr
/lib
/collectd
/
473 define Package
/collectd-mod-tail
/install
474 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
475 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/tail.so
$(1)/usr
/lib
/collectd
/
478 define Package
/collectd-mod-teamspeak2
/install
479 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
480 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/teamspeak2.so
$(1)/usr
/lib
/collectd
/
483 define Package
/collectd-mod-tcpconns
/install
484 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
485 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/tcpconns.so
$(1)/usr
/lib
/collectd
/
488 define Package
/collectd-mod-unixsock
/install
489 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
490 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/unixsock.so
$(1)/usr
/lib
/collectd
/
493 define Package
/collectd-mod-users
/install
494 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
495 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/users.so
$(1)/usr
/lib
/collectd
/
498 define Package
/collectd-mod-vmem
/install
499 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
500 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/vmem.so
$(1)/usr
/lib
/collectd
/
503 define Package
/collectd-mod-wireless
/install
504 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
505 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/wireless.so
$(1)/usr
/lib
/collectd
/
509 $(eval
$(call BuildPackage
,collectd
))
510 $(eval
$(call BuildPackage
,collectd-mod-apache
))
511 $(eval
$(call BuildPackage
,collectd-mod-apcups
))
512 $(eval
$(call BuildPackage
,collectd-mod-ascent
))
513 $(eval
$(call BuildPackage
,collectd-mod-cpu
))
514 $(eval
$(call BuildPackage
,collectd-mod-csv
))
515 $(eval
$(call BuildPackage
,collectd-mod-df
))
516 $(eval
$(call BuildPackage
,collectd-mod-disk
))
517 $(eval
$(call BuildPackage
,collectd-mod-dns
))
518 $(eval
$(call BuildPackage
,collectd-mod-email
))
519 $(eval
$(call BuildPackage
,collectd-mod-exec
))
520 $(eval
$(call BuildPackage
,collectd-mod-interface
))
521 $(eval
$(call BuildPackage
,collectd-mod-iptables
))
522 $(eval
$(call BuildPackage
,collectd-mod-irq
))
523 $(eval
$(call BuildPackage
,collectd-mod-load
))
524 $(eval
$(call BuildPackage
,collectd-mod-logfile
))
525 $(eval
$(call BuildPackage
,collectd-mod-netlink
))
526 $(eval
$(call BuildPackage
,collectd-mod-network
))
527 $(eval
$(call BuildPackage
,collectd-mod-nginx
))
528 $(eval
$(call BuildPackage
,collectd-mod-ntpd
))
529 $(eval
$(call BuildPackage
,collectd-mod-nut
))
530 $(eval
$(call BuildPackage
,collectd-mod-ping
))
531 $(eval
$(call BuildPackage
,collectd-mod-powerdns
))
532 $(eval
$(call BuildPackage
,collectd-mod-processes
))
533 $(eval
$(call BuildPackage
,collectd-mod-rrdtool1
))
534 $(eval
$(call BuildPackage
,collectd-mod-sensors
))
535 $(eval
$(call BuildPackage
,collectd-mod-snmp
))
536 $(eval
$(call BuildPackage
,collectd-mod-syslog
))
537 $(eval
$(call BuildPackage
,collectd-mod-tail
))
538 $(eval
$(call BuildPackage
,collectd-mod-teamspeak2
))
539 $(eval
$(call BuildPackage
,collectd-mod-tcpconns
))
540 $(eval
$(call BuildPackage
,collectd-mod-unixsock
))
541 $(eval
$(call BuildPackage
,collectd-mod-users
))
542 $(eval
$(call BuildPackage
,collectd-mod-vmem
))
543 $(eval
$(call BuildPackage
,collectd-mod-wireless
))