summaryrefslogtreecommitdiff
path: root/cmake/systemd.cmake
diff options
context:
space:
mode:
authorSergey Vojtovich <svoj@mariadb.org>2015-09-28 15:08:09 +0400
committerSergey Vojtovich <svoj@mariadb.org>2015-10-12 17:51:49 +0200
commit6346d1de2fdaa8a8359082871eac49402cb0e472 (patch)
tree62a057a2b8ab0b24bc242461522017e333fe741f /cmake/systemd.cmake
parent20c2ae39db3dd0ec4c337a9b0bd2bf4481b61e49 (diff)
downloadmariadb-git-6346d1de2fdaa8a8359082871eac49402cb0e472.tar.gz
MDEV-427/MDEV-5713 Add systemd script with notify functionality
After review/QA fixes.
Diffstat (limited to 'cmake/systemd.cmake')
-rw-r--r--cmake/systemd.cmake20
1 files changed, 13 insertions, 7 deletions
diff --git a/cmake/systemd.cmake b/cmake/systemd.cmake
index 7f027bdbf56..f031f4be0f4 100644
--- a/cmake/systemd.cmake
+++ b/cmake/systemd.cmake
@@ -22,9 +22,9 @@ MACRO(CHECK_SYSTEMD)
IF(WITH_SYSTEMD STREQUAL "yes" OR WITH_SYSTEMD STREQUAL "auto")
IF(PKG_CONFIG_FOUND)
IF(WITH_SYSTEMD STREQUAL "yes")
- pkg_check_modules(LIBSYSTEMD REQUIRED libsystemd)
+ pkg_search_module(LIBSYSTEMD REQUIRED libsystemd libsystemd-daemon)
ELSE()
- pkg_check_modules(LIBSYSTEMD libsystemd)
+ pkg_search_module(LIBSYSTEMD libsystemd libsystemd-daemon)
ENDIF()
IF(HAVE_DLOPEN)
SET(LIBSYSTEMD ${LIBSYSTEMD_LIBRARIES})
@@ -51,17 +51,23 @@ MACRO(CHECK_SYSTEMD)
CHECK_FUNCTION_EXISTS(sd_listen_fds HAVE_SYSTEMD_SD_LISTEN_FDS)
CHECK_FUNCTION_EXISTS(sd_notify HAVE_SYSTEMD_SD_NOTIFY)
CHECK_FUNCTION_EXISTS(sd_notifyf HAVE_SYSTEMD_SD_NOTIFYF)
+ SET(CMAKE_REQUIRED_LIBRARIES)
IF(HAVE_SYSTEMD AND HAVE_SYSTEMD_SD_DAEMON_H AND HAVE_SYSTEMD_SD_LISTEN_FDS
AND HAVE_SYSTEMD_SD_NOTIFY AND HAVE_SYSTEMD_SD_NOTIFYF)
ADD_DEFINITIONS(-DHAVE_SYSTEMD)
- # should be from pkg-config --variable=systemdsystemconfdir systemd
- # Missing CMake macro: http://public.kitware.com/Bug/view.php?id=15634
- SET(SYSTEMD_SYSTEM_CONFDIR /etc/systemd/system)
- # should be from pkg-config --variable=systemdsystemunitdir systemd
- SET(SYSTEMD_SYSTEM_UNITDIR /usr/lib/systemd/system/)
+ SET(SYSTEMD_SCRIPTS mariadb-service-convert)
+ SET(SYSTEMD_DEB_FILES "usr/bin/mariadb-service-convert
+ ${INSTALL_SYSTEMD_UNITDIR}/mariadb.service
+ ${INSTALL_SYSTEMD_UNITDIR}/mariadb@.service
+ ${INSTALL_SYSTEMD_UNITDIR}/mariadb@bootstrap.service.d/wsrep-new-cluster.conf")
+ IF(DEB)
+ SET(SYSTEMD_EXECSTARTPRE "PermissionsStartOnly=true\nExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld")
+ SET(SYSTEMD_EXECSTARTPOST "ExecStartPost=/etc/mysql/debian-start")
+ ENDIF()
MESSAGE(STATUS "Systemd features enabled")
ELSE()
UNSET(LIBSYSTEMD)
+ UNSET(HAVE_SYSTEMD)
UNSET(HAVE_SYSTEMD_SD_DAEMON_H)
UNSET(HAVE_SYSTEMD_SD_LISTEN_FDS)
UNSET(HAVE_SYSTEMD_SD_NOTIFY)