diff --git a/configure.ac b/configure.ac
index baf1137b530197b1689be9106ff4f9751b70377b..a03b5ce55d5e8bd3325f2d2b71dbf42d07de47fa 100644 (file)
--- a/configure.ac
+++ b/configure.ac
AC_SUBST([PROFILING_CFLAGS])
AC_SUBST([PROFILING_LDFLAGS])
+ieee754_layout="unknown"
+AC_MSG_CHECKING([the memory layout of double precision values])
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include <string.h>
+#include <inttypes.h>
+ ]],
+ [[
+double d = 3.141592653e130;
+char c[8];
+if (sizeof(d) != 8)
+ return 2;
+memcpy(&c, &d, 8);
+if (c[0] == '\x04' && c[1] == '\x10' && c[2] == '\x1E' && c[3] == '\x66' &&
+ c[4] == '\x40' && c[5] == '\xA9' && c[6] == '\x06' && c[7] == '\x5B')
+ return 0;
+else
+ return 1;
+ ]]
+ )],
+ [ieee754_layout="little-endian"], [ieee754_layout="unknown"])
+if test "x$ieee754_layout" = "xunknown"; then
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include <string.h>
+#include <inttypes.h>
+ ]],
+ [[
+double d = 3.141592653e130;
+char c[8];
+if (sizeof(d) != 8)
+ return 2;
+memcpy(&c, &d, 8);
+if (c[7] == '\x04' && c[6] == '\x10' && c[5] == '\x1E' && c[4] == '\x66' &&
+ c[3] == '\x40' && c[2] == '\xA9' && c[1] == '\x06' && c[0] == '\x5B')
+ return 0;
+else
+ return 1;
+ ]]
+ )],
+ [ieee754_layout="big-endian"], [ieee754_layout="unknown"])
+fi
+AC_MSG_RESULT([IEEE-754 $ieee754_layout])
+
+AC_DEFINE([IEEE754_DOUBLE_LITTLE_ENDIAN], 1234,
+ [Identifier for IEEE-754 little-endian encoding of double precision values])
+AC_DEFINE([IEEE754_DOUBLE_BIG_ENDIAN], 4321,
+ [Identifier for IEEE-754 big-endian encoding of double precision values])
+if test "x$ieee754_layout" = "xlittle-endian"; then
+ AC_DEFINE([IEEE754_DOUBLE_BYTE_ORDER], 1234,
+ [Define to 1 if double precision values use IEEE-754 little-endian encoding])
+else if test "x$ieee754_layout" = "xbig-endian"; then
+ AC_DEFINE([IEEE754_DOUBLE_BYTE_ORDER], 4321,
+ [Define to 1 if double precision values use IEEE-754 little-endian encoding])
+else
+ AC_MSG_ERROR([Unknown memory layout of double precision values])
+fi; fi
+
m4_divert_once([HELP_ENABLE], [
Build dependencies:])
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],
AC_SDB_PLUGIN([timeseries-rrdtool], [$rrdtool_default],
[fetch time-series data from RRD files])
+m4_divert_once([HELP_ENABLE], [
+Store writers:])
+AC_SDB_PLUGIN([store-network], [yes],
+ [send stored objects to a remote instance])
+
m4_divert_once([HELP_ENABLE], [
Plugins:])
AC_MSG_RESULT([ Libraries:])
AC_MSG_RESULT([ libdbi: . . . . . . . . . . $with_libdbi])
AC_MSG_RESULT([ libedit: . . . . . . . . . $have_libedit])
+AC_MSG_RESULT([ libopenssl: . . . . . . . . $have_openssl])
AC_MSG_RESULT([ libreadline: . . . . . . . $have_libreadline])
AC_MSG_RESULT([ librrd: . . . . . . . . . . $have_librrd])
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()
AC_MSG_RESULT([ Plugins:])
AC_MSG_RESULT([ cname::dns: . . . . . . . . $enable_cname_dns])
AC_MSG_RESULT([ syslog: . . . . . . . . . . $enable_syslog])