- add olsr package (Sushi Sensei)
authorBernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Wed, 19 Sep 2007 21:27:49 +0000 (21:27 -0000)
committerBernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Wed, 19 Sep 2007 21:27:49 +0000 (21:27 -0000)
package/Config.in
package/olsr/Config.in [new file with mode: 0644]
package/olsr/S50olsr [new file with mode: 0755]
package/olsr/olsr.mk [new file with mode: 0644]

index 8da0caef1fb2ae8331242f8e6232b505c55e1548..14474afe7be6eb9715b7643e61aa21c9c025de01 100644 (file)
@@ -161,6 +161,7 @@ source "package/netplug/Config.in"
 source "package/netsnmp/Config.in"
 source "package/nfs-utils/Config.in"
 source "package/ntp/Config.in"
+source "package/olsr/Config.in"
 source "package/openntpd/Config.in"
 source "package/openssh/Config.in"
 source "package/openssl/Config.in"
diff --git a/package/olsr/Config.in b/package/olsr/Config.in
new file mode 100644 (file)
index 0000000..cfdcba6
--- /dev/null
@@ -0,0 +1,12 @@
+config BR2_PACKAGE_OLSR
+       bool "OLSR mesh networking Daemon"
+       default n
+       help
+         olsr
+         
+         The Optimized Link State Routing protocol (OLSR) is a routing protocol that is optimised
+         for mobile ad-hoc networks, sometimes called wireless mesh networks. It is a proactive
+         link-state routing protocol that floods a full topology table to all nodes in the network
+         which then compute optimal forwarding paths locally.
+
+         http://www.olsr.org/
diff --git a/package/olsr/S50olsr b/package/olsr/S50olsr
new file mode 100755 (executable)
index 0000000..96b851b
--- /dev/null
@@ -0,0 +1,21 @@
+#!/bin/sh
+#
+# Starts OLSRD daemon
+#
+
+case "$1" in
+  start)
+       echo "Starting OLSRd daemon: "
+       /usr/sbin/olsrd -d 0 -nofork & 
+       ;;
+  stop)
+       echo "Stopping OLSRd daemon: "
+       killall olsrd
+       ;;
+  *)
+       echo $"Usage: $0 {start|stop}"
+       exit 1
+esac
+
+exit $?
+
diff --git a/package/olsr/olsr.mk b/package/olsr/olsr.mk
new file mode 100644 (file)
index 0000000..a68da10
--- /dev/null
@@ -0,0 +1,63 @@
+#############################################################
+#
+# olsr
+#
+#############################################################
+
+OLSR_VERSION_MAJOR=0.5
+OLSR_VERSION_MINOR=3
+OLSR_VERSION:=$(OLSR_VERSION_MAJOR).$(OLSR_VERSION_MINOR)
+OLSR_SOURCE:=olsrd-$(OLSR_VERSION).tar.bz2
+OLSR_SITE:=http://www.olsr.org/releases/$(OLSR_VERSION_MAJOR)
+OLSR_DIR:=$(BUILD_DIR)/olsrd-$(OLSR_VERSION)
+OLSR_CAT:=$(BZCAT)
+OLSR_BINARY:=olsrd
+OLSR_TARGET_BINARY:=usr/bin/olsrd
+#OLSR_PLUGINS=httpinfo tas dot_draw nameservice dyn_gw dyn_gw_plain pgraph bmf quagga secure
+OLSR_PLUGINS=dot_draw dyn_gw secure
+OLSR_TARGET_PLUGIN=usr/lib/
+
+$(DL_DIR)/$(OLSR_SOURCE):
+       $(WGET) -P $(DL_DIR) $(OLSR_SITE)/$(OLSR_SOURCE)
+
+olsr-source: $(DL_DIR)/$(OLSR_SOURCE)
+
+olsr-unpacked: $(OLSR_DIR)/.unpacked
+$(OLSR_DIR)/.unpacked: $(DL_DIR)/$(OLSR_SOURCE)
+       $(OLSR_CAT) $(DL_DIR)/$(OLSR_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+       touch $@
+
+$(OLSR_DIR)/$(OLSR_BINARY): $(OLSR_DIR)/.unpacked
+       $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(OLSR_DIR) olsrd $(OLSR_PLUGINS)
+
+$(TARGET_DIR)/$(OLSR_TARGET_BINARY): $(OLSR_DIR)/$(OLSR_BINARY)
+       rm -f $(TARGET_DIR)/$(OLSR_TARGET_BINARY)
+       cp -dpf $(OLSR_DIR)/$(OLSR_BINARY) $(TARGET_DIR)/$(OLSR_TARGET_BINARY)
+       cp -R $(OLSR_DIR)/lib/*/olsrd_*.so* $(TARGET_DIR)/$(OLSR_TARGET_PLUGIN)
+       mkdir -p $(TARGET_DIR)/etc/init.d
+       cp -dpf package/olsr/S50olsr $(TARGET_DIR)/etc/init.d/
+       test -r $(TARGET_DIR)/etc/olsrd.conf || \
+               cp -dpf $(OLSR_DIR)/files/olsrd.conf.default.lq $(TARGET_DIR)/etc/olsrd.conf
+       -$(STRIP) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/$(OLSR_TARGET_PLUGIN)/olsrd_*.so*
+       $(STRIP) $(STRIP_STRIP_ALL) $@
+
+olsr: uclibc $(TARGET_DIR)/$(OLSR_TARGET_BINARY)
+
+olsr-clean:
+       rm -f $(TARGET_DIR)/$(OLSR_TARGET_BINARY) \
+               $(TARGET_DIR)/$(OLSR_TARGET_PLUGIN)/olsrd_*.so* \
+               $(TARGET_DIR)/etc/init.d/S50olsr \
+               $(TARGET_DIR)/etc/olsrd.conf
+       -$(MAKE) -C $(OLSR_DIR) clean
+
+olsr-dirclean:
+       rm -rf $(OLSR_DIR)
+
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(strip $(BR2_PACKAGE_OLSR)),y)
+TARGETS+=olsr $(OLSR_PLUGINS)
+endif