From 7ee09b7e92b64ad11670aed94c0e277babddf8a3 Mon Sep 17 00:00:00 2001
From: nico <nico@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Mon, 24 Jul 2006 07:20:08 +0000
Subject: [PATCH] port olsrd to buildroot-ng

git-svn-id: svn://svn.openwrt.org/openwrt/packages@4251 3c298f89-4303-0410-b956-a3cf2f4a3e73
---
 net/olsrd/Makefile                            | 152 ++++++++++++++++++
 net/olsrd/files/olsrd.init                    |  15 ++
 net/olsrd/files/olsrd_secure_key              |   1 +
 .../patches/olsrd-0.4.10-debug_level.patch    |  11 ++
 net/olsrd/patches/olsrd-0.4.10-opt-flags.diff |  12 ++
 .../patches/olsrd-0.4.9-secure-key-path.path  |  12 ++
 6 files changed, 203 insertions(+)
 create mode 100644 net/olsrd/Makefile
 create mode 100644 net/olsrd/files/olsrd.init
 create mode 100644 net/olsrd/files/olsrd_secure_key
 create mode 100644 net/olsrd/patches/olsrd-0.4.10-debug_level.patch
 create mode 100644 net/olsrd/patches/olsrd-0.4.10-opt-flags.diff
 create mode 100644 net/olsrd/patches/olsrd-0.4.9-secure-key-path.path

diff --git a/net/olsrd/Makefile b/net/olsrd/Makefile
new file mode 100644
index 000000000..b699164fa
--- /dev/null
+++ b/net/olsrd/Makefile
@@ -0,0 +1,152 @@
+# 
+# Copyright (C) 2006 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+# $Id$
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=olsrd
+PKG_VERSION:=0.4.10
+PKG_RELEASE:=1
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_SOURCE_URL:=http://www.olsr.org/releases/0.4
+PKG_MD5SUM:=9807d4451e65cb4ec385155eef7bf3cf
+PKG_CAT:=bzcat
+
+PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/olsrd
+  SECTION:=net
+  CATEGORY:=Network
+  TITLE:=OLSR (Optimized Link State Routing) daemon
+  URL:=http://www.olsr.org/
+endef
+
+define Package/olsrd/conffiles
+/etc/olsrd.conf
+endef
+
+define Package/olsrd-mod-dot-draw
+  $(call Package/olsrd)
+  DEPENDS:=olsrd
+  TITLE:=Dot topology information plugin
+endef
+
+define Package/olsrd-mod-dyn-gw
+  $(call Package/olsrd)
+  DEPENDS:=olsrd
+  TITLE:=Dynamic internet gateway plugin
+endef
+
+define Package/olsrd-mod-httpinfo
+  $(call Package/olsrd)
+  DEPENDS:=olsrd
+  TITLE:=Small informative web server plugin
+endef
+
+define Package/olsrd-mod-nameservice
+  $(call Package/olsrd)
+  DEPENDS:=olsrd
+  TITLE:=Lightweight hostname resolver plugin
+endef
+
+define Package/olsrd-mod-power
+  $(call Package/olsrd)
+  DEPENDS:=olsrd
+  TITLE:=Power status plugin
+endef
+
+define Package/olsrd-mod-secure
+  $(call Package/olsrd)
+  DEPENDS:=olsrd
+  TITLE:=Message signing plugin to secure routing domain
+endef
+
+define Package/olsrd-mod-secure/conffiles
+/etc/olsrd.d/olsrd_secure_key
+endef
+
+define Package/olsrd-mod-tas
+  $(call Package/olsrd)
+  DEPENDS:=olsrd
+  TITLE:=Tiny Application Server (TAS) plugin
+endef
+
+define Build/Configure
+endef
+
+define Build/Compile
+	rm -rf $(PKG_INSTALL_DIR)
+	mkdir -p $(PKG_INSTALL_DIR)
+	$(MAKE) -C "$(PKG_BUILD_DIR)" \
+		$(TARGET_CONFIGURE_OPTS) \
+		NODEBUG=1 \
+		OFLAGS="$(TARGET_CFLAGS)" \
+		OS="linux" \
+		INSTALL_PREFIX="$(PKG_INSTALL_DIR)" \
+		STRIP="/bin/true" \
+		all libs install install_libs
+endef
+
+define Package/olsrd/install
+	install -d -m0755 $(1)/etc
+	$(CP) $(PKG_INSTALL_DIR)/etc/olsrd.conf $(1)/etc/
+	install -d -m0755 $(1)/usr/sbin
+	$(CP) $(PKG_INSTALL_DIR)/usr/sbin/olsrd $(1)/usr/sbin/
+	install -d -m0755 $(1)/etc/init.d
+	install -m0755 ./files/olsrd.init $(1)/etc/init.d/S60olsrd
+endef
+
+define Package/olsrd-mod-dot-draw/install
+	install -d -m0755 $(1)/usr/lib
+	install -m0755 $(PKG_INSTALL_DIR)/usr/lib/olsrd_dot_draw.so.* $(1)/usr/lib/
+endef
+
+define Package/olsrd-mod-dyn-gw/install
+	install -d -m0755 $(1)/usr/lib
+	install -m0755 $(PKG_INSTALL_DIR)/usr/lib/olsrd_dyn_gw.so.* $(1)/usr/lib/
+endef
+
+define Package/olsrd-mod-httpinfo/install
+	install -d -m0755 $(1)/usr/lib
+	install -m0755 $(PKG_INSTALL_DIR)/usr/lib/olsrd_httpinfo.so.* $(1)/usr/lib/
+endef
+
+define Package/olsrd-mod-nameservice/install
+	install -d -m0755 $(1)/usr/lib
+	install -m0755 $(PKG_INSTALL_DIR)/usr/lib/olsrd_nameservice.so.* $(1)/usr/lib/
+endef
+
+define Package/olsrd-mod-power/install
+	install -d -m0755 $(1)/usr/lib
+	install -m0755 $(PKG_INSTALL_DIR)/usr/lib/olsrd_power.so.* $(1)/usr/lib/
+endef
+
+define Package/olsrd-mod-secure/install
+	install -d -m0755 $(1)/etc/olsrd.d
+	$(CP) ./files/olsrd_secure_key $(1)/etc/olsrd.d/
+	install -d -m0755 $(1)/usr/lib
+	install -m0755 $(PKG_INSTALL_DIR)/usr/lib/olsrd_secure.so.* $(1)/usr/lib/
+endef
+
+define Package/olsrd-mod-tas/install
+	install -d -m0755 $(1)/usr/lib
+	install -m0755 $(PKG_INSTALL_DIR)/usr/lib/olsrd_tas.so.* $(1)/usr/lib/
+endef
+
+
+$(eval $(call BuildPackage,olsrd))
+$(eval $(call BuildPackage,olsrd-mod-dot-draw))
+$(eval $(call BuildPackage,olsrd-mod-dyn-gw))
+$(eval $(call BuildPackage,olsrd-mod-httpinfo))
+$(eval $(call BuildPackage,olsrd-mod-nameservice))
+$(eval $(call BuildPackage,olsrd-mod-power))
+$(eval $(call BuildPackage,olsrd-mod-secure))
+$(eval $(call BuildPackage,olsrd-mod-tas))
diff --git a/net/olsrd/files/olsrd.init b/net/olsrd/files/olsrd.init
new file mode 100644
index 000000000..1f1fdb951
--- /dev/null
+++ b/net/olsrd/files/olsrd.init
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+DEFAULT=/etc/default/olsrd
+[ -f $DEFAULT ] && . $DEFAULT
+
+case $1 in
+ start)
+  olsrd $OPTIONS
+  ;;
+ *)
+  echo "usage: $0 (start)"
+  exit 1
+esac
+
+exit $?
diff --git a/net/olsrd/files/olsrd_secure_key b/net/olsrd/files/olsrd_secure_key
new file mode 100644
index 000000000..4a7d7258f
--- /dev/null
+++ b/net/olsrd/files/olsrd_secure_key
@@ -0,0 +1 @@
+1234567890123456
\ No newline at end of file
diff --git a/net/olsrd/patches/olsrd-0.4.10-debug_level.patch b/net/olsrd/patches/olsrd-0.4.10-debug_level.patch
new file mode 100644
index 000000000..d04272ed8
--- /dev/null
+++ b/net/olsrd/patches/olsrd-0.4.10-debug_level.patch
@@ -0,0 +1,11 @@
+--- olsrd-0.4.10/files/olsrd.conf.default.rfc	2005-06-04 17:34:05.000000000 +0200
++++ olsrd-0.4.10.new/files/olsrd.conf.default.rfc	2006-05-21 21:44:55.000000000 +0200
+@@ -9,7 +9,7 @@
+ # Debug level(0-9)
+ # If set to 0 the daemon runs in the background
+ 
+-DebugLevel	1
++DebugLevel	0
+ 
+ # IP version to use (4 or 6)
+ 
diff --git a/net/olsrd/patches/olsrd-0.4.10-opt-flags.diff b/net/olsrd/patches/olsrd-0.4.10-opt-flags.diff
new file mode 100644
index 000000000..02d1cc813
--- /dev/null
+++ b/net/olsrd/patches/olsrd-0.4.10-opt-flags.diff
@@ -0,0 +1,12 @@
+diff -ruN olsrd-0.4.10-old/Makefile.inc olsrd-0.4.10-new/Makefile.inc
+--- olsrd-0.4.10-old/Makefile.inc	2006-01-01 16:58:20.000000000 +0100
++++ olsrd-0.4.10-new/Makefile.inc	2006-01-05 17:57:23.000000000 +0100
+@@ -21,7 +21,7 @@
+ ifndef CFLAGS
+ CFLAGS +=	-Wall -Wmissing-prototypes -Wstrict-prototypes \
+ 		-Wmissing-declarations -Wsign-compare
+-CFLAGS +=	-O2 -g
++CFLAGS +=	$(OFLAGS)
+ endif
+ 
+ ifdef OLSRD_PLUGIN
diff --git a/net/olsrd/patches/olsrd-0.4.9-secure-key-path.path b/net/olsrd/patches/olsrd-0.4.9-secure-key-path.path
new file mode 100644
index 000000000..fcae75986
--- /dev/null
+++ b/net/olsrd/patches/olsrd-0.4.9-secure-key-path.path
@@ -0,0 +1,12 @@
+diff -ruN olsrd-0.4.9-orig/lib/secure/src/olsrd_secure.h olsrd-0.4.9-1/lib/secure/src/olsrd_secure.h
+--- olsrd-0.4.9-orig/lib/secure/src/olsrd_secure.h	2005-03-10 20:57:48.000000000 +0100
++++ olsrd-0.4.9-1/lib/secure/src/olsrd_secure.h	2005-04-05 00:51:40.000000000 +0200
+@@ -43,7 +43,7 @@
+ 
+ #include "olsrd_plugin.h"
+ 
+-#define KEYFILE "/root/.olsr/olsrd_secure_key"
++#define KEYFILE "/etc/olsrd.d/olsrd_secure_key"
+ 
+ /* Schemes */
+ #define ONE_CHECKSUM          1