Install systemd services with autotools

Change-Id: Ia1a4fb62dee35737ece1f3501f352501eba2449e
This commit is contained in:
Pau Espin 2018-09-10 13:39:02 +02:00
parent f4ee021b8c
commit 5ac2cb3662
12 changed files with 47 additions and 6 deletions

View File

@ -32,6 +32,7 @@ SUBDIRS = \
CommonLibs \
GSM \
Transceiver52M \
contrib \
tests
EXTRA_DIST = \
@ -41,6 +42,9 @@ EXTRA_DIST = \
COPYING \
README
DISTCHECK_CONFIGURE_FLAGS = \
--with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir)
.PHONY: release
@RELMAKE@

View File

@ -223,6 +223,22 @@ PKG_CHECK_MODULES(FFTWF, fftw3f)
AC_CHECK_HEADER([boost/config.hpp],[],
[AC_MSG_ERROR([boost/config.hpp not found, install e.g. libboost-dev])])
# 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([CPPFLAGS="$CPPFLAGS"])
AC_MSG_RESULT([CFLAGS="$CFLAGS"])
AC_MSG_RESULT([CXXFLAGS="$CXXFLAGS"])
@ -247,6 +263,8 @@ AC_CONFIG_FILES([\
tests/Transceiver52M/Makefile \
doc/Makefile \
doc/examples/Makefile \
contrib/Makefile \
contrib/systemd/Makefile \
])
AC_OUTPUT

1
contrib/Makefile.am Normal file
View File

@ -0,0 +1 @@
SUBDIRS = systemd

View File

@ -0,0 +1,18 @@
if HAVE_SYSTEMD
SYSTEMD_SERVICES =
if DEVICE_UHD
SYSTEMD_SERVICES += osmo-trx-uhd.service
endif
if DEVICE_USRP1
SYSTEMD_SERVICES += osmo-trx-usrp1.service
endif
if DEVICE_LMS
SYSTEMD_SERVICES += osmo-trx-lms.service
endif
EXTRA_DIST = $(SYSTEMD_SERVICES)
systemdsystemunit_DATA = $(SYSTEMD_SERVICES)
endif # HAVE_SYSTEMD

View File

@ -1,2 +1,3 @@
lib/systemd/system/osmo-trx-lms.service
/usr/bin/osmo-trx-lms
/usr/share/doc/osmo-trx/examples/osmo-trx-lms/osmo-trx-limesdr.cfg /usr/share/doc/osmo-trx/examples/osmo-trx-lms/

View File

@ -1 +0,0 @@
../contrib/systemd/osmo-trx-lms.service

View File

@ -1,3 +1,4 @@
lib/systemd/system/osmo-trx-uhd.service
/usr/bin/osmo-trx-uhd
/usr/share/doc/osmo-trx/examples/osmo-trx-uhd/osmo-trx-usrp_b200.cfg /usr/share/doc/osmo-trx/examples/osmo-trx-uhd/
/usr/share/doc/osmo-trx/examples/osmo-trx-uhd/osmo-trx-limesdr.cfg /usr/share/doc/osmo-trx/examples/osmo-trx-uhd/

View File

@ -1 +0,0 @@
../contrib/systemd/osmo-trx-uhd.service

View File

@ -1,3 +1,4 @@
lib/systemd/system/osmo-trx-usrp1.service
/usr/bin/osmo-trx-usrp1
/usr/share/usrp/rev2/std_inband.rbf
/usr/share/usrp/rev4/std_inband.rbf

View File

@ -1 +0,0 @@
../contrib/systemd/osmo-trx-usrp1.service

View File

@ -50,8 +50,8 @@ Index: osmo-trx/debian/rules
dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info
override_dh_auto_configure:
- dh_auto_configure -- --with-uhd --with-usrp1 --with-lms
+ dh_auto_configure -- --with-uhd --with-usrp1
- dh_auto_configure -- --with-uhd --with-usrp1 --with-lms --with-systemdsystemunitdir=/lib/systemd/system
+ dh_auto_configure -- --with-uhd --with-usrp1 --with-systemdsystemunitdir=/lib/systemd/system
override_dh_strip:
dh_strip --dbg-package=osmo-trx-dbg

2
debian/rules vendored
View File

@ -9,7 +9,7 @@ override_dh_shlibdeps:
dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info
override_dh_auto_configure:
dh_auto_configure -- --with-uhd --with-usrp1 --with-lms
dh_auto_configure -- --with-uhd --with-usrp1 --with-lms --with-systemdsystemunitdir=/lib/systemd/system
override_dh_strip:
dh_strip --dbg-package=osmo-trx-dbg