tftpd.mk 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. #############################################################
  2. #
  3. # tftpd
  4. #
  5. #############################################################
  6. TFTP_HPA_VERSION:=0.40
  7. TFTP_HPA_SOURCE:=tftp-hpa-$(TFTP_HPA_VERSION).tar.bz2
  8. TFTP_HPA_SITE:=$(BR2_KERNEL_MIRROR)/software/network/tftp/
  9. TFTP_HPA_DIR:=$(BUILD_DIR)/tftp-hpa-$(TFTP_HPA_VERSION)
  10. TFTP_HPA_CAT:=$(BZCAT)
  11. TFTP_HPA_BINARY:=tftpd/tftpd
  12. TFTP_HPA_TARGET_BINARY:=usr/sbin/in.tftpd
  13. $(DL_DIR)/$(TFTP_HPA_SOURCE):
  14. $(call DOWNLOAD,$(TFTP_HPA_SITE),$(TFTP_HPA_SOURCE))
  15. tftpd-source: $(DL_DIR)/$(TFTP_HPA_SOURCE)
  16. $(TFTP_HPA_DIR)/.unpacked: $(DL_DIR)/$(TFTP_HPA_SOURCE)
  17. $(TFTP_HPA_CAT) $(DL_DIR)/$(TFTP_HPA_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  18. toolchain/patch-kernel.sh $(TFTP_HPA_DIR) package/tftpd/ tftpd\*.patch
  19. touch $(TFTP_HPA_DIR)/.unpacked
  20. $(TFTP_HPA_DIR)/.configured: $(TFTP_HPA_DIR)/.unpacked
  21. (cd $(TFTP_HPA_DIR); rm -rf config.cache; \
  22. $(TARGET_CONFIGURE_OPTS) \
  23. $(TARGET_CONFIGURE_ARGS) \
  24. ./configure $(QUIET) \
  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. --libdir=/lib \
  33. --libexecdir=/usr/lib \
  34. --sysconfdir=/etc \
  35. --datadir=/usr/share \
  36. --localstatedir=/var \
  37. --mandir=/usr/man \
  38. --infodir=/usr/info \
  39. $(DISABLE_LARGEFILE) \
  40. --without-tcpwrappers \
  41. )
  42. touch $(TFTP_HPA_DIR)/.configured
  43. $(TFTP_HPA_DIR)/$(TFTP_HPA_BINARY): $(TFTP_HPA_DIR)/.configured
  44. $(MAKE) -C $(TFTP_HPA_DIR)
  45. # This stuff is needed to work around GNU make deficiencies
  46. $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY): $(TFTP_HPA_DIR)/$(TFTP_HPA_BINARY)
  47. @if [ -L $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY) ]; then \
  48. rm -f $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY); fi
  49. @if [ ! -f $(TFTP_HPA_DIR)/$(TFTP_HPA_BINARY) -o $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY) \
  50. -ot $(TFTP_HPA_DIR)/$(TFTP_HPA_BINARY) ]; then \
  51. set -x; \
  52. rm -f $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY); \
  53. cp -a $(TFTP_HPA_DIR)/$(TFTP_HPA_BINARY) $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY); fi
  54. @if [ ! -f $(TARGET_DIR)/etc/init.d/S80tftpd-hpa ]; then \
  55. $(INSTALL) -m 0755 package/tftpd/S80tftpd-hpa $(TARGET_DIR)/etc/init.d; \
  56. fi
  57. tftpd: $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY)
  58. tftpd-clean:
  59. rm -f $(TARGET_DIR)/etc/init.d/S80tftpd-hpa
  60. rm -f $(TARGET_DIR)/usr/sbin/in.tftpd
  61. -$(MAKE) -C $(TFTP_HPA_DIR) clean
  62. tftpd-dirclean:
  63. rm -rf $(TFTP_HPA_DIR)
  64. #############################################################
  65. #
  66. # Toplevel Makefile options
  67. #
  68. #############################################################
  69. ifeq ($(BR2_PACKAGE_TFTPD),y)
  70. TARGETS+=tftpd
  71. endif