findutils.mk 2.6 KB

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