pptp-linux.mk 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #############################################################
  2. #
  3. # pptp-linux
  4. #
  5. #############################################################
  6. PPTP_LINUX_VERSION:=1.7.0
  7. PPTP_LINUX_SOURCE:=pptp-linux_$(PPTP_LINUX_VERSION).orig.tar.gz
  8. #PPTP_LINUX_PATCH:=pptp-linux_$(PPTP_LINUX_VERSION)-2.diff.gz
  9. PPTP_LINUX_SITE:=$(BR2_DEBIAN_MIRROR)/debian/pool/main/p/pptp-linux
  10. PPTP_LINUX_DIR:=$(BUILD_DIR)/pptp-linux-$(PPTP_LINUX_VERSION).orig
  11. PPTP_LINUX_CAT:=$(ZCAT)
  12. PPTP_LINUX_BINARY:=pptp
  13. PPTP_LINUX_TARGET_BINARY:=usr/sbin/pptp
  14. $(DL_DIR)/$(PPTP_LINUX_SOURCE):
  15. $(call DOWNLOAD,$(PPTP_LINUX_SITE),$(PPTP_LINUX_SOURCE))
  16. ifneq ($(PPTP_LINUX_PATCH),)
  17. PPTP_LINUX_PATCH_FILE:=$(DL_DIR)/$(PPTP_LINUX_PATCH)
  18. $(PPTP_LINUX_PATCH_FILE):
  19. $(call DOWNLOAD,$(PPTP_LINUX_SITE),$(PPTP_LINUX_PATCH))
  20. endif
  21. $(PPTP_LINUX_DIR)/.unpacked: $(DL_DIR)/$(PPTP_LINUX_SOURCE) $(PPTP_LINUX_PATCH_FILE)
  22. $(PPTP_LINUX_CAT) $(DL_DIR)/$(PPTP_LINUX_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  23. ifneq ($(PPTP_LINUX_PATCH),)
  24. (cd $(PPTP_LINUX_DIR) && $(PPTP_LINUX_CAT) $(DL_DIR)/$(PPTP_LINUX_PATCH) | patch -p1)
  25. if [ -d $(PPTP_LINUX_DIR)/debian/patches ]; then \
  26. toolchain/patch-kernel.sh $(PPTP_LINUX_DIR) $(PPTP_LINUX_DIR)/debian/patches \*.patch; \
  27. fi
  28. endif
  29. toolchain/patch-kernel.sh $(PPTP_LINUX_DIR) package/pptp-linux/ pptp-linux\*.patch
  30. touch $@
  31. $(PPTP_LINUX_DIR)/.configured: $(PPTP_LINUX_DIR)/.unpacked
  32. (cd $(PPTP_LINUX_DIR); rm -rf config.cache; \
  33. $(TARGET_CONFIGURE_OPTS) \
  34. $(TARGET_CONFIGURE_ARGS) \
  35. ./configure $(QUIET) \
  36. --target=$(GNU_TARGET_NAME) \
  37. --host=$(GNU_TARGET_NAME) \
  38. --build=$(GNU_HOST_NAME) \
  39. --prefix=/usr \
  40. $(DISABLE_LARGEFILE) \
  41. )
  42. touch $@
  43. $(PPTP_LINUX_DIR)/$(PPTP_LINUX_BINARY): $(PPTP_LINUX_DIR)/.unpacked
  44. $(MAKE) $(TARGET_CONFIGURE_OPTS) OPTIMIZE="$(TARGET_CFLAGS)" \
  45. -C $(PPTP_LINUX_DIR)
  46. $(TARGET_DIR)/$(PPTP_LINUX_TARGET_BINARY): $(PPTP_LINUX_DIR)/$(PPTP_LINUX_BINARY)
  47. cp -dpf $(PPTP_LINUX_DIR)/$(PPTP_LINUX_BINARY) $@
  48. ifeq ($(BR2_HAVE_DOCUMENTATION),y)
  49. mkdir -p $(TARGET_DIR)/usr/share/man/man8
  50. $(INSTALL) -m 644 $(PPTP_LINUX_DIR)/pptp.8 $(TARGET_DIR)/usr/share/man/man8/pptp.8
  51. endif
  52. $(STRIPCMD) $(STRIP_STRIP_ALL) $@
  53. pptp-linux: $(TARGET_DIR)/$(PPTP_LINUX_TARGET_BINARY)
  54. pptp-linux-source: $(DL_DIR)/$(PPTP_LINUX_SOURCE) $(PPTP_LINUX_PATCH_FILE)
  55. pptp-linux-clean:
  56. -$(MAKE) -C $(PPTP_LINUX_DIR) distclean
  57. rm -f $(TARGET_DIR)/$(PPTP_LINUX_TARGET_BINARY) \
  58. $(TARGET_DIR)/usr/share/man/man8/pptp.8*
  59. pptp-linux-dirclean:
  60. rm -rf $(PPTP_LINUX_DIR)
  61. #############################################################
  62. #
  63. # Toplevel Makefile options
  64. #
  65. #############################################################
  66. ifeq ($(BR2_PACKAGE_PPTP_LINUX),y)
  67. TARGETS+=pptp-linux
  68. endif