diff --git a/program/configure.ac b/program/configure.ac
index a2ece2b988a6e48b22cc4190434eba347248397d..29be00cacdb5c7b202f1f76c689bfb22ee787aba 100644 (file)
--- a/program/configure.ac
+++ b/program/configure.ac
dnl RRDtool AutoConf script ...
dnl ---------------------------
+dnl $Id$
dnl
dnl Created by Jeff Allen, Tobi Oetiker, Blair Zajac
dnl
dnl tell automake the this script is for rrdtool
+dnl Minimum Autoconf version required.
+AC_PREREQ(2.59)
+
dnl the official version number is
dnl a.b.c
-AC_INIT([rrdtool],[1.3.2])
+AC_INIT([rrdtool],[1.4.3])
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.3002
+NUMVERS=1.4003
AC_SUBST(NUMVERS)
dnl for the linker to understand which versions the library are compatible with
dnl
dnl see http://sourceware.org/autobook/autobook/autobook_91.html
dnl
-LIBVERS=4:1:0
+LIBVERS=5:3:1
AC_SUBST(LIBVERS)
AC_CANONICAL_TARGET
+m4_version_prereq(2.60, [AC_USE_SYSTEM_EXTENSIONS], [#])
AM_INIT_AUTOMAKE
AM_MAINTAINER_MODE
-
+# Enable silent build rules by default, requires at least
+# Automake-1.11. Disable by either passing --disable-silent-rules to
+# configure or passing V=1 to make
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
AC_CONFIG_HEADERS([rrd_config.h])
+AC_CONFIG_MACRO_DIR([m4])
dnl all our local stuff like install scripts and include files
dnl is in there
AC_SUBST(VERSION)
-AC_PREFIX_DEFAULT( /usr/local/rrdtool-$PACKAGE_VERSION )
-
-dnl Minimum Autoconf version required.
-AC_PREREQ(2.59)
+AC_PREFIX_DEFAULT( /opt/rrdtool-$PACKAGE_VERSION )
dnl At the TOP of the HEADER
# include <malloc/malloc.h>
#endif
-#include <rrd_config_bottom.h>
+#include "src/rrd_config_bottom.h"
#endif
])
AC_DEFINE_UNQUOTED(RRDGRAPH_YLEGEND_ANGLE,${RRDGRAPH_YLEGEND_ANGLE:-90.0},
[Vertical label angle: -90.0 (default) or 90.0])
-AC_ARG_ENABLE(rrdcgi,[ --disable-rrdcgi disable building of rrdcgi],
+AC_ARG_ENABLE(rrdcgi,AS_HELP_STRING([--disable-rrdcgi],[disable building of rrdcgi]),
[],[enable_rrdcgi=yes])
dnl Check if we run on a system that has fonts
dnl Use mmap in rrd_update instead of seek+write
AC_ARG_ENABLE([mmap],
-[ --disable-mmap disable mmap in rrd_update, use seek+write instead],
+AS_HELP_STRING([--disable-mmap],[disable mmap in rrd_update, use seek+write instead]),
[],
[enable_mmap=yes])
-AC_ARG_ENABLE(pthread,[ --disable-pthread disable multithread support],
+AC_ARG_ENABLE(pthread,AS_HELP_STRING([--disable-pthread],[disable multithread support]),
[],[enable_pthread=yes])
AC_ARG_ENABLE(static-programs,
- [ --enable-static-programs Build static programs],
+ AS_HELP_STRING([--enable-static-programs],[Build static programs]),
[case "${enableval}" in
yes) staticprogs=yes ;;
no) staticprogs=no ;;
CFLAGS="$CFLAGS -D_GNU_SOURCE"
dnl check for -Werror separatly
-dnl (quite a few autotool checks don't work with -Werror; also, the
+dnl (quite a few autotool checks do not work with -Werror; also, the
dnl check for -Werror fails after checking and adding the other flags)
AC_CACHE_CHECK([if gcc likes the -Werror flag], rd_cv_gcc_flag__Werror,
[AC_COMPILE_IFELSE(
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)
+AC_CHECK_HEADERS(langinfo.h stdint.h inttypes.h libgen.h features.h sys/stat.h sys/types.h fcntl.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
dnl for each function found we get a definition in config.h
dnl of the form HAVE_FUNCTION
-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)
+AC_CHECK_FUNCS(nl_langinfo tzset fsync mbstowcs opendir readdir chdir chroot getuid strerror snprintf vsnprintf vasprintf fpclass class fp_class isnan memmove strchr mktime getrusage gettimeofday)
+
+AC_FUNC_STRERROR_R
CONFIGURE_PART(Map/Fadvis/Madvise checking)
@@ -216,6 +224,12 @@ AC_CHECK_FUNCS(fdatasync, [], AC_CHECK_LIB(rt, fdatasync, [LIBS="${LIBS} -lrt";
dnl if there is no fdatasync we may get lucky with fsync
AC_CHECK_FUNCS(fsync)
+dnl check for socket and nsl solaris again ... we need this for the new rrd_daemon stuff
+
+AC_CHECK_FUNCS(socket, [], AC_CHECK_LIB(socket, socket, [LIBS="${LIBS} -lsocket"; AC_DEFINE(HAVE_SOCKET)],[]))
+AC_CHECK_FUNCS(getaddrinfo, [], AC_CHECK_LIB(nsl, getaddrinfo, [LIBS="${LIBS} -lnsl"; AC_DEFINE(HAVE_GETADDRINFO)],[]))
+
+
dnl XXX: dunno about windows.. add AC_CHECK_FUNCS(munmap) there too?
if test "x$enable_mmap" = "xyes"; then
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
+AM_GNU_GETTEXT_VERSION(0.17)
+AM_GNU_GETTEXT()
CONFIGURE_PART(IEEE Math Checks)
}],[ac_cv_have_broken_isfinite=no],[ac_cv_have_broken_isfinite=yes],[
case "${target}" in
hppa*-*-hpux*) ac_cv_have_broken_isfinite=yes ;;
- *-sun-solaris2.8) ac_cv_have_broken_isfinite=yes ;;
+ *-solaris2.8) ac_cv_have_broken_isfinite=yes ;;
+ *-solaris2.9) ac_cv_have_broken_isfinite=yes ;;
*) ac_cv_have_broken_isfinite=no ;;
esac])
])
dnl the test does not seem to work on solaris 2.8
dnl so lets fix this by hand
case "${target}" in
- *-sun-solaris2.8) ac_cv_have_broken_isfinite=yes ;;
+ *-solaris2.8) ac_cv_have_broken_isfinite=yes ;;
+ *-solaris2.9) ac_cv_have_broken_isfinite=yes ;;
esac
if test "x$ac_cv_have_broken_isfinite" = "xno"; then
CONFIGURE_PART(Resolve Portability Issues)
+CHECK_FOR_WORKING_MS_ASYNC
+
+dnl do we have nl_langinfo(_NL_TIME_WEEK_1STDAY)
+AC_CHECK_FUNCS(_NL_TIME_WEEK_1STDAY, ,
+ [AC_MSG_CHECKING([for nl_langinfo(_NL_TIME_WEEK_1STDAY) with langinfo.h])
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <langinfo.h>]], [[nl_langinfo(_NL_TIME_WEEK_1STDAY)]])],[AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE__NL_TIME_WEEK_1STDAY)],[AC_MSG_RESULT(no)])])
+
dnl Do we need getopt_long
+dnl even when including our own getopt implementation
+dnl we may want to make sure we use the external
+dnl defined by libc to not run into linker resolve trouble
+
+AC_CACHE_CHECK([for opterr], rd_cv_var_int_opterr,
+[AC_TRY_LINK([#include <unistd.h>],
+ [extern int opterr; opterr = 1;],
+ [rd_cv_var_int_opterr=yes],
+ [rd_cv_var_int_opterr=no])])
+if test x"$rd_cv_var_int_opterr" = x"yes"; then
+ AC_DEFINE(HAVE_INT_OPTERR, 1, [Define to 1 if you have the global variable 'int opterr'.])
+fi
+
build_getopt=no
-RRD_GETOPT_LONG="#"
+RRD_GETOPT_LONG="LIBC_HAS_GETOPT_LONG"
AC_CHECK_FUNC(getopt_long,[],[
RRD_GETOPT_LONG="getopt_long"
build_getopt=yes
)
]
)
+
+dnl is time_t 32 of 64 bit ?
+AC_DEFINE([TIME_T_IS_32BIT], [], [time_t is 32bit])
+AC_DEFINE([TIME_T_IS_64BIT], [], [time_t is 64bit])
+AC_MSG_CHECKING([the type of time_t])
+AC_RUN_IFELSE(
+ AC_LANG_PROGRAM(
+ [[#include <time.h>]],
+ [[if (sizeof(time_t) != 4) return 1; ]]
+ ),
+ [ AC_MSG_RESULT([time_t is 32 bit])
+ AC_DEFINE([TIME_T_IS_32BIT])
+ ],
+ [ AC_RUN_IFELSE(
+ AC_LANG_PROGRAM(
+ [[#include <time.h>]],
+ [[if (sizeof(time_t) != 8) return 1; ]]
+ ),
+ [
+ AC_MSG_RESULT([time_t is 64 bit])
+ AC_DEFINE([TIME_T_IS_64BIT])
+ ],
+ [AC_MSG_ERROR([can not figure type of time_t])]
+ )
+ ]
+)
+
AC_LANG_POP(C)
CONFIGURE_PART(Find 3rd-Party Libraries)
+AC_ARG_ENABLE(libdbi,AS_HELP_STRING([--disable-libdbi],[do not build in support for libdbi]),[have_libdbi=no],[
+ XXX=$LIBS
+ LIBS="$LIBS -ldbi -ldl"
+ AC_MSG_CHECKING(for libdbi)
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[#include <dbi/dbi.h>]],
+ [[dbi_initialize(NULL)]]
+ )
+ ],[AC_DEFINE(HAVE_LIBDBI,[1],[have got libdbi installed])
+ AC_MSG_RESULT([yes])
+ have_libdbi=yes
+ ],[LIBS=$XXX
+ AC_MSG_RESULT([no])
+ have_libdbi=no
+ ]
+ )
+])
+AM_CONDITIONAL(BUILD_LIBDBI,[test $have_libdbi != no])
AM_CONDITIONAL(BUILD_RRDCGI,[test $enable_rrdcgi != no])
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/, "")
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, "")
+EX_CHECK_ALL(pangocairo-1.0, pango_cairo_context_set_font_options, pango/pango.h, pangocairo, 1.17, http://ftp.gnome.org/pub/GNOME/sources/pango/1.17, "")
EX_CHECK_ALL(xml2, xmlParseFile, libxml/parser.h, libxml-2.0, 2.6.31, http://xmlsoft.org/downloads.html, /usr/include/libxml2)
if test "$EX_CHECK_ALL_ERR" = "YES"; then
AC_PATH_PROG(POD2HTML, pod2html, no)
-AC_ARG_ENABLE(perl,[ --disable-perl do not build the perl modules],
+AC_ARG_ENABLE(perl,AS_HELP_STRING([--disable-perl],[do not build the perl modules]),
[],[enable_perl=yes])
-AC_ARG_VAR(PERLCC, [[] C compiler for Perl modules])
-AC_ARG_VAR(PERLCCFLAGS, [[] CC flags for Perl modules])
-AC_ARG_VAR(PERLLD, [[same as PERLCC] Linker for Perl modules])
-AC_ARG_VAR(PERLLDFLAGS, [[] LD flags for Perl modules])
+AC_ARG_VAR(PERLCC, [C compiler for Perl modules])
+AC_ARG_VAR(PERLCCFLAGS, [CC flags for Perl modules])
+AC_ARG_VAR(PERLLD, [Linker for Perl modules])
+AC_ARG_VAR(PERLLDFLAGS, [LD flags for Perl modules])
if test "x$PERL" = "xno" -o x$enable_perl = xno; then
COMP_PERL=
# Options to pass when configuring perl module
langpref=$prefix
-test "$langpref" = "$(DESTDIR)NONE" && langpref='$(DESTDIR)'$ac_default_prefix
+test "$langpref" = '$(DESTDIR)NONE' && langpref='$(DESTDIR)'$ac_default_prefix
test "$langpref" = "NONE" && langpref=$ac_default_prefix
PERL_MAKE_OPTIONS="PREFIX=$langpref LIB=$langpref/lib/perl/$PERL_VERSION"
dnl pass additional perl options when generating Makefile from Makefile.PL
AC_ARG_ENABLE(perl-site-install,
-[ --enable-perl-site-install by default the rrdtool perl modules are installed
- together with rrdtool in $prefix/lib/perl. You have to
- put a 'use lib qw($prefix/lib/perl)' into your scripts
- when you want to use them. When you set this option
- the perl modules will get installed wherever
- your perl setup thinks it is best.],
+AS_HELP_STRING([--enable-perl-site-install],[by default the rrdtool perl modules are installed together with rrdtool in $prefix/lib/perl. You have to put a 'use lib qw($prefix/lib/perl)' into your scripts when you want to use them. When you set this option the perl modules will get installed wherever your perl setup thinks it is best.]),
[PERL_MAKE_OPTIONS=],[])
if test ! -z "$PERLCC"; then
dnl Check for Ruby.
AC_PATH_PROG(RUBY, ruby, no)
-AC_ARG_ENABLE(ruby,[ --disable-ruby do not build the ruby modules],
+AC_ARG_ENABLE(ruby,AS_HELP_STRING([--disable-ruby],[do not build the ruby modules]),
[],[enable_ruby=yes])
AC_MSG_CHECKING(if ruby modules can be built)
dnl pass additional ruby options when generating Makefile from Makefile.PL
AC_ARG_ENABLE(ruby-site-install,
-[ --enable-ruby-site-install by default the rrdtool ruby modules are installed
- together with rrdtool in $prefix/lib/ruby. You have to
- add $prefix/lib/ruby/$ruby_version/$sitearch to your $: variable
- for ruby to find the RRD.so file.],
+AS_HELP_STRING([--enable-ruby-site-install],[by default the rrdtool ruby modules are installed together with rrdtool in $prefix/lib/ruby. You have to add $prefix/lib/ruby/$ruby_version/$sitearch to your $: variable for ruby to find the RRD.so file.]),
[RUBY_MAKE_OPTIONS=],[RUBY_MAKE_OPTIONS="sitedir=$langpref/lib/ruby"])
dnl Check for Lua.
AC_PATH_PROG(LUA, lua, no)
-AC_ARG_ENABLE(lua,[ --disable-lua do not build the lua modules],
+AC_ARG_ENABLE(lua,AS_HELP_STRING([--disable-lua],[do not build the lua modules]),
[],[enable_lua=yes])
COMP_LUA=
AC_MSG_RESULT([no, version found is $LUA_MAJOR.$LUA_MINOR])
else
AC_MSG_RESULT([$LUA_MAJOR.$LUA_MINOR found])
- vdot=$LUA_MAJOR.$LUA_MINOR
- vndot=$LUA_MAJOR$LUA_MINOR
+ lua_vdot=$LUA_MAJOR.$LUA_MINOR
+ lua_vndot=$LUA_MAJOR$LUA_MINOR
lua_version=$LUA_MAJOR.$LUA_MINOR.$LUA_POINT
- AC_CHECK_HEADERS(lua$vndot/lua.h,
- [AC_CHECK_HEADERS(lua$vndot/lualib.h,
- [AC_CHECK_HEADER(lua$vndot/lauxlib.h,
- [lua_headerdir=lua$vndot],
+ AC_CHECK_HEADERS(lua$lua_vndot/lua.h,
+ [AC_CHECK_HEADERS(lua$lua_vndot/lualib.h,
+ [AC_CHECK_HEADER(lua$lua_vndot/lauxlib.h,
+ [lua_headerdir=lua$lua_vndot],
[])],
[])],
- [AC_CHECK_HEADERS(lua$vdot/lua.h,
- [AC_CHECK_HEADERS(lua$vdot/lualib.h,
- [AC_CHECK_HEADER(lua$vdot/lauxlib.h,
- [lua_headerdir=lua$vdot],
+ [AC_CHECK_HEADERS(lua$lua_vdot/lua.h,
+ [AC_CHECK_HEADERS(lua$lua_vdot/lualib.h,
+ [AC_CHECK_HEADER(lua$lua_vdot/lauxlib.h,
+ [lua_headerdir=lua$lua_vdot],
[])],
[])],
[AC_CHECK_HEADERS(lua.h,
if test "$COMP_LUA" != "lua"; then
enable_lua=no
- AC_MSG_WARN([Lua $vdot found but not lua.h, lualib.h and lauxlib.h! Please install the -dev packages for Lua $vdot])
+ AC_MSG_WARN([Lua $lua_vdot found but not lua.h, lualib.h and lauxlib.h! Please install the -dev packages for Lua $lua_vdot])
else
# OK, headers found, let's check the libraries (LIBS is not used)
LIBS=
lua_havelib=no
LUA_HAVE_COMPAT51=DONT_HAVE_COMPAT51
- AC_SEARCH_LIBS(lua_call, lua$vdot lua$vndot lua,
- [AC_SEARCH_LIBS(luaL_register, lua$vdot lua$vndot lua,
- [lua_havelib=LUA$vndot],
- [AC_SEARCH_LIBS(luaL_module, lualib$vndot lualib$vdot lualib,
- [lua_havelib=$vndot ;
- AC_CHECK_HEADERS(lua$vndot/compat-5.1.h,
- [LUA_HAVE_COMPAT51=HAVE_COMPAT51], [],
- [[#include <lua$vndot/lua.h>
- #include <lua$vndot/lauxlib.h> ]])],
- [AC_SEARCH_LIBS(luaL_openlib, lualib$vdot lualib$vndot lualib,
- [lua_havelib=$vndot],
+ AC_SEARCH_LIBS(lua_call, lua$lua_vdot lua$lua_vndot lua,
+ [AC_SEARCH_LIBS(luaL_register, lua$lua_vdot lua$lua_vndot lua,
+ [lua_havelib=LUA$lua_vndot],
+ [AC_SEARCH_LIBS(luaL_module, lualib$lua_vndot lualib$lua_vdot lualib,
+ [lua_havelib=$lua_vndot; $LUA -l compat-5.1 2>/dev/null;
+ test "$?" = "0" && LUA_HAVE_COMPAT51=HAVE_COMPAT51],
+ [AC_SEARCH_LIBS(luaL_openlib, lualib$lua_vdot lualib$lua_vndot lualib,
+ [lua_havelib=$lua_vndot],
[COMP_LUA=], [-lm])], [-lm])], [-lm])],
[COMP_LUA=], [-lm])
lua_libs=$LIBS
# Options to pass when configuring Lua module
if test "$lua_havelib" != "no"; then
- # OK, headers and libs found
- # try to set lua include, lib and C installation dirs with pkg-config
+ # OK, headers and libs found. Try to set lua flags
+ # and modules installation dirs with pkg-config
if test "$PKGCONFIG" != "no"; then
- if test "$vndot" = "50"; then
+ if test "$lua_vndot" = "50"; then
lua_pkg_prefix=lualib
else
lua_pkg_prefix=lua
fi
# try with dot, without dot and finally without version
- for f in $lua_pkg_prefix$vdot $lua_pkg_prefix$vndot $lua_pkg_prefix; do
- lua_cflags=$($PKGCONFIG --cflags $f 2>/dev/null)
- if test "$lua_cflags" != ""; then
- # OK, found CFLAGS. Get Lua LFLAGS and lib install dir
- LUA_CFLAGS=$lua_cflags
- LUA_LFLAGS=$($PKGCONFIG --libs $f)
- LUA_INSTALL_CMOD=$($PKGCONFIG --variable=INSTALL_CMOD $f)
- break
+ for f in $lua_pkg_prefix$lua_vdot $lua_pkg_prefix$lua_vndot $lua_pkg_prefix; do
+ lua_exec_prefix=`$PKGCONFIG --variable=prefix $f 2>/dev/null`
+ # same binaries?
+ if test "$lua_exec_prefix/bin/lua" = "$LUA"; then
+ # OK, found CFLAGS. Get Lua LFLAGS and modules install dir
+ LUA_CFLAGS=`$PKGCONFIG --cflags $f 2>/dev/null`
+ LUA_LFLAGS=`$PKGCONFIG --libs $f 2>/dev/null`
+ LUA_INSTALL_CMOD=`$PKGCONFIG --variable=INSTALL_CMOD $f 2>/dev/null`
+ LUA_INSTALL_LMOD=`$PKGCONFIG --variable=INSTALL_LMOD $f 2>/dev/null`
+ break
fi
done
fi
- # if not set with pkg-config, use default values in src package
- if test "$LUA_CFLAGS" = ""; then
- AC_MSG_WARN(Setting Lua include and lib dirs to defaults in src package)
- LUA_CFLAGS="-I/usr/local/include -I/usr/local/include/lua -I/usr/local/include/lua/$vdot"
- LUA_LFLAGS="-L/usr/local/lib -L/usr/local/lib/lua -L/usr/local/lib/lua/$vdot $lua_libs"
- LUA_INSTALL_CMOD="/usr/local/lib/lua/$vdot"
+ LUA_RRD_LIBDIR="$langpref/lib/lua/$lua_vdot"
+ # if lua 5.0 can't find compat-5.1, force installation of
+ # compat-5.1.lua together with RRDtool.
+ if test "$lua_vdot" = "5.0" -a "$LUA_HAVE_COMPAT51" != "HAVE_COMPAT51"; then
+ lua_need_compat51=1
+ LUA_INSTALL_LMOD="$LUA_RRD_LIBDIR"
fi
- LUA_SRCS=rrdlua.c
- LUA_OBJS=rrdlua.o
- # If Lua 5.0, we need compat-5.1. Add ours unless already
- # integrated as in Debian/Ubuntu 5.0 -dev packages.
- if test "$vdot" = "5.0" -a "$LUA_HAVE_COMPAT51" != "HAVE_COMPAT51"; then
- LUA_SRCS="rrdlua.c compat-5.1r5/compat-5.1.c"
- LUA_OBJS="rrdlua.o compat-5.1r5/compat-5.1.o"
+
+ # if not set with pkg-config, use default values in src packages compat-5.1, lua 5.1
+ if test "$LUA_CFLAGS" = ""; then
+ AC_MSG_WARN(Setting Lua include and lib flags to defaults in compat-5.1 and lua 5.1 sources)
+ LUA_CFLAGS="-I/usr/local/include -I/usr/local/include/lua -I/usr/local/include/lua/$lua_vdot"
+ LUA_LFLAGS="-L/usr/local/lib -L/usr/local/lib/lua -L/usr/local/lib/lua/$lua_vdot $lua_libs"
+ LUA_INSTALL_CMOD="/usr/local/lib/lua/$lua_vdot"
fi
dnl pass additional lua options
- # if lua-site-install is not set, overwrite LUA_INSTALL_CMOD already
- # found and install together with RRDtool, under $langpref.
- LUA_RRD_LANGPREF="$langpref/lib/lua"
+ dnl if lua-site-install is not set, overwrite LUA_INSTALL_CMOD already
+ dnl found and install together with RRDtool, under $langpref.
AC_ARG_ENABLE(lua-site-install,
- [ --enable-lua-site-install by default the rrdtool lua modules are installed
- together with rrdtool in $prefix/lib/lua. You have to
- add $prefix/lib/lua/$lua_version/?.so to package.cpath
- for lua to find the rrd.so file. When you set this
- option the Lua module will get installed wherever
- your Lua setup thinks it is best.],
+ AS_HELP_STRING([--enable-lua-site-install],[by default the lua module is installed together with rrdtool in $prefix/lib/lua/$lua_version. You have to add $prefix/lib/lua/$lua_version/?.so to package.cpath for lua to find 'rrd.so'. For lua 5.0 you may also need to change LUA_PATH to the same dir, to require 'compat-5.1'. When you set this option the lua modules will get installed wherever your Lua setup thinks it is best. WARNING: if you set this option, system lua modules compat-5.1.lua and rrd.so, if any, may be overwritten.]),
[],
- [LUA_INSTALL_CMOD="$LUA_RRD_LANGPREF/$vdot"])
+ [LUA_INSTALL_CMOD="$LUA_RRD_LIBDIR"; LUA_INSTALL_LMOD="$LUA_RRD_LIBDIR"])
+ LUA_DEFINES="-DLUA$lua_vndot -D$LUA_HAVE_COMPAT51"
AC_SUBST(LUA)
AC_SUBST(COMP_LUA)
- AC_SUBST(LUA_MAJOR)
- AC_SUBST(LUA_MINOR)
- AC_SUBST(LUA_POINT)
- AC_SUBST(LUA_RRD_LANGPREF)
AC_SUBST(LUA_INSTALL_CMOD)
- AC_SUBST(LUA_HAVE_COMPAT51)
+ AC_SUBST(LUA_INSTALL_LMOD)
AC_SUBST(LUA_CFLAGS)
AC_SUBST(LUA_LFLAGS)
- AC_SUBST(LUA_SRCS)
- AC_SUBST(LUA_OBJS)
+ AC_SUBST(LUA_DEFINES)
else
enable_lua=no
AC_MSG_RESULT([Lua headers found but not the libraries! Please reinstall the dev packages for Lua $LUA_MAJOR.$LUA_MINOR])
fi
fi
fi
-
+dnl If Lua 5.0, we need compat-5.1. Add ours unless already
+dnl integrated as in Debian/Ubuntu 5.0 -dev packages.
+AM_CONDITIONAL(LUA_NEED_OUR_COMPAT51,
+ [test "$lua_vdot" = "5.0" -a "$LUA_HAVE_COMPAT51" != "HAVE_COMPAT51"])
+AM_CONDITIONAL(LUA_SITE_CINSTALL, [test "$LUA_INSTALL_CMOD" != "$LUA_RRD_LIBDIR"])
+AM_CONDITIONAL(LUA_SITE_LINSTALL, [test "$LUA_INSTALL_LMOD" != "$LUA_RRD_LIBDIR"])
+AM_CONDITIONAL(LUA50, [test "$lua_vndot" = "50"])
+AM_CONDITIONAL(BUILD_LUA, [test "$enable_lua" = "yes"])
enable_tcl_site=no
-AC_ARG_ENABLE(tcl,[ --disable-tcl do not build the tcl modules],
+AC_ARG_ENABLE(tcl,AS_HELP_STRING([--disable-tcl],[do not build the tcl modules]),
[],[enable_tcl=yes])
if test "$enable_tcl" = "yes"; 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],
+ AC_ARG_ENABLE(tcl,AS_HELP_STRING([--enable-tcl-site],[install the tcl extension in the tcl tree]),
[],[enable_tcl_site=yes])
fi
AC_SUBST(TCL_PACKAGE_DIR)
AC_SUBST(TCL_INCLUDE_SPEC)
-AC_ARG_ENABLE(python,[ --disable-python do not build the python modules],
+AC_ARG_ENABLE(python,AS_HELP_STRING([--disable-python],[do not build the python modules]),
[],[enable_python=yes])
if test "$enable_python" = "yes"; then
AC_CONFIG_FILES([examples/4charts.pl])
AC_CONFIG_FILES([examples/perftest.pl])
AC_CONFIG_FILES([examples/Makefile])
+AC_CONFIG_FILES([examples/rrdcached/Makefile])
AC_CONFIG_FILES([doc/Makefile])
-AC_CONFIG_FILES([po/Makefile.in])
+AC_CONFIG_FILES([po/Makefile.in])
+AC_CONFIG_FILES([intl/Makefile])
AC_CONFIG_FILES([src/Makefile])
-AC_CONFIG_FILES([src/librrd.sym])
+AC_CONFIG_FILES([src/librrd.sym.in])
AC_CONFIG_FILES([src/librrd.pc])
AC_CONFIG_FILES([bindings/Makefile])
AC_CONFIG_FILES([bindings/tcl/Makefile])
AC_CONFIG_FILES([bindings/tcl/ifOctets.tcl])
AC_CONFIG_FILES([Makefile])
-AC_CONFIG_FILES([bindings/lua/Makefile.lua])
+AC_CONFIG_FILES([bindings/lua/Makefile])
AC_CONFIG_COMMANDS([default],[[ chmod +x examples/*.pl]],[[]])
+
+dnl intl requires our config to be called config.h. indulge it.
+AC_CONFIG_COMMANDS_POST([ test -f config.h || ln -s rrd_config.h config.h ])
+
AC_OUTPUT
AC_MSG_CHECKING(in)
echo " Ruby Binary: $RUBY"
echo " Ruby Options: $RUBY_MAKE_OPTIONS"
echo " Build Lua Bindings: $enable_lua"
+if test "$enable_lua" = "yes"; then
echo " Lua Binary: $LUA"
echo " Lua Version: $lua_version"
-echo " Lua module dir: $LUA_INSTALL_CMOD"
+echo " Lua C-modules dir: $LUA_INSTALL_CMOD"
+if test "$lua_need_compat51" = "1"; then
+echo " Lua Lua-modules dir: $LUA_INSTALL_LMOD"
+fi
+fi
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 " Use gettext: $USE_NLS"
+echo " With libDBI: $have_libdbi"
echo
echo " Libraries: $ALL_LIBS"
echo