X-Git-Url: https://arthur.barton.de/gitweb/?p=netdata.git;a=blobdiff_plain;f=configure.ac;h=663f0a395a191049879c1a91ef1e15b5090577c5;hp=f4d7e425cab7f631266443271ee7c653eb067e4c;hb=b060bae83cc36fdc4f14120228e4c9b0d1ec42e8;hpb=7b74c9aad41793211f2aefd0e33bdaaa5ac1bcf3 diff --git a/configure.ac b/configure.ac index f4d7e425..663f0a39 100644 --- a/configure.ac +++ b/configure.ac @@ -4,7 +4,7 @@ AC_PREREQ(2.60) define([VERSION_MAJOR], [1]) -define([VERSION_MINOR], [5]) +define([VERSION_MINOR], [6]) define([VERSION_FIX], [1]) define([VERSION_NUMBER], VERSION_MAJOR[.]VERSION_MINOR[.]VERSION_FIX) define([VERSION_SUFFIX], [_rolling]) @@ -55,7 +55,7 @@ AC_ARG_ENABLE( ) AC_ARG_ENABLE( [plugin-freeipmi], - [AS_HELP_STRING([--enable-plugin-freeipmi], [freeipmi plugin, requires root])], + [AS_HELP_STRING([--enable-plugin-freeipmi], [enable freeipmi plugin])], , [enable_plugin_freeipmi="detect"] ) @@ -256,21 +256,6 @@ if test "${SSE_CANDIDATE}" = "yes" -a "${enable_x86_sse}" = "yes"; then AX_CHECK_COMPILE_FLAG(${opt}, [CFLAGS="${CFLAGS} ${opt}"], []) fi -if test "${enable_lto}" != "no"; then - opt="-flto" - AX_CHECK_COMPILE_FLAG(${opt}, [have_lto=yes], [have_lto=no]) -fi -test "${enable_lto}" = "yes" -a "${have_lto}" != "yes" && \ - AC_MSG_ERROR([LTO is required but is not available.]) -AC_MSG_CHECKING([if LTO should be enabled]) -if test "${enable_lto}" != "no" -a "${have_lto}" = "yes"; then - enable_lto="yes" - CFLAGS="${CFLAGS} -flto" -else - enable_lto="no" -fi -AC_MSG_RESULT([${enable_lto}]) - if test "${GCC}" = "yes"; then AC_DEFINE_UNQUOTED([likely(x)], [__builtin_expect(!!(x), 1)], [gcc branch optimization]) AC_DEFINE_UNQUOTED([unlikely(x)], [__builtin_expect(!!(x), 0)], [gcc branch optimization]) @@ -378,12 +363,15 @@ AM_CONDITIONAL([ENABLE_PLUGIN_FREEIPMI], [test "${enable_plugin_freeipmi}" = "ye # ----------------------------------------------------------------------------- # nfacct.plugin - libmnl, libnetfilter_acct +AC_CHECK_HEADERS_ONCE([linux/netfilter/nfnetlink_conntrack.h]) + PKG_CHECK_MODULES( [NFACCT], [libnetfilter_acct], [have_libnetfilter_acct=yes], [have_libnetfilter_acct=no] ) + PKG_CHECK_MODULES( [LIBMNL], [libmnl], @@ -400,6 +388,8 @@ test "${enable_plugin_nfacct}" = "yes" -a "${have_libmnl}" != "yes" && \ AC_MSG_CHECKING([if nfacct.plugin should be enabled]) if test "${enable_plugin_nfacct}" != "no" -a "${have_libnetfilter_acct}" = "yes" -a "${have_libmnl}" = "yes"; then enable_plugin_nfacct="yes" + AC_DEFINE([HAVE_LIBMNL], [1], [libmnl usability]) + AC_DEFINE([HAVE_LIBNETFILTER_ACCT], [1], [libnetfilter_acct usability]) AC_DEFINE([INTERNAL_PLUGIN_NFACCT], [1], [nfacct plugin usability]) OPTIONAL_NFACCT_CLFAGS="${NFACCT_CFLAGS} ${LIBMNL_CFLAGS}" OPTIONAL_NFACCT_LIBS="${NFACCT_LIBS} ${LIBMNL_LIBS}" @@ -410,6 +400,34 @@ AC_MSG_RESULT([${enable_plugin_nfacct}]) AM_CONDITIONAL([ENABLE_PLUGIN_NFACCT], [test "${enable_plugin_nfacct}" = "yes"]) +# ----------------------------------------------------------------------------- +# Link-Time-Optimization + +if test "${enable_lto}" != "no"; then + opt="-flto" + AX_CHECK_COMPILE_FLAG(${opt}, [have_lto=yes], [have_lto=no]) +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}" + 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 + CFLAGS="${oCFLAGS}" + test "${ac_cv_c_lto}" != "yes" && have_lto="no" +fi +test "${enable_lto}" = "yes" -a "${have_lto}" != "yes" && \ + AC_MSG_ERROR([LTO is required but is not available.]) +AC_MSG_CHECKING([if LTO should be enabled]) +if test "${enable_lto}" != "no" -a "${have_lto}" = "yes"; then + enable_lto="yes" + CFLAGS="${CFLAGS} -flto" +else + enable_lto="no" +fi +AC_MSG_RESULT([${enable_lto}]) + + # ----------------------------------------------------------------------------- AC_DEFINE_UNQUOTED([NETDATA_USER], ["${with_user}"], [use this user to drop privileged])