From 13bb50b86361e660dede3d9ca3146b8a81bb746e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com> Date: Fri, 21 Apr 2023 18:32:49 -0400 Subject: [PATCH] CMake: handle missing SYSTEMD_UNIT_INSTALL_DIR --- tools/CMakeLists.txt | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt index 7577b356..29de73d9 100644 --- a/tools/CMakeLists.txt +++ b/tools/CMakeLists.txt @@ -46,23 +46,30 @@ if (OPENDHT_SYSTEMD) message("-- Using Systemd unit installation directory requested: " ${OPENDHT_SYSTEMD_UNIT_FILE_LOCATION}) set(SYSTEMD_UNIT_INSTALL_DIR ${OPENDHT_SYSTEMD_UNIT_FILE_LOCATION}) endif() - string(REGEX REPLACE "[ \t\n]+" "" SYSTEMD_UNIT_INSTALL_DIR "${SYSTEMD_UNIT_INSTALL_DIR}") - set (systemdunitdir "${SYSTEMD_UNIT_INSTALL_DIR}") configure_file ( systemd/dhtnode.service.in systemd/dhtnode.service @ONLY ) - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/systemd/dhtnode.service DESTINATION ${systemdunitdir}) - install (FILES systemd/dhtnode.conf DESTINATION ${sysconfdir}) + if (SYSTEMD_UNIT_INSTALL_DIR) + string(REGEX REPLACE "[ \t\n]+" "" SYSTEMD_UNIT_INSTALL_DIR "${SYSTEMD_UNIT_INSTALL_DIR}") + set (systemdunitdir "${SYSTEMD_UNIT_INSTALL_DIR}") + install (FILES ${CMAKE_CURRENT_BINARY_DIR}/systemd/dhtnode.service DESTINATION ${systemdunitdir}) + install (FILES systemd/dhtnode.conf DESTINATION ${sysconfdir}) + else() + message(WARNING "Systemd unit installation directory not found. The systemd unit won't be installed.") + endif() + if (OPENDHT_PYTHON) configure_file ( systemd/dhtcluster.service.in systemd/dhtcluster.service @ONLY ) - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/systemd/dhtcluster.service DESTINATION ${systemdunitdir}) - install (FILES systemd/dhtcluster.conf DESTINATION ${sysconfdir}) + if (SYSTEMD_UNIT_INSTALL_DIR) + install (FILES ${CMAKE_CURRENT_BINARY_DIR}/systemd/dhtcluster.service DESTINATION ${systemdunitdir}) + install (FILES systemd/dhtcluster.conf DESTINATION ${sysconfdir}) + endif() endif() endif () -- GitLab