cfefb9eb4c785eecf085c69ef61827ca093b2dcd
[feed/routing.git] / babeld / Makefile
1 # SPDX-License-Identifier: GPL-2.0-or-later
2 #
3 # Copyright (C) 2007-2021 OpenWrt.org
4 #
5
6 include $(TOPDIR)/rules.mk
7
8 PKG_NAME:=babeld
9 PKG_VERSION:=1.13
10 PKG_RELEASE:=1
11
12 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
13 PKG_SOURCE_URL:=https://www.irif.fr/~jch/software/files/
14 PKG_HASH:=d085ccccfb06a11d7fa5b54c51d9c410f5f3b0a9389f584951336ff178f293b8
15
16 PKG_MAINTAINER:=Gabriel Kerneis <gabriel@kerneis.info>, \
17 Baptiste Jonglez <openwrt-pkg@bitsofnetworks.org>, \
18 Nick Hainke <vincent@systemli.org>
19 PKG_LICENSE:=MIT
20 PKG_LICENSE_FILES:=LICENCE
21
22 include $(INCLUDE_DIR)/package.mk
23
24 define Package/babeld
25 SECTION:=net
26 CATEGORY:=Network
27 SUBMENU:=Routing and Redirection
28 TITLE:=A loop-avoiding distance-vector routing protocol
29 URL:=https://www.irif.fr/~jch/software/babel/
30 DEPENDS:=@IPV6 +libubus +libubox
31 endef
32
33 define Package/babeld/description
34 Babel is a loop-avoiding distance-vector routing protocol for IPv6 and IPv4
35 with fast convergence properties. It is based on the ideas in DSDV, AODV and
36 Cisco's EIGRP, but is designed to work well not only in wired networks but
37 also in wireless mesh networks, and has been extended with support for
38 overlay networks. Babel is an IETF standard protocol (RFC 8966).
39 endef
40
41 define Package/babeld/conffiles
42 /etc/babeld.conf
43 /etc/config/babeld
44 endef
45
46 MAKE_FLAGS+= \
47 CFLAGS="$(TARGET_CFLAGS)" \
48 LDLIBS="" \
49 LDLIBS+="-lubus -lubox"
50
51 define Package/babeld/install
52 $(INSTALL_DIR) $(1)/usr/sbin
53 $(INSTALL_BIN) $(PKG_BUILD_DIR)/babeld $(1)/usr/sbin/
54 $(INSTALL_DIR) $(1)/etc
55 $(INSTALL_CONF) ./files/babeld.conf $(1)/etc/
56 $(INSTALL_DIR) $(1)/etc/config
57 $(INSTALL_CONF) ./files/babeld.config $(1)/etc/config/babeld
58 $(INSTALL_DIR) $(1)/etc/init.d
59 $(INSTALL_BIN) ./files/babeld.init $(1)/etc/init.d/babeld
60 endef
61
62 $(eval $(call BuildPackage,babeld))