From 6fe1c2220ad8a6d7d61af487b43adb11a21b79cb Mon Sep 17 00:00:00 2001 From: Pau Espin Pedrol Date: Mon, 10 Sep 2018 12:27:21 +0200 Subject: [PATCH] Install systemd services with autotools Change-Id: Id81ae8e2d8a2c9456ac0dac2c30c0d24dab3b694 --- Makefile.am | 4 ++++ configure.ac | 18 ++++++++++++++++++ contrib/Makefile.am | 1 + contrib/systemd/Makefile.am | 5 +++++ debian/osmo-hlr.install | 1 + debian/osmo-hlr.service | 1 - debian/rules | 3 +++ 7 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 contrib/Makefile.am create mode 100644 contrib/systemd/Makefile.am delete mode 120000 debian/osmo-hlr.service diff --git a/Makefile.am b/Makefile.am index 8e18167f..210e4990 100644 --- a/Makefile.am +++ b/Makefile.am @@ -5,6 +5,7 @@ SUBDIRS = \ src \ include \ sql \ + contrib \ tests \ $(NULL) @@ -12,6 +13,9 @@ EXTRA_DIST = \ .version \ $(NULL) +DISTCHECK_CONFIGURE_FLAGS = \ + --with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir) + pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = libosmo-gsup-client.pc diff --git a/configure.ac b/configure.ac index 16c8b51b..368f1ccd 100644 --- a/configure.ac +++ b/configure.ac @@ -92,6 +92,22 @@ AC_MSG_CHECKING([whether to enable VTY/CTRL tests]) AC_MSG_RESULT([$enable_ext_tests]) AM_CONDITIONAL(ENABLE_EXT_TESTS, test "x$enable_ext_tests" = "xyes") +# https://www.freedesktop.org/software/systemd/man/daemon.html +AC_ARG_WITH([systemdsystemunitdir], + [AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files])],, + [with_systemdsystemunitdir=auto]) +AS_IF([test "x$with_systemdsystemunitdir" = "xyes" -o "x$with_systemdsystemunitdir" = "xauto"], [ + def_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd) + + AS_IF([test "x$def_systemdsystemunitdir" = "x"], + [AS_IF([test "x$with_systemdsystemunitdir" = "xyes"], + [AC_MSG_ERROR([systemd support requested but pkg-config unable to query systemd package])]) + with_systemdsystemunitdir=no], + [with_systemdsystemunitdir="$def_systemdsystemunitdir"])]) +AS_IF([test "x$with_systemdsystemunitdir" != "xno"], + [AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])]) +AM_CONDITIONAL([HAVE_SYSTEMD], [test "x$with_systemdsystemunitdir" != "xno"]) + AC_MSG_RESULT([CFLAGS="$CFLAGS"]) AC_MSG_RESULT([CPPFLAGS="$CPPFLAGS"]) @@ -103,6 +119,8 @@ AC_OUTPUT( include/Makefile libosmo-gsup-client.pc sql/Makefile + contrib/Makefile + contrib/systemd/Makefile tests/Makefile tests/auc/Makefile tests/auc/gen_ts_55_205_test_sets/Makefile diff --git a/contrib/Makefile.am b/contrib/Makefile.am new file mode 100644 index 00000000..3439c97b --- /dev/null +++ b/contrib/Makefile.am @@ -0,0 +1 @@ +SUBDIRS = systemd diff --git a/contrib/systemd/Makefile.am b/contrib/systemd/Makefile.am new file mode 100644 index 00000000..520e720e --- /dev/null +++ b/contrib/systemd/Makefile.am @@ -0,0 +1,5 @@ +if HAVE_SYSTEMD +EXTRA_DIST = osmo-hlr.service +systemdsystemunit_DATA = \ + osmo-hlr.service +endif diff --git a/debian/osmo-hlr.install b/debian/osmo-hlr.install index 79915229..5a7c37b6 100644 --- a/debian/osmo-hlr.install +++ b/debian/osmo-hlr.install @@ -1,3 +1,4 @@ +/lib/systemd/system/osmo-hlr.service /usr/bin/osmo-hlr /usr/bin/osmo-hlr-db-tool /usr/share/doc/osmo-hlr/sql/hlr.sql diff --git a/debian/osmo-hlr.service b/debian/osmo-hlr.service deleted file mode 120000 index 184f5aaa..00000000 --- a/debian/osmo-hlr.service +++ /dev/null @@ -1 +0,0 @@ -../contrib/systemd/osmo-hlr.service \ No newline at end of file diff --git a/debian/rules b/debian/rules index 1d8d8ab7..9e97c6c3 100755 --- a/debian/rules +++ b/debian/rules @@ -15,3 +15,6 @@ override_dh_strip: # Print test results in case of a failure override_dh_auto_test: dh_auto_test || (find . -name testsuite.log -exec cat {} \; ; false) + +override_dh_auto_configure: + dh_auto_configure -- --with-systemdsystemunitdir=/lib/systemd/system