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
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
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" \
285 # list of permanently disabled plugins
286 disabled_plugins
:= apple_sensors battery cpufreq entropy hddtemp ipmi ipvs libvirt mbmon memcached \
287 multimeter mysql nfs perl serial swap tape uuid vserver xmms
289 # list of selectable plugins
290 selectable_plugins
:= apache apcups ascent cpu csv df disk dns email exec interface iptables irq load \
291 logfile memory netlink network nginx ntpd nut ping powerdns processes sensors \
292 snmp syslog tail tcpconns teamspeak2 unixsock users vmem wireless
294 # makro to enable / disable plugin
296 ifneq ($$(CONFIG_PACKAGE_collectd-mod-
$(1)),)
297 PKG_CONFIGURE_OPTS
+= --enable-
$(1)
299 PKG_CONFIGURE_OPTS
+= --disable-
$(1)
303 # build args for permanently disabled plugins
304 PKG_CONFIGURE_OPTS
+= $(foreach plugin
,$(disabled_plugins
),--disable-
$(plugin
))
306 # build args for selectable plugins
307 $(foreach plugin
,$(selectable_plugins
),$(eval
$(call enable_plugin
,$(plugin
))))
309 # exception: mod-netlink needs iproute2
310 ifneq ($(CONFIG_PACKAGE_collectd-mod-netlink
),)
311 PKG_CONFIGURE_OPTS
+= --with-libnetlink
=$(wildcard $(BUILD_DIR
)/iproute2-
*)
314 # exception: mod-rrdtool(1) needs rrdtool
315 ifneq ($(CONFIG_PACKAGE_collectd-mod-rrdtool1
),)
316 PKG_CONFIGURE_OPTS
+= --with-rrdtool
=$(wildcard $(BUILD_DIR
)/rrdtool-1.0.
*)
317 TARGET_LDFLAGS
:= -L
$(wildcard $(BUILD_DIR
)/rrdtool-1.0.
*)/src
/.libs
-lz
$(TARGET_LDFLAGS
)
322 DESTDIR
="$(PKG_INSTALL_DIR)" \
325 define Package
/collectd
/install
326 $(INSTALL_DIR
) $(1)/usr
/sbin
327 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/collectd
$(1)/usr
/sbin
/
328 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
329 $(INSTALL_CONF
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/types.db
$(1)/usr
/lib
/collectd
/
330 $(INSTALL_DIR
) $(1)/etc
331 $(INSTALL_CONF
) .
/files
/collectd.conf
$(1)/etc
/
332 $(INSTALL_DIR
) $(1)/etc
/init.d
333 $(INSTALL_BIN
) .
/files
/collectd.init
$(1)/etc
/init.d
/collectd
336 define Package
/collectd-mod-apache
/install
337 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
338 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/apache.so
$(1)/usr
/lib
/collectd
/
341 define Package
/collectd-mod-apcups
/install
342 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
343 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/apcups.so
$(1)/usr
/lib
/collectd
/
346 define Package
/collectd-mod-ascent
/install
347 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
348 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/ascent.so
$(1)/usr
/lib
/collectd
/
351 define Package
/collectd-mod-cpu
/install
352 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
353 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/cpu.so
$(1)/usr
/lib
/collectd
/
356 define Package
/collectd-mod-csv
/install
357 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
358 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/csv.so
$(1)/usr
/lib
/collectd
/
361 define Package
/collectd-mod-df
/install
362 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
363 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/df.so
$(1)/usr
/lib
/collectd
/
366 define Package
/collectd-mod-disk
/install
367 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
368 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/disk.so
$(1)/usr
/lib
/collectd
/
371 define Package
/collectd-mod-dns
/install
372 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
373 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/dns.so
$(1)/usr
/lib
/collectd
/
376 define Package
/collectd-mod-email
/install
377 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
378 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/email.so
$(1)/usr
/lib
/collectd
/
381 define Package
/collectd-mod-exec
/install
382 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
383 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/exec.so
$(1)/usr
/lib
/collectd
/
386 define Package
/collectd-mod-interface
/install
387 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
388 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/interface.so
$(1)/usr
/lib
/collectd
/
391 define Package
/collectd-mod-iptables
/install
392 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
393 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/iptables.so
$(1)/usr
/lib
/collectd
/
396 define Package
/collectd-mod-irq
/install
397 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
398 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/irq.so
$(1)/usr
/lib
/collectd
/
401 define Package
/collectd-mod-load
/install
402 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
403 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/load.so
$(1)/usr
/lib
/collectd
/
406 define Package
/collectd-mod-logfile
/install
407 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
408 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/logfile.so
$(1)/usr
/lib
/collectd
/
411 define Package
/collectd-mod-netlink
/install
412 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
413 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/netlink.so
$(1)/usr
/lib
/collectd
/
416 define Package
/collectd-mod-network
/install
417 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
418 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/network.so
$(1)/usr
/lib
/collectd
/
421 define Package
/collectd-mod-nginx
/install
422 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
423 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/nginx.so
$(1)/usr
/lib
/collectd
/
426 define Package
/collectd-mod-ntpd
/install
427 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
428 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/ntpd.so
$(1)/usr
/lib
/collectd
/
431 define Package
/collectd-mod-nut
/install
432 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
433 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/nut.so
$(1)/usr
/lib
/collectd
/
436 define Package
/collectd-mod-ping
/install
437 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
438 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/ping.so
$(1)/usr
/lib
/collectd
/
441 define Package
/collectd-mod-powerdns
/install
442 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
443 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/powerdns.so
$(1)/usr
/lib
/collectd
/
446 define Package
/collectd-mod-processes
/install
447 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
448 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/processes.so
$(1)/usr
/lib
/collectd
/
451 define Package
/collectd-mod-rrdtool1
/install
452 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
453 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/rrdtool.so
$(1)/usr
/lib
/collectd
/
456 define Package
/collectd-mod-sensors
/install
457 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
458 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/sensors.so
$(1)/usr
/lib
/collectd
/
461 define Package
/collectd-mod-snmp
/install
462 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
463 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/snmp.so
$(1)/usr
/lib
/collectd
/
466 define Package
/collectd-mod-syslog
/install
467 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
468 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/syslog.so
$(1)/usr
/lib
/collectd
/
471 define Package
/collectd-mod-tail
/install
472 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
473 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/tail.so
$(1)/usr
/lib
/collectd
/
476 define Package
/collectd-mod-teamspeak2
/install
477 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
478 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/teamspeak2.so
$(1)/usr
/lib
/collectd
/
481 define Package
/collectd-mod-tcpconns
/install
482 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
483 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/tcpconns.so
$(1)/usr
/lib
/collectd
/
486 define Package
/collectd-mod-unixsock
/install
487 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
488 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/unixsock.so
$(1)/usr
/lib
/collectd
/
491 define Package
/collectd-mod-users
/install
492 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
493 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/users.so
$(1)/usr
/lib
/collectd
/
496 define Package
/collectd-mod-vmem
/install
497 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
498 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/vmem.so
$(1)/usr
/lib
/collectd
/
501 define Package
/collectd-mod-wireless
/install
502 $(INSTALL_DIR
) $(1)/usr
/lib
/collectd
503 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/wireless.so
$(1)/usr
/lib
/collectd
/
507 $(eval
$(call BuildPackage
,collectd
))
508 $(eval
$(call BuildPackage
,collectd-mod-apache
))
509 $(eval
$(call BuildPackage
,collectd-mod-apcups
))
510 $(eval
$(call BuildPackage
,collectd-mod-ascent
))
511 $(eval
$(call BuildPackage
,collectd-mod-cpu
))
512 $(eval
$(call BuildPackage
,collectd-mod-csv
))
513 $(eval
$(call BuildPackage
,collectd-mod-df
))
514 $(eval
$(call BuildPackage
,collectd-mod-disk
))
515 $(eval
$(call BuildPackage
,collectd-mod-dns
))
516 $(eval
$(call BuildPackage
,collectd-mod-email
))
517 $(eval
$(call BuildPackage
,collectd-mod-exec
))
518 $(eval
$(call BuildPackage
,collectd-mod-interface
))
519 $(eval
$(call BuildPackage
,collectd-mod-iptables
))
520 $(eval
$(call BuildPackage
,collectd-mod-irq
))
521 $(eval
$(call BuildPackage
,collectd-mod-load
))
522 $(eval
$(call BuildPackage
,collectd-mod-logfile
))
523 $(eval
$(call BuildPackage
,collectd-mod-netlink
))
524 $(eval
$(call BuildPackage
,collectd-mod-network
))
525 $(eval
$(call BuildPackage
,collectd-mod-nginx
))
526 $(eval
$(call BuildPackage
,collectd-mod-ntpd
))
527 $(eval
$(call BuildPackage
,collectd-mod-nut
))
528 $(eval
$(call BuildPackage
,collectd-mod-ping
))
529 $(eval
$(call BuildPackage
,collectd-mod-powerdns
))
530 $(eval
$(call BuildPackage
,collectd-mod-processes
))
531 $(eval
$(call BuildPackage
,collectd-mod-rrdtool1
))
532 $(eval
$(call BuildPackage
,collectd-mod-sensors
))
533 $(eval
$(call BuildPackage
,collectd-mod-snmp
))
534 $(eval
$(call BuildPackage
,collectd-mod-syslog
))
535 $(eval
$(call BuildPackage
,collectd-mod-tail
))
536 $(eval
$(call BuildPackage
,collectd-mod-teamspeak2
))
537 $(eval
$(call BuildPackage
,collectd-mod-tcpconns
))
538 $(eval
$(call BuildPackage
,collectd-mod-unixsock
))
539 $(eval
$(call BuildPackage
,collectd-mod-users
))
540 $(eval
$(call BuildPackage
,collectd-mod-vmem
))
541 $(eval
$(call BuildPackage
,collectd-mod-wireless
))