configure: Added support for --enable-<plugin>=force.
[collectd.git] / configure.in
index a62914d..7b82b8b 100644 (file)
@@ -3223,14 +3223,19 @@ AC_DEFUN(
   [AC_PLUGIN],
   [
     enable_plugin="no"
+    force="no"
     AC_ARG_ENABLE([$1], AC_HELP_STRING([--enable-$1], [$3]),
     [
      if test "x$enableval" = "xyes"
      then
             enable_plugin="yes"
+     else if test "x$enableval" = "xforce"
+     then
+            enable_plugin="yes"
+            force="yes"
      else
             enable_plugin="no"
-     fi
+     fi; fi
     ],
     [
         if test "x$enable_all_plugins" = "xauto"
@@ -3247,9 +3252,13 @@ AC_DEFUN(
     ])
     if test "x$enable_plugin" = "xyes"
     then
-           if test "x$2" = "xyes"
+           if test "x$2" = "xyes" || test "x$force" = "xyes"
            then
                    AC_DEFINE([HAVE_PLUGIN_]my_toupper([$1]), 1, [Define to 1 if the $1 plugin is enabled.])
+                   if test "x$2" != "xyes"
+                   then
+                           dependency_warning="yes"
+                   fi
            else # User passed "yes" but dependency checking yielded "no" => Dependency problem.
                    dependency_error="yes"
                    enable_plugin="no (dependency error)"
@@ -3267,7 +3276,9 @@ AC_COLLECTD([debug],     [enable],  [feature], [debugging])
 AC_COLLECTD([daemon],    [disable], [feature], [daemon mode])
 AC_COLLECTD([getifaddrs],[enable],  [feature], [getifaddrs under Linux])
 
+dependency_warning="no"
 dependency_error="no"
+
 plugin_ascent="no"
 plugin_battery="no"
 plugin_bind="no"
@@ -3899,7 +3910,11 @@ Configuration:
 EOF
 
 if test "x$dependency_error" = "xyes"; then
-       AC_MSG_ERROR("Some plugins are missing dependencies - see above summary for details")
+       AC_MSG_ERROR("Some plugins are missing dependencies - see the summary above for details")
+fi
+
+if test "x$dependency_warning" = "xyes"; then
+       AC_MSG_WARN("Some plugins seem to have missing dependencies but have been enabled forcibly - see the summary above for details")
 fi
 
 # vim: set fdm=marker :