dash.mk 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. #############################################################
  2. #
  3. # dash
  4. #
  5. #############################################################
  6. DASH_VERSION:=0.5.3
  7. DASH_SOURCE:=dash_$(DASH_VERSION).orig.tar.gz
  8. DASH_SITE:=$(BR2_DEBIAN_MIRROR)/debian/pool/main/d/dash
  9. DASH_CAT:=$(ZCAT)
  10. DASH_DIR:=$(BUILD_DIR)/dash-$(DASH_VERSION)
  11. DASH_PATCH1:=dash_$(DASH_VERSION)-7.diff.gz
  12. DASH_BINARY:=src/dash
  13. DASH_TARGET_BINARY:=bin/dash
  14. $(DL_DIR)/$(DASH_SOURCE):
  15. $(call DOWNLOAD,$(DASH_SITE),$(DASH_SOURCE))
  16. $(DL_DIR)/$(DASH_PATCH1):
  17. $(call DOWNLOAD,$(DASH_SITE),$(DASH_PATCH1))
  18. dash-source: $(DL_DIR)/$(DASH_SOURCE) $(DL_DIR)/$(DASH_PATCH1)
  19. $(DASH_DIR)/.unpacked: $(DL_DIR)/$(DASH_SOURCE) $(DL_DIR)/$(DASH_PATCH1)
  20. $(DASH_CAT) $(DL_DIR)/$(DASH_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  21. $(ZCAT) $(DL_DIR)/$(DASH_PATCH1) | patch -p1 -d $(DASH_DIR)
  22. touch $(DASH_DIR)/.unpacked
  23. $(DASH_DIR)/.configured: $(DASH_DIR)/.unpacked
  24. (cd $(DASH_DIR); rm -rf config.cache; \
  25. $(TARGET_CONFIGURE_OPTS) \
  26. $(TARGET_CONFIGURE_ARGS) \
  27. ./configure $(QUIET) \
  28. --target=$(GNU_TARGET_NAME) \
  29. --host=$(GNU_TARGET_NAME) \
  30. --build=$(GNU_HOST_NAME) \
  31. --prefix=/usr \
  32. --exec-prefix=/usr \
  33. --bindir=/usr/bin \
  34. --sbindir=/usr/sbin \
  35. --libexecdir=/usr/lib \
  36. --sysconfdir=/etc \
  37. --datadir=/usr/share \
  38. --localstatedir=/var \
  39. --mandir=/usr/man \
  40. --infodir=/usr/info \
  41. )
  42. touch $(DASH_DIR)/.configured
  43. $(DASH_DIR)/$(DASH_BINARY): $(DASH_DIR)/.configured
  44. $(MAKE1) CC=$(TARGET_CC) CC_FOR_BUILD="$(HOSTCC)" -C $(DASH_DIR)
  45. touch -c $(DASH_DIR)/$(DASH_BINARY)
  46. $(TARGET_DIR)/$(DASH_TARGET_BINARY): $(DASH_DIR)/$(DASH_BINARY)
  47. cp -a $(DASH_DIR)/$(DASH_BINARY) $(TARGET_DIR)/$(DASH_TARGET_BINARY)
  48. touch -c $(TARGET_DIR)/$(DASH_TARGET_BINARY)
  49. dash: $(TARGET_DIR)/$(DASH_TARGET_BINARY)
  50. dash-clean:
  51. $(MAKE1) CC=$(TARGET_CC) -C $(DASH_DIR) clean
  52. rm -f $(TARGET_DIR)/$(DASH_TARGET_BINARY)
  53. dash-dirclean:
  54. rm -rf $(DASH_DIR)
  55. #############################################################
  56. #
  57. # Toplevel Makefile options
  58. #
  59. #############################################################
  60. ifeq ($(BR2_PACKAGE_DASH),y)
  61. TARGETS+=dash
  62. endif