e3d0f5cd74730d21aa3ce6ebb0cf49a5e400e4b1
[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.1
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:=15f24d26da0ccfc073abcdef0309f281e4684f2aa71126f826572c4c845e8dd9
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))