summaryrefslogtreecommitdiffstats
path: root/configure.ac
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--configure.ac106
1 files changed, 91 insertions, 15 deletions
diff --git a/configure.ac b/configure.ac
index 5fb493d5..d62d6523 100644
--- a/configure.ac
+++ b/configure.ac
@@ -57,12 +57,18 @@ AC_ARG_ENABLE(
,
[enable_plugin_freeipmi="detect"]
)
- AC_ARG_ENABLE(
+AC_ARG_ENABLE(
[plugin-cups],
[AS_HELP_STRING([--enable-plugin-cups], [enable cups plugin @<:@default autodetect@:>@])],
,
[enable_plugin_cups="detect"]
- )
+)
+AC_ARG_ENABLE(
+ [plugin-xenstat],
+ [AS_HELP_STRING([--enable-plugin-xenstat], [enable xenstat plugin @<:@default autodetect@:>@])],
+ ,
+ [enable_plugin_xenstat="detect"]
+)
AC_ARG_ENABLE(
[pedantic],
@@ -407,10 +413,10 @@ AM_CONDITIONAL([ENABLE_PLUGIN_FREEIPMI], [test "${enable_plugin_freeipmi}" = "ye
# -----------------------------------------------------------------------------
-# cups.plugin - libmnl, libnetfilter_acct
+# cups.plugin - libcups
# Only check most recently added method of cups
- AC_CHECK_LIB([cups], [httpConnect2],
+AC_CHECK_LIB([cups], [httpConnect2],
[AC_CHECK_HEADER(
[cups/cups.h],
[have_cups=yes],
@@ -463,11 +469,11 @@ PKG_CHECK_MODULES(
[NFACCT],
[libnetfilter_acct],
[AC_CHECK_LIB(
- [netfilter_acct],
- [nfacct_alloc],
- [have_libnetfilter_acct=yes],
- [have_libnetfilter_acct=no]
- )],
+ [netfilter_acct],
+ [nfacct_alloc],
+ [have_libnetfilter_acct=yes],
+ [have_libnetfilter_acct=no]
+ )],
[have_libnetfilter_acct=no]
)
@@ -475,11 +481,11 @@ PKG_CHECK_MODULES(
[LIBMNL],
[libmnl],
[AC_CHECK_LIB(
- [mnl],
- [mnl_socket_open],
- [have_libmnl=yes],
- [have_libmnl=no]
- )],
+ [mnl],
+ [mnl_socket_open],
+ [have_libmnl=yes],
+ [have_libmnl=no]
+ )],
[have_libmnl=no]
)
@@ -504,6 +510,73 @@ AM_CONDITIONAL([ENABLE_PLUGIN_NFACCT], [test "${enable_plugin_nfacct}" = "yes"])
# -----------------------------------------------------------------------------
+# xenstat.plugin - libxenstat
+
+PKG_CHECK_MODULES(
+ [YAJL],
+ [yajl],
+ [AC_CHECK_LIB(
+ [yajl],
+ [yajl_tree_get],
+ [have_libyajl=yes],
+ [have_libyajl=no]
+ )],
+ [have_libyajl=no]
+)
+
+AC_CHECK_LIB(
+ [xenstat],
+ [xenstat_init],
+ [AC_CHECK_HEADER(
+ [xenstat.h],
+ [have_libxenstat=yes],
+ [have_libxenstat=no]
+ )],
+ [have_libxenstat=no],
+ [-lyajl]
+)
+
+PKG_CHECK_MODULES(
+ [XENLIGHT],
+ [xenlight],
+ [AC_CHECK_LIB(
+ [xenlight],
+ [libxl_domain_info],
+ [AC_CHECK_HEADER(
+ [libxl.h],
+ [have_libxenlight=yes],
+ [have_libxenlight=no]
+ )],
+ [have_libxenlight=no]
+ )],
+ [have_libxenlight=no]
+)
+
+test "${enable_plugin_xenstat}" = "yes" -a "${have_libxenstat}" != "yes" && \
+ AC_MSG_ERROR([libxenstat required but not found. try installing 'xen-dom0-libs-devel'])
+
+test "${enable_plugin_xenstat}" = "yes" -a "${have_libxenlight}" != "yes" && \
+ AC_MSG_ERROR([libxenlight required but not found. try installing 'xen-dom0-libs-devel'])
+
+test "${enable_plugin_xenstat}" = "yes" -a "${have_libyajl}" != "yes" && \
+ AC_MSG_ERROR([libyajl required but not found. Try installing 'yajl-devel'])
+
+AC_MSG_CHECKING([if xenstat.plugin should be enabled])
+if test "${enable_plugin_xenstat}" != "no" -a "${have_libxenstat}" = "yes" -a "${have_libxenlight}" = "yes" -a "${have_libyajl}" = "yes"; then
+ enable_plugin_xenstat="yes"
+ AC_DEFINE([HAVE_LIBXENSTAT], [1], [libxenstat usability])
+ AC_DEFINE([HAVE_LIBXENLIGHT], [1], [libxenlight usability])
+ AC_DEFINE([HAVE_LIBYAJL], [1], [libyajl usability])
+ OPTIONAL_XENSTAT_CLFAGS="${XENLIGHT_CFLAGS} ${YAJL_CFLAGS}"
+ OPTIONAL_XENSTAT_LIBS="-lxenstat ${XENLIGHT_LIBS} ${YAJL_LIBS}"
+else
+ enable_plugin_xenstat="no"
+fi
+AC_MSG_RESULT([${enable_plugin_xenstat}])
+AM_CONDITIONAL([ENABLE_PLUGIN_XENSTAT], [test "${enable_plugin_xenstat}" = "yes"])
+
+
+# -----------------------------------------------------------------------------
# check for setns() - cgroup-network
AC_CHECK_FUNC([setns])
@@ -527,7 +600,7 @@ if test "${enable_lto}" != "no"; then
fi
if test "${have_lto}" = "yes"; then
oCFLAGS="${CFLAGS}"
- CFLAGS="${CFLAGS} -flto ${OPTIONAL_MATH_CLFAGS} ${OPTIONAL_NFACCT_CLFAGS} ${OPTIONAL_ZLIB_CLFAGS} ${OPTIONAL_UUID_CLFAGS} ${OPTIONAL_LIBCAP_CFLAGS} ${OPTIONAL_IPMIMONITORING_CFLAGS} ${OPTIONAL_CUPS_CLFAGS}"
+ CFLAGS="${CFLAGS} -flto ${OPTIONAL_MATH_CLFAGS} ${OPTIONAL_NFACCT_CLFAGS} ${OPTIONAL_ZLIB_CLFAGS} ${OPTIONAL_UUID_CLFAGS} ${OPTIONAL_LIBCAP_CFLAGS} ${OPTIONAL_IPMIMONITORING_CFLAGS} ${OPTIONAL_CUPS_CLFAGS} ${OPTIONAL_XENSTAT_FLAGS}"
ac_cv_c_lto_cross_compile="${enable_lto}"
test "${ac_cv_c_lto_cross_compile}" != "yes" && ac_cv_c_lto_cross_compile="no"
AC_C_LTO
@@ -600,6 +673,8 @@ AC_SUBST([OPTIONAL_IPMIMONITORING_CFLAGS])
AC_SUBST([OPTIONAL_IPMIMONITORING_LIBS])
AC_SUBST([OPTIONAL_CUPS_CFLAGS])
AC_SUBST([OPTIONAL_CUPS_LIBS])
+AC_SUBST([OPTIONAL_XENSTAT_CFLAGS])
+AC_SUBST([OPTIONAL_XENSTAT_LIBS])
AC_CONFIG_FILES([
@@ -629,6 +704,7 @@ AC_CONFIG_FILES([
collectors/python.d.plugin/Makefile
collectors/statsd.plugin/Makefile
collectors/tc.plugin/Makefile
+ collectors/xenstat.plugin/Makefile
daemon/Makefile
database/Makefile
diagrams/Makefile