2.6.38 introduced a dependency from bridge to IPv6. Since IPv6 support
will probably get much more important in the next years anyway, it should
be OK to just include it in the kernel for 2.6.38 and later.

Signed-off-by: Jonas Gorski <[email protected]>
---
 package/kernel/modules/001-depends.mk |    9 +++++++++
 package/kernel/modules/netfilter.mk   |    2 +-
 package/kernel/modules/netsupport.mk  |    9 ++++++---
 target/linux/generic/config-2.6.38    |   10 ++++++----
 target/linux/generic/config-2.6.39    |   10 ++++++----
 5 files changed, 28 insertions(+), 12 deletions(-)

diff --git a/package/kernel/modules/001-depends.mk 
b/package/kernel/modules/001-depends.mk
index 602775c..a6d4755 100644
--- a/package/kernel/modules/001-depends.mk
+++ b/package/kernel/modules/001-depends.mk
@@ -35,6 +35,15 @@ define AddDepends/input
 endef
 
 
+define SetDepends/ipv6
+  DEPENDS:= @!(LINUX_2_6_38||LINUX_2_6_39)
+endef
+
+define AddDepends/ipv6
+  DEPENDS+= +!(LINUX_2_6_38||LINUX_2_6_39):kmod-ipv6
+endef
+
+
 define SetDepends/rfkill
   DEPENDS:= 
@(TARGET_ar71xx||TARGET_brcm47xx||TARGET_s3c24xx||TARGET_x86||TARGET_gemini)
 endef
diff --git a/package/kernel/modules/netfilter.mk 
b/package/kernel/modules/netfilter.mk
index 9f6e23a..24346a1 100644
--- a/package/kernel/modules/netfilter.mk
+++ b/package/kernel/modules/netfilter.mk
@@ -296,7 +296,7 @@ $(eval $(call KernelPackage,ipt-led))
 
 define KernelPackage/ipt-tproxy
   TITLE:=Transparent proxying support
-  DEPENDS+=+IPV6:kmod-ipv6
+  DEPENDS+=+(IPV6&&!LINUX_2_6_38&&!LINUX_2_6_39):kmod-ipv6
   KCONFIG:= \
        CONFIG_NETFILTER_TPROXY \
        CONFIG_NETFILTER_XT_MATCH_SOCKET \
diff --git a/package/kernel/modules/netsupport.mk 
b/package/kernel/modules/netsupport.mk
index 8987fe4..cba9b23 100644
--- a/package/kernel/modules/netsupport.mk
+++ b/package/kernel/modules/netsupport.mk
@@ -299,11 +299,11 @@ $(eval $(call KernelPackage,iptunnel4))
 define KernelPackage/iptunnel6
   SUBMENU:=$(NETWORK_SUPPORT_MENU)
   TITLE:=IPv6 tunneling
-  DEPENDS:= +kmod-ipv6
   KCONFIG:= \
        CONFIG_INET6_TUNNEL
   FILES:=$(LINUX_DIR)/net/ipv6/tunnel6.ko
   AUTOLOAD:=$(call AutoLoad,31,tunnel6)
+  $(call AddDepends/ipv6)
 endef
 
 define KernelPackage/iptunnel6/description
@@ -325,6 +325,7 @@ define KernelPackage/ipv6
        CONFIG_IPV6_SUBTREES=y
   FILES:=$(LINUX_DIR)/net/ipv6/ipv6.ko
   AUTOLOAD:=$(call AutoLoad,20,ipv6)
+  $(call SetDepends/ipv6)
 endef
 
 define KernelPackage/ipv6/description
@@ -336,12 +337,13 @@ $(eval $(call KernelPackage,ipv6))
 
 define KernelPackage/sit
   SUBMENU:=$(NETWORK_SUPPORT_MENU)
-  DEPENDS:=+kmod-ipv6 +kmod-iptunnel4
+  DEPENDS:= +kmod-iptunnel4
   TITLE:=IPv6-in-IPv4 tunnel
   KCONFIG:=CONFIG_IPV6_SIT \
        CONFIG_IPV6_SIT_6RD=y
   FILES:=$(LINUX_DIR)/net/ipv6/sit.ko
   AUTOLOAD:=$(call AutoLoad,32,sit)
+  $(call AddDepends/ipv6)
 endef
 
 define KernelPackage/sit/description
@@ -354,10 +356,11 @@ $(eval $(call KernelPackage,sit))
 define KernelPackage/ip6-tunnel
   SUBMENU:=$(NETWORK_SUPPORT_MENU)
   TITLE:=IP-in-IPv6 tunnelling
-  DEPENDS:= +kmod-ipv6 +kmod-iptunnel6
+  DEPENDS:= +kmod-iptunnel6
   KCONFIG:= CONFIG_IPV6_TUNNEL
   FILES:=$(LINUX_DIR)/net/ipv6/ip6_tunnel.ko
   AUTOLOAD:=$(call AutoLoad,32,ip6_tunnel)
+  $(call AddDepends/ipv6)
 endef
 
 define KernelPackage/ip6-tunnel/description
diff --git a/target/linux/generic/config-2.6.38 
b/target/linux/generic/config-2.6.38
index 6c1fb03..2b58f02 100644
--- a/target/linux/generic/config-2.6.38
+++ b/target/linux/generic/config-2.6.38
@@ -1038,18 +1038,20 @@ CONFIG_IOSCHED_NOOP=y
 # CONFIG_IP6_NF_TARGET_REJECT is not set
 # CONFIG_IPC_NS is not set
 # CONFIG_IPMI_HANDLER is not set
-# CONFIG_IPV6 is not set
+CONFIG_IPV6=y
 # CONFIG_IPV6_MIP6 is not set
-# CONFIG_IPV6_MROUTE is not set
+CONFIG_IPV6_MROUTE=y
 # CONFIG_IPV6_MROUTE_MULTIPLE_TABLES is not set
-# CONFIG_IPV6_MULTIPLE_TABLES is not set
+CONFIG_IPV6_MULTIPLE_TABLES=y
 CONFIG_IPV6_NDISC_NODETYPE=y
 # CONFIG_IPV6_OPTIMISTIC_DAD is not set
-# CONFIG_IPV6_PRIVACY is not set
+# CONFIG_IPV6_PIMSM_V2 is not set
+CONFIG_IPV6_PRIVACY=y
 # CONFIG_IPV6_ROUTER_PREF is not set
 # CONFIG_IPV6_ROUTE_INFO is not set
 # CONFIG_IPV6_SIT is not set
 # CONFIG_IPV6_SIT_6RD is not set
+CONFIG_IPV6_SUBTREES=y
 # CONFIG_IPV6_TUNNEL is not set
 # CONFIG_IPW2100 is not set
 # CONFIG_IPW2100_DEBUG is not set
diff --git a/target/linux/generic/config-2.6.39 
b/target/linux/generic/config-2.6.39
index 117e437..f2f33da 100644
--- a/target/linux/generic/config-2.6.39
+++ b/target/linux/generic/config-2.6.39
@@ -1045,18 +1045,20 @@ CONFIG_IOSCHED_NOOP=y
 # CONFIG_IP6_NF_TARGET_REJECT is not set
 # CONFIG_IPC_NS is not set
 # CONFIG_IPMI_HANDLER is not set
-# CONFIG_IPV6 is not set
+CONFIG_IPV6=y
 # CONFIG_IPV6_MIP6 is not set
-# CONFIG_IPV6_MROUTE is not set
+CONFIG_IPV6_MROUTE=y
 # CONFIG_IPV6_MROUTE_MULTIPLE_TABLES is not set
-# CONFIG_IPV6_MULTIPLE_TABLES is not set
+CONFIG_IPV6_MULTIPLE_TABLES=y
 CONFIG_IPV6_NDISC_NODETYPE=y
 # CONFIG_IPV6_OPTIMISTIC_DAD is not set
-# CONFIG_IPV6_PRIVACY is not set
+# CONFIG_IPV6_PIMSM_V2 is not set
+CONFIG_IPV6_PRIVACY=y
 # CONFIG_IPV6_ROUTER_PREF is not set
 # CONFIG_IPV6_ROUTE_INFO is not set
 # CONFIG_IPV6_SIT is not set
 # CONFIG_IPV6_SIT_6RD is not set
+CONFIG_IPV6_SUBTREES=y
 # CONFIG_IPV6_TUNNEL is not set
 # CONFIG_IPW2100 is not set
 # CONFIG_IPW2100_DEBUG is not set
-- 
1.5.6.5

_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to