]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
detect whether cgmanager_list_controllers is available
authorSerge Hallyn <serge.hallyn@ubuntu.com>
Wed, 3 Jun 2015 05:03:39 +0000 (05:03 +0000)
committerStéphane Graber <stgraber@ubuntu.com>
Fri, 28 Aug 2015 22:02:16 +0000 (18:02 -0400)
and don't use it if not. This fixes failure to build with older
cgmanager.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
configure.ac
src/lxc/cgmanager.c

index 6f41f8a2f62a9ae1c0522211b2f1fa0d6203e8e2..c0f5daf57c4b5e8651cb6d678f4641a35dd06faa 100644 (file)
@@ -268,6 +268,18 @@ if test "x$have_abs_cgroups" = "xyes"; then
 else
        AC_MSG_RESULT([no])
 fi
+
+AC_MSG_CHECKING(for cgmanager_list_controllers)
+save_LIBS=$LIBS
+AC_SEARCH_LIBS([cgmanager_list_controllers_sync], [cgmanager], [have_list_controllers=yes], [have_list_controllers=no], [-lnih -lnih-dbus -ldbus-1])
+LIBS=$save_LIBS
+if test "x$have_list_controllers" = "xyes"; then
+       AC_DEFINE([HAVE_CGMANAGER_LIST_CONTROLLERS], 1, [Have cgmanager_list_controllers])
+       AC_MSG_RESULT([yes])
+else
+       AC_MSG_RESULT([no])
+fi
+
 # Linux capabilities
 AC_ARG_ENABLE([capabilities],
        [AC_HELP_STRING([--enable-capabilities], [enable kernel capabilities support [default=auto]])],
index ead8cb52f352c49bfce8d7463ef447b4a11c7218..1e9e8aba9dcc40474575d6303064ba1b07a605ff 100644 (file)
@@ -809,6 +809,7 @@ out:
        return pids_len;
 }
 
+#if HAVE_CGMANAGER_LIST_CONTROLLERS
 static bool lxc_list_controllers(char ***list)
 {
        if (!cgm_dbus_connect()) {
@@ -827,6 +828,12 @@ static bool lxc_list_controllers(char ***list)
        cgm_dbus_disconnect();
        return true;
 }
+#else
+static bool lxc_list_controllers(char ***list)
+{
+       return false;
+}
+#endif
 
 static inline void free_abs_cgroup(char *cgroup)
 {