X-Git-Url: https://git.octo.it/?p=rrdtool.git;a=blobdiff_plain;f=configure.ac;h=a7ff714812cfacea22f437b8140c7a7e7862bc2b;hp=8840664da853e85c23c04b57f355aa566c5a9963;hb=b837c0527f117b54845242ee7626df6d88394444;hpb=d0b7939060ab8b257c528b0440690b159da3603a diff --git a/configure.ac b/configure.ac index 8840664..a7ff714 100644 --- a/configure.ac +++ b/configure.ac @@ -10,7 +10,7 @@ AC_INIT(src/rrd_tool.c) AC_CONFIG_AUX_DIR(config) AC_CANONICAL_TARGET([]) AM_INIT_AUTOMAKE(rrdtool, 1.1.0) -AM_CONFIG_HEADER(config/config.h) +AM_CONFIG_HEADER(config.h) dnl all our local stuff like install scripts and include files dnl is in there @@ -136,26 +136,55 @@ char *strchr (), *strrchr (); ]) -dnl Define library subdirectory names here. -CGI_LIB_DIR=cgilib-0.4 -FREETYPE_LIB_DIR=freetype-2.0.5 -ART_LIB_DIR=libart_lgpl-2.3.7 -PNG_LIB_DIR=libpng-1.2.0 -ZLIB_LIB_DIR=zlib-1.1.4 + +dnl Check for the compiler and static/shared library creation. +AC_PROG_CC +AC_PROG_CPP +AC_PROG_LIBTOOL + +dnl Checks for header files. +AC_HEADER_STDC +AC_HEADER_DIRENT +AC_CHECK_HEADERS(sys/stat.h sys/types.h fcntl.h time.h locale.h fp_class.h malloc.h unistd.h ieeefp.h math.h sys/time.h sys/times.h sys/param.h sys/resource.h float.h) + +dnl Checks for typedefs, structures, and compiler characteristics. +AC_C_CONST +AC_HEADER_TIME +AC_STRUCT_TM dnl substitute them in all the files listed in AC_OUTPUT -AC_SUBST(CGI_LIB_DIR) -AC_SUBST(ART_LIB_DIR) -AC_SUBST(PNG_LIB_DIR) -AC_SUBST(FREETYPE_LIB_DIR) -AC_SUBST(ZLIB_LIB_DIR) AC_SUBST(PERLFLAGS) -INCLUDED_LIB(cgi,cgiInit) -INCLUDED_LIB(art_lgpl,art_vpath_add_point) -INCLUDED_LIB(png,png_access_version_number) -INCLUDED_LIB(freetype,FT_Init_FreeType) -INCLUDED_LIB(z,zlibVersion) +dnl Checks for libraries. +AC_CHECK_FUNC(acos, , AC_CHECK_LIB(m, acos)) + +AC_DEFUN(EX_CHECK_ALL, +[ AC_CHECK_LIB($1,$2, + [ AC_CHECK_HEADER($3,[LIBS="-l$1 ${LIBS}"],AC_MSG_ERROR([Adjust CPPFLAGS so that the $4 header $3 gets found])) ], + [ AC_MSG_ERROR([ +############################################################################ +I could not find a working copy of $4. Check config.log for hints on why +this is the case. Maybe you need to set LDFLAGS appropriately so that the +linker can find lib$1. If you have not installed $4, you can get it +either from its original home on + + $6 + +Or you can find an archive copy on + + http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/pub/libs + +The last tested version of $4 is $5. +############################################################################ +])] ) +] +) + +EX_CHECK_ALL(cgi, cgiInit, cgi.h, cgilib, 0.5, http://www.infodrom.org/projects/cgilib) +EX_CHECK_ALL(art_lgpl_2, art_vpath_add_point, libart_lgpl/libart.h, libart_lgpl, 2.3.16, ftp://ftp.gnome.org/pub/GNOME/sources/libart_lgpl/2.3/) +EX_CHECK_ALL(z, zlibVersion, zlib.h, zlib, 1.2.1, http://www.gzip.org/zlib/) +EX_CHECK_ALL(png, png_access_version_number, png.h, libpng, 1.2.5, http://prdownloads.sourceforge.net/libpng/) +EX_CHECK_ALL(freetype, FT_Init_FreeType, ft2build.h, freetype, 2.1.5, http://prdownloads.sourceforge.net/freetype/) dnl Check for Perl. AC_PATH_PROG(PERL, perl, no) @@ -167,7 +196,7 @@ else SO_EXT=`$PERL -e 'use Config; if (defined $Config{so} and $Config{so} ne 'a') {print "$Config{so}\n"} else {print "so\n"};'` AC_MSG_RESULT($SO_EXT) AC_MSG_CHECKING(for the C compiler perl wants to use to build its modules) - PROBLEMCC=`$PERL -e 'use Config; map {if (-x "$_/$Config{cc}"){exit 0}} split /:/, $ENV{PATH};print $Config{cc}'` + PROBLEMCC=`$PERL -e 'use Config; ($cc = $Config{cc}) =~ s/\s.*//; exit 0 if -x $cc; map {if (-x "$_/$cc"){exit 0}} split /:/, $ENV{PATH};print $Config{cc}'` if test x$PROBLEMCC != x; then AC_MSG_RESULT(no) echo Could not find the Compiler: '"'$PROBLEMCC'"' @@ -219,26 +248,7 @@ AC_SUBST(TCL_SHLIB_SUFFIX) AC_SUBST(TCL_PACKAGE_PATH) AC_SUBST(TCL_LD_SEARCH_FLAGS) -dnl Check for the compiler and static/shared library creation. -AC_PROG_CC -AC_PROG_CPP - -dnl don't build a shared library ... -dnl this can be changed when running configure -AC_DISABLE_SHARED -AC_PROG_LIBTOOL - -dnl Checks for header files. -AC_HEADER_STDC -AC_CHECK_HEADERS(fcntl.h fp_class.h malloc.h unistd.h ieeefp.h math.h sys/time.h sys/times.h sys/param.h sys/resource.h float.h) -dnl Checks for typedefs, structures, and compiler characteristics. -AC_C_CONST -AC_HEADER_TIME -AC_STRUCT_TM - -dnl Checks for libraries. -AC_CHECK_FUNC(acos, , AC_CHECK_LIB(m, acos)) dnl Check for nroff AC_PATH_PROGS(NROFF, gnroff nroff) @@ -247,7 +257,7 @@ AC_PATH_PROGS(TROFF, groff troff) dnl Does the compiler like -Wall and -pedantic? if test "x$GCC" = "xyes"; then oCFLAGS=$CFLAGS - CFLAGS="$CFLAGS -Wall -pedantic -Wshadow -Wpointer-arith -Wcast-align -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline" + CFLAGS="$CFLAGS -Wall -pedantic -Wshadow -Wpointer-arith -Wcast-align -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline -W" AC_CACHE_CHECK(if we can use GCC-specific compiler options, rd_cv_gcc_opt, [AC_TRY_COMPILE( , return 0 , rd_cv_gcc_opt=yes, @@ -260,7 +270,7 @@ if test "x$GCC" = "xyes"; then fi dnl add pic flag in any case this makes sure all our code is relocatable -CFLAGS="$CFLAGS "`grep pic_flag= libtool | sed -e 's/.*pic_flag=//' -e 's/"//g'` +CFLAGS="$CFLAGS "`grep pic_flag= libtool | head -1|sed -e 's/.*pic_flag=//' -e 's/"//g'` ZLIB_CFLAGS=$CFLAGS dnl it seems that hpux chockes on -fPIC for some reason @@ -278,7 +288,7 @@ AC_FUNC_VPRINTF dnl for each function found we get a definition in config.h dnl of the form HAVE_FUNCTION -AC_CHECK_FUNCS(strerror snprintf vsnprintf fpclass class fp_class isnan memmove strchr mktime getrusage gettimeofday) +AC_CHECK_FUNCS(tzset opendir readdir chdir chroot getuid setlocale strerror strerror_r snprintf vsnprintf fpclass class fp_class isnan memmove strchr mktime getrusage gettimeofday) dnl HP-UX 11.00 does not have finite but does have isfinite as a macro AC_CHECK_FUNCS(fpclassify, , @@ -415,22 +425,24 @@ AC_IEEE([out of the box], works, , , , AC_IEEE([with the -mieee switch], mswitch, , , , [CFLAGS="$_cflags -q float=rndsngl" AC_IEEE([with the -q float=rndsngl switch], qswitch, , , , - [CFLAGS="$_cflags -OPT:IEEE_comparisons=ON" - AC_IEEE([with the -OPT:IEEE_comparisons=ON switch], ieeecmpswitch, , , , - [CFLAGS=$_cflags - AC_IEEE([with fpsetmask(0)], mask, - [#include ], [fpsetmask(0)], - [AC_DEFINE(MUST_DISABLE_FPMASK) - PERLFLAGS="CCFLAGS=-DMUST_DISABLE_FPMASK"], - [AC_IEEE([with signal(SIGFPE,SIG_IGN)], sigfpe, - [#include ], [signal(SIGFPE,SIG_IGN)], - [AC_DEFINE(MUST_DISABLE_SIGFPE) - PERLFLAGS="CCFLAGS=-DMUST_DISABLE_SIGFPE"], - AC_MSG_ERROR([ + [CFLAGS="$_cflags -OPT:IEEE_NaN_inf=ON" + AC_IEEE([with the -OPT:IEEE_NaN_inf=ON switch], ieeenaninfswitch, , , , + [CFLAGS="$_cflags -OPT:IEEE_comparisons=ON" + AC_IEEE([with the -OPT:IEEE_comparisons=ON switch], ieeecmpswitch, , , , + [CFLAGS=$_cflags + AC_IEEE([with fpsetmask(0)], mask, + [#include ], [fpsetmask(0)], + [AC_DEFINE(MUST_DISABLE_FPMASK) + PERLFLAGS="CCFLAGS=-DMUST_DISABLE_FPMASK"], + [AC_IEEE([with signal(SIGFPE,SIG_IGN)], sigfpe, + [#include ], [signal(SIGFPE,SIG_IGN)], + [AC_DEFINE(MUST_DISABLE_SIGFPE) + PERLFLAGS="CCFLAGS=-DMUST_DISABLE_SIGFPE"], + AC_MSG_ERROR([ Your Compiler does not do propper IEEE math ... Please find out how to make IEEE math work with your compiler and let me know (oetiker@ee.ethz.ch). Check config.log to see what went wrong ... -]))])])])])])])])]) +]))])])])])])])])])]) AC_CONFIG_FILES([examples/shared-demo.pl \ @@ -441,12 +453,6 @@ AC_CONFIG_FILES([examples/shared-demo.pl \ examples/cgi-demo.cgi \ examples/Makefile \ doc/Makefile \ - libraries/Makefile \ - libraries/cgilib-0.4/Makefile \ - libraries/libart_lgpl-2.3.7/Makefile \ - libraries/libpng-1.2.0/Makefile \ - libraries/zlib-1.1.4/Makefile \ - libraries/freetype-2.0.5/Makefile \ src/Makefile \ bindings/Makefile \ bindings/tcl/Makefile \ @@ -458,7 +464,7 @@ AC_OUTPUT AC_MSG_CHECKING(in) AC_MSG_RESULT(and out again) -echo $ECHO_N "ordering CD from http://ee-staff.ethz.ch/~oetiker/wish $ECHO_C" 1>&6 +echo $ECHO_N "ordering CD from http://people.ee.ethz.ch/~oetiker/wish $ECHO_C" 1>&6 sleep 1 echo $ECHO_N ".$ECHO_C" 1>&6 sleep 1 @@ -480,7 +486,7 @@ echo "If you want to install the perl" echo "modules in site-perl, try 'make site-perl-install'." echo echo " ... that wishlist is NO JOKE. If you find RRDtool useful" -echo "make me happy. Go to http://ee-staff.ethz.ch/~oetiker/wish and" +echo "make me happy. Go to http://people.ee.ethz.ch/~oetiker/wish and" echo "place an order." echo echo " -- Tobi Oetiker "