tcpdump.mk 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #############################################################
  2. #
  3. # tcpdump
  4. #
  5. #############################################################
  6. # Copyright (C) 2001-2003 by Erik Andersen <andersen@codepoet.org>
  7. # Copyright (C) 2002 by Tim Riker <Tim@Rikers.org>
  8. TCPDUMP_VERSION:=3.9.5
  9. TCPDUMP_DIR:=$(BUILD_DIR)/tcpdump-$(TCPDUMP_VERSION)
  10. TCPDUMP_SITE:=http://www.tcpdump.org/release
  11. TCPDUMP_SOURCE:=tcpdump-$(TCPDUMP_VERSION).tar.gz
  12. TCPDUMP_CAT:=$(ZCAT)
  13. ifneq ($(BR2_PACKAGE_TCPDUMP_SMB),y)
  14. TCPDUMP_ENABLE_SMB:=--disable-smb
  15. else
  16. TCPDUMP_ENABLE_SMB:=--enable-smb
  17. endif
  18. $(DL_DIR)/$(TCPDUMP_SOURCE):
  19. $(call DOWNLOAD,$(TCPDUMP_SITE),$(TCPDUMP_SOURCE))
  20. tcpdump-source: $(DL_DIR)/$(TCPDUMP_SOURCE)
  21. $(TCPDUMP_DIR)/.unpacked: $(DL_DIR)/$(TCPDUMP_SOURCE)
  22. $(TCPDUMP_CAT) $(DL_DIR)/$(TCPDUMP_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  23. toolchain/patch-kernel.sh $(TCPDUMP_DIR) package/tcpdump tcpdump\*.patch
  24. $(CONFIG_UPDATE) $(TCPDUMP_DIR)
  25. touch $@
  26. $(TCPDUMP_DIR)/.configured: $(TCPDUMP_DIR)/.unpacked
  27. (cd $(TCPDUMP_DIR); rm -f config.cache; \
  28. ac_cv_linux_vers=$(BR2_DEFAULT_KERNEL_HEADERS) \
  29. BUILD_CC=$(TARGET_CC) HOSTCC="$(HOSTCC)" \
  30. $(TARGET_CONFIGURE_OPTS) \
  31. $(TARGET_CONFIGURE_ARGS) \
  32. ./configure \
  33. --target=$(GNU_TARGET_NAME) \
  34. --host=$(GNU_TARGET_NAME) \
  35. --build=$(GNU_HOST_NAME) \
  36. --prefix=/usr \
  37. --mandir=/usr/share/man \
  38. --infodir=/usr/share/info \
  39. --without-crypto \
  40. $(TCPDUMP_ENABLE_SMB) \
  41. $(DISABLE_IPV6) \
  42. )
  43. $(SED) '/HAVE_PCAP_DEBUG/d' $(TCPDUMP_DIR)/config.h
  44. touch $@
  45. $(TCPDUMP_DIR)/tcpdump: $(TCPDUMP_DIR)/.configured
  46. $(MAKE) CC="$(TARGET_CC)" \
  47. LDFLAGS="-L$(STAGING_DIR)/usr/lib" \
  48. LIBS="-lpcap" \
  49. INCLS="-I. -I$(STAGING_DIR)/usr/include" \
  50. -C $(TCPDUMP_DIR)
  51. $(TARGET_DIR)/usr/sbin/tcpdump: $(TCPDUMP_DIR)/tcpdump
  52. cp -f $< $@
  53. $(STRIPCMD) $@
  54. tcpdump: uclibc zlib libpcap $(TARGET_DIR)/usr/sbin/tcpdump
  55. tcpdump-clean:
  56. rm -f $(TARGET_DIR)/usr/sbin/tcpdump
  57. -$(MAKE) -C $(TCPDUMP_DIR) clean
  58. tcpdump-dirclean:
  59. rm -rf $(TCPDUMP_DIR)
  60. #############################################################
  61. #
  62. # Toplevel Makefile options
  63. #
  64. #############################################################
  65. ifeq ($(BR2_PACKAGE_TCPDUMP),y)
  66. TARGETS+=tcpdump
  67. endif