file.mk 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #############################################################
  2. #
  3. # file
  4. #
  5. #############################################################
  6. FILE_VER:=4.12
  7. FILE_SOURCE:=file-$(FILE_VER).tar.gz
  8. FILE_SITE:=ftp://ftp.astron.com/pub/file
  9. FILE_DIR:=$(BUILD_DIR)/file-$(FILE_VER)
  10. FILE_CAT:=zcat
  11. FILE_BINARY:=src/file
  12. FILE_TARGET_BINARY:=usr/bin/file
  13. $(DL_DIR)/$(FILE_SOURCE):
  14. $(WGET) -P $(DL_DIR) $(FILE_SITE)/$(FILE_SOURCE)
  15. file-source: $(DL_DIR)/$(FILE_SOURCE)
  16. $(FILE_DIR)/.unpacked: $(DL_DIR)/$(FILE_SOURCE)
  17. $(FILE_CAT) $(DL_DIR)/$(FILE_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  18. toolchain/patch-kernel.sh $(FILE_DIR) package/file/ file\*.patch
  19. touch $(FILE_DIR)/.unpacked
  20. $(FILE_DIR)/.configured: $(FILE_DIR)/.unpacked
  21. (cd $(FILE_DIR); rm -rf config.cache; \
  22. $(TARGET_CONFIGURE_OPTS) \
  23. CFLAGS="$(TARGET_CFLAGS)" \
  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 \
  33. --sysconfdir=/etc \
  34. --datadir=/usr/share/misc \
  35. --localstatedir=/var \
  36. --mandir=/usr/man \
  37. --infodir=/usr/info \
  38. $(DISABLE_NLS) \
  39. $(DISABLE_LARGEFILE) \
  40. --enable-static \
  41. --disable-fsect-man5 \
  42. );
  43. touch $(FILE_DIR)/.configured
  44. $(FILE_DIR)/$(FILE_BINARY): $(FILE_DIR)/.configured
  45. $(MAKE) $(TARGET_CONFIGURE_OPTS) LDFLAGS="-static" -C $(FILE_DIR)
  46. $(TARGET_DIR)/$(FILE_TARGET_BINARY): $(FILE_DIR)/$(FILE_BINARY)
  47. $(MAKE) $(TARGET_CONFIGURE_OPTS) DESTDIR=$(TARGET_DIR) -C $(FILE_DIR) install
  48. -($(STRIP) $(TARGET_DIR)/usr/lib/libmagic.so.*.* > /dev/null 2>&1)
  49. rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
  50. $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
  51. file: zlib uclibc $(TARGET_DIR)/$(FILE_TARGET_BINARY)
  52. file-clean:
  53. $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(FILE_DIR) uninstall
  54. -$(MAKE) -C $(FILE_DIR) clean
  55. file-dirclean:
  56. rm -rf $(FILE_DIR)
  57. #############################################################
  58. #
  59. # Toplevel Makefile options
  60. #
  61. #############################################################
  62. ifeq ($(strip $(BR2_PACKAGE_FILE)),y)
  63. TARGETS+=file
  64. endif