openbsd does not know EPROTO it seems
[rrdtool.git] / configure.ac
index 280f68f..ab210d1 100644 (file)
@@ -31,7 +31,7 @@ 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=5:3:1
+LIBVERS=6:255:2
 AC_SUBST(LIBVERS)
 
 AC_CANONICAL_TARGET
@@ -102,26 +102,6 @@ AC_DEFINE_UNQUOTED(RRDGRAPH_YLEGEND_ANGLE,${RRDGRAPH_YLEGEND_ANGLE:-90.0},
 AC_ARG_ENABLE(rrdcgi,AS_HELP_STRING([--disable-rrdcgi],[disable building of rrdcgi]),
 [],[enable_rrdcgi=yes])
 
-AC_ARG_ENABLE(libwrap,
-  AS_HELP_STRING([--disable-libwrap],
-  [do not build in support for libwrap (tcp wrapper)]),
-  [have_libwrap=no],[
-    XXX=$LIBS
-    LIBS="$LIBS -lwrap"
-    AC_MSG_CHECKING(for libwrap)
-    AC_LINK_IFELSE(
-      [AC_LANG_PROGRAM([[#include "tcpd.h"]], [[hosts_access(NULL)]])
-    ],[AC_DEFINE(HAVE_LIBWRAP,[1],[have got libwrap installed])
-       AC_MSG_RESULT([yes])
-       have_libwrap=yes
-    ],[LIBS=$XXX
-       AC_MSG_RESULT([no])
-       have_libwrap=no
-    ]
-  )
-])
-AM_CONDITIONAL(BUILD_LIBWRAP,[test $have_libwrap != no])
-
 AM_CONDITIONAL(BUILD_RRDCGI,[test $enable_rrdcgi != no])
 
 AC_ARG_ENABLE(rrd_graph,AS_HELP_STRING([--disable-rrd_graph],[disable all rrd_graph functions]),
@@ -226,7 +206,7 @@ AC_CHECK_FUNC(round, , AC_CHECK_LIB(m, round))
 
 
 dnl add pic flag in any case this makes sure all our code is relocatable
-eval `./libtool --config | grep pic_flag`
+eval `./libtool --config | grep pic_flag=` 
 CFLAGS="$CFLAGS $pic_flag"
 
 
@@ -301,6 +281,9 @@ AC_CHECK_DECLS(posix_fadvise, [], [], [#define _XOPEN_SOURCE 600
 #include <fcntl.h>])
 AC_CHECK_FUNCS(posix_fadvise)
 
+dnl can we use posix_fallocate
+AC_CHECK_FUNCS(posix_fallocate)
+
 CONFIGURE_PART(Libintl Processing)
 
 AM_GNU_GETTEXT_VERSION(0.17)
@@ -373,6 +356,8 @@ AC_FULL_IEEE
 
 CONFIGURE_PART(Resolve Portability Issues)
 
+GC_TIMEZONE()
+
 CHECK_FOR_WORKING_MS_ASYNC
 
 dnl do we have nl_langinfo(_NL_TIME_WEEK_1STDAY)
@@ -514,25 +499,40 @@ 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
-    ]
-  )
+have_libdbi=no
+
+AC_ARG_ENABLE(libdbi,AS_HELP_STRING([--disable-libdbi],[do not build in support for libdbi]),[],[
+    AC_CHECK_HEADER(dbi/dbi.h, [ 
+       AC_CHECK_LIB(dbi, dbi_initialize, [
+           AC_DEFINE(HAVE_LIBDBI,[1],[have got libdbi installed])
+           LIBS="${LIBS} -ldbi -ldl"
+           have_libdbi=yes
+       ])
+    ])
 ])
+
 AM_CONDITIONAL(BUILD_LIBDBI,[test $have_libdbi != no])
 
+have_libwrap=no
+
+AC_ARG_ENABLE(libwrap, AS_HELP_STRING([--disable-libwrap], [do not build in support for libwrap (tcp wrapper)]),[],[ 
+    AC_CHECK_HEADER(tcpd.h,[       
+        AC_CHECK_FUNCS(hosts_access, [
+            AC_DEFINE(HAVE_LIBWRAP,[1],[have got libwrap installed])
+            have_libwrap=yes 
+        ],  
+        [
+            AC_CHECK_LIB(wrap, hosts_access, [
+               AC_DEFINE(HAVE_LIBWRAP,[1],[have got libwrap installed])
+               LIBS="${LIBS} -lwrap"
+               have_libwrap=yes
+            ])
+        ])
+    ])
+])
+
+
+AM_CONDITIONAL(BUILD_LIBWRAP,[test $have_libwrap != no])
 
 AM_CONDITIONAL(BUILD_RRDGRAPH,[test $enable_rrd_graph != no])
 
@@ -619,7 +619,7 @@ langpref=$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"
+PERL_MAKE_OPTIONS="PREFIX=$langpref INSTALL_BASE= LIB=$langpref/lib/perl/$PERL_VERSION"
 
 dnl pass additional perl options when generating Makefile from Makefile.PL
 AC_ARG_ENABLE(perl-site-install,
@@ -844,7 +844,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 /usr/lib/tcl8.4 /usr/lib/tcl8.3 ; do
+  for dir in $withval /usr/lib /usr/lib64 /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
@@ -918,6 +918,17 @@ AC_ARG_VAR(RRDDOCDIR, [[DATADIR/doc/PACKAGE-VERSION] Documentation directory])
 if test -z "$RRDDOCDIR"; then
    RRDDOCDIR='${datadir}/doc/${PACKAGE}-${VERSION}'; fi
 
+# systemd check
+PKG_PROG_PKG_CONFIG
+AC_ARG_WITH([systemdsystemunitdir],
+       AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]),
+       [], [with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)])
+if test "x$with_systemdsystemunitdir" != xno; then
+       AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
+       AC_OUTPUT([etc/rrdcached.socket etc/rrdcached.service])
+fi
+AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ])
+
 
 CONFIGURE_PART(Apply Configuration Information)
  
@@ -993,6 +1004,7 @@ echo "       Build librrd MT: $enable_pthread"
 echo "           Use gettext: $USE_NLS"
 echo "           With libDBI: $have_libdbi"
 echo "          With libwrap: $have_libwrap"
+echo "      With systemd dir: $with_systemdsystemunitdir"
 echo
 echo "             Libraries: $ALL_LIBS"
 echo