blob: e043b60c4d6de9ce562bf61eed86766d5caab64f [file] [log] [blame]
#############################################################
#
# openvpn
#
# NOTE: Uses start-stop-daemon in init script, so be sure
# to enable that within busybox
#
#############################################################
OPENVPN_VERSION:=2.0.9
OPENVPN_SOURCE:=openvpn-$(OPENVPN_VERSION).tar.gz
OPENVPN_SITE:=http://openvpn.net/release/
OPENVPN_DIR:=$(BUILD_DIR)/openvpn-$(OPENVPN_VERSION)
OPENVPN_CAT:=$(ZCAT)
OPENVPN_BINARY:=openvpn
OPENVPN_TARGET_BINARY:=usr/sbin/openvpn
#
# Select thread model.
#
ifeq ($(BR2_PTHREADS_NATIVE),y)
THREAD_MODEL="--enable-threads=posix"
else
THREAD_MODEL=--enable-pthread
endif
$(DL_DIR)/$(OPENVPN_SOURCE):
$(call DOWNLOAD,$(OPENVPN_SITE),$(OPENVPN_SOURCE))
openvpn-source: $(DL_DIR)/$(OPENVPN_SOURCE)
$(OPENVPN_DIR)/.unpacked: $(DL_DIR)/$(OPENVPN_SOURCE)
$(OPENVPN_CAT) $(DL_DIR)/$(OPENVPN_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
touch $(OPENVPN_DIR)/.unpacked
$(OPENVPN_DIR)/.configured: $(OPENVPN_DIR)/.unpacked
(cd $(OPENVPN_DIR); rm -rf config.cache; \
$(TARGET_CONFIGURE_OPTS) \
$(TARGET_CONFIGURE_ARGS) \
./configure \
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
--libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
--mandir=/usr/man \
--infodir=/usr/info \
--program-prefix="" \
--enable-small \
$(THREAD_MODEL) \
)
touch $(OPENVPN_DIR)/.configured
$(OPENVPN_DIR)/$(OPENVPN_BINARY): $(OPENVPN_DIR)/.configured
$(MAKE) -C $(OPENVPN_DIR)
$(TARGET_DIR)/$(OPENVPN_TARGET_BINARY): $(OPENVPN_DIR)/$(OPENVPN_BINARY)
$(MAKE) DESTDIR=$(TARGET_DIR) -C $(OPENVPN_DIR) install
mkdir -p $(TARGET_DIR)/etc/openvpn
cp package/openvpn/openvpn.init $(TARGET_DIR)/etc/init.d/openvpn
rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
$(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
openvpn: uclibc lzo openssl $(TARGET_DIR)/$(OPENVPN_TARGET_BINARY)
openvpn-clean:
$(MAKE) DESTDIR=$(TARGET_DIR) -C $(OPENVPN_DIR) uninstall
-$(MAKE) -C $(OPENVPN_DIR) clean
openvpn-dirclean:
rm -rf $(OPENVPN_DIR)
#############################################################
#
# Toplevel Makefile options
#
#############################################################
ifeq ($(BR2_PACKAGE_OPENVPN),y)
TARGETS+=openvpn
endif