2 # Copyright (C) 2006-2010 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
:=85d9d8d0a1327782661e3c89800aa70e
22 COLLECTD_PLUGINS_DISABLED
:= \
59 COLLECTD_PLUGINS_SELECTED
:= \
115 PKG_CONFIG_DEPENDS
:= \
116 $(patsubst %,CONFIG_PACKAGE_collectd-mod-
%,$(subst _
,-,$(COLLECTD_PLUGINS_SELECTED
))) \
118 include $(INCLUDE_DIR
)/package.mk
119 include $(INCLUDE_DIR
)/kernel.mk
121 define Package
/collectd
/Default
124 TITLE
:=Lightweight system statistics collection daemon
125 URL
:=http
://verplant.org
/collectd
/
128 define Package
/collectd
129 $(call Package
/collectd
/Default
)
130 DEPENDS
:= +libpthread
+zlib
+libltdl
134 define Package
/collectd
/description
135 collectd is a small daemon which collects system information periodically
136 and provides mechanismns to store the values in a variety of ways.
139 ifneq ($(CONFIG_avr32
),)
140 TARGET_CFLAGS
+= -fsigned-char
143 # common configure args
147 --enable-getifaddrs \
148 --with-nan-emulation \
151 CFLAGS
="$$$$CFLAGS $(FPIC)" \
152 LDFLAGS
="$$$$LDFLAGS -lm -lz" \
153 KERNEL_DIR
="$(LINUX_DIR)" \
157 $(if
$(CONFIG_PACKAGE_collectd-mod-
$(subst _
,-,$(m
))),--enable-
$(m
),--disable-
$(m
)) \
161 $(call CONFIGURE_PLUGIN
,$(COLLECTD_PLUGINS_SELECTED
)) \
162 $(call CONFIGURE_PLUGIN
,$(COLLECTD_PLUGINS_DISABLED
)) \
164 # exception: mod-ascent needs libxml2
165 ifneq ($(CONFIG_PACKAGE_collectd-mod-ascent
),)
167 CPPFLAGS
="$$$$CPPFLAGS -I$(STAGING_DIR)/usr/include/libxml2"
170 ifneq ($(CONFIG_BIG_ENDIAN
),)
171 CONFIGURE_ARGS
+= --with-fp-layout
=endianflip
173 CONFIGURE_ARGS
+= --with-fp-layout
=nothing
176 ifneq ($(CONFIG_PACKAGE_collectd-mod-postgresql
),)
177 CONFIGURE_ARGS
+= --with-libpq
="$(STAGING_DIR)/usr/"
180 ifneq ($(CONFIG_PACKAGE_collectd-mod-mysql
),)
181 CONFIGURE_ARGS
+= --with-libmysql
="$(STAGING_DIR)/usr/"
184 # exception: mod-netlink needs libnetlink from iproute
185 ifneq ($(CONFIG_PACKAGE_collectd-mod-netlink
),)
186 CONFIGURE_ARGS
+= --with-libnetlink
="$(STAGING_DIR)/usr"
189 # exception: mod-onewire needs libow-capi
190 ifneq ($(CONFIG_PACKAGE_collectd-mod-onewire
),)
191 CONFIGURE_ARGS
+= --with-libowcapi
="$(STAGING_DIR)/usr"
194 # exception: mod-rrdtool needs rrdtool-1.0.x
195 ifneq ($(CONFIG_PACKAGE_collectd-mod-rrdtool
),)
196 CONFIGURE_ARGS
+= --with-librrd
="$(STAGING_DIR)/usr/lib/rrdtool-1.0"
199 define Package
/collectd
/conffiles
203 #define Build/Configure
204 # (cd $(PKG_BUILD_DIR); \
205 # autoreconf -v --install || exit 1 \
207 # $(call Build/Configure/Default)
210 define Package
/collectd
/install
211 $(INSTALL_DIR
) $(1)/usr
/sbin
212 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/collectd
$(1)/usr
/sbin
/
213 $(INSTALL_DIR
) $(1)/usr
/share
/collectd
214 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/usr
/share
/collectd
/types.db
$(1)/usr
/share
/collectd
/
215 $(INSTALL_DIR
) $(1)/etc
216 $(INSTALL_CONF
) .
/files
/collectd.conf
$(1)/etc
/
217 $(INSTALL_DIR
) $(1)/etc
/init.d
218 $(INSTALL_BIN
) .
/files
/collectd.init
$(1)/etc
/init.d
/collectd
222 # 2: plugin title/description
224 # 4: extra dependency
227 PKG_CONFIG_DEPENDS
+= CONFIG_PACKAGE_collectd-mod-
$(1)
229 define Package
/collectd-mod-
$(1)
230 $$(call Package
/collectd
/Default
)
232 DEPENDS
:= collectd
$(4)
235 define Package
/collectd-mod-
$(1)/install
236 $(INSTALL_DIR
) $$(1)/usr
/lib
/collectd
239 $(PKG_INSTALL_DIR
)/usr
/lib
/collectd
/$$$$$$$${m}.so \
240 $$(1)/usr
/lib
/collectd
/ ; \
244 $$(eval
$$(call BuildPackage
,collectd-mod-
$(1)))
248 $(eval
$(call BuildPackage
,collectd
))
250 #$(eval $(call BuildPlugin,NAME,DESCRIPTION,FILES,DEPENDENCIES))
251 $(eval
$(call BuildPlugin
,apache
,apache status input
,apache
,+PACKAGE_collectd-mod-apache
:libcurl
))
252 $(eval
$(call BuildPlugin
,apcups
,apcups status input
,apcups
,))
253 $(eval
$(call BuildPlugin
,ascent
,ascent status input
,ascent
,+PACKAGE_collectd-mod-ascent
:libcurl
+PACKAGE_collectd-mod-ascent
:libxml2
))
254 $(eval
$(call BuildPlugin
,bind
,BIND server
/zone input
,bind
,+PACKAGE_collectd-mod-bind
:libcurl
+PACKAGE_collectd-mod-bind
:libxml2
))
255 $(eval
$(call BuildPlugin
,conntrack
,connection tracking table size input
,conntrack
,))
256 $(eval
$(call BuildPlugin
,contextswitch
,context switch input
,contextswitch
,))
257 $(eval
$(call BuildPlugin
,cpu
,CPU input
,cpu
,))
258 $(eval
$(call BuildPlugin
,csv
,CSV output
,csv
,))
259 $(eval
$(call BuildPlugin
,curl
,cURL input
,curl
,+PACKAGE_collectd-mod-curl
:libcurl
))
260 $(eval
$(call BuildPlugin
,dbi
,relational database input
,dbi
,+PACKAGE_collectd-mod-dbi
:libdbi
))
261 $(eval
$(call BuildPlugin
,df
,disk space input
,df
,))
262 $(eval
$(call BuildPlugin
,disk
,disk usage
/timing input
,disk
,))
263 $(eval
$(call BuildPlugin
,dns
,DNS traffic input
,dns
,+PACKAGE_collectd-mod-dns
:libpcap
))
264 $(eval
$(call BuildPlugin
,email
,email output
,email
,))
265 $(eval
$(call BuildPlugin
,exec
,process exec input
,exec
,))
266 $(eval
$(call BuildPlugin
,filecount
,file count input
,filecount
,))
267 $(eval
$(call BuildPlugin
,fscache
,file-system based caching framework input
,fscache
,))
268 $(eval
$(call BuildPlugin
,interface
,network interfaces input
,interface
,))
269 $(eval
$(call BuildPlugin
,iptables
,iptables status input
,iptables
,+PACKAGE_collectd-mod-iptables
:iptables @
(!LINUX_2_4||BROKEN
)))
270 $(eval
$(call BuildPlugin
,irq
,interrupt usage input
,irq
,))
271 $(eval
$(call BuildPlugin
,load
,system load input
,load
,))
272 $(eval
$(call BuildPlugin
,logfile
,log files output
,logfile
,))
273 $(eval
$(call BuildPlugin
,madwifi
,MadWifi status input
,madwifi
,))
274 $(eval
$(call BuildPlugin
,mysql
,MySQL status input
,mysql
,+PACKAGE_collectd-mod-mysql
:libmysqlclient
))
275 $(eval
$(call BuildPlugin
,memory
,physical memory usage input
,memory
,))
276 $(eval
$(call BuildPlugin
,netlink
,netlink input
,netlink
,+PACKAGE_collectd-mod-netlink
:ip @
(!LINUX_2_4||BROKEN
)))
277 $(eval
$(call BuildPlugin
,network
,network input
/output
,network
))
278 $(eval
$(call BuildPlugin
,nginx
,nginx status input
,nginx
,+PACKAGE_collectd-mod-nginx
:libcurl
))
279 $(eval
$(call BuildPlugin
,ntpd
,NTP daemon status input
,ntpd
,))
280 $(eval
$(call BuildPlugin
,nut
,UPS monitoring input
,nut
,@BROKEN
))
281 $(eval
$(call BuildPlugin
,olsrd
,OLSRd status input
,olsrd
,))
282 $(eval
$(call BuildPlugin
,onewire
,onewire sensor input
,onewire
,+PACKAGE_collectd-mod-onewire
:libow-capi @BROKEN
))
283 $(eval
$(call BuildPlugin
,openvpn
,OpenVPN traffic
/compression input
,openvpn
,))
284 $(eval
$(call BuildPlugin
,ping
,ping status input
,ping
,+PACKAGE_collectd-mod-ping
:liboping
))
285 $(eval
$(call BuildPlugin
,postgresql
,PostgreSQL status input
,postgresql
,+PACKAGE_collectd-mod-postgresql
:libpq
))
286 $(eval
$(call BuildPlugin
,powerdns
,PowerDNS server status input
,powerdns
,))
287 $(eval
$(call BuildPlugin
,processes
,process status input
,processes
,))
288 $(eval
$(call BuildPlugin
,protocols
,network protocols input
,protocols
,))
289 $(eval
$(call BuildPlugin
,rrdtool
,RRDtool output
,rrdtool
,+PACKAGE_collectd-mod-rrdtool
:librrd1
))
290 $(eval
$(call BuildPlugin
,sensors
,lm_sensors input
,sensors
,+PACKAGE_collectd-mod-sensors
:libsensors @BROKEN
))
291 $(eval
$(call BuildPlugin
,snmp
,SNMP input
,snmp
,+PACKAGE_collectd-mod-snmp
:libnetsnmp
))
292 $(eval
$(call BuildPlugin
,syslog
,syslog output
,syslog
,))
293 $(eval
$(call BuildPlugin
,tail
,tail input
,tail
,))
294 $(eval
$(call BuildPlugin
,table
,table-like structured file input
,table
,))
295 $(eval
$(call BuildPlugin
,teamspeak2
,TeamSpeak2 input
,teamspeak2
,))
296 $(eval
$(call BuildPlugin
,ted
,The Energy Detective input
,ted
,@
((!TARGET_avr32
)||BROKEN
))) # fails on avr32 because of warnings treated as errors
297 $(eval
$(call BuildPlugin
,tcpconns
,TCP connection tracking input
,tcpconns
,))
298 $(eval
$(call BuildPlugin
,thermal
,system temperatures input
,thermal
,))
299 $(eval
$(call BuildPlugin
,unixsock
,unix socket output
,unixsock
,))
300 $(eval
$(call BuildPlugin
,uptime
,uptime status input
,uptime
,))
301 $(eval
$(call BuildPlugin
,users
,user logged in status input
,users
,))
302 $(eval
$(call BuildPlugin
,vmem
,virtual memory usage input
,vmem
,))
303 $(eval
$(call BuildPlugin
,wireless
,wireless status input
,wireless
,))
304 $(eval
$(call BuildPlugin
,write-http
,HTTP POST output
,write_http
,+PACKAGE_collectd-mod-write-http
:libcurl
))