tftpd.mk 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. #############################################################
  2. #
  3. # tftpd
  4. #
  5. #############################################################
  6. TFTP_HPA_VER:=0.40
  7. TFTP_HPA_SOURCE:=tftp-hpa-$(TFTP_HPA_VER).tar.bz2
  8. TFTP_HPA_SITE:=http://www.kernel.org/pub/software/network/tftp/
  9. TFTP_HPA_DIR:=$(BUILD_DIR)/tftp-hpa-$(TFTP_HPA_VER)
  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. $(WGET) -P $(DL_DIR) $(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. 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 \
  35. --localstatedir=/var \
  36. --mandir=/usr/man \
  37. --infodir=/usr/info \
  38. $(DISABLE_LARGEFILE) \
  39. --without-tcpwrappers \
  40. );
  41. touch $(TFTP_HPA_DIR)/.configured
  42. $(TFTP_HPA_DIR)/$(TFTP_HPA_BINARY): $(TFTP_HPA_DIR)/.configured
  43. $(MAKE) -C $(TFTP_HPA_DIR)
  44. # This stuff is needed to work around GNU make deficiencies
  45. $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY): $(TFTP_HPA_DIR)/$(TFTP_HPA_BINARY)
  46. @if [ -L $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY) ] ; then \
  47. rm -f $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY); fi;
  48. @if [ ! -f $(TFTP_HPA_DIR)/$(TFTP_HPA_BINARY) -o $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY) \
  49. -ot $(TFTP_HPA_DIR)/$(TFTP_HPA_BINARY) ] ; then \
  50. set -x; \
  51. rm -f $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY); \
  52. cp -a $(TFTP_HPA_DIR)/$(TFTP_HPA_BINARY) $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY); fi ;
  53. $(INSTALL) -D -m 0755 package/tftpd/init-tftpd $(TARGET_DIR)/etc/init.d/S80tftpd-hpa
  54. tftpd: uclibc $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY)
  55. tftpd-clean:
  56. $(MAKE) DESTDIR=$(TARGET_DIR) -C $(TFTP_HPA_DIR) uninstall
  57. -$(MAKE) -C $(TFTP_HPA_DIR) clean
  58. tftpd-dirclean:
  59. rm -rf $(TFTP_HPA_DIR)
  60. #############################################################
  61. #
  62. # Toplevel Makefile options
  63. #
  64. #############################################################
  65. ifeq ($(strip $(BR2_PACKAGE_TFTPD)),y)
  66. TARGETS+=tftpd
  67. endif