findutils.mk 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #############################################################
  2. #
  3. # findutils
  4. #
  5. #############################################################
  6. FINDUTILS_VER:=4.1.20
  7. FINDUTILS_SOURCE:=findutils-$(FINDUTILS_VER).tar.gz
  8. FINDUTILS_SITE:=ftp://alpha.gnu.org/gnu/findutils
  9. FINDUTILS_CAT:=zcat
  10. FINDUTILS_DIR:=$(BUILD_DIR)/findutils-$(FINDUTILS_VER)
  11. FINDUTILS_BINARY:=find/find
  12. FINDUTILS_TARGET_BINARY:=usr/bin/find
  13. $(DL_DIR)/$(FINDUTILS_SOURCE):
  14. $(WGET) -P $(DL_DIR) $(FINDUTILS_SITE)/$(FINDUTILS_SOURCE)
  15. findutils-source: $(DL_DIR)/$(FINDUTILS_SOURCE)
  16. $(FINDUTILS_DIR)/.unpacked: $(DL_DIR)/$(FINDUTILS_SOURCE)
  17. $(FINDUTILS_CAT) $(DL_DIR)/$(FINDUTILS_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  18. touch $(FINDUTILS_DIR)/.unpacked
  19. $(FINDUTILS_DIR)/.configured: $(FINDUTILS_DIR)/.unpacked
  20. (cd $(FINDUTILS_DIR); rm -rf config.cache; \
  21. $(TARGET_CONFIGURE_OPTS) \
  22. CFLAGS="$(TARGET_CFLAGS)" \
  23. ac_cv_func_setvbuf_reversed=no \
  24. ./configure \
  25. --target=$(GNU_TARGET_NAME) \
  26. --host=$(GNU_TARGET_NAME) \
  27. --build=$(GNU_HOST_NAME) \
  28. --prefix=/usr \
  29. --exec-prefix=/usr \
  30. --bindir=/usr/bin \
  31. --sbindir=/usr/sbin \
  32. --libexecdir=/usr/lib/locate \
  33. --sysconfdir=/etc \
  34. --datadir=/usr/share \
  35. --localstatedir=/var/lib \
  36. --mandir=/usr/man \
  37. --infodir=/usr/info \
  38. $(DISABLE_NLS) \
  39. $(DISABLE_LARGEFILE) \
  40. );
  41. touch $(FINDUTILS_DIR)/.configured
  42. $(FINDUTILS_DIR)/$(FINDUTILS_BINARY): $(FINDUTILS_DIR)/.configured
  43. $(MAKE) CC=$(TARGET_CC) -C $(FINDUTILS_DIR)
  44. # This stuff is needed to work around GNU make deficiencies
  45. findutils-target_binary: $(FINDUTILS_DIR)/$(FINDUTILS_BINARY)
  46. @if [ -L $(TARGET_DIR)/$(FINDUTILS_TARGET_BINARY) ] ; then \
  47. rm -f $(TARGET_DIR)/$(FINDUTILS_TARGET_BINARY); fi;
  48. @if [ ! -f $(FINDUTILS_DIR)/$(FINDUTILS_BINARY) -o $(TARGET_DIR)/$(FINDUTILS_TARGET_BINARY) \
  49. -ot $(FINDUTILS_DIR)/$(FINDUTILS_BINARY) ] ; then \
  50. set -x; \
  51. $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(FINDUTILS_DIR) install; \
  52. $(STRIP) $(TARGET_DIR)/usr/lib/locate/* > /dev/null 2>&1; \
  53. rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
  54. $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc; fi;
  55. findutils: uclibc findutils-target_binary
  56. findutils-clean:
  57. $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(FINDUTILS_DIR) uninstall
  58. -$(MAKE) -C $(FINDUTILS_DIR) clean
  59. findutils-dirclean:
  60. rm -rf $(FINDUTILS_DIR)
  61. #############################################################
  62. #
  63. # Toplevel Makefile options
  64. #
  65. #############################################################
  66. ifeq ($(strip $(BR2_PACKAGE_FINDUTILS)),y)
  67. TARGETS+=findutils
  68. endif