diff options
author | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2007-06-28 15:55:00 +0000 |
---|---|---|
committer | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2007-06-28 15:55:00 +0000 |
commit | 1548b21ce2fdc384b3e0e86676529d3d8b422f9b (patch) | |
tree | c5847844639ace85fa9af7307c2e46095f07c361 /package/quagga/quagga.mk | |
parent | 79e2d802ae7e376a413c02097790493e1f65c3a4 (diff) | |
download | buildroot-novena-1548b21ce2fdc384b3e0e86676529d3d8b422f9b.tar.gz buildroot-novena-1548b21ce2fdc384b3e0e86676529d3d8b422f9b.zip |
- add quagga suite
Diffstat (limited to 'package/quagga/quagga.mk')
-rw-r--r-- | package/quagga/quagga.mk | 181 |
1 files changed, 181 insertions, 0 deletions
diff --git a/package/quagga/quagga.mk b/package/quagga/quagga.mk new file mode 100644 index 000000000..3344d1bb2 --- /dev/null +++ b/package/quagga/quagga.mk @@ -0,0 +1,181 @@ +############################################################# +# +# quagga suite +# +############################################################# +QUAGGA_VER:=0.99.7 +QUAGGA_SOURCE:=quagga-$(QUAGGA_VER).tar.gz +QUAGGA_SITE:=http://www.quagga.net/download +QUAGGA_DIR:=$(BUILD_DIR)/quagga-$(QUAGGA_VER) +QUAGGA_CAT:=$(ZCAT) + +QUAGGA_CONFIGURE:= +ifeq ($(BR2_PACKAGE_QUAGGA_ZEBRA),y) +QUAGGA_CONFIGURE+=--enable-zebra +ifndef QUAGGA_TARGET_BINARY +QUAGGA_TARGET_BINARY=zebra +QUAGGA_BINARY=$(QUAGGA_DIR)/zebra/.libs/zebra +endif +else +QUAGGA_CONFIGURE+=--disable-zebra +endif +ifeq ($(BR2_PACKAGE_QUAGGA_BGPD),y) +QUAGGA_CONFIGURE+=--enable-bgpd +ifndef QUAGGA_TARGET_BINARY +QUAGGA_TARGET_BINARY=bgpd +QUAGGA_BINARY=$(QUAGGA_DIR)/bgpd/.libs/bgpd +endif +else +QUAGGA_CONFIGURE+=--disable-bgpd +endif +ifeq ($(BR2_PACKAGE_QUAGGA_RIPD),y) +QUAGGA_CONFIGURE+=--enable-ripd +ifndef QUAGGA_TARGET_BINARY +QUAGGA_TARGET_BINARY=ripd +QUAGGA_BINARY=$(QUAGGA_DIR)/ripd/.libs/ripd +endif +else +QUAGGA_CONFIGURE+=--disable-ripd +endif +ifeq ($(BR2_PACKAGE_QUAGGA_RIPNGD),y) +QUAGGA_CONFIGURE+=--enable-ripngd +ifndef QUAGGA_TARGET_BINARY +QUAGGA_TARGET_BINARY=ripngd +QUAGGA_BINARY=$(QUAGGA_DIR)/ripngd/.libs/ripngd +endif +else +QUAGGA_CONFIGURE+=--disable-ripngd +endif +ifeq ($(BR2_PACKAGE_QUAGGA_OSPFD),y) +QUAGGA_CONFIGURE+=--enable-ospfd +ifndef QUAGGA_TARGET_BINARY +QUAGGA_TARGET_BINARY=ospfd +QUAGGA_BINARY=$(QUAGGA_DIR)/ospfd/.libs/ospfd +endif +else +QUAGGA_CONFIGURE+=--disable-ospfd +endif +ifeq ($(BR2_PACKAGE_QUAGGA_OSPF6D),y) +QUAGGA_CONFIGURE+=--enable-ospf6d +ifndef QUAGGA_TARGET_BINARY +QUAGGA_TARGET_BINARY=ospf6d +QUAGGA_BINARY=$(QUAGGA_DIR)/ospf6d/.libs/ospf6d +endif +else +QUAGGA_CONFIGURE+=--disable-ospf6d +endif +ifeq ($(BR2_PACKAGE_QUAGGA_WATCHQUAGGA),y) +QUAGGA_CONFIGURE+=--enable-watchquagga +ifndef QUAGGA_TARGET_BINARY +QUAGGA_TARGET_BINARY=watchquagga +QUAGGA_BINARY=$(QUAGGA_DIR)/watchquagga/.libs/watchquagga +endif +else +QUAGGA_CONFIGURE+=--disable-watchquagga +endif +ifeq ($(BR2_PACKAGE_QUAGGA_ISISD),y) +QUAGGA_CONFIGURE+=--enable-isisd +ifndef QUAGGA_TARGET_BINARY +QUAGGA_TARGET_BINARY=isisd +QUAGGA_BINARY=$(QUAGGA_DIR)/isisd/.libs/isisd +endif +else +QUAGGA_CONFIGURE+=--disable-isisd +endif + + +ifeq ($(BR2_PACKAGE_QUAGGA_BGP_ANNOUNCE),y) +QUAGGA_CONFIGURE+=--enable-bgp-announce +else +QUAGGA_CONFIGURE+=--disable-bgp-announce +endif +ifeq ($(BR2_PACKAGE_QUAGGA_NETLINK),y) +QUAGGA_CONFIGURE+=--enable-netlink +else +QUAGGA_CONFIGURE+=--disable-netlink +endif +ifeq ($(BR2_PACKAGE_QUAGGA_SNMP),y) +QUAGGA_CONFIGURE+=--enable-snmp +else +QUAGGA_CONFIGURE+=--disable-snmp +endif +ifeq ($(BR2_PACKAGE_QUAGGA_TCP_ZEBRA),y) +QUAGGA_CONFIGURE+=--enable-tcp-zebra +else +QUAGGA_CONFIGURE+=--disable-tcp-zebra +endif +ifeq ($(BR2_PACKAGE_QUAGGA_OPAGUE_LSA),y) +QUAGGA_CONFIGURE+=--enable-opaque-lsa +else +QUAGGA_CONFIGURE+=--disable-opaque-lsa +endif + +QUAGGA_CONFIGURE+=$(subst ",,$(BR2_PACKAGE_QUAGGA_CONFIGURE)) +# ") + +$(DL_DIR)/$(QUAGGA_SOURCE): + $(WGET) -P $(DL_DIR) $(QUAGGA_SITE)/$(QUAGGA_SOURCE) + +ifneq ($(QUAGGA_PATCH),) +QUAGGA_PATCH_FILE=$(DL_DIR)/$(QUAGGA_PATCH) +$(DL_DIR)/$(QUAGGA_PATCH): + $(WGET) -P $(DL_DIR) $(QUAGGA_SITE)/$(QUAGGA_PATCH) +endif +quagga-source: $(DL_DIR)/$(QUAGGA_SOURCE) $(QUAGGA_PATCH_FILE) + +$(QUAGGA_DIR)/.unpacked: $(DL_DIR)/$(QUAGGA_SOURCE) $(DL_DIR)/$(QUAGGA_PATCH) + $(QUAGGA_CAT) $(DL_DIR)/$(QUAGGA_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - + toolchain/patch-kernel.sh $(QUAGGA_DIR) package/quagga/ quagga\*.patch +ifneq ($(QUAGGA_PATCH),) + (cd $(QUAGGA_DIR) && $(QUAGGA_CAT) $(DL_DIR)/$(QUAGGA_PATCH) | patch -p1) + if [ -d $(QUAGGA_DIR)/debian/patches ]; then \ + toolchain/patch-kernel.sh $(QUAGGA_DIR) $(QUAGGA_DIR)/debian/patches \*.patch ; \ + fi +endif + touch $@ + +$(QUAGGA_DIR)/.configured: $(QUAGGA_DIR)/.unpacked + (cd $(QUAGGA_DIR); rm -rf config.cache; \ + $(TARGET_CONFIGURE_OPTS) \ + $(TARGET_CONFIGURE_ARGS) \ + ./configure \ + --target=$(GNU_TARGET_NAME) \ + --host=$(GNU_TARGET_NAME) \ + --build=$(GNU_HOST_NAME) \ + --prefix=/usr \ + --sysconfdir=/etc \ + $(DISABLE_LARGEFILE) \ + $(DISABLE_IPV6) \ + $(QUAGGA_CONFIGURE) \ + --program-transform-name='' \ + ); + touch $@ + +$(QUAGGA_BINARY): $(QUAGGA_DIR)/.configured + $(TARGET_CONFIGURE_OPTS) $(MAKE) CC=$(TARGET_CC) -C $(QUAGGA_DIR) + +$(TARGET_DIR)/usr/sbin/$(QUAGGA_TARGET_BINARY): $(QUAGGA_BINARY) + $(MAKE) DESTDIR=$(TARGET_DIR) -C $(QUAGGA_DIR) install +ifneq ($(BR2_PACKAGE_QUAGGA_HEADERS),y) + rm -rf $(TARGET_DIR)/usr/include/quagga +endif +ifneq ($(BR2_HAVE_MANPAGES),y) + rm -rf $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/info +endif + +quagga: uclibc $(TARGET_DIR)/usr/sbin/$(QUAGGA_TARGET_BINARY) + +quagga-clean: + -$(MAKE) DESTDIR=$(TARGET_DIR) -C $(QUAGGA_DIR) uninstall + -$(MAKE) -C $(QUAGGA_DIR) clean + +quagga-dirclean: + rm -rf $(QUAGGA_DIR) +############################################################# +# +# Toplevel Makefile options +# +############################################################# +ifeq ($(strip $(BR2_PACKAGE_QUAGGA)),y) +TARGETS+=quagga +endif |