summaryrefslogtreecommitdiff
path: root/CMake
diff options
context:
space:
mode:
authorJulian Andres Klode <julian.klode@canonical.com>2019-04-15 11:32:50 +0200
committerJulian Andres Klode <julian.klode@canonical.com>2019-05-07 11:17:52 +0200
commitc5b8a857f2535fe284426cefda2fbd1bbb3d5808 (patch)
tree03e99b4fc41c6c84d17053ae2016118eb97caa75 /CMake
parenta76f9705ab4dfa439fa2c8788ee67d0766700d07 (diff)
Prevent shutdown while running dpkg
As long as we are running dpkg, keep an inhibitor that blocks us from shutting down. LP: #1820886 (cherry picked from commit 96aef11a5cf400377a52f7e93e70944b17e249d1) (cherry picked from commit 8ea79afcadead5a5b7d94bf8623cb833859f6d80)
Diffstat (limited to 'CMake')
-rw-r--r--CMake/FindSystemd.cmake24
-rw-r--r--CMake/config.h.in3
2 files changed, 27 insertions, 0 deletions
diff --git a/CMake/FindSystemd.cmake b/CMake/FindSystemd.cmake
new file mode 100644
index 000000000..1c7a7debf
--- /dev/null
+++ b/CMake/FindSystemd.cmake
@@ -0,0 +1,24 @@
+# - Try to find SYSTEMD
+# Once done, this will define
+#
+# SYSTEMD_FOUND - system has SYSTEMD
+# SYSTEMD_INCLUDE_DIRS - the SYSTEMD include directories
+# SYSTEMD_LIBRARIES - the SYSTEMD library
+find_package(PkgConfig)
+
+pkg_check_modules(SYSTEMD_PKGCONF libsystemd)
+
+find_path(SYSTEMD_INCLUDE_DIRS
+ NAMES systemd/sd-bus.h
+ PATHS ${SYSTEMD_PKGCONF_INCLUDE_DIRS}
+)
+
+find_library(SYSTEMD_LIBRARIES
+ NAMES systemd
+ PATHS ${SYSTEMD_PKGCONF_LIBRARY_DIRS}
+)
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(Systemd DEFAULT_MSG SYSTEMD_INCLUDE_DIRS SYSTEMD_LIBRARIES)
+
+mark_as_advanced(SYSTEMD_INCLUDE_DIRS SYSTEMD_LIBRARIES)
diff --git a/CMake/config.h.in b/CMake/config.h.in
index bd0da8649..22be6998e 100644
--- a/CMake/config.h.in
+++ b/CMake/config.h.in
@@ -20,6 +20,9 @@
/* Define if we have the zstd library for zst */
#cmakedefine HAVE_ZSTD
+/* Define if we have the systemd library */
+#cmakedefine HAVE_SYSTEMD
+
/* Define if we have the udev library */
#cmakedefine HAVE_UDEV