From a9784d8967975160d56fc191d85ced94143e89de Mon Sep 17 00:00:00 2001 From: Dave Reisner Date: Tue, 21 Aug 2012 08:13:52 -0400 Subject: add systemd unit files for installation These are automatically installed iff systemd support is compiled into fcgiwrap. --- Makefile.in | 5 +++++ configure.ac | 8 ++++++++ systemd/fcgiwrap.service | 11 +++++++++++ systemd/fcgiwrap.socket | 8 ++++++++ 4 files changed, 32 insertions(+) create mode 100644 systemd/fcgiwrap.service create mode 100644 systemd/fcgiwrap.socket diff --git a/Makefile.in b/Makefile.in index 8d538b4..647d98b 100644 --- a/Makefile.in +++ b/Makefile.in @@ -9,6 +9,11 @@ install: all install -m 755 fcgiwrap $(targetdir) install -d -m 755 $(man8dir) install -m 644 fcgiwrap.8 $(man8dir) +ifneq ("@systemdsystemunitdir@", "") + install -d -m 755 $(DESTDIR)@systemdsystemunitdir@ + install -m 644 systemd/fcgiwrap.socket $(DESTDIR)@systemdsystemunitdir@ + install -m 644 systemd/fcgiwrap.service $(DESTDIR)@systemdsystemunitdir@ +endif fcgiwrap: fcgiwrap.c @CC@ @AM_CFLAGS@ fcgiwrap.c -o fcgiwrap -lfcgi @systemd_LIBS@ @LDFLAGS@ diff --git a/configure.ac b/configure.ac index 4388cd4..296ea75 100644 --- a/configure.ac +++ b/configure.ac @@ -38,6 +38,14 @@ if test "x$with_systemd" != "xno"; then fi AM_CONDITIONAL(HAVE_LIBSSL, [test "x$have_systemd" = "xyes"]) +AC_ARG_WITH([systemdsystemunitdir], + AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]), + [], [with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)]) +if test "x$with_systemdsystemunitdir" != xno -a "x$have_systemd" != xno; then + AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir]) +fi +AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ]) + # Checks for header files. AC_CHECK_HEADERS([fcntl.h],, [AC_MSG_ERROR([fcntl.h header missing])]) AC_CHECK_HEADERS([limits.h stdlib.h string.h unistd.h],, [AC_MSG_ERROR([at least one important system header file is missing])]) diff --git a/systemd/fcgiwrap.service b/systemd/fcgiwrap.service new file mode 100644 index 0000000..7b010c9 --- /dev/null +++ b/systemd/fcgiwrap.service @@ -0,0 +1,11 @@ +[Unit] +Description=Simple CGI Server +After=nss-user-lookup.target + +[Service] +ExecStart=/usr/sbin/fcgiwrap +User=http +Group=http + +[Install] +Also=fcgiwrap.socket diff --git a/systemd/fcgiwrap.socket b/systemd/fcgiwrap.socket new file mode 100644 index 0000000..dc074f1 --- /dev/null +++ b/systemd/fcgiwrap.socket @@ -0,0 +1,8 @@ +[Unit] +Description=fcgiwrap Socket + +[Socket] +ListenStream=/run/fcgiwrap.sock + +[Install] +WantedBy=sockets.target -- cgit v1.2.3