On Sun, Jan 25, 2015 at 08:56:24PM +0100, Alexander Aring wrote:
> 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

This does not work. We need a build-time dependency.

add

        select SYSTEMD          if OPENVPN_SYSTEMD

above instead.

Michael

> +     help
> +       This enables systemd support for openvpn.
> +
> +config OPENVPN_INSTALL_SAMPLE_CONFIGS
> +     bool
> +     prompt "Install sample configs"
> +     select IPTABLES
> +     select IPTABLES_INSTALL_TOOLS

mot this to the main option with 'if OPENVPN_INSTALL_SAMPLE_CONFIGS && RUNTIME'

> +     help
> +       Install sample configs into /usr/share/openvpn/sample-config-files.
> +
> +config OPENVPN_INSTALL_SAMPLE_SCRIPTS
> +     bool
> +     prompt "Install sample scripts"
> +     select BRIDGE_UTILS

The same here.

Michael

> +     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]
> 

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

-- 
ptxdist mailing list
[email protected]

Reply via email to