lsof.mk 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. #############################################################
  2. #
  3. # lsof
  4. #
  5. #############################################################
  6. LSOF_VERSION:=4.78
  7. LSOF_SOURCE:=lsof_$(LSOF_VERSION).tar.bz2
  8. LSOF_SITE:=ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/
  9. LSOF_CAT:=$(BZCAT)
  10. LSOF_DIR:=$(BUILD_DIR)/lsof_$(LSOF_VERSION)
  11. LSOF_BINARY:=lsof
  12. LSOF_TARGET_BINARY:=bin/lsof
  13. LSOF_INCLUDE:=$(STAGING_DIR)/usr/include
  14. BR2_LSOF_CFLAGS:=
  15. ifeq ($(BR2_LARGEFILE),)
  16. BR2_LSOF_CFLAGS+=-U_FILE_OFFSET_BITS
  17. endif
  18. ifeq ($(BR2_INET_IPV6),)
  19. BR2_LSOF_CFLAGS+=-UHASIPv6
  20. endif
  21. $(DL_DIR)/$(LSOF_SOURCE):
  22. $(WGET) -P $(DL_DIR) $(LSOF_SITE)/$(LSOF_SOURCE)
  23. lsof-source: $(DL_DIR)/$(LSOF_SOURCE)
  24. lsof-unpacked: $(LSOF_DIR)/.unpacked
  25. $(LSOF_DIR)/.unpacked: $(DL_DIR)/$(LSOF_SOURCE)
  26. $(LSOF_CAT) $(DL_DIR)/$(LSOF_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  27. (cd $(LSOF_DIR);tar xf lsof_$(LSOF_VERSION)_src.tar;rm -f lsof_$(LSOF_VERSION)_src.tar)
  28. toolchain/patch-kernel.sh $(LSOF_DIR) package/lsof/ \*.patch
  29. touch $(LSOF_DIR)/.unpacked
  30. $(LSOF_DIR)/.configured: $(LSOF_DIR)/.unpacked
  31. (cd $(LSOF_DIR)/lsof_$(LSOF_VERSION)_src; echo n | $(TARGET_CONFIGURE_OPTS) DEBUG="$(TARGET_CFLAGS) $(BR2_LSOF_CFLAGS)" LSOF_INCLUDE="$(LSOF_INCLUDE)" ./Configure linux)
  32. touch $(LSOF_DIR)/.configured
  33. $(LSOF_DIR)/lsof_$(LSOF_VERSION)_src/$(LSOF_BINARY): $(LSOF_DIR)/.configured
  34. ifeq ($(UCLIBC_HAS_WCHAR),)
  35. $(SED) 's,^#define[[:space:]]*HASWIDECHAR.*,#undef HASWIDECHAR,' $(LSOF_DIR)/lsof_$(LSOF_VERSION)_src/machine.h
  36. $(SED) 's,^#define[[:space:]]*WIDECHARINCL.*,,' $(LSOF_DIR)/lsof_$(LSOF_VERSION)_src/machine.h
  37. endif
  38. ifeq ($(UCLIBC_HAS_LOCALE),)
  39. $(SED) 's,^#define[[:space:]]*HASSETLOCALE.*,#undef HASSETLOCALE,' $(LSOF_DIR)/lsof_$(LSOF_VERSION)_src/machine.h
  40. endif
  41. $(MAKE) $(TARGET_CONFIGURE_OPTS) DEBUG="$(TARGET_CFLAGS) $(BR2_LSOF_CFLAGS)" -C $(LSOF_DIR)/lsof_$(LSOF_VERSION)_src
  42. $(TARGET_DIR)/$(LSOF_TARGET_BINARY): $(LSOF_DIR)/lsof_$(LSOF_VERSION)_src/$(LSOF_BINARY)
  43. cp $(LSOF_DIR)/lsof_$(LSOF_VERSION)_src/$(LSOF_BINARY) $@
  44. $(STRIPCMD) $@
  45. lsof: uclibc $(TARGET_DIR)/$(LSOF_TARGET_BINARY)
  46. lsof-clean:
  47. -rm -f $(TARGET_DIR)/$(LSOF_TARGET_BINARY)
  48. -$(MAKE) -C $(LSOF_DIR)/lsof_$(LSOF_VERSION)_src clean
  49. lsof-dirclean:
  50. rm -rf $(LSOF_DIR)
  51. #############################################################
  52. #
  53. # Toplevel Makefile options
  54. #
  55. #############################################################
  56. ifeq ($(strip $(BR2_PACKAGE_LSOF)),y)
  57. TARGETS+=lsof
  58. endif