X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=configure.ac;h=9089742050c6c8f7385e8f00f91581d4578d7420;hb=e19258f061340d0b2032fa1a1020d1a89a24b85d;hp=65256caaa8943662dd277b354cce58fa00017915;hpb=fffc0da1777dc50ed96ccc24eb04ab6920af4fbc;p=rrdtool.git diff --git a/configure.ac b/configure.ac index 65256ca..9089742 100644 --- a/configure.ac +++ b/configure.ac @@ -9,30 +9,31 @@ dnl tell automake the this script is for rrdtool dnl the official version number is dnl a.b.c -AC_INIT([rrdtool],[1.3rc1]) +AC_INIT([rrdtool],[1.3.1]) dnl for testing a numberical version number comes handy dnl the released version are dnl a.bccc dnl the devel versions will be something like dnl a.b999yymmddhh -NUMVERS=1.299908051200 +NUMVERS=1.3001 AC_SUBST(NUMVERS) dnl for the linker to understand which version the library is compatible with dnl we must keep a separate library version cout of the format c:r:a if any -dnl functionality is changed do c++ prior to release dnl if only implementation changed but all interfaces are kept, do r++ -dnl when only functionality was added, do a++ if any functionality was -dnl removed to a=0. +dnl when only functionality was added do c++,r=0,a++ +dnl if any functionality was removed do c++,r=0,a=0. dnl dnl see http://sourceware.org/autobook/autobook/autobook_91.html dnl -LIBVERS=3:0:1 +LIBVERS=4:0:0 AC_SUBST(LIBVERS) AC_CANONICAL_TARGET AM_INIT_AUTOMAKE +AM_MAINTAINER_MODE + AC_CONFIG_HEADERS([rrd_config.h]) dnl all our local stuff like install scripts and include files @@ -297,19 +298,20 @@ char *strchr (), *strrchr (); #error "Can't compile without isinf function" #endif +#if (! defined(HAVE_FDATASYNC) && defined(HAVE_FSYNC)) +#define fdatasync fsync +#endif + +#if (!defined(HAVE_FDATASYNC) && !defined(HAVE_FSYNC)) +#error "Can't compile with without fsync and fdatasync" +#endif + #endif /* RRD_CONFIG_H */ ]) dnl Process Special Options dnl ----------------------------------- -dnl gettext -GETTEXT_PACKAGE=rrdtool -AC_SUBST(GETTEXT_PACKAGE) -AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE",[Gettext package]) -IT_PROG_INTLTOOL([0.35.0],[no-xml]) -AM_GLIB_GNU_GETTEXT - dnl How the vertical axis label is printed AC_ARG_VAR(RRDGRAPH_YLEGEND_ANGLE, [Vertical label angle: -90.0 (default) or 90.0]) @@ -383,22 +385,24 @@ CONFIGURE_PART(Checking for Header Files) dnl Checks for header files. AC_HEADER_STDC AC_HEADER_DIRENT -AC_CHECK_HEADERS(features.h sys/stat.h sys/types.h fcntl.h libintl.h locale.h fp_class.h malloc.h unistd.h ieeefp.h math.h sys/times.h sys/param.h sys/resource.h signal.h float.h stdio.h stdlib.h errno.h string.h ctype.h) +AC_CHECK_HEADERS(features.h sys/stat.h sys/types.h fcntl.h locale.h fp_class.h malloc.h unistd.h ieeefp.h math.h sys/times.h sys/param.h sys/resource.h signal.h float.h stdio.h stdlib.h errno.h string.h ctype.h) dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_HEADER_TIME AC_STRUCT_TM +CONFIGURE_PART(Test Library Functions) + dnl Checks for libraries. AC_CHECK_FUNC(acos, , AC_CHECK_LIB(m, acos)) + dnl add pic flag in any case this makes sure all our code is relocatable eval `./libtool --config | grep pic_flag` CFLAGS="$CFLAGS $pic_flag" -CONFIGURE_PART(Test Library Functions) dnl Checks for library functions. AC_FUNC_STRFTIME @@ -409,7 +413,18 @@ AC_C_BIGENDIAN dnl for each function found we get a definition in config.h dnl of the form HAVE_FUNCTION -AC_CHECK_FUNCS(tzset mbstowcs opendir readdir chdir chroot getuid setlocale strerror strerror_r snprintf vsnprintf fpclass class fp_class isnan memmove strchr mktime getrusage gettimeofday) +AC_CHECK_FUNCS(tzset fsync mbstowcs opendir readdir chdir chroot getuid setlocale strerror strerror_r snprintf vsnprintf fpclass class fp_class isnan memmove strchr mktime getrusage gettimeofday) + +CONFIGURE_PART(Map/Fadvis/Madvise checking) + +dnl Could use these to know if we need to provide a prototype +dnl AC_CHECK_DECLS(fdatasync, [], [], [#include ]) + +dnl check for fdatasync. Solaris has fdatasync in the librt + +AC_CHECK_FUNCS(fdatasync, [], AC_CHECK_LIB(rt, fdatasync, [LIBS="${LIBS} -lrt"; AC_DEFINE(HAVE_FDATASYNC)],[])) +dnl if there is no fdatasync we may get lucky with fsync +AC_CHECK_FUNCS(fsync) dnl XXX: dunno about windows.. add AC_CHECK_FUNCS(munmap) there too? @@ -452,7 +467,47 @@ AC_CHECK_DECLS(posix_fadvise, [], [], [#define _XOPEN_SOURCE 600 #include ]) AC_CHECK_FUNCS(posix_fadvise) +CONFIGURE_PART(Libintl Processing) + + +dnl gettext +GETTEXT_PACKAGE=rrdtool +AC_SUBST(GETTEXT_PACKAGE) +AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE",[Gettext package]) + +AM_GLIB_GNU_GETTEXT() + +AC_ARG_ENABLE(libintl,[ --disable-libintl i18n support (libintl)], +[],[enable_libintl=yes]) + +if test x$enable_libintl = xyes; then + IT_PROG_INTLTOOL([0.35.0],[no-xml]) +fi + +if test x$enable_libintl = xyes -a x$MSGFMT = xno; then + AC_MSG_WARN(I could not find msgfmt. Diabeling libintl build.) + enable_libintl=no +fi + +if test x$enable_libintl = xyes; then + AC_CHECK_HEADERS(libintl.h,[],[AC_MSG_RESULT(disabeling libintl build); enable_libintl=no]) +fi + +if test x$enable_libintl = xyes ; then + dnl it seems bsd synstems need to link against libintl + dnl when compiling rrdupdate. lets check + AC_CHECK_LIB(intl, libintl_gettext,[LIB_LIBINTL="-lintl"]) +fi + +dnl use for linking rrdupdate +AC_SUBST(LIB_LIBINTL) + +dnl do not touch the po stuff if we are not going to build intl +AM_CONDITIONAL(BUILD_LIBINTL,[test x$enable_libintl = xyes]) +if test x$enable_libintl = xyes; then + AC_DEFINE([BUILD_LIBINTL], [], [Use this in code sections to mark them for libintl build]) +fi CONFIGURE_PART(IEEE Math Checks) @@ -494,6 +549,7 @@ return 0; have_broken_isfinite=no],have_broken_isfinite=yes,[ case "${target}" in hppa*-*-hpux*) have_broken_isfinite=yes ;; + sparc-sun-solaris2.8) have_broken_isfinite=yes ;; *) have_broken_isfinite=no ;; esac]) ]) @@ -603,19 +659,12 @@ AC_LINK_IFELSE( ) AC_LANG_POP(C) -dnl Could use these to know if we need to provide a prototype -dnl AC_CHECK_DECLS(fdatasync, [], [], [#include ]) - -dnl solaris has fdatasync in the librt - -AC_CHECK_FUNC(fdatasync, [], AC_CHECK_LIB(rt, fdatasync, [LIBS="${LIBS} -lrt"],[])) - - CONFIGURE_PART(Find 3rd-Party Libraries) AM_CONDITIONAL(BUILD_RRDCGI,[test $enable_rrdcgi != no]) + CORE_LIBS="$LIBS" dnl EX_CHECK_ALL(z, zlibVersion, zlib.h, zlib, 1.2.3, http://www.gzip.org/zlib/, "") @@ -642,8 +691,13 @@ AC_SUBST(ALL_LIBS) CONFIGURE_PART(Prep for Building Language Bindings) -dnl Check for Perl. +dnl Check for Perl and friends +PATH=$PATH:/usr/perl5/bin +export PATH AC_PATH_PROG(PERL, perl, no) +AC_PATH_PROG(POD2MAN, pod2man, no) +AC_PATH_PROG(POD2HTML, pod2html, no) + AC_ARG_ENABLE(perl,[ --disable-perl do not build the perl modules], [],[enable_perl=yes]) @@ -800,6 +854,9 @@ if test "$enable_tcl" = "yes"; then else . $tcl_config TCL_PACKAGE_DIR="$TCL_PACKAGE_PATH/tclrrd$VERSION" + if test -n "$TCL_INC_DIR"; then + TCL_INCLUDE_SPEC="$TCL_INCLUDE_SPEC -I$TCL_INC_DIR" + fi fi AC_ARG_ENABLE(tcl,[ --enable-tcl-site install the tcl extension in the tcl tree], [],[enable_tcl_site=yes]) @@ -809,6 +866,7 @@ fi AM_CONDITIONAL(BUILD_TCL, test "$enable_tcl" = "yes" ) AM_CONDITIONAL(BUILD_TCL_SITE, test "$enable_tcl_site" = "yes" ) + AC_SUBST(TCL_PREFIX) AC_SUBST(TCL_SHLIB_CFLAGS) AC_SUBST(TCL_SHLIB_LD) @@ -818,7 +876,7 @@ AC_SUBST(TCL_LD_SEARCH_FLAGS) AC_SUBST(TCL_STUB_LIB_SPEC) AC_SUBST(TCL_VERSION) AC_SUBST(TCL_PACKAGE_DIR) -AC_SUBST(TCL_INC_DIR) +AC_SUBST(TCL_INCLUDE_SPEC) AC_ARG_ENABLE(python,[ --disable-python do not build the python modules], [],[enable_python=yes]) @@ -898,7 +956,9 @@ echo " Build Tcl Bindings: $enable_tcl" echo " Build Python Bindings: $enable_python" echo " Build rrdcgi: $enable_rrdcgi" echo " Build librrd MT: $enable_pthread" +echo " Link with libintl: $enable_libintl" echo +echo " Libraries: $ALL_LIBS" echo echo "Type 'make' to compile the software and use 'make install' to " echo "install everything to: $prefix."