diff --git a/package/iptables/Makefile b/package/iptables/Makefile
index 3c4a22ff85e3ed56c07d16358a0ff367835462a1..7c849cb3a63cd6cb12ab5dd84a7314c7b8b7a6e8 100644
--- a/package/iptables/Makefile
+++ b/package/iptables/Makefile
@@ -9,10 +9,10 @@ include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=iptables
-PKG_VERSION:=1.4.9
+PKG_VERSION:=1.4.9.1
 PKG_RELEASE:=1
 
-PKG_MD5SUM:=db1312f7ce5a4c11dc981a2ac76b26e8
+PKG_MD5SUM:=fbadfb0b5f2dbda49e0ad06a798898e3
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=http://www.netfilter.org/projects/iptables/files \
 	ftp://ftp.be.netfilter.org/pub/netfilter/iptables/ \
@@ -20,6 +20,7 @@ PKG_SOURCE_URL:=http://www.netfilter.org/projects/iptables/files \
 	ftp://ftp.no.netfilter.org/pub/netfilter/iptables/
 
 PKG_FIXUP:=libtool
+PKG_INSTALL:=1
 
 include $(INCLUDE_DIR)/package.mk
 ifeq ($(DUMP),)
@@ -245,7 +246,7 @@ endef
 
 define Package/ip6tables
 $(call Package/iptables/Default)
-  DEPENDS:=+kmod-ip6tables
+  DEPENDS:=+kmod-ip6tables +libiptc +libxtables
   CATEGORY:=IPv6
   TITLE:=IPv6 firewall administration tool
   MENU:=1
@@ -292,25 +293,20 @@ CONFIGURE_ARGS += \
 	--enable-shared \
 	--enable-devel \
 	--enable-ipv6 \
+	--enable-libipq \
 	--with-kernel="$(LINUX_DIR)" \
 	--with-xtlibdir=/usr/lib/iptables
 
-IPTABLES_MAKEOPTS = \
-		$(TARGET_CONFIGURE_OPTS) \
-		COPT_FLAGS="$(TARGET_CFLAGS)" \
-		LDFLAGS="-rdynamic -static-libgcc" \
-		KERNEL_DIR="$(LINUX_DIR)" PREFIX=/usr \
-		KBUILD_OUTPUT="$(LINUX_DIR)" \
-		DESTDIR="$(PKG_INSTALL_DIR)" \
-		$(MAKE_TARGETS)
-
-define Build/Compile
-	$(INSTALL_DIR) $(PKG_INSTALL_DIR)
+MAKE_FLAGS := \
+	$(TARGET_CONFIGURE_OPTS) \
+	COPT_FLAGS="$(TARGET_CFLAGS)" \
+	LDFLAGS="-rdynamic -static-libgcc" \
+	KERNEL_DIR="$(LINUX_DIR)" PREFIX=/usr \
+	KBUILD_OUTPUT="$(LINUX_DIR)" \
+
+define Build/Prepare
+$(call Build/Prepare/Default)
 	(cd $(PKG_BUILD_DIR); ./autogen.sh)
-	$(MAKE) -C $(PKG_BUILD_DIR) $(IPTABLES_MAKEOPTS)
-	$(MAKE) -C $(PKG_BUILD_DIR) $(IPTABLES_MAKEOPTS) install
-	$(MAKE) -C $(PKG_BUILD_DIR)/libipq $(IPTABLES_MAKEOPTS)
-	$(MAKE) -C $(PKG_BUILD_DIR)/libipq $(IPTABLES_MAKEOPTS) install
 endef
 
 define Build/InstallDev
@@ -328,9 +324,9 @@ define Build/InstallDev
 
 	$(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
 	$(INSTALL_DIR) $(1)/usr/lib
-	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libxtables.so* $(1)/usr/lib/
-	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libip*tc.so* $(1)/usr/lib/
-	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libipq.so* $(1)/usr/lib/
+	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libxtables.{a,so*} $(1)/usr/lib/
+	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libip*tc.{a,so*} $(1)/usr/lib/
+	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libipq.{a,so*} $(1)/usr/lib/
 	$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
 	$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/xtables.pc $(1)/usr/lib/pkgconfig/
 	$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libiptc.pc $(1)/usr/lib/pkgconfig/
@@ -357,10 +353,6 @@ endef
 define Package/ip6tables/install
 	$(INSTALL_DIR) $(1)/usr/sbin
 	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ip6tables $(1)/usr/sbin/
-	$(INSTALL_DIR) $(1)/usr/lib/iptables
-	(cd $(PKG_INSTALL_DIR)/usr/lib/iptables ; \
-		$(CP) libip6t_*.so $(1)/usr/lib/iptables/ \
-	)
 endef
 
 define Package/ip6tables-utils/install