2 # Copyright (C) 2006-2011 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
11 ifneq ($(CONFIG_QUAGGA_OLD
),)
14 PKG_MD5SUM
:=b0d4132039953a0214256873b7d23d68
15 PATCH_DIR
:=.
/patches-old
19 PKG_MD5SUM
:=64cc29394eb8a4e24649d19dac868f64
22 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.gz
23 PKG_SOURCE_URL
:=http
://www.quagga.net
/download
/ \
24 http
://www.de.quagga.net
/download
/ \
25 http
://www.uk.quagga.net
/download
/
26 PKG_CONFIG_DEPENDS
:= \
29 CONFIG_PACKAGE_quagga-libzebra \
30 CONFIG_PACKAGE_quagga-libospf \
31 CONFIG_PACKAGE_quagga-bgpd \
32 CONFIG_PACKAGE_quagga-isisd \
33 CONFIG_PACKAGE_quagga-ospf6d \
34 CONFIG_PACKAGE_quagga-ripd \
35 CONFIG_PACKAGE_quagga-ripngd \
36 CONFIG_PACKAGE_quagga-vtysh
41 include $(INCLUDE_DIR
)/package.mk
43 define Package
/quagga
/Default
46 SUBMENU
:=Routing and Redirection
48 TITLE
:=The Quagga Software Routing Suite
49 URL
:=http
://www.quagga.net
50 MAINTAINER
:=Vasilis Tsiligiannis
<b_tsiligiannis@silverton.gr
>
54 $(call Package
/quagga
/Default
)
55 DEPENDS
:=+!QUAGGA_OLD
:librt
59 define Package
/quagga
/description
60 A routing software package that provides TCP
/IP based routing services
61 with routing protocols support such
as RIPv1
, RIPv2
, RIPng
, OSPFv2
,
62 OSPFv3
, BGP-4
, and BGP-4
+
65 define Package
/quagga
/config
67 depends on
(PACKAGE_quagga
&& BROKEN
)
69 bool
"Use the old release version 0.98.6"
71 This option allows you to select the old version of Quagga to be built.
74 define Package
/quagga-libzebra
75 $(call Package
/quagga
/Default
)
79 define Package
/quagga-libospf
80 $(call Package
/quagga
/Default
)
84 define Package
/quagga-bgpd
85 $(call Package
/quagga
/Default
)
86 DEPENDS
+=+quagga-libzebra
87 TITLE
:=BGPv4
, BGPv4
+, BGPv4- routing engine
90 define Package
/quagga-isisd
91 $(call Package
/quagga
/Default
)
92 TITLE
:=IS-IS routing engine
95 define Package
/quagga-ospfd
96 $(call Package
/quagga
/Default
)
97 DEPENDS
+=+quagga-libospf
+quagga-libzebra
98 TITLE
:=OSPFv2 routing engine
101 define Package
/quagga-ospf6d
102 $(call Package
/quagga
/Default
)
103 DEPENDS
+=+quagga-libospf
+quagga-libzebra @IPV6
104 TITLE
:=OSPFv3 routing engine
107 define Package
/quagga-ripd
108 $(call Package
/quagga
/Default
)
109 DEPENDS
+=+quagga-libzebra
110 TITLE
:=RIP routing engine
113 define Package
/quagga-ripngd
114 $(call Package
/quagga
/Default
)
115 DEPENDS
+=+quagga-libzebra @IPV6
116 TITLE
:=RIPNG routing engine
119 define Package
/quagga-vtysh
120 $(call Package
/quagga
/Default
)
121 DEPENDS
+=quagga-libzebra
+libreadline
+libncurses
122 TITLE
:=integrated
shell for Quagga routing software
125 define Package
/quagga
/conffiles
126 /etc
/quagga
/zebra.conf
129 define Package
/quagga-bgpd
/conffiles
130 /etc
/quagga
/bgpd.conf
133 define Package
/quagga-isisd
/conffiles
134 /etc
/quagga
/isisd.conf
137 define Package
/quagga-ospfd
/conffiles
138 /etc
/quagga
/ospfd.conf
141 define Package
/quagga-ospf6d
/conffiles
142 /etc
/quagga
/ospf6d.conf
145 define Package
/quagga-ripd
/conffiles
146 /etc
/quagga
/ripd.conf
149 define Package
/quagga-ripngd
/conffiles
150 /etc
/quagga
/ripngd.conf
154 CONFIG_PACKAGE_quagga-libzebra
:=m
155 CONFIG_PACKAGE_quagga-libospf
:=m
156 CONFIG_PACKAGE_quagga-bgpd
:=m
157 CONFIG_PACKAGE_quagga-isisd
:=m
158 CONFIG_PACKAGE_quagga-ospf6d
:=m
159 CONFIG_PACKAGE_quagga-ripd
:=m
160 CONFIG_PACKAGE_quagga-ripngd
:=m
161 CONFIG_PACKAGE_quagga-vtysh
:=m
165 --localstatedir
=/var
/run
/quagga \
166 --sysconfdir
=/etc
/quagga
/ \
169 --enable-user
=network \
170 --enable-group
=network \
172 --enable-multipath
=8 \
173 $(call autoconf_bool
,CONFIG_PACKAGE_quagga-libzebra
,zebra
) \
174 $(call autoconf_bool
,CONFIG_PACKAGE_quagga-libospf
,ospfd
) \
175 $(call autoconf_bool
,CONFIG_PACKAGE_quagga-bgpd
,bgpd
) \
176 $(call autoconf_bool
,CONFIG_PACKAGE_quagga-isisd
,isisd
) \
177 $(call autoconf_bool
,CONFIG_PACKAGE_quagga-ospf6d
,ospf6d
) \
178 $(call autoconf_bool
,CONFIG_PACKAGE_quagga-ripd
,ripd
) \
179 $(call autoconf_bool
,CONFIG_PACKAGE_quagga-ripngd
,ripngd
) \
180 $(call autoconf_bool
,CONFIG_PACKAGE_quagga-vtysh
,vtysh
) \
183 CFLAGS
="$(TARGET_CFLAGS) -std=gnu99"
185 define Build
/Configure
186 (cd
$(PKG_BUILD_DIR
); rm -rf config.
{cache
,status
}; \
189 $(call Build
/Configure
/Default
)
192 define Package
/quagga
/install
193 $(INSTALL_DIR
) $(1)/usr
/sbin
194 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/zebra
$(1)/usr
/sbin
/
195 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/watchquagga
$(1)/usr
/sbin
/
196 # avoid /etc being set to 0750
197 $(INSTALL_DIR
) $(1)/etc
/quagga
198 chmod
0750 $(1)/etc
/quagga
199 $(INSTALL_CONF
) .
/files
/quagga.conf
$(1)/etc
/quagga
/zebra.conf
200 $(INSTALL_DIR
) $(1)/etc
/init.d
201 $(INSTALL_BIN
) .
/files
/quagga
$(1)/usr
/sbin
/quagga.init
202 $(INSTALL_BIN
) .
/files
/quagga.init
$(1)/etc
/init.d
/quagga
205 define Package
/quagga-bgpd
/install
206 $(INSTALL_DIR
) $(1)/usr
/sbin
207 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/bgpd
$(1)/usr
/sbin
/
208 $(INSTALL_DIR
) $(1)/etc
/quagga
209 chmod
0750 $(1)/etc
/quagga
210 $(INSTALL_CONF
) .
/files
/quagga.conf
$(1)/etc
/quagga
/bgpd.conf
213 define Package
/quagga-isisd
/install
214 $(INSTALL_DIR
) $(1)/usr
/sbin
215 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/isisd
$(1)/usr
/sbin
/
216 $(INSTALL_DIR
) $(1)/etc
/quagga
217 chmod
0750 $(1)/etc
/quagga
218 $(INSTALL_CONF
) .
/files
/quagga.conf
$(1)/etc
/quagga
/isisd.conf
221 define Package
/quagga-ospfd
/install
222 $(INSTALL_DIR
) $(1)/usr
/sbin
223 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/ospfd
$(1)/usr
/sbin
/
224 $(INSTALL_DIR
) $(1)/etc
/quagga
225 chmod
0750 $(1)/etc
/quagga
226 $(INSTALL_CONF
) .
/files
/quagga.conf
$(1)/etc
/quagga
/ospfd.conf
229 define Package
/quagga-ospf6d
/install
230 $(INSTALL_DIR
) $(1)/usr
/sbin
231 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/ospf6d
$(1)/usr
/sbin
/
232 $(INSTALL_DIR
) $(1)/etc
/quagga
233 chmod
0750 $(1)/etc
/quagga
234 $(INSTALL_CONF
) .
/files
/quagga.conf
$(1)/etc
/quagga
/ospf6d.conf
237 define Package
/quagga-ripd
/install
238 $(INSTALL_DIR
) $(1)/usr
/sbin
239 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/ripd
$(1)/usr
/sbin
/
240 $(INSTALL_DIR
) $(1)/etc
/quagga
241 chmod
0750 $(1)/etc
/quagga
242 $(INSTALL_CONF
) .
/files
/quagga.conf
$(1)/etc
/quagga
/ripd.conf
245 define Package
/quagga-ripngd
/install
246 $(INSTALL_DIR
) $(1)/usr
/sbin
247 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/ripngd
$(1)/usr
/sbin
/
248 $(INSTALL_DIR
) $(1)/etc
/quagga
249 chmod
0750 $(1)/etc
/quagga
250 $(INSTALL_CONF
) .
/files
/quagga.conf
$(1)/etc
/quagga
/ripngd.conf
253 define Package
/quagga-vtysh
/install
254 $(INSTALL_DIR
) $(1)/usr
/bin
255 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/vtysh
$(1)/usr
/bin
/
258 define Package
/quagga-libospf
/install
259 $(INSTALL_DIR
) $(1)/usr
/lib
260 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libospf.so.
* $(1)/usr
/lib
/
263 define Package
/quagga-libzebra
/install
264 $(INSTALL_DIR
) $(1)/usr
/lib
265 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libzebra.so.
* $(1)/usr
/lib
/
268 $(eval
$(call BuildPackage
,quagga
))
269 $(eval
$(call BuildPackage
,quagga-libzebra
))
270 $(eval
$(call BuildPackage
,quagga-libospf
))
271 $(eval
$(call BuildPackage
,quagga-bgpd
))
272 $(eval
$(call BuildPackage
,quagga-isisd
))
273 $(eval
$(call BuildPackage
,quagga-ospfd
))
274 $(eval
$(call BuildPackage
,quagga-ospf6d
))
275 $(eval
$(call BuildPackage
,quagga-ripd
))
276 $(eval
$(call BuildPackage
,quagga-ripngd
))
277 $(eval
$(call BuildPackage
,quagga-vtysh
))