mirror of
https://github.com/OpenVPN/openvpn.git
synced 2026-06-08 16:35:26 -04:00
systemd: Use automake tools to install unit files
If systemd is enabled we install unit files to $libdir/systemd/system (or the path specified by SYSTEMD_UNIT_DIR). The unit files are generated on the fly with matching $sbindir. Signed-off-by: Christian Hesse <mail@eworm.de> Acked-by: David Sommerseth <davids@openvpn.net> Message-Id: <20170124143947.27385-1-list@eworm.de> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg13940.html Signed-off-by: David Sommerseth <davids@openvpn.net>
This commit is contained in:
parent
e83a8684f0
commit
ca5b4c2aad
6 changed files with 40 additions and 5 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -51,6 +51,7 @@ config-msvc-local.h
|
|||
config-msvc-version.h
|
||||
doc/openvpn.8.html
|
||||
distro/rpm/openvpn.spec
|
||||
distro/systemd/*.service
|
||||
sample/sample-keys/sample-ca/
|
||||
vendor/.build
|
||||
vendor/dist
|
||||
|
|
|
|||
10
configure.ac
10
configure.ac
|
|
@ -378,6 +378,7 @@ AC_ARG_VAR([NETSTAT], [path to netstat utility]) # tests
|
|||
AC_ARG_VAR([MAN2HTML], [path to man2html utility])
|
||||
AC_ARG_VAR([GIT], [path to git utility])
|
||||
AC_ARG_VAR([SYSTEMD_ASK_PASSWORD], [path to systemd-ask-password utility])
|
||||
AC_ARG_VAR([SYSTEMD_UNIT_DIR], [Path of systemd unit directory @<:@default=LIBDIR/systemd/system@:>@])
|
||||
AC_PATH_PROGS([IFCONFIG], [ifconfig],, [$PATH:/usr/local/sbin:/usr/sbin:/sbin])
|
||||
AC_PATH_PROGS([ROUTE], [route],, [$PATH:/usr/local/sbin:/usr/sbin:/sbin])
|
||||
AC_PATH_PROGS([IPROUTE], [ip],, [$PATH:/usr/local/sbin:/usr/sbin:/sbin])
|
||||
|
|
@ -1099,6 +1100,12 @@ if test "$enable_systemd" = "yes" ; then
|
|||
OPTIONAL_SYSTEMD_LIBS="${libsystemd_LIBS}"
|
||||
AC_DEFINE(ENABLE_SYSTEMD, 1, [Enable systemd integration])
|
||||
LIBS="${saved_LIBS}"
|
||||
|
||||
if test -n "${SYSTEMD_UNIT_DIR}"; then
|
||||
systemdunitdir="${SYSTEMD_UNIT_DIR}"
|
||||
else
|
||||
systemdunitdir="\${libdir}/systemd/system"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
|
@ -1275,6 +1282,8 @@ sampledir="\$(docdir)/sample"
|
|||
AC_SUBST([plugindir])
|
||||
AC_SUBST([sampledir])
|
||||
|
||||
AC_SUBST([systemdunitdir])
|
||||
|
||||
VENDOR_SRC_ROOT="\$(abs_top_srcdir)/vendor/"
|
||||
VENDOR_DIST_ROOT="\$(abs_top_builddir)/vendor/dist"
|
||||
VENDOR_BUILD_ROOT="\$(abs_top_builddir)/vendor/.build"
|
||||
|
|
@ -1313,6 +1322,7 @@ AC_CONFIG_FILES([
|
|||
distro/Makefile
|
||||
distro/rpm/Makefile
|
||||
distro/rpm/openvpn.spec
|
||||
distro/systemd/Makefile
|
||||
include/Makefile
|
||||
src/Makefile
|
||||
src/compat/Makefile
|
||||
|
|
|
|||
|
|
@ -12,6 +12,4 @@
|
|||
MAINTAINERCLEANFILES = \
|
||||
$(srcdir)/Makefile.in
|
||||
|
||||
SUBDIRS = rpm
|
||||
|
||||
EXTRA_DIST = systemd/openvpn-client@.service systemd/openvpn-server@.service
|
||||
SUBDIRS = rpm systemd
|
||||
|
|
|
|||
26
distro/systemd/Makefile.am
Normal file
26
distro/systemd/Makefile.am
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
#
|
||||
# OpenVPN -- An application to securely tunnel IP networks
|
||||
# over a single UDP port, with support for SSL/TLS-based
|
||||
# session authentication and key exchange,
|
||||
# packet encryption, packet authentication, and
|
||||
# packet compression.
|
||||
#
|
||||
# Copyright (C) 2017 OpenVPN Technologies, Inc. <sales@openvpn.net>
|
||||
#
|
||||
|
||||
%.service: %.service.in Makefile
|
||||
$(AM_V_GEN)sed -e 's|\@sbindir\@|$(sbindir)|' \
|
||||
$< > $@.tmp && mv $@.tmp $@
|
||||
|
||||
EXTRA_DIST = \
|
||||
openvpn-client@.service.in \
|
||||
openvpn-server@.service.in
|
||||
|
||||
if ENABLE_SYSTEMD
|
||||
systemdunit_DATA = \
|
||||
openvpn-client@.service \
|
||||
openvpn-server@.service
|
||||
endif
|
||||
|
||||
MAINTAINERCLEANFILES = \
|
||||
$(srcdir)/Makefile.in
|
||||
|
|
@ -12,7 +12,7 @@ PrivateTmp=true
|
|||
RuntimeDirectory=openvpn-client
|
||||
RuntimeDirectoryMode=0710
|
||||
WorkingDirectory=/etc/openvpn/client
|
||||
ExecStart=/usr/sbin/openvpn --suppress-timestamps --nobind --config %i.conf
|
||||
ExecStart=@sbindir@/openvpn --suppress-timestamps --nobind --config %i.conf
|
||||
CapabilityBoundingSet=CAP_IPC_LOCK CAP_NET_ADMIN CAP_NET_RAW CAP_SETGID CAP_SETUID CAP_SYS_CHROOT CAP_DAC_OVERRIDE
|
||||
LimitNPROC=10
|
||||
DeviceAllow=/dev/null rw
|
||||
|
|
@ -12,7 +12,7 @@ PrivateTmp=true
|
|||
RuntimeDirectory=openvpn-server
|
||||
RuntimeDirectoryMode=0710
|
||||
WorkingDirectory=/etc/openvpn/server
|
||||
ExecStart=/usr/sbin/openvpn --status %t/openvpn-server/status-%i.log --status-version 2 --suppress-timestamps --config %i.conf
|
||||
ExecStart=@sbindir@/openvpn --status %t/openvpn-server/status-%i.log --status-version 2 --suppress-timestamps --config %i.conf
|
||||
CapabilityBoundingSet=CAP_IPC_LOCK CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_NET_RAW CAP_SETGID CAP_SETUID CAP_SYS_CHROOT CAP_DAC_OVERRIDE
|
||||
LimitNPROC=10
|
||||
DeviceAllow=/dev/null rw
|
||||
Loading…
Reference in a new issue