6f9c0e51534c9ae0d614efb1847dd95ee959f0d2
[ipfire-2.x.git] / lfs / collectd
1 ###############################################################################
2 # #
3 # IPFire.org - A linux based firewall #
4 # Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
5 # #
6 # This program is free software: you can redistribute it and/or modify #
7 # it under the terms of the GNU General Public License as published by #
8 # the Free Software Foundation, either version 3 of the License, or #
9 # (at your option) any later version. #
10 # #
11 # This program is distributed in the hope that it will be useful, #
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of #
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
14 # GNU General Public License for more details. #
15 # #
16 # You should have received a copy of the GNU General Public License #
17 # along with this program. If not, see <http://www.gnu.org/licenses/>. #
18 # #
19 ###############################################################################
20
21 ###############################################################################
22 # Definitions
23 ###############################################################################
24
25 include Config
26
27 PKG_NAME = collectd
28 VER = 4.10.9
29
30 THISAPP = collectd-$(VER)
31 DL_FILE = $(THISAPP).tar.bz2
32 DL_FROM = $(URL_IPFIRE)
33 DIR_APP = $(DIR_SRC)/$(THISAPP)
34 TARGET = $(DIR_INFO)/$(THISAPP)
35 PROG = collectd
36
37 DEPS = ""
38
39 CFLAGS += -Wno-error=deprecated-declarations
40
41 ###############################################################################
42 # Top-level Rules
43 ###############################################################################
44
45 objects = $(DL_FILE)
46
47 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
48
49 $(DL_FILE)_MD5 = 980dd3387508f9ad209df04a6f7a126c
50
51 install : $(TARGET)
52
53 check : $(patsubst %,$(DIR_CHK)/%,$(objects))
54
55 download :$(patsubst %,$(DIR_DL)/%,$(objects))
56
57 md5 : $(subst %,%_MD5,$(objects))
58
59 dist:
60 $(PAK)
61
62 ###############################################################################
63 # Downloading, checking, md5sum
64 ###############################################################################
65
66 $(patsubst %,$(DIR_CHK)/%,$(objects)) :
67 @$(CHECK)
68
69 $(patsubst %,$(DIR_DL)/%,$(objects)) :
70 @$(LOAD)
71
72 $(subst %,%_MD5,$(objects)) :
73 @$(MD5)
74
75 ###############################################################################
76 # Installation Details
77 ###############################################################################
78
79 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
80 @$(PREBUILD)
81 @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
82 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0001-src-utils_mount.h-Add-stdio.h.patch
83 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0002-Don-t-notify-continuously-when-MySQL-slave-SQL-threa.patch
84 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0003-curl_xml.c-avoid-using-uninitalized-variable-in-erro.patch
85 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0004-interface.c-FreeBSD-10-support.patch
86 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0005-Revert-curl_xml.c-avoid-using-uninitalized-variable-.patch
87 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0006-network-set_thread_cbs-so-we-initialize-the-right-th.patch
88 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0007-apache-plugin-Call-curl_global_init-from-the-init-fu.patch
89 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0008-network-comment-libgcrypt-initalization-process.patch
90 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0009-Call-curl_global_init-in-_init-of-plugins-using-curl.patch
91 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0010-indent-wh_init-to-be-consistent-with-the-rest-of-the.patch
92 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0011-Configparser-when-we-alocate-an-empty-list-we-also-n.patch
93 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0012-don-t-assume-pkg-config-is-in-PATH.patch
94 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0013-add-missing-backticks-which-broke-the-build.patch
95 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0014-snmp-free-snmp_pdu-struct-allocated-by-snmp_pdu_crea.patch
96 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0015-curl_xml-plugin-Fixed-tautological-pointer-compariso.patch
97 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0016-Add-support-for-OpenVPN-2.3.0-status-files.patch
98 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0017-openvpn-plugin-Don-t-signal-an-error-when-no-clients.patch
99 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0018-openvpn-Remove-boguous-file-handler-check.patch
100 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0019-openvpn-Ignore-not-fully-established-connections.patch
101 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0020-openvpn-Make-read-functions-robust-like-in-8516f9abb.patch
102 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0021-openvpn-Fix-copy-and-paste-error.patch
103 cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/collectd/0022-openvpn-Change-data-type-from-COUNTER-to-DERIVE.patch
104 cd $(DIR_APP) && ./configure --prefix=/usr --localstatedir=/var \
105 --disable-{apple_sensors,csv,ipvs,mbmon,memcached,mysql} \
106 --disable-{netlink,nginx,nut,perl,serial,snmp,tape,vserver,xmms} \
107 --disable-{perl,serial,snmp,tape,vserver,xmms} \
108 --enable-{apcups,battery,cpu{,freq},df,disk,dns,email,entropy,exec,hddtemp} \
109 --enable-{interface,iptables,irq,load,logfile,memory,multimeter} \
110 --enable-{network,nfs,ntpd,ping,processes,rrdtool,sensors,swap,syslog} \
111 --enable-{tcpconns,unixsock,users,wireless} \
112 --with-librrd=/usr/share/rrdtool-1.2.30
113 cd $(DIR_APP) && make install
114 cp -vf $(DIR_SRC)/config/collectd/collectd.* /etc/
115 mv /etc/collectd.vpn /var/ipfire/ovpn/collectd.vpn
116 chown nobody.nobody /var/ipfire/ovpn/collectd.vpn
117 ln -f -s ../var/ipfire/ovpn/collectd.vpn /etc/collectd.vpn
118 ln -f -s ../init.d/collectd /etc/rc.d/rc0.d/K50collectd
119 ln -f -s ../init.d/collectd /etc/rc.d/rc3.d/S29collectd
120 ln -f -s ../init.d/collectd /etc/rc.d/rc6.d/K50collectd
121 @rm -rf $(DIR_APP)
122 @$(POSTBUILD)