X-Git-Url: https://git.octo.it/?p=rrdtool.git;a=blobdiff_plain;f=configure.ac;h=0b092c1ffa65066e970bd006483d2a97547e623e;hp=e88f287a7f04d4114a48da761d6bf1ce1f3dec88;hb=2f9c0721d1f7e9eceae3d04e197d0e4a46eeb3b1;hpb=04ed1c285ff739ad2cd1384e6cfe24aea82cfa7e diff --git a/configure.ac b/configure.ac index e88f287..0b092c1 100644 --- a/configure.ac +++ b/configure.ac @@ -8,13 +8,13 @@ dnl Inspiration from http://autoconf-archive.cryp.to dnl tell automake the this script is for rrdtool dnl the official version number is dnl a.b.c -AC_INIT([rrdtool],[1.2.99907052400]) +AC_INIT([rrdtool],[1.2.99908020600]) 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.299907061100 +NUMVERS=1.299908020600 AC_SUBST(NUMVERS) AC_CANONICAL_TARGET AM_INIT_AUTOMAKE @@ -49,12 +49,22 @@ AH_TOP([ /* realloc does not support NULL as argument */ #undef NO_NULL_REALLOC +/* lets enable madvise defines in NetBSD */ +#if defined(__NetBSD__) +# if !defined(_NETBSD_SOURCE) +# define _NETBSD_SOURCE +# endif +#endif + ]) AH_BOTTOM([ /* make sure that we pickup the correct stuff from all headers */ -#define _XOPEN_SOURCE 600 #ifdef HAVE_FEATURES_H +#undef _XOPEN_SOURCE /* keep unmodified */ +#undef _BSD_SOURCE /* keep unmodified */ +#define _XOPEN_SOURCE 600 +#define _BSD_SOURCE 1 # include #endif @@ -84,6 +94,7 @@ AH_BOTTOM([ #ifdef HAVE_SYS_MMAN_H # include #endif + #if !defined HAVE_MADVISE && defined HAVE_POSIX_MADVISE /* use posix_madvise family */ # define madvise posix_madvise @@ -218,12 +229,15 @@ char *strchr (), *strrchr (); /* for Solaris */ #if (! defined(HAVE_ISINF) && defined(HAVE_FPCLASS)) # define HAVE_ISINF 1 +# ifdef isinf +# undef isinf /* confuse autoconf */ +# endif # define isinf(a) (fpclass(a) == FP_NINF || fpclass(a) == FP_PINF) #endif /* solaris 10 it defines isnan such that only forte can compile it ... bad bad */ #if (defined(HAVE_ISNAN) && defined(isnan) && defined(HAVE_FPCLASS)) -# undef isnan +# undef isnan /* confuse autoconf to NOT remove this */ # define isnan(a) (fpclass(a) == FP_SNAN || fpclass(a) == FP_QNAN) #endif @@ -273,6 +287,13 @@ char *strchr (), *strrchr (); 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]) @@ -289,7 +310,7 @@ AC_ARG_WITH(rrd-default-font, if test -d ${WINDIR:-nodir}/cour.ttf ; then RRD_DEFAULT_FONT=`cd $WINDIR;pwd`/cour.ttf else - RRD_DEFAULT_FONT='"DejaVu Sans Mono,Bitstream Vera Sans Mono,Mono"' + RRD_DEFAULT_FONT='"DejaVu Sans Mono,Bitstream Vera Sans Mono,monospace,Courier"' fi ]) @@ -299,12 +320,6 @@ AC_ARG_ENABLE([mmap], [], [enable_mmap=yes]) -dnl will most likely not work on compressed filesystems, i think.. *shrug* -AC_ARG_ENABLE([direct-io], -[ --enable-direct-io enable O_DIRECT if available], -[enable_direct_io=yes], -[]) - AC_ARG_ENABLE(pthread,[ --disable-pthread disable multithread support], [],[enable_pthread=yes]) @@ -331,7 +346,7 @@ CFLAGS="$CFLAGS -D_GNU_SOURCE" dnl which flags does the compiler support? if test "x$GCC" = "xyes"; then - for flag in -fno-strict-aliasing -Wall -std=c99 -pedantic -Wundef -Wshadow -Wpointer-arith -Wcast-align -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline -W; do + for flag in -fno-strict-aliasing -Wall -std=c99 -pedantic -Wundef -Wshadow -Wpointer-arith -Wcast-align -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline -Wold-style-definition -W; do oCFLAGS="$CFLAGS" CFLAGS="$CFLAGS $flag" cachename=rd_cv_gcc_flag_`echo $flag|sed 's/[[^A-Za-z]]/_/g'` @@ -352,27 +367,7 @@ 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 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) - -if test "x$enable_direct_io" = "xyes"; then -AC_CACHE_CHECK([for O_DIRECT flag to open(2)],rrd_cv_HAVE_OPEN_O_DIRECT,[ -AC_TRY_COMPILE([ -#ifdef HAVE_UNISTD_H -#include -#endif -#ifdef HAVE_FCNTL_H -#include -#endif], -[int fd = open("/dev/null", O_DIRECT);], -rrd_cv_HAVE_OPEN_O_DIRECT=yes,rrd_cv_HAVE_OPEN_O_DIRECT=no)]) - if test "x$rrd_cv_HAVE_OPEN_O_DIRECT" = "xyes"; then - AC_DEFINE(USE_DIRECT_IO,1,[Whether the open(2) accepts O_DIRECT]) - else - enable_direct_io="no" - fi -else - enable_direct_io="no" -fi +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) dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST @@ -382,6 +377,7 @@ AC_STRUCT_TM 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" @@ -399,8 +395,6 @@ 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) -dnl Could use these to know if we need to provide a prototype -dnl AC_CHECK_DECLS(fdatasync, [], [], [#include ]) dnl XXX: dunno about windows.. add AC_CHECK_FUNCS(munmap) there too? if test "x$enable_mmap" = "xyes"; then @@ -415,7 +409,7 @@ if test "x$enable_mmap" = "xyes"; then *) AC_CHECK_HEADERS(sys/mman.h) AC_FUNC_MMAP - AC_CHECK_FUNCS(mmap munmap) + AC_CHECK_FUNCS(mmap munmap msync) AC_CHECK_DECLS(madvise, [], [], [#ifdef HAVE_SYS_MMAN_H # include #endif]) @@ -437,12 +431,11 @@ dnl enable_mmap="no" fi fi -dnl use FD based I/O ? -if test "x$enable_mmap" = "xno";then - AC_CHECK_DECLS(posix_fadvise, [], [], [#define _XOPEN_SOURCE 600 +dnl can we use posix_fadvise +AC_CHECK_DECLS(posix_fadvise, [], [], [#define _XOPEN_SOURCE 600 #include ]) - AC_CHECK_FUNCS(posix_fadvise) -fi +AC_CHECK_FUNCS(posix_fadvise) + CONFIGURE_PART(IEEE Math Checks) @@ -594,6 +587,14 @@ 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) @@ -603,9 +604,12 @@ CORE_LIBS="$LIBS" dnl EX_CHECK_ALL(z, zlibVersion, zlib.h, zlib, 1.2.3, http://www.gzip.org/zlib/, "") dnl EX_CHECK_ALL(png, png_access_version_number, png.h, libpng, 1.2.10, http://prdownloads.sourceforge.net/libpng/, "") -dnl EX_CHECK_ALL(freetype, FT_Init_FreeType, ft2build.h, freetype2, 2.1.10, http://prdownloads.sourceforge.net/freetype/, /usr/include/freetype2) -dnl EX_CHECK_ALL(fontconfig, FcInit, fontconfig.h, fontconfig, 2.3.1, http://fontconfig.org/release/, /usr/include) +dnl EX_CHECK_ALL(freetype, FT_Init_FreeType, ft2build.h, freetype2, 2.1.10, http://prdownloads.sourceforge.net/freetype/, /usr/include/freetype2) +dnl EX_CHECK_ALL(fontconfig, FcInit, fontconfig.h, fontconfig, 2.3.1, http://fontconfig.org/release/, /usr/include) EX_CHECK_ALL(cairo, cairo_font_options_create, cairo.h, cairo-png, 1.4.6, http://cairographics.org/releases/, "") +EX_CHECK_ALL(cairo, cairo_svg_surface_create, cairo-svg.h, cairo-svg, 1.4.6, http://cairographics.org/releases/, "") +EX_CHECK_ALL(cairo, cairo_pdf_surface_create, cairo-pdf.h, cairo-pdf, 1.4.6, http://cairographics.org/releases/, "") +EX_CHECK_ALL(cairo, cairo_ps_surface_create, cairo-ps.h, cairo-ps, 1.4.6, http://cairographics.org/releases/, "") dnl EX_CHECK_ALL(glib-2.0, glib_check_version, glib.h, glib-2.0, 2.12.12, ftp://ftp.gtk.org/pub/glib/2.12/, "") EX_CHECK_ALL(pango-1.0, pango_cairo_context_set_font_options, pango/pango.h, pangocairo, 1.17, http://ftp.gnome.org/pub/GNOME/sources/pango/1.17, "") @@ -762,7 +766,7 @@ if test "$enable_tcl" = "yes"; then withval="" AC_ARG_WITH(tcllib,[ --with-tcllib=DIR location of the tclConfig.sh]) enable_tcl=no - for dir in $withval /usr/lib /usr/local/lib; do + for dir in $withval /usr/lib /usr/local/lib /usr/lib/tcl8.4 /usr/lib/tcl8.3 ; do AC_MSG_CHECKING(for tclConfig.sh in $dir) if test -f "$dir/tclConfig.sh" ; then tcl_config=$dir/tclConfig.sh @@ -797,6 +801,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_ARG_ENABLE(python,[ --disable-python do not build the python modules], [],[enable_python=yes]) @@ -835,6 +840,7 @@ AC_CONFIG_FILES([examples/4charts.pl]) AC_CONFIG_FILES([examples/perftest.pl]) AC_CONFIG_FILES([examples/Makefile]) AC_CONFIG_FILES([doc/Makefile]) +AC_CONFIG_FILES([po/Makefile.in]) AC_CONFIG_FILES([src/Makefile]) AC_CONFIG_FILES([bindings/Makefile]) AC_CONFIG_FILES([bindings/tcl/Makefile]) @@ -863,7 +869,6 @@ echo "----------------------------------------------------------------" echo "Config is DONE!" echo echo " With MMAP IO: $enable_mmap" -echo " Use O_DIRECT: $enable_direct_io" echo " Static programs: $staticprogs" echo " Perl Modules: $COMP_PERL" echo " Perl Binary: $PERL"