~singpolyma/biboumi

25475b60ab363299ddbe5e81ded8968b76838b44 — Florent Le Coz 7 years ago 4233e1f
Generate systemd file from template and make installs it and the conf

The unit file Type=, as well as the executable path should now be correct
with a simple “make install”, whatever the install prefix and the DESTDIR
values are.

ref #3152
3 files changed, 18 insertions(+), 16 deletions(-)

M CMakeLists.txt
M packaging/biboumi.spec
R unit/{biboumi.service => biboumi.service.cmake}
M CMakeLists.txt => CMakeLists.txt +12 -6
@@ 200,11 200,10 @@ endif()
#
## Install target
#
install(TARGETS ${PROJECT_NAME}
  RUNTIME DESTINATION bin)
if(WITH_DOC)
  install(FILES ${MAN_PAGE} DESTINATION share/man/man1 OPTIONAL)
endif()
install(TARGETS ${PROJECT_NAME} RUNTIME                     DESTINATION bin)
install(FILES   ${MAN_PAGE}                                 DESTINATION share/man/man1         OPTIONAL COMPONENT documentation)
install(FILES   ${CMAKE_CURRENT_BINARY_DIR}/biboumi.service DESTINATION /etc/systemd/system    COMPONENT init)
install(FILES   conf/biboumi.cfg                            DESTINATION /etc/biboumi           COMPONENT configuration)

#
## Dist target


@@ 228,4 227,11 @@ endif()
add_custom_target(PrintBuildParameters ALL
  ${CMAKE_COMMAND} -E cmake_echo_color --cyan "Compiling ${PROJECT_NAME} with ${STR_WITH_BOTAN}, ${STR_WITH_CARES}")

configure_file(${CMAKE_CURRENT_SOURCE_DIR}/biboumi.h.cmake ${CMAKE_BINARY_DIR}/src/biboumi.h)
configure_file(biboumi.h.cmake src/biboumi.h)

if(SYSTEMD_FOUND)
  set(SYSTEMD_SERVICE_TYPE "notify")
else()
  set(SYSTEMD_SERVICE_TYPE "simple")
endif()
configure_file(unit/biboumi.service.cmake biboumi.service)

M packaging/biboumi.spec => packaging/biboumi.spec +4 -8
@@ 49,14 49,6 @@ LC_ALL=en_GB.utf-8 make doc
%install
make install DESTDIR=%{buildroot}

# Default config file
install -D -p -m 644 conf/biboumi.cfg \
    %{buildroot}%{biboumi_confdir}/biboumi.cfg

# Systemd unit file
install -D -p -m 644 unit/%{name}.service \
    %{buildroot}%{_unitdir}/%{name}.service


%check
make test_suite/fast VERBOSE=1


@@ 73,6 65,10 @@ make test_suite/fast VERBOSE=1


%changelog
* Wed Jan 13 2016 Le Coz Florent <louiz@louiz.org> - 2.0-2
- Do not install the systemd unit and configuration files, because
  “make install” does it itself now

* Fri May 29 2015 Le Coz Florent <louiz@louiz.org> - 2.0-1
- Update to 2.0 sources


R unit/biboumi.service => unit/biboumi.service.cmake +2 -2
@@ 3,8 3,8 @@ Description=Biboumi, XMPP to IRC gateway
After=network.target

[Service]
Type=notify
ExecStart=/usr/bin/biboumi /etc/biboumi/biboumi.cfg
Type=${SYSTEMD_SERVICE_TYPE}
ExecStart=${CMAKE_INSTALL_PREFIX}/bin/biboumi /etc/biboumi/biboumi.cfg
ExecReload=/bin/kill -s USR1 $MAINPID
WatchdogSec=10
Restart=always