openvpn.mk 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. #############################################################
  2. #
  3. # openvpn
  4. #
  5. # NOTE: Uses start-stop-daemon in init script, so be sure
  6. # to enable that within busybox
  7. #
  8. #############################################################
  9. OPENVPN_VERSION:=2.0.9
  10. OPENVPN_SOURCE:=openvpn-$(OPENVPN_VERSION).tar.gz
  11. OPENVPN_SITE:=http://openvpn.net/release/
  12. OPENVPN_DIR:=$(BUILD_DIR)/openvpn-$(OPENVPN_VERSION)
  13. OPENVPN_CAT:=$(ZCAT)
  14. OPENVPN_BINARY:=openvpn
  15. OPENVPN_TARGET_BINARY:=usr/sbin/openvpn
  16. #
  17. # Select thread model.
  18. #
  19. ifeq ($(BR2_PTHREADS_NATIVE),y)
  20. THREAD_MODEL="--enable-threads=posix"
  21. else
  22. THREAD_MODEL=--enable-pthread
  23. endif
  24. $(DL_DIR)/$(OPENVPN_SOURCE):
  25. $(call DOWNLOAD,$(OPENVPN_SITE),$(OPENVPN_SOURCE))
  26. openvpn-source: $(DL_DIR)/$(OPENVPN_SOURCE)
  27. $(OPENVPN_DIR)/.unpacked: $(DL_DIR)/$(OPENVPN_SOURCE)
  28. $(OPENVPN_CAT) $(DL_DIR)/$(OPENVPN_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  29. touch $(OPENVPN_DIR)/.unpacked
  30. $(OPENVPN_DIR)/.configured: $(OPENVPN_DIR)/.unpacked
  31. (cd $(OPENVPN_DIR); rm -rf config.cache; \
  32. $(TARGET_CONFIGURE_OPTS) \
  33. $(TARGET_CONFIGURE_ARGS) \
  34. ./configure \
  35. --target=$(GNU_TARGET_NAME) \
  36. --host=$(GNU_TARGET_NAME) \
  37. --build=$(GNU_HOST_NAME) \
  38. --prefix=/usr \
  39. --exec-prefix=/usr \
  40. --bindir=/usr/bin \
  41. --sbindir=/usr/sbin \
  42. --libdir=/lib \
  43. --libexecdir=/usr/lib \
  44. --sysconfdir=/etc \
  45. --datadir=/usr/share \
  46. --localstatedir=/var \
  47. --mandir=/usr/man \
  48. --infodir=/usr/info \
  49. --program-prefix="" \
  50. --enable-small \
  51. $(THREAD_MODEL) \
  52. )
  53. touch $(OPENVPN_DIR)/.configured
  54. $(OPENVPN_DIR)/$(OPENVPN_BINARY): $(OPENVPN_DIR)/.configured
  55. $(MAKE) -C $(OPENVPN_DIR)
  56. $(TARGET_DIR)/$(OPENVPN_TARGET_BINARY): $(OPENVPN_DIR)/$(OPENVPN_BINARY)
  57. $(MAKE) DESTDIR=$(TARGET_DIR) -C $(OPENVPN_DIR) install
  58. mkdir -p $(TARGET_DIR)/etc/openvpn
  59. cp package/openvpn/openvpn.init $(TARGET_DIR)/etc/init.d/openvpn
  60. rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
  61. $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
  62. openvpn: uclibc lzo openssl $(TARGET_DIR)/$(OPENVPN_TARGET_BINARY)
  63. openvpn-clean:
  64. $(MAKE) DESTDIR=$(TARGET_DIR) -C $(OPENVPN_DIR) uninstall
  65. -$(MAKE) -C $(OPENVPN_DIR) clean
  66. openvpn-dirclean:
  67. rm -rf $(OPENVPN_DIR)
  68. #############################################################
  69. #
  70. # Toplevel Makefile options
  71. #
  72. #############################################################
  73. ifeq ($(BR2_PACKAGE_OPENVPN),y)
  74. TARGETS+=openvpn
  75. endif