iptables.mk 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #############################################################
  2. #
  3. # iptables
  4. #
  5. #############################################################
  6. IPTABLES_VER:=1.2.11
  7. IPTABLES_SOURCE_URL:=http://www.netfilter.org/files
  8. IPTABLES_SOURCE:=iptables-$(IPTABLES_VER).tar.bz2
  9. IPTABLES_BUILD_DIR:=$(BUILD_DIR)/iptables-$(IPTABLES_VER)
  10. $(DL_DIR)/$(IPTABLES_SOURCE):
  11. $(WGET) -P $(DL_DIR) $(IPTABLES_SOURCE_URL)/$(IPTABLES_SOURCE)
  12. $(IPTABLES_BUILD_DIR)/.unpacked: $(DL_DIR)/$(IPTABLES_SOURCE)
  13. bzcat $(DL_DIR)/$(IPTABLES_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  14. touch $(IPTABLES_BUILD_DIR)/.unpacked
  15. $(IPTABLES_BUILD_DIR)/.configured: $(IPTABLES_BUILD_DIR)/.unpacked
  16. # Allow patches. Needed for openwrt for instance.
  17. toolchain/patch-kernel.sh $(IPTABLES_BUILD_DIR) package/iptables/ iptables-\*.patch
  18. #
  19. $(SED) "s;\[ -f /usr/include/netinet/ip6.h \];grep -q '__UCLIBC_HAS_IPV6__ 1' \
  20. $(BUILD_DIR)/uClibc/include/bits/uClibc_config.h;" $(IPTABLES_BUILD_DIR)/Makefile
  21. touch $(IPTABLES_BUILD_DIR)/.configured
  22. $(IPTABLES_BUILD_DIR)/iptables: $(IPTABLES_BUILD_DIR)/.configured
  23. $(TARGET_CONFIGURE_OPTS) \
  24. $(MAKE) -C $(IPTABLES_BUILD_DIR) \
  25. KERNEL_DIR=$(LINUX_DIR) PREFIX=/usr \
  26. CC=$(TARGET_CC) COPT_FLAGS="$(TARGET_CFLAGS)"
  27. $(TARGET_DIR)/usr/sbin/iptables: $(IPTABLES_BUILD_DIR)/iptables
  28. $(TARGET_CONFIGURE_OPTS) \
  29. $(MAKE) -C $(IPTABLES_BUILD_DIR) \
  30. KERNEL_DIR=$(LINUX_DIR) PREFIX=/usr \
  31. CC=$(TARGET_CC) COPT_FLAGS="$(TARGET_CFLAGS)" \
  32. DESTDIR=$(TARGET_DIR) install
  33. $(STRIP) $(TARGET_DIR)/usr/sbin/iptables*
  34. $(STRIP) $(TARGET_DIR)/usr/lib/iptables/*.so
  35. rm -rf $(TARGET_DIR)/usr/man
  36. iptables: kernel-headers $(TARGET_DIR)/usr/sbin/iptables
  37. iptables-source: $(DL_DIR)/$(IPTABLES_SOURCE)
  38. iptables-clean:
  39. $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(IPTABLES_BUILD_DIR) uninstall
  40. -$(MAKE) -C $(IPTABLES_BUILD_DIR) clean
  41. iptables-dirclean:
  42. rm -rf $(IPTABLES_BUILD_DIR)
  43. #############################################################
  44. #
  45. # Toplevel Makefile options
  46. #
  47. #############################################################
  48. ifeq ($(strip $(BR2_PACKAGE_IPTABLES)),y)
  49. TARGETS+=iptables
  50. endif