2 # Copyright (C) 2006-2015 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
12 PKG_RELEASE
:=$(AUTORELEASE
)
14 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.gz
15 PKG_SOURCE_URL
:=https
://www.keepalived.org
/software
16 PKG_HASH
:=0138d69087d44beaaa589527f0cfa6885958b320a837147d02b6b7df73ebc1df
18 PKG_CPE_ID
:=cpe
:/a
:keepalived
:keepalived
19 PKG_LICENSE
:=GPL-2.0
-or-later
20 PKG_LICENSE_FILES
:=COPYING
21 PKG_MAINTAINER
:=Ben Kelly
<ben@benjii.net
> \
22 Florian Eckert
<fe@dev.tdt.de
>
24 PKG_CONFIG_DEPENDS
+= \
29 KEEPALIVED_SNMP_VRRP \
30 KEEPALIVED_SNMP_CHECKER \
31 KEEPALIVED_SNMP_RFC2 \
32 KEEPALIVED_SNMP_RFC3 \
33 KEEPALIVED_SNMP_REPLY_V3_FOR_V2 \
41 include $(INCLUDE_DIR
)/package.mk
42 include $(INCLUDE_DIR
)/kernel.mk
44 define Package
/keepalived
/config
45 source
"$(SOURCE)/Config.in"
48 # specifying +(IPV6&&KEEPALIVED_IPTABLES) in the DEPENDS definition doesn't work
49 ifeq ($(CONFIG_KEEPALIVED_IPTABLES
)$(CONFIG_IPV6
),yy
)
50 KEEPALIVED_DEPENDS_LIBIP6TC
=+libip6tc
53 # The +kmod-nf-ipvs line should be +KEEPALIVED_LVS:kmod-nf-ipvs,
54 # but make menuconfig then reports :error: recursive dependency detected!
55 # !!FIXME DEPENDS:= +KEEPALIVED_LVS:kmod-nf-ipvs
56 define Package
/keepalived
59 TITLE
:=VRRP with failover and monitoring daemon for LVS clusters
60 URL
:=http
://www.keepalived.org
/
64 +KEEPALIVED_VRRP
:kmod-macvlan \
65 +KEEPALIVED_VRRP
:libnl-route \
66 +KEEPALIVED_VRRP
:libnfnetlink \
67 +KEEPALIVED_SHA1
:libopenssl \
68 +KEEPALIVED_IPTABLES
:libip4tc \
69 $(KEEPALIVED_DEPENDS_LIBIP6TC
) \
70 +KEEPALIVED_IPTABLES
:libxtables \
71 +KEEPALIVED_IPTABLES
:libipset \
72 +(KEEPALIVED_SNMP_VRRP||KEEPALIVED_SNMP_CHECKER||KEEPALIVED_SNMP_RFC2||KEEPALIVED_SNMP_RFC3
):libnetsnmp \
73 +KEEPALIVED_JSON
:libjson-c \
74 +KEEPALIVED_DBUS
:glib2
77 define Package
/keepalived
/description
78 VRRP with failover and monitoring daemon for Linux Virtual Server
(LVS
) clusters.
81 define Package
/keepalived
/conffiles
82 /etc
/keepalived
/keepalived.conf
83 /etc
/config
/keepalived
90 --disable-track-process \
91 --with-run-dir
="/var/run"
93 ifeq ($(CONFIG_KEEPALIVED_VRRP
),)
98 ifeq ($(CONFIG_KEEPALIVED_LVS
),)
103 ifeq ($(CONFIG_KEEPALIVED_BFD
),y
)
108 ifeq ($(CONFIG_KEEPALIVED_SHA1
),y
)
114 ifeq ($(CONFIG_KEEPALIVED_VRRP
),y
)
115 ifeq ($(CONFIG_KEEPALIVED_IPTABLES
),)
120 ifeq ($(CONFIG_KEEPALIVED_IPSETS
),)
122 --disable-libipset-dynamic
125 ifeq ($(CONFIG_KEEPALIVED_SNMP_VRRP
),y
)
130 ifeq ($(CONFIG_KEEPALIVED_SNMP_RFC2
),y
)
135 ifeq ($(CONFIG_KEEPALIVED_SNMP_RFC3
),y
)
140 ifeq ($(CONFIG_KEEPALIVED_SNMP_RFC3
),y
)
141 ifeq ($(CONFIG_KEEPALIVED_SNMP_REPLY_V3_FOR_V2
),)
143 --disable-snmp-reply-v3-for-v2
145 endif # CONFIG_KEEPALIVED_SNMP_RFC3
147 ifeq ($(CONFIG_KEEPALIVED_JSON
),y
)
152 ifeq ($(CONFIG_KEEPALIVED_VRRP_AUTH
),)
157 ifeq ($(CONFIG_KEEPALIVED_CHECKSUM_COMPAT
),)
159 --disable-checksum-compat
162 ifeq ($(CONFIG_KEEPALIVED_DBUS
),y
)
167 ifeq ($(CONFIG_KEEPALIVED_LINKBEAT
),)
172 ifeq ($(CONFIG_KEEPALIVED_ROUTES
),)
176 endif # CONFIG_KEEPALIVED_VRRP
179 ifeq ($(CONFIG_KEEPALIVED_LVS
),y
)
180 ifeq ($(CONFIG_KEEPALIVED_LVS_SYNCD
),)
185 ifeq ($(CONFIG_KEEPALIVED_LVS_64BIT_STATS
),)
187 --disable-lvs-64bit-stats
190 ifeq ($(CONFIG_KEEPALIVED_FWMARK
),)
195 ifeq ($(CONFIG_KEEPALIVED_SNMP_CHECKER
),y
)
197 --enable-snmp-checker
200 endif # CONFIG_KEEPALIVED_LVS
203 MAKE_FLAGS
+= STRIP
="/bin/true"
204 TARGET_CFLAGS
+= -I
$(LINUX_DIR
)
206 define Package
/keepalived
/install
207 $(INSTALL_DIR
) $(1)/usr
/sbin
208 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/keepalived \
211 $(INSTALL_DIR
) $(1)/usr
/bin
212 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/genhash \
215 $(INSTALL_DIR
) $(1)/etc
/keepalived
216 $(INSTALL_CONF
) $(PKG_INSTALL_DIR
)/etc
/keepalived
/keepalived.conf \
219 $(INSTALL_DIR
) $(1)/etc
/uci-defaults
220 $(INSTALL_BIN
) .
/files
/etc
/uci-defaults
/keepalived \
221 $(1)/etc
/uci-defaults
/keepalived
223 $(INSTALL_DIR
) $(1)/etc
/init.d
224 $(INSTALL_BIN
) .
/files
/keepalived.init \
225 $(1)/etc
/init.d
/keepalived
227 $(INSTALL_DIR
) $(1)/etc
/config
228 $(INSTALL_CONF
) .
/files
/keepalived.config \
229 $(1)/etc
/config
/keepalived
231 $(INSTALL_DIR
) $(1)/etc
232 $(INSTALL_CONF
) .
/files
/keepalived.user \
233 $(1)/etc
/keepalived.user
235 $(INSTALL_DIR
) $(1)/etc
/hotplug.d
/keepalived
236 $(INSTALL_DATA
) .
/files
/hotplug-user \
237 $(1)/etc
/hotplug.d
/keepalived
/01-user
239 ifneq ($(CONFIG_KEEPALIVED_SNMP_VRRP
)$(CONFIG_KEEPALIVED_SNMP_CHECKER
)$(CONFIG_KEEPALIVED_SNMP_RFC2
)$(CONFIG_KEEPALIVED_SNMP_RFC3
),)
240 $(INSTALL_DIR
) $(1)/usr
/share
/snmp
/mibs
243 ifneq ($(CONFIG_KEEPALIVED_SNMP_VRRP
)$(CONFIG_KEEPALIVED_SNMP_CHECKER
),)
244 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/usr
/share
/snmp
/mibs
/KEEPALIVED-MIB.txt \
245 $(1)/usr
/share
/snmp
/mibs
/KEEPALIVED-MIB.txt
248 ifeq ($(CONFIG_KEEPALIVED_SNMP_RFC2
),y
)
249 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/usr
/share
/snmp
/mibs
/VRRP-MIB.txt \
250 $(1)/usr
/share
/snmp
/mibs
/VRRP-MIB.txt
253 ifeq ($(CONFIG_KEEPALIVED_SNMP_RFC3
),y
)
254 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/usr
/share
/snmp
/mibs
/VRRPv3-MIB.txt \
255 $(1)/usr
/share
/snmp
/mibs
/VRRPv3-MIB.txt
258 ifeq ($(CONFIG_KEEPALIVED_DBUS
),y
)
259 $(INSTALL_DIR
) $(1)/etc
/dbus-1
/system.d
260 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/etc
/dbus-1
/system.d
/org.keepalived.Vrrp1.conf \
261 $(1)/etc
/dbus-1
/system.d
/org.keepalived.Vrrp1.conf
263 $(INSTALL_DIR
) $(1)/usr
/share
/dbus-1
/interfaces
264 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/usr
/share
/dbus-1
/interfaces
/org.keepalived.Vrrp1.Instance.xml \
265 $(1)/usr
/share
/dbus-1
/interfaces
/org.keepalived.Vrrp1.Instance.xml
266 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/usr
/share
/dbus-1
/interfaces
/org.keepalived.Vrrp1.Vrrp.xml \
267 $(1)/usr
/share
/dbus-1
/interfaces
/org.keepalived.Vrrp1.Vrrp.xml
272 $(eval
$(call BuildPackage
,keepalived
))