2 # Copyright (C) 2009-2014 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
7 include $(TOPDIR
)/rules.mk
13 PKG_SOURCE
:=bird-
$(PKG_VERSION
).
tar.gz
14 PKG_SOURCE_URL
:=ftp
://bird.network.cz
/pub
/bird
15 PKG_MD5SUM
:=a8e5e0a9129ce30fe6102c593bafb763
16 PKG_BUILD_DEPENDS
:=libncurses libreadline
19 include $(INCLUDE_DIR
)/package.mk
21 define Package
/bird
/Default
22 TITLE
:=The BIRD Internet Routing Daemon
23 URL
:=http
://bird.network.cz
/
27 define Package
/birdc
/Default
28 TITLE
:=The BIRD command-line client
29 URL
:=http
://bird.network.cz
/
30 DEPENDS
:= +libreadline
+libncurses
33 define Package
/bird
/Default
/description1
34 BIRD is an internet routing daemon which manages TCP
/IP routing tables
35 with support of modern routing protocols
, easy to use configuration
36 interface and powerful route filtering language. It is lightweight and
37 efficient and therefore appropriate for small embedded routers.
41 define Package
/bird
/Default
/description2
42 In BGP
, BIRD supports communities
, multiprotocol extensions
, MD5
43 authentication
, 32bit AS numbers and could act
as a route server or a
44 route reflector. BIRD also supports multiple RIBs
, multiple kernel
45 routing tables and redistribution between the protocols with a powerful
50 define Package
/bird
/Default
/description3
51 This is a BIRD command-line client. It is used to send commands to BIRD
,
52 commands can perform simple actions such
as enabling
/disabling of
53 protocols
, telling BIRD to show various information
, telling it to show
54 a routing table filtered by a
filter, or asking BIRD to reconfigure.
56 Unless you can
't afford dependency on ncurses and readline, you
57 should install BIRD command-line client together with BIRD.
62 $(call Package/bird/Default)
65 SUBMENU:=Routing and Redirection
70 $(call Package/birdc/Default)
73 SUBMENU:=Routing and Redirection
79 $(call Package/bird/Default)
82 SUBMENU:=Routing and Redirection
87 $(call Package/birdc/Default)
90 SUBMENU:=Routing and Redirection
95 define Package/bird4/description
96 $(call Package/bird/Default/description1)
97 This is IPv4 version of BIRD, it supports OSPFv2, RIPv2 and BGP
100 $(call Package/bird/Default/description2)
103 define Package/birdc4/description
104 $(call Package/bird/Default/description1)
105 $(call Package/bird/Default/description3)
108 define Package/bird6/description
109 $(call Package/bird/Default/description1)
110 This is IPv6 version of BIRD, it supports OSPFv3, RIPng and BGP
113 $(call Package/bird/Default/description2)
116 define Package/birdc6/description
117 $(call Package/bird/Default/description1)
118 $(call Package/bird/Default/description3)
121 CONFIGURE_ARGS += --with-linux-headers="$(LINUX_DIR)"
123 define Build/Template
125 $(STAMP_BUILT)-$(2): $(STAMP_PREPARED)
126 $(call Build/Configure/Default,$(3))
127 $(call Build/Compile/Default,)
128 ( cd $(PKG_BUILD_DIR); mv -f bird bird$(2); mv -f birdc birdc$(2) )
129 -$(MAKE) -C $(PKG_BUILD_DIR) clean
132 $(STAMP_BUILT): $(STAMP_BUILT)-$(2)
134 define Package/bird$(2)/install
135 $(INSTALL_DIR) $$(1)/usr/sbin
136 $(INSTALL_BIN) $$(PKG_BUILD_DIR)/bird$(2) $$(1)/usr/sbin/
137 $(INSTALL_DIR) $$(1)/etc
138 $(INSTALL_DATA) ./files/bird$(2).conf $$(1)/etc/
139 $(INSTALL_DIR) $$(1)/etc/init.d
140 $(INSTALL_BIN) ./files/bird$(2).init $$(1)/etc/init.d/bird$(2)
144 define Package/bird$(2)/conffiles
148 define Package/birdc$(2)/install
149 $(INSTALL_DIR) $$(1)/usr/sbin
150 $(INSTALL_BIN) $$(PKG_BUILD_DIR)/birdc$(2) $$(1)/usr/sbin/
156 $(eval $(call Build/Template,bird4,4, --disable-ipv6))
157 $(eval $(call Build/Template,bird6,6, --enable-ipv6))
159 $(eval $(call BuildPackage,bird4))
160 $(eval $(call BuildPackage,birdc4))
161 $(eval $(call BuildPackage,bird6))
162 $(eval $(call BuildPackage,birdc6))