2 # Copyright (C) 2009-2012 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
:=8ad2eb997fb8251bc5b24cf32619571b
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)
85 $(call Package/birdc/Default)
92 define Package/bird4/description
93 $(call Package/bird/Default/description1)
94 This is IPv4 version of BIRD, it supports OSPFv2, RIPv2 and BGP
97 $(call Package/bird/Default/description2)
100 define Package/birdc4/description
101 $(call Package/bird/Default/description1)
102 $(call Package/bird/Default/description3)
105 define Package/bird6/description
106 $(call Package/bird/Default/description1)
107 This is IPv6 version of BIRD, it supports OSPFv3, RIPng and BGP
110 $(call Package/bird/Default/description2)
113 define Package/birdc6/description
114 $(call Package/bird/Default/description1)
115 $(call Package/bird/Default/description3)
118 CONFIGURE_ARGS += --with-linux-headers="$(LINUX_DIR)"
120 define Build/Template
122 $(STAMP_BUILT)-$(2): $(STAMP_PREPARED)
123 $(call Build/Configure/Default,$(3))
124 $(call Build/Compile/Default,)
125 ( cd $(PKG_BUILD_DIR); mv -f bird bird$(2); mv -f birdc birdc$(2) )
126 -$(MAKE) -C $(PKG_BUILD_DIR) clean
129 $(STAMP_BUILT): $(STAMP_BUILT)-$(2)
131 define Package/bird$(2)/install
132 $(INSTALL_DIR) $$(1)/usr/sbin
133 $(INSTALL_BIN) $$(PKG_BUILD_DIR)/bird$(2) $$(1)/usr/sbin/
134 $(INSTALL_BIN) ./files/bird$(2)loop $$(1)/usr/sbin/
135 $(INSTALL_DIR) $$(1)/etc
136 $(INSTALL_DATA) ./files/bird$(2).conf $$(1)/etc/
137 $(INSTALL_DIR) $$(1)/etc/init.d
138 $(INSTALL_BIN) ./files/bird$(2).init $$(1)/etc/init.d/bird$(2)
142 define Package/bird$(2)/conffiles
146 define Package/birdc$(2)/install
147 $(INSTALL_DIR) $$(1)/usr/sbin
148 $(INSTALL_BIN) $$(PKG_BUILD_DIR)/birdc$(2) $$(1)/usr/sbin/
154 $(eval $(call Build/Template,bird4,4, --disable-ipv6))
155 $(eval $(call Build/Template,bird6,6, --enable-ipv6))
157 $(eval $(call BuildPackage,bird4))
158 $(eval $(call BuildPackage,birdc4))
159 $(eval $(call BuildPackage,bird6))
160 $(eval $(call BuildPackage,birdc6))