diff --git a/configure.ac b/configure.ac
index 59f4ee7c413c0e5c5cdfeb2f66309d0e86d5d89e..c39c4af2fc726a3779b641954e054781a9d76430 100644 (file)
--- a/configure.ac
+++ b/configure.ac
PACKAGE_MAINTAINER="Sebastian 'tokkee' Harl <tokkee@sysdb.io>"
AC_DEFINE_UNQUOTED([PACKAGE_MAINTAINER], ["$PACKAGE_MAINTAINER"],
[Define to the name of the maintainer of this package.])
+if test "x$PACKAGE_URL" = "x"; then
+ PACKAGE_URL="https://sysdb.io/"
+ AC_DEFINE_UNQUOTED([PACKAGE_URL], ["$PACKAGE_URL"],
+ [Define to the home page for this package.])
+fi
+
AC_CONFIG_SRCDIR([src/sysdb.c])
AC_CONFIG_HEADERS([src/config.h])
AC_PREFIX_DEFAULT([/opt/sysdb])
AM_INIT_AUTOMAKE([foreign subdir-objects -Wall])
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
AC_LANG(C)
AC_LANG_CONFTEST([int main(void){}])
$CC -c conftest.c $CFLAGS $STRICT_CFLAGS $@ > /dev/null 2> /dev/null
ret=$?
- rm -f conftest.o
+ rm -f conftest.o conftest.c
return $ret
}
test_cxx_flags() {
AC_LANG_PUSH(C++)
AC_LANG_CONFTEST([int main(void){}])
- $CXX -c conftest.c $CXXFLAGS $STRICT_CXXFLAGS $@ > /dev/null 2> /dev/null
+ $CXX -c conftest.cpp $CXXFLAGS $STRICT_CXXFLAGS $@ > /dev/null 2> /dev/null
ret=$?
- rm -f conftest.o
+ rm -f conftest.o conftest.cpp
AC_LANG_POP(C++)
return $ret
}
if test "x$enable_standards" = "xyes"; then
AC_DEFINE([_ISOC99_SOURCE], 1,
[Define to enforce ISO/IEC 9899:1999 (C99) compliance.])
- AC_DEFINE([_POSIX_C_SOURCE], 200112L,
- [Define to enforce IEEE 1003.1-2001 (POSIX:2001) compliance.])
+ AC_DEFINE([_POSIX_C_SOURCE], 200809L,
+ [Define to enforce IEEE 1003.1-2008 (POSIX:2008) compliance.])
AC_DEFINE([_XOPEN_SOURCE], 700,
[Define to enforce X/Open 7 (XSI) compliance.])
AC_DEFINE([_REENTRANT], 1,
AC_DEFINE([_THREAD_SAFE], 1,
[Define to enable reentrant interfaces.])
- dnl GNU libc defines strcasecmp() only when using _BSD_SOURCE even though
- dnl the function is conforming to POSIX.1-2001 as well. Let's weaken
- dnl strict standards compliance a bit to work around this.
- AC_DEFINE([_BSD_SOURCE], 1, [Define to enable 4.3BSD support.])
-
for flag in -std=c99; do
AC_MSG_CHECKING([whether $CC accepts $flag])
AC_DEFINE([HAVE_FOPENCOOKIE], 1)
fi
+dnl OpenSSL support
+PKG_CHECK_MODULES([OPENSSL], [openssl], [have_openssl="yes"], [have_openssl="no"])
+if test "x$have_openssl" != "xyes"; then
+ AC_MSG_ERROR([OpenSSL not found])
+fi
+
dnl readline support
AC_ARG_WITH([readline],
[AS_HELP_STRING([--with-readline],
fi; fi
if test "x$have_librrd" = "xyes"; then
- AC_CHECK_HEADERS([rrd_client.h])
+ AC_CHECK_HEADERS([rrd.h])
+ AC_CHECK_HEADERS([rrd_client.h], [], [], [[#include <rrd.h>]])
fi
dnl Feature checks.
AC_SDB_PLUGIN([timeseries-rrdtool], [$rrdtool_default],
[fetch time-series data from RRD files])
+m4_divert_once([HELP_ENABLE], [
+Store implementations:])
+AC_SDB_PLUGIN([store-memory], [yes],
+ [store objects in a volatile, in-memory database (read/write)])
+AC_SDB_PLUGIN([store-network], [yes],
+ [send stored objects to a remote instance (write only)])
+
m4_divert_once([HELP_ENABLE], [
Plugins:])
BUILD_DATE="`date --utc '+%F %T'` (UTC)"
+asciidoc_info="$have_asciidoc"
+if test "x$have_asciidoc" = "xyes"; then
+ asciidoc_info="`$ASCIIDOC --version`"
+fi
+xmlto_info="$have_xmlto"
+if test "x$have_xmlto" = "xyes"; then
+ xmlto_info="`$XMLTO --version`"
+fi
+
+if test "x$unit_tests" = "xyes"; then
+ unit_tests="yes (check `$PKG_CONFIG --modversion check`)"
+fi
+
+openssl_info="$have_openssl"
+if test "x$have_openssl" = "xyes"; then
+ openssl_info="yes (version `$PKG_CONFIG --modversion openssl`)"
+fi
+libedit_info="$have_libedit"
+if test "x$have_libedit" = "xyes"; then
+ libedit_info="yes (version `$PKG_CONFIG --modversion libedit`)"
+fi
+librrd_info="$have_librrd"
+if test "x$have_librrd" = "xyes"; then
+ librrd_info="yes (version `$PKG_CONFIG --modversion librrd`)"
+fi
+
AC_MSG_RESULT()
AC_MSG_RESULT([$PACKAGE_NAME has been configured successfully.])
AC_MSG_RESULT()
AC_MSG_RESULT([ build date: $BUILD_DATE])
AC_MSG_RESULT()
AC_MSG_RESULT([ Tools:])
-AC_MSG_RESULT([ AsciiDoc: . . . . . . . . . $have_asciidoc])
-AC_MSG_RESULT([ xmlto: . . . . . . . . . . $have_xmlto])
+AC_MSG_RESULT([ AsciiDoc: . . . . . . . . . $asciidoc_info])
+AC_MSG_RESULT([ xmlto: . . . . . . . . . . $xmlto_info])
AC_MSG_RESULT()
AC_MSG_RESULT([ Features:])
AC_MSG_RESULT([ documentation: . . . . . . $build_documentation])
AC_MSG_RESULT()
AC_MSG_RESULT([ Libraries:])
AC_MSG_RESULT([ libdbi: . . . . . . . . . . $with_libdbi])
-AC_MSG_RESULT([ libedit: . . . . . . . . . $have_libedit])
+AC_MSG_RESULT([ libedit: . . . . . . . . . $libedit_info])
+AC_MSG_RESULT([ libopenssl: . . . . . . . . $openssl_info])
AC_MSG_RESULT([ libreadline: . . . . . . . $have_libreadline])
-AC_MSG_RESULT([ librrd: . . . . . . . . . . $have_librrd])
+AC_MSG_RESULT([ librrd: . . . . . . . . . . $librrd_info])
AC_MSG_RESULT()
AC_MSG_RESULT([ Backends:])
AC_MSG_RESULT([ collectd::unixsock: . . . . $enable_collectd_unixsock])
AC_MSG_RESULT([ Time-series fetchers:])
AC_MSG_RESULT([ rrdtool: . . . . . . . . . $enable_timeseries_rrdtool])
AC_MSG_RESULT()
+AC_MSG_RESULT([ Store implementations:])
+AC_MSG_RESULT([ memory: . . . . . . . . . . $enable_store_memory])
+AC_MSG_RESULT([ network (writer): . . . . . $enable_store_network])
+AC_MSG_RESULT()
AC_MSG_RESULT([ Plugins:])
AC_MSG_RESULT([ cname::dns: . . . . . . . . $enable_cname_dns])
AC_MSG_RESULT([ syslog: . . . . . . . . . . $enable_syslog])