dosfstools.mk 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. #############################################################
  2. #
  3. # dosfstools
  4. #
  5. #############################################################
  6. DOSFSTOOLS_VERSION:=3.0.3
  7. DOSFSTOOLS_SOURCE:=dosfstools-$(DOSFSTOOLS_VERSION).tar.gz
  8. DOSFSTOOLS_SITE:=http://www.daniel-baumann.ch/software/dosfstools
  9. DOSFSTOOLS_DIR:=$(BUILD_DIR)/dosfstools-$(DOSFSTOOLS_VERSION)
  10. DOSFSTOOLS_CAT:=$(ZCAT)
  11. MKDOSFS_BINARY:=mkdosfs
  12. MKDOSFS_TARGET_BINARY:=sbin/mkdosfs
  13. DOSFSCK_BINARY:=dosfsck
  14. DOSFSCK_TARGET_BINARY:=sbin/dosfsck
  15. DOSFSLABEL_BINARY:=dosfslabel
  16. DOSFSLABEL_TARGET_BINARY:=sbin/dosfslabel
  17. $(DL_DIR)/$(DOSFSTOOLS_SOURCE):
  18. $(call DOWNLOAD,$(DOSFSTOOLS_SITE),$(DOSFSTOOLS_SOURCE))
  19. dosfstools-source: $(DL_DIR)/$(DOSFSTOOLS_SOURCE)
  20. $(DOSFSTOOLS_DIR)/.unpacked: $(DL_DIR)/$(DOSFSTOOLS_SOURCE) $(wildcard local/dosfstools/dosfstools*.patch)
  21. $(DOSFSTOOLS_CAT) $(DL_DIR)/$(DOSFSTOOLS_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  22. toolchain/patch-kernel.sh $(DOSFSTOOLS_DIR) package/dosfstools/ dosfstools\*.patch
  23. touch $(DOSFSTOOLS_DIR)/.unpacked
  24. $(DOSFSTOOLS_DIR)/.built : $(DOSFSTOOLS_DIR)/.unpacked
  25. $(MAKE) CFLAGS="$(TARGET_CFLAGS)" CC="$(TARGET_CC)" -C $(DOSFSTOOLS_DIR)
  26. $(STRIPCMD) $(DOSFSTOOLS_DIR)/$(MKDOSFS_BINARY)
  27. $(STRIPCMD) $(DOSFSTOOLS_DIR)/$(DOSFSCK_BINARY)
  28. $(STRIPCMD) $(DOSFSTOOLS_DIR)/$(DOSFSLABEL_BINARY)
  29. touch $@
  30. $(TARGET_DIR)/$(MKDOSFS_TARGET_BINARY): $(DOSFSTOOLS_DIR)/.built
  31. cp -a $(DOSFSTOOLS_DIR)/$(MKDOSFS_BINARY) $@
  32. touch -c $@
  33. $(TARGET_DIR)/$(DOSFSCK_TARGET_BINARY): $(DOSFSTOOLS_DIR)/.built
  34. cp -a $(DOSFSTOOLS_DIR)/$(DOSFSCK_BINARY) $@
  35. touch -c $@
  36. $(TARGET_DIR)/$(DOSFSLABEL_TARGET_BINARY): $(DOSFSTOOLS_DIR)/.built
  37. cp -a $(DOSFSTOOLS_DIR)/$(DOSFSLABEL_BINARY) $@
  38. touch -c $@
  39. dosfstools: $(TARGET_DIR)/$(DOSFSTOOLS_TARGET_BINARY) $(TARGET_DIR)/$(DOSFSCK_TARGET_BINARY)
  40. dosfstools-clean:
  41. rm -f $(TARGET_DIR)/$(MKDOSFS_TARGET_BINARY)
  42. rm -f $(TARGET_DIR)/$(DOSFSCK_TARGET_BINARY)
  43. rm -f $(TARGET_DIR)/$(DOSFSLABEL_TARGET_BINARY)
  44. -$(MAKE) -C $(DOSFSTOOLS_DIR) clean
  45. dosfstools-dirclean:
  46. rm -rf $(DOSFSTOOLS_DIR)
  47. #############################################################
  48. #
  49. # Toplevel Makefile options
  50. #
  51. #############################################################
  52. ifeq ($(BR2_PACKAGE_DOSFSTOOLS_MKDOSFS),y)
  53. TARGETS+=$(TARGET_DIR)/$(MKDOSFS_TARGET_BINARY)
  54. endif
  55. ifeq ($(BR2_PACKAGE_DOSFSTOOLS_DOSFSCK),y)
  56. TARGETS+=$(TARGET_DIR)/$(DOSFSCK_TARGET_BINARY)
  57. endif
  58. ifeq ($(BR2_PACKAGE_DOSFSTOOLS_DOSFSLABEL),y)
  59. TARGETS+=$(TARGET_DIR)/$(DOSFSLABEL_TARGET_BINARY)
  60. endif