This patch reworks the openvpn rules. Some points which are new now:

- systemd support if OPENVPN_SYSTEMD
- install openvpn sample configs as reference for /etc/openvpn/
- install openvpn sample scripts (ethernet bridging)
- add required environemnt for networking utilities while configure
- add several missed autoconf configure options

Additional this patch do a version bump to 2.3.6

Signed-off-by: Alexander Aring <[email protected]>
---
 rules/openvpn.in   | 27 +++++++++++++++++++++++++
 rules/openvpn.make | 59 +++++++++++++++++++++++++++++++++++++++++++-----------
 2 files changed, 74 insertions(+), 12 deletions(-)

diff --git a/rules/openvpn.in b/rules/openvpn.in
index 3649968..1cd4a54 100644
--- a/rules/openvpn.in
+++ b/rules/openvpn.in
@@ -5,6 +5,11 @@ menuconfig OPENVPN
        prompt "openvpn                       "
        select OPENSSL
        select LIBLZO if OPENVPN_LZO
+       select IPROUTE2         if !BUSYBOX_IP && RUNTIME
+       select IPROUTE2_IP      if !BUSYBOX_IP && RUNTIME
+       select BUSYBOX_IFCONFIG
+       select BUSYBOX_NETSTAT
+       select BUSYBOX_ROUTE
        help
          virtual private network daemon
 
@@ -34,4 +39,26 @@ config OPENVPN_LZO
          will select the LZO library as well.
          If unsure, say N.
 
+config OPENVPN_SYSTEMD
+       bool
+       prompt "Enable systemd support"
+       depends on SYSTEMD
+       help
+         This enables systemd support for openvpn.
+
+config OPENVPN_INSTALL_SAMPLE_CONFIGS
+       bool
+       prompt "Install sample configs"
+       select IPTABLES
+       select IPTABLES_INSTALL_TOOLS
+       help
+         Install sample configs into /usr/share/openvpn/sample-config-files.
+
+config OPENVPN_INSTALL_SAMPLE_SCRIPTS
+       bool
+       prompt "Install sample scripts"
+       select BRIDGE_UTILS
+       help
+         Install sample scripts into /usr/share/openvpn/sample-scripts.
+
 endif
diff --git a/rules/openvpn.make b/rules/openvpn.make
index d288d43..7cfa427 100644
--- a/rules/openvpn.make
+++ b/rules/openvpn.make
@@ -16,11 +16,11 @@ PACKAGES-$(PTXCONF_OPENVPN) += openvpn
 #
 # Paths and names
 #
-OPENVPN_VERSION                := 2.1.1
-OPENVPN_MD5            := b273ed2b5ec8616fb9834cde8634bce7
+OPENVPN_VERSION                := 2.3.6
+OPENVPN_MD5            := 6ca03fe0fd093e0d01601abee808835c
 OPENVPN                        := openvpn-$(OPENVPN_VERSION)
 OPENVPN_SUFFIX         := tar.gz
-OPENVPN_URL            := 
http://openvpn.net/release/$(OPENVPN).$(OPENVPN_SUFFIX)
+OPENVPN_URL            := 
http://swupdate.openvpn.org/community/releases/$(OPENVPN).$(OPENVPN_SUFFIX)
 OPENVPN_SOURCE         := $(SRCDIR)/$(OPENVPN).$(OPENVPN_SUFFIX)
 OPENVPN_DIR            := $(BUILDDIR)/$(OPENVPN)
 
@@ -29,18 +29,36 @@ OPENVPN_DIR         := $(BUILDDIR)/$(OPENVPN)
 # ----------------------------------------------------------------------------
 
 OPENVPN_PATH   := PATH=$(CROSS_PATH)
-OPENVPN_ENV    := $(CROSS_ENV)
+OPENVPN_ENV    := \
+       $(CROSS_ENV) \
+       IFCONFIG=/sbin/ifconfig \
+       ROUTE=/sbin/route \
+       IPROUTE=/sbin/ip \
+       NETSTAT=/bin/netstat
 
 #
 # autoconf
 #
-OPENVPN_AUTOCONF := $(CROSS_AUTOCONF_USR)
+OPENVPN_AUTOCONF := \
+       $(CROSS_AUTOCONF_USR) \
+       --$(call ptx/endis, PTXCONF_OPENVPN_LZO)-lzo \
+       --disable-plugins \
+       --disable-debug \
+       --enable-small \
+       --disable-iproute2 \
+       --disable-selinux \
+       --$(call ptx/endis, PTXCONF_OPENVPN_SYSTEMD)-systemd \
+       --with-crypto-library=openssl
 
-ifdef PTXCONF_OPENVPN_LZO
-OPENVPN_AUTOCONF += --enable-lzo
-else
-OPENVPN_AUTOCONF += --disable-lzo
-endif
+OPENVPN_INSTALL_SAMPLE_CONFIG_FILES := \
+       client.conf loopback-client loopback-server README server.conf \
+       static-home.conf static-office.conf tls-home.conf tls-office.conf \
+       xinetd-client-config xinetd-server-config
+
+OPENVPN_INSTALL_SAMPLE_CONFIG_SCRIPTS := \
+       firewall.sh home.up office.up openvpn-shutdown.sh openvpn-startup.sh
+
+OPENVPN_INSTALL_SAMPLE_SCRIPTS := bridge-start bridge-stop
 
 # ----------------------------------------------------------------------------
 # Target-Install
@@ -55,9 +73,26 @@ $(STATEDIR)/openvpn.targetinstall:
        @$(call install_fixup, openvpn,AUTHOR,"Carsten Schlote 
<[email protected]>")
        @$(call install_fixup, openvpn,DESCRIPTION,missing)
 
-       @$(call install_copy, openvpn, 0, 0, 0755, -, /usr/sbin/openvpn)
+ifdef PTXCONF_OPENVPN_INSTALL_SAMPLE_CONFIGS
+       @$(foreach file,$(OPENVPN_INSTALL_SAMPLE_CONFIG_FILES), \
+               $(call install_copy, openvpn, 0, 0, 0644, \
+               $(OPENVPN_DIR)/sample/sample-config-files/$(file), \
+               /usr/share/openvpn/sample-config-files/$(file));)
 
-       @$(call install_copy, openvpn, 0, 0, 0755, /etc/openvpn)
+       @$(foreach script,$(OPENVPN_INSTALL_SAMPLE_CONFIG_SCRIPTS), \
+               $(call install_copy, openvpn, 0, 0, 0755, \
+               $(OPENVPN_DIR)/sample/sample-config-files/$(script), \
+               /usr/share/openvpn/sample-config-files/$(script));)
+endif
+
+ifdef PTXCONF_OPENVPN_INSTALL_SAMPLE_SCRIPTS
+       @$(foreach script,$(OPENVPN_INSTALL_SAMPLE_SCRIPTS), \
+               $(call install_copy, openvpn, 0, 0, 0755, \
+               $(OPENVPN_DIR)/sample/sample-scripts/$(script), \
+               /usr/share/openvpn/sample-scripts/$(script));)
+endif
+
+       @$(call install_copy, openvpn, 0, 0, 0755, -, /usr/sbin/openvpn)
 
        @$(call install_finish, openvpn)
 
-- 
2.2.2


-- 
ptxdist mailing list
[email protected]

Reply via email to