[package] unbreak mrd6, fix configuration files and init script installation (#5221)
git-svn-id: svn://svn.openwrt.org/openwrt/packages@16194 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
79ef27cb94
commit
8f0f1f3e82
@ -11,11 +11,9 @@ PKG_NAME:=mrd6
|
|||||||
PKG_VERSION:=0.9.6
|
PKG_VERSION:=0.9.6
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).orig.tar.gz
|
||||||
PKG_SOURCE_URL:=http://fivebits.net/files/mrd6/ \
|
PKG_SOURCE_URL:=http://ftp.de.debian.org/debian/pool/main/m/mrd6/
|
||||||
http://hng.av.it.pt/mrd6/download/
|
PKG_MD5SUM:=a59d87857654ff92426062ad5664fcd6
|
||||||
PKG_MD5SUM:=00221326810358889e811c48cbac415a
|
|
||||||
TAR_OPTIONS:=
|
|
||||||
|
|
||||||
include $(INCLUDE_DIR)/package.mk
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
@ -23,8 +21,8 @@ define Package/mrd6
|
|||||||
SECTION:=ipv6
|
SECTION:=ipv6
|
||||||
CATEGORY:=IPv6
|
CATEGORY:=IPv6
|
||||||
TITLE:=IPv6 multicast routing daemon
|
TITLE:=IPv6 multicast routing daemon
|
||||||
URL:=http://artemis.av.it.pt/mrd6/
|
URL:=http://fivebits.net/proj/mrd6
|
||||||
DEPENDS:= +uclibcxx @BROKEN
|
DEPENDS:= +uclibcxx
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/mrd6/description
|
define Package/mrd6/description
|
||||||
@ -56,8 +54,8 @@ endef
|
|||||||
|
|
||||||
define Package/mrd6/install
|
define Package/mrd6/install
|
||||||
$(INSTALL_DIR) $(1)/etc/init.d
|
$(INSTALL_DIR) $(1)/etc/init.d
|
||||||
$(INSTALL_DATA) files/mrd6.conf $(1)/etc
|
$(INSTALL_CONF) ./files/mrd6.conf $(1)/etc
|
||||||
$(INSTALL_BIN) files/mrd6.init $(1)/etc/init.d/mrd6
|
$(INSTALL_BIN) ./files/mrd6.init $(1)/etc/init.d/mrd6
|
||||||
$(INSTALL_DIR) $(1)/usr/sbin
|
$(INSTALL_DIR) $(1)/usr/sbin
|
||||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mrd $(1)/usr/sbin/mrd6
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mrd $(1)/usr/sbin/mrd6
|
||||||
$(INSTALL_DIR) $(1)/usr/bin
|
$(INSTALL_DIR) $(1)/usr/bin
|
||||||
|
@ -3,8 +3,8 @@ log {
|
|||||||
attach default "/var/log/mrd6.log" message_err;
|
attach default "/var/log/mrd6.log" message_err;
|
||||||
}
|
}
|
||||||
|
|
||||||
interfaces br0 enable = false; // Should be vlan0 + eth1 but Linux bridge seems broken for multicast
|
interfaces disable br-lan; // Should be vlan0 + eth1 but Linux bridge seems broken for multicast
|
||||||
interfaces eth0 enable = false; // Interface to internal bridge
|
interfaces disable eth0; // Interface to internal bridge
|
||||||
handle-proper-bridge = true; // use ETH_P_ALL to see all packets on wrt54g
|
handle-proper-bridge = true; // use ETH_P_ALL to see all packets on wrt54g
|
||||||
|
|
||||||
// The default configured RP is m6bone's Renater RP.
|
// The default configured RP is m6bone's Renater RP.
|
||||||
|
@ -1,14 +0,0 @@
|
|||||||
Index: mrd6-0.9.5/src/Makefile
|
|
||||||
===================================================================
|
|
||||||
--- mrd6-0.9.5.orig/src/Makefile 2007-09-21 13:19:05.000000000 +0200
|
|
||||||
+++ mrd6-0.9.5/src/Makefile 2007-09-21 13:19:05.000000000 +0200
|
|
||||||
@@ -143,7 +143,8 @@
|
|
||||||
install: $(TARGET) $(EXTERNAL_MODULES)
|
|
||||||
install -D $(TARGET) $(DEST_PREFIX)/sbin/$(TARGET)
|
|
||||||
install -D ../tools/mrd6sh $(DEST_PREFIX)/bin/mrd6sh
|
|
||||||
- install -D $(EXTERNAL_MODULES) $(DEST_PREFIX)/lib/mrd6/
|
|
||||||
+ install -d $(DEST_PREFIX)/lib/mrd6
|
|
||||||
+ install $(EXTERNAL_MODULES) $(DEST_PREFIX)/lib/mrd6/
|
|
||||||
|
|
||||||
mrd.version.cpp: $(SOURCES) Makefile
|
|
||||||
@echo '/* This file is automatically generated */' > mrd.version.cpp
|
|
71
ipv6/mrd6/patches/003-debian.patch
Normal file
71
ipv6/mrd6/patches/003-debian.patch
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
--- mrd6-0.9.6.orig/src/log.cpp
|
||||||
|
+++ mrd6-0.9.6/src/log.cpp
|
||||||
|
@@ -667,3 +667,12 @@
|
||||||
|
os.nprintf(32, "%p", val);
|
||||||
|
}
|
||||||
|
|
||||||
|
+#ifdef __s390__
|
||||||
|
+const char *stream_type_format_parameter(size_t) {
|
||||||
|
+ return "u";
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+void stream_push_formated_type(base_stream &os, size_t val) {
|
||||||
|
+ os.nprintf(32, "%z", val);
|
||||||
|
+}
|
||||||
|
+#endif
|
||||||
|
--- mrd6-0.9.6.orig/src/mrd.cpp
|
||||||
|
+++ mrd6-0.9.6/src/mrd.cpp
|
||||||
|
@@ -44,6 +44,7 @@
|
||||||
|
#include <cstdarg>
|
||||||
|
#include <cstdlib>
|
||||||
|
#include <errno.h>
|
||||||
|
+#include <climits>
|
||||||
|
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
@@ -2338,7 +2339,8 @@
|
||||||
|
|
||||||
|
out.xprintf("Uptime: %{duration}\n", time_duration((time(0) - m_startup) * 1000));
|
||||||
|
out.xprintf("Performed tasks: %u (spent %llu ms)\n", m_tasks_stat, m_tasks_time_spent);
|
||||||
|
- out.xprintf("Registered sockets: %u reading, %u writing\n", m_read.size(), m_write.size());
|
||||||
|
+ out.xprintf("Registered sockets: %u reading, %u writing\n",
|
||||||
|
+ (uint32_t)m_read.size(), (uint32_t)m_write.size());
|
||||||
|
out.xprintf("MRIB prefix count: %u\n", mrib().registry_prefix_count());
|
||||||
|
out.xprintf("Interface count: %u\n", m_intflist.size());
|
||||||
|
out.xprintf("Group state count: %u\n", m_grplist.size());
|
||||||
|
--- mrd6-0.9.6.orig/src/bgp/bgp.cpp
|
||||||
|
+++ mrd6-0.9.6/src/bgp/bgp.cpp
|
||||||
|
@@ -35,6 +35,7 @@
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <errno.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
+#include <limits.h>
|
||||||
|
|
||||||
|
#include <map>
|
||||||
|
|
||||||
|
--- mrd6-0.9.6.orig/src/linux/mrd_components.cpp
|
||||||
|
+++ mrd6-0.9.6/src/linux/mrd_components.cpp
|
||||||
|
@@ -92,8 +92,6 @@
|
||||||
|
#if defined(__GLIBC__)
|
||||||
|
#if defined(__i386__)
|
||||||
|
return (void *)base->uc_mcontext.gregs[REG_EIP];
|
||||||
|
-#elif defined(__mips__)
|
||||||
|
- return (void *)base->uc_mcontext.gpregs[CTX_EPC];
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
return 0;
|
||||||
|
--- mrd6-0.9.6.orig/include/mrd/log.h
|
||||||
|
+++ mrd6-0.9.6/include/mrd/log.h
|
||||||
|
@@ -53,6 +53,12 @@
|
||||||
|
void stream_push_formated_type(base_stream &, const char *val);
|
||||||
|
void stream_push_formated_type(base_stream &, const void *val);
|
||||||
|
|
||||||
|
+
|
||||||
|
+#ifdef __s390__
|
||||||
|
+const char *stream_type_format_parameter(size_t);
|
||||||
|
+void stream_push_formated_type(base_stream &, size_t val);
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
/*!
|
||||||
|
* base log stream
|
||||||
|
*/
|
@ -1,19 +0,0 @@
|
|||||||
Index: mrd6-0.9.5/src/icmp_inet6.cpp
|
|
||||||
===================================================================
|
|
||||||
--- mrd6-0.9.5.orig/src/icmp_inet6.cpp 2007-09-21 13:19:04.000000000 +0200
|
|
||||||
+++ mrd6-0.9.5/src/icmp_inet6.cpp 2007-09-21 13:19:06.000000000 +0200
|
|
||||||
@@ -51,6 +51,14 @@
|
|
||||||
#define IP6_ALERT_MLD 0x00
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+#ifndef IP6OPT_PAD1
|
|
||||||
+#define IP6OPT_PAD1 0
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
+#ifndef IP6OPT_PADN
|
|
||||||
+#define IP6OPT_PADN 1
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
static in6_addr mld_all_routers;
|
|
||||||
static in6_addr all_routers;
|
|
||||||
|
|
@ -1,25 +0,0 @@
|
|||||||
diff --git a/src/address.cpp b/src/address.cpp
|
|
||||||
index 453ad42..9f4cf46 100644
|
|
||||||
--- a/src/address.cpp
|
|
||||||
+++ b/src/address.cpp
|
|
||||||
@@ -28,6 +28,8 @@
|
|
||||||
#include <arpa/inet.h>
|
|
||||||
|
|
||||||
#include <cstdio>
|
|
||||||
+#include <cstring>
|
|
||||||
+#include <cstdlib>
|
|
||||||
|
|
||||||
base_stream &operator << (base_stream &os, const inet6_addr &addr) {
|
|
||||||
os.commit_change(addr.print_string(os.req_buffer(64), 64));
|
|
||||||
diff --git a/include/mrd/address.h b/include/mrd/address.h
|
|
||||||
index 80c8e45..1d2a495 100644
|
|
||||||
--- a/include/mrd/address.h
|
|
||||||
+++ b/include/mrd/address.h
|
|
||||||
@@ -31,6 +31,7 @@
|
|
||||||
#include <map>
|
|
||||||
#include <string>
|
|
||||||
#include <vector>
|
|
||||||
+#include <cstring>
|
|
||||||
|
|
||||||
class base_stream;
|
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user