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
:=eb7e00b9c1d102ddfcbc19d9cb168511
16 PKG_BUILD_DEPENDS
:=libncurses libreadline
18 include $(INCLUDE_DIR
)/package.mk
20 define Package
/bird
/Default
21 TITLE
:=The BIRD Internet Routing Daemon
22 URL
:=http
://bird.network.cz
/
26 define Package
/birdc
/Default
27 TITLE
:=The BIRD command-line client
28 URL
:=http
://bird.network.cz
/
29 DEPENDS
:= +libreadline
+libncurses
32 define Package
/bird
/Default
/description1
33 BIRD is an internet routing daemon which manages TCP
/IP routing tables
34 with support of modern routing protocols
, easy to use configuration
35 interface and powerful route filtering language. It is lightweight and
36 efficient and therefore appropriate for small embedded routers.
40 define Package
/bird
/Default
/description2
41 In BGP
, BIRD supports communities
, multiprotocol extensions
, MD5
42 authentication
, 32bit AS numbers and could act
as a route server or a
43 route reflector. BIRD also supports multiple RIBs
, multiple kernel
44 routing tables and redistribution between the protocols with a powerful
49 define Package
/bird
/Default
/description3
50 This is a BIRD command-line client. It is used to send commands to BIRD
,
51 commands can perform simple actions such
as enabling
/disabling of
52 protocols
, telling BIRD to show various information
, telling it to show
53 a routing table filtered by a
filter, or asking BIRD to reconfigure.
55 Unless you can
't afford dependency on ncurses and readline, you
56 should install BIRD command-line client together with BIRD.
61 $(call Package/bird/Default)
64 SUBMENU:=Routing and Redirection
69 $(call Package/birdc/Default)
72 SUBMENU:=Routing and Redirection
78 $(call Package/bird/Default)
81 SUBMENU:=Routing and Redirection
86 $(call Package/birdc/Default)
89 SUBMENU:=Routing and Redirection
94 define Package/bird4/description
95 $(call Package/bird/Default/description1)
96 This is IPv4 version of BIRD, it supports OSPFv2, RIPv2 and BGP
99 $(call Package/bird/Default/description2)
102 define Package/birdc4/description
103 $(call Package/bird/Default/description1)
104 $(call Package/bird/Default/description3)
107 define Package/bird6/description
108 $(call Package/bird/Default/description1)
109 This is IPv6 version of BIRD, it supports OSPFv3, RIPng and BGP
112 $(call Package/bird/Default/description2)
115 define Package/birdc6/description
116 $(call Package/bird/Default/description1)
117 $(call Package/bird/Default/description3)
120 CONFIGURE_ARGS += --with-linux-headers="$(LINUX_DIR)"
122 define Build/Template
124 $(STAMP_BUILT)-$(2): $(STAMP_PREPARED)
125 $(call Build/Configure/Default,$(3))
126 $(call Build/Compile/Default,)
127 ( cd $(PKG_BUILD_DIR); mv -f bird bird$(2); mv -f birdc birdc$(2) )
128 -$(MAKE) -C $(PKG_BUILD_DIR) clean
131 $(STAMP_BUILT): $(STAMP_BUILT)-$(2)
133 define Package/bird$(2)/install
134 $(INSTALL_DIR) $$(1)/usr/sbin
135 $(INSTALL_BIN) $$(PKG_BUILD_DIR)/bird$(2) $$(1)/usr/sbin/
136 $(INSTALL_DIR) $$(1)/etc
137 $(INSTALL_DATA) ./files/bird$(2).conf $$(1)/etc/
138 $(INSTALL_DIR) $$(1)/etc/init.d
139 $(INSTALL_BIN) ./files/bird$(2).init $$(1)/etc/init.d/bird$(2)
143 define Package/bird$(2)/conffiles
147 define Package/birdc$(2)/install
148 $(INSTALL_DIR) $$(1)/usr/sbin
149 $(INSTALL_BIN) $$(PKG_BUILD_DIR)/birdc$(2) $$(1)/usr/sbin/
155 $(eval $(call Build/Template,bird4,4, --disable-ipv6))
156 $(eval $(call Build/Template,bird6,6, --enable-ipv6))
158 $(eval $(call BuildPackage,bird4))
159 $(eval $(call BuildPackage,birdc4))
160 $(eval $(call BuildPackage,bird6))
161 $(eval $(call BuildPackage,birdc6))