X-Git-Url: https://git.tokkee.org/?p=sysdb.git;a=blobdiff_plain;f=configure.ac;h=4d7ccaece38ca902af25d737637652931599779d;hp=f54868c29dd7baa71b69d8541d8cc96a066f34d4;hb=0a3dd5b9b97e25156412a95bcecf25f8d75c72fc;hpb=9d80882865895b9eaebc56e878ad5c3c27f8dddb diff --git a/configure.ac b/configure.ac index f54868c..4d7ccae 100644 --- a/configure.ac +++ b/configure.ac @@ -44,6 +44,7 @@ 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) @@ -82,16 +83,16 @@ test_cc_flags() { 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 } @@ -112,8 +113,8 @@ AC_ARG_ENABLE([standards], 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, @@ -121,11 +122,6 @@ if test "x$enable_standards" = "xyes"; then 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]) @@ -450,6 +446,9 @@ if test "x$have_struct_ucred" != "xyes"; then AC_MSG_RESULT([$have_struct_ucred]) fi +dnl Only check this after potentially defining _GNU_SOURCE. +AC_FUNC_STRERROR_R + dnl Testing. PKG_CHECK_MODULES([CHECK], [check >= 0.9.4], [unit_tests="yes"], [unit_tests="no"]) @@ -477,6 +476,17 @@ if test "x$with_libdbi" = "xyes"; then fi AM_CONDITIONAL([BUILD_WITH_LIBDBI], test "x$with_libdbi" = "xyes") +AC_ARG_WITH([libyajl], + [AS_HELP_STRING([--with-liyajl], [libyajl support (default: auto)])], + [with_libyajl="$withval"], + [with_libyajl="yes"]) +if test "x$with_libyajl" = "xyes" || test "x$with_libyajl" = "xauto"; then + PKG_CHECK_MODULES([YAJL], [yajl], [have_libyajl="yes"], [have_libyajl="no"]) +fi +if test "x$have_libyajl" = "xyes"; then + AC_DEFINE([HAVE_LIBYAJL], 1, [Define to 1 if you have the 'yajl' library.]) +fi + dnl Required for mocking FILE related functions. orig_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -D_GNU_SOURCE" @@ -621,7 +631,8 @@ else 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 ]]) fi dnl Feature checks. @@ -685,9 +696,11 @@ AC_SDB_PLUGIN([timeseries-rrdtool], [$rrdtool_default], [fetch time-series data from RRD files]) m4_divert_once([HELP_ENABLE], [ -Store writers:]) +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]) + [send stored objects to a remote instance (write only)]) m4_divert_once([HELP_ENABLE], [ Plugins:]) @@ -731,6 +744,10 @@ librrd_info="$have_librrd" if test "x$have_librrd" = "xyes"; then librrd_info="yes (version `$PKG_CONFIG --modversion librrd`)" fi +libyajl_info="$have_libyajl" +if test "x$have_libyajl" = "xyes"; then + libyajl_info="yes (version `$PKG_CONFIG --modversion yajl`)" +fi AC_MSG_RESULT() AC_MSG_RESULT([$PACKAGE_NAME has been configured successfully.]) @@ -761,6 +778,7 @@ AC_MSG_RESULT([ libedit: . . . . . . . . . $libedit_info]) AC_MSG_RESULT([ libopenssl: . . . . . . . . $openssl_info]) AC_MSG_RESULT([ libreadline: . . . . . . . $have_libreadline]) AC_MSG_RESULT([ librrd: . . . . . . . . . . $librrd_info]) +AC_MSG_RESULT([ libyajl: . . . . . . . . . $libyajl_info]) AC_MSG_RESULT() AC_MSG_RESULT([ Backends:]) AC_MSG_RESULT([ collectd::unixsock: . . . . $enable_collectd_unixsock]) @@ -771,8 +789,9 @@ AC_MSG_RESULT() AC_MSG_RESULT([ Time-series fetchers:]) AC_MSG_RESULT([ rrdtool: . . . . . . . . . $enable_timeseries_rrdtool]) AC_MSG_RESULT() -AC_MSG_RESULT([ Store writers:]) -AC_MSG_RESULT([ network: . . . . . . . . . $enable_store_network]) +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])