aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@frugalware.org>2011-03-28 20:04:00 +0200
committerMartin Willi <martin@revosec.ch>2011-03-29 09:27:54 +0200
commitfc16b361ef5290510fe92f17b8f821ea809d7604 (patch)
treea5f9ddb1aa25bb249f5e82e3580c588d6220f8db
parent7aa2d1ca49c5701bb9417f8a9c1ccd7f7cbea537 (diff)
downloadstrongswan-fc16b361ef5290510fe92f17b8f821ea809d7604.tar.bz2
strongswan-fc16b361ef5290510fe92f17b8f821ea809d7604.tar.xz
Install systemd service file if systemd is available
-rw-r--r--Makefile.am2
-rw-r--r--configure.in9
-rw-r--r--init/Makefile.am6
-rw-r--r--init/systemd/Makefile.am8
-rw-r--r--init/systemd/strongswan.service.in10
5 files changed, 34 insertions, 1 deletions
diff --git a/Makefile.am b/Makefile.am
index cba5048b1..4757c8c7a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,4 +1,4 @@
-SUBDIRS = src man testing
+SUBDIRS = src man init testing
if USE_SCRIPTS
SUBDIRS += scripts
diff --git a/configure.in b/configure.in
index 6dcf65c4c..4c66b75b6 100644
--- a/configure.in
+++ b/configure.in
@@ -43,6 +43,13 @@ ARG_WITH_SUBST([routing-table-prio], [220], [set priority for IPsec routing tabl
ARG_WITH_SET([capabilities], [no], [set capability dropping library. Currently supported values are "libcap" and "native"])
ARG_WITH_SET([mpz_powm_sec], [yes], [use the more side-channel resistant mpz_powm_sec in libgmp, if available])
+if test -n "$PKG_CONFIG"; then
+ systemdsystemunitdir_default=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)
+fi
+ARG_WITH_SET([systemdsystemunitdir], [$systemdsystemunitdir_default], [directory for systemd service files])
+AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$systemdsystemunitdir" -a "x$systemdsystemunitdir" != xno])
+AC_SUBST(systemdsystemunitdir)
+
AC_ARG_WITH(
[xauth-module],
AS_HELP_STRING([--with-xauth-module=lib],[set the path to the XAUTH module]),
@@ -957,6 +964,8 @@ dnl ==============================
AC_OUTPUT(
Makefile
man/Makefile
+ init/Makefile
+ init/systemd/Makefile
src/Makefile
src/include/Makefile
src/libstrongswan/Makefile
diff --git a/init/Makefile.am b/init/Makefile.am
new file mode 100644
index 000000000..69439a10a
--- /dev/null
+++ b/init/Makefile.am
@@ -0,0 +1,6 @@
+
+SUBDIRS =
+
+if HAVE_SYSTEMD
+ SUBDIRS += systemd
+endif
diff --git a/init/systemd/Makefile.am b/init/systemd/Makefile.am
new file mode 100644
index 000000000..e2bbfc451
--- /dev/null
+++ b/init/systemd/Makefile.am
@@ -0,0 +1,8 @@
+
+EXTRA_DIST = strongswan.service.in
+CLEANFILES = strongswan.service
+
+systemdsystemunit_DATA = strongswan.service
+
+strongswan.service : strongswan.service.in
+ sed -e "s:@SBINDIR@:$(sbindir):" $(srcdir)/$@.in > $@
diff --git a/init/systemd/strongswan.service.in b/init/systemd/strongswan.service.in
new file mode 100644
index 000000000..e8dc5e819
--- /dev/null
+++ b/init/systemd/strongswan.service.in
@@ -0,0 +1,10 @@
+[Unit]
+Description=strongSwan IPsec
+After=syslog.target
+
+[Service]
+ExecStart=@SBINDIR@/ipsec start --nofork
+StandardOutput=syslog
+
+[Install]
+WantedBy=multi-user.target