X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=configure.ac;h=b78dd11bf5ce77841ec17cfd2436fce6d8c9c89b;hb=fcccdd28cd71d982421c72f306d106928d6c5fbd;hp=2dfa9d86e2253da056d594137f91c14b8db2b995;hpb=c06b91ff996f55eac5da78a6a6c9784b636c4b2f;p=collectd.git diff --git a/configure.ac b/configure.ac index 2dfa9d86..b78dd11b 100644 --- a/configure.ac +++ b/configure.ac @@ -44,6 +44,7 @@ AC_SYS_LARGEFILE # AC_PROG_CC AC_PROG_CPP +AC_PROG_EGREP AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_MAKE_SET @@ -54,8 +55,24 @@ AC_DISABLE_STATIC AC_PROG_LIBTOOL AC_PROG_LEX AC_PROG_YACC + +# Warn when pkg.m4 is missing +m4_pattern_forbid([^_?PKG_[A-Z_]+$],[*** pkg.m4 missing, please install pkg-config]) + PKG_PROG_PKG_CONFIG +AC_CACHE_CHECK([if bison is the parser generator], + [collectd_cv_prog_bison], + [AS_IF([$YACC --version 2>/dev/null | $EGREP -q '^bison '], + [collectd_cv_prog_bison=yes], [collectd_cv_prog_bison=no] + )] +) + +if test "x$collectd_cv_prog_bison" = "xno" && test ! -f "${srcdir}/src/liboconfig/parser.c" +then + AC_MSG_ERROR([bison is missing and you do not have ${srcdir}/src/liboconfig/parser.c. Please install bison]) +fi + AC_CHECK_PROG([have_protoc_c], [protoc-c], [yes], [no]) if test "x$have_protoc_c" = "xno" then @@ -70,7 +87,7 @@ then fi if test "x$have_protoc_c" = "xyes" then - AC_CHECK_LIB([protobuf-c], [protobuf_c_version], + AC_CHECK_LIB([protobuf-c], [protobuf_c_message_pack], [have_protoc_c="yes"], [have_protoc_c="no (libprotobuf-c not found)"]) @@ -584,7 +601,33 @@ AC_CHECK_HEADERS(linux/un.h, [], [], #endif ]) -AC_CHECK_HEADERS(pwd.h grp.h sys/un.h ctype.h limits.h xfs/xqm.h fs_info.h fshelp.h paths.h mntent.h mnttab.h sys/fstyp.h sys/fs_types.h sys/mntent.h sys/mnttab.h sys/statfs.h sys/statvfs.h sys/vfs.h sys/vfstab.h kvm.h wordexp.h) +AC_CHECK_HEADERS([ \ + ctype.h \ + fs_info.h \ + fshelp.h \ + grp.h \ + kvm.h \ + limits.h \ + mntent.h \ + mnttab.h \ + paths.h \ + pwd.h \ + sys/fs_types.h \ + sys/fstyp.h \ + sys/mntent.h \ + sys/mnttab.h \ + sys/statfs.h \ + sys/statvfs.h \ + sys/un.h \ + sys/vfs.h \ + sys/vfstab.h \ + wordexp.h \ +]) + +AC_CHECK_HEADERS([xfs/xqm.h], [], [], +[ +#define _GNU_SOURCE +]) # For the dns plugin AC_CHECK_HEADERS(arpa/nameser.h) @@ -1381,6 +1424,7 @@ AC_CHECK_MEMBERS([struct kinfo_proc.kp_proc, struct kinfo_proc.kp_eproc], AC_CHECK_MEMBERS([struct udphdr.uh_dport, struct udphdr.uh_sport], [], [], [#define _BSD_SOURCE +#define _DEFAULT_SOURCE #if HAVE_STDINT_H # include #endif @@ -1402,6 +1446,7 @@ AC_CHECK_MEMBERS([struct udphdr.uh_dport, struct udphdr.uh_sport], [], [], ]) AC_CHECK_MEMBERS([struct udphdr.dest, struct udphdr.source], [], [], [#define _BSD_SOURCE +#define _DEFAULT_SOURCE #if HAVE_STDINT_H # include #endif @@ -2185,7 +2230,7 @@ then fi AC_MSG_CHECKING([for libjvm.so]) - TMPVAR=`find -L "$with_java_home" -name libjvm.so -type f -exec 'dirname' '{}' ';' 2>/dev/null | head -n 1` + TMPVAR=`find -L "$with_java_home" -type f \( -name libjvm.so -o -name libjvm.dylib \) -exec 'dirname' '{}' ';' 2>/dev/null | head -n 1` if test "x$TMPVAR" != "x" then AC_MSG_RESULT([found in $TMPVAR]) @@ -3761,76 +3806,102 @@ AM_CONDITIONAL(BUILD_WITH_LIBROUTEROS, test "x$with_librouteros" = "xyes") # }}} # --with-librrd {{{ -# AC_ARG_WITH (package, help-string, [action-if-given], [action-if-not-given]) librrd_cflags="" librrd_ldflags="" -librrd_threadsafe="yes" +librrd_threadsafe="no" librrd_rrdc_update="no" -AC_ARG_WITH(librrd, [AS_HELP_STRING([--with-librrd@<:@=PREFIX@:>@], [Path to rrdtool.])], -[ if test "x$withval" != "xno" && test "x$withval" != "xyes" - then - librrd_cflags="-I$withval/include" - librrd_ldflags="-L$withval/lib" - with_librrd="yes" - else - with_librrd="$withval" - fi -], [with_librrd="yes"]) +AC_ARG_WITH(librrd, + [AS_HELP_STRING([--with-librrd@<:@=PREFIX@:>@], [Path to rrdtool.])], + [ + if test "x$withval" != "xno" && test "x$withval" != "xyes" + then + librrd_cflags="-I$withval/include" + librrd_ldflags="-L$withval/lib" + with_librrd="yes" + else + with_librrd="$withval" + fi + ], + [with_librrd="yes"] +) + if test "x$with_librrd" = "xyes" then - SAVE_CPPFLAGS="$CPPFLAGS" - SAVE_LDFLAGS="$LDFLAGS" + SAVE_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $librrd_ldflags" + PKG_CHECK_MODULES([RRD], [librrd >= 1.6.0], + [ + AC_CHECK_LIB([rrd], [rrd_update_r], + [librrd_threadsafe="yes"], + [:] + ) + AC_CHECK_LIB([rrd], [rrdc_update], + [librrd_rrdc_update="yes"], + [:] + ) + ],[:] + ) + LDFLAGS="$SAVE_LDFLAGS" - CPPFLAGS="$CPPFLAGS $librrd_cflags" - LDFLAGS="$LDFLAGS $librrd_ldflags" + SAVE_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $RRD_CFLAGS $librrd_cflags" - AC_CHECK_HEADERS(rrd.h,, [with_librrd="no (rrd.h not found)"]) + AC_CHECK_HEADERS([rrd.h],, [with_librrd="no (rrd.h not found)"]) - CPPFLAGS="$SAVE_CPPFLAGS" - LDFLAGS="$SAVE_LDFLAGS" + CPPFLAGS="$SAVE_CPPFLAGS" fi -if test "x$with_librrd" = "xyes" -then - SAVE_CPPFLAGS="$CPPFLAGS" - SAVE_LDFLAGS="$LDFLAGS" - CPPFLAGS="$CPPFLAGS $librrd_cflags" - LDFLAGS="$LDFLAGS $librrd_ldflags" +if test "x$with_librrd" = "xyes" && test "x$librrd_threadsafe" = "xno" +then + SAVE_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $librrd_ldflags" - AC_CHECK_LIB(rrd_th, rrd_update_r, - [with_librrd="yes" - librrd_ldflags="$librrd_ldflags -lrrd_th -lm" - ], - [librrd_threadsafe="no" - AC_CHECK_LIB(rrd, rrd_update, - [with_librrd="yes" - librrd_ldflags="$librrd_ldflags -lrrd -lm" - ], - [with_librrd="no (symbol 'rrd_update' not found)"], - [-lm]) - ], - [-lm]) + AC_CHECK_LIB([rrd_th], [rrd_update_r], + [ + librrd_ldflags="$librrd_ldflags -lrrd_th" + librrd_threadsafe="yes" + AC_CHECK_LIB([rrd_th], [rrdc_update], + [librrd_rrdc_update="yes"], + [:], + ) + ], + [:] + ) + LDFLAGS="$SAVE_LDFLAGS" +fi - if test "x$librrd_threadsafe" = "xyes" - then - AC_CHECK_LIB(rrd_th, rrdc_update, [librrd_rrdc_update="yes"], [librrd_rrdc_update="no"]) - else - AC_CHECK_LIB(rrd, rrdc_update, [librrd_rrdc_update="yes"], [librrd_rrdc_update="no"]) - fi +if test "x$with_librrd" = "xyes" && test "x$librrd_threadsafe" = "xno" +then + SAVE_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $librrd_ldflags" - CPPFLAGS="$SAVE_CPPFLAGS" - LDFLAGS="$SAVE_LDFLAGS" + AC_CHECK_LIB([rrd], [rrd_update], + [ + librrd_ldflags="$librrd_ldflags -lrrd" + AC_CHECK_LIB([rrd], [rrdc_update], + [librrd_rrdc_update="yes"], + [:] + ) + ], + [with_librrd="no (symbol 'rrd_update' not found)"] + ) + LDFLAGS="$SAVE_LDFLAGS" fi + if test "x$with_librrd" = "xyes" then - BUILD_WITH_LIBRRD_CFLAGS="$librrd_cflags" - BUILD_WITH_LIBRRD_LDFLAGS="$librrd_ldflags" - AC_SUBST(BUILD_WITH_LIBRRD_CFLAGS) - AC_SUBST(BUILD_WITH_LIBRRD_LDFLAGS) + BUILD_WITH_LIBRRD_CFLAGS="$RRD_CFLAGS $librrd_cflags" + BUILD_WITH_LIBRRD_LDFLAGS="$librrd_ldflags" + BUILD_WITH_LIBRRD_LIBS="$RRD_LIBS" + AC_SUBST(BUILD_WITH_LIBRRD_CFLAGS) + AC_SUBST(BUILD_WITH_LIBRRD_LDFLAGS) + AC_SUBST(BUILD_WITH_LIBRRD_LIBS) fi if test "x$librrd_threadsafe" = "xyes" then - AC_DEFINE(HAVE_THREADSAFE_LIBRRD, 1, [Define to 1 if you have the threadsafe rrd library (-lrrd_th).]) + AC_DEFINE([HAVE_THREADSAFE_LIBRRD], [1], + [Define to 1 if the rrd library is thread-safe] + ) fi # }}}