AH_BOTTOM([
/* make sure that we pickup the correct stuff from all headers */
#define _XOPEN_SOURCE 600
-#if HAVE_FEATURES_H
+#ifdef HAVE_FEATURES_H
# include <features.h>
#endif
-#if HAVE_SYS_TYPES_H
+#ifdef HAVE_SYS_TYPES_H
# include <sys/types.h>
#endif
-#if HAVE_SYS_PARAM_H
+#ifdef HAVE_SYS_PARAM_H
# include <sys/param.h>
#endif
#ifndef MAXPATH
# endif
#endif
-#if HAVE_ERRNO_H
+#ifdef HAVE_ERRNO_H
# include <errno.h>
#endif
-#if HAVE_SYS_MMAN_H
+#ifdef HAVE_SYS_MMAN_H
# include <sys/mman.h>
#endif
#if !defined HAVE_MADVISE && defined HAVE_POSIX_MADVISE
# define USE_MADVISE 1
#endif
-#if HAVE_SYS_STAT_H
+#ifdef HAVE_SYS_STAT_H
# include <sys/stat.h>
#endif
#include <fcntl.h>
#endif
-#if HAVE_UNISTD_H
+#ifdef HAVE_UNISTD_H
# include <unistd.h>
#endif
-#if TIME_WITH_SYS_TIME
+#ifdef TIME_WITH_SYS_TIME
# include <sys/time.h>
# include <time.h>
#else
-# if HAVE_SYS_TIME_H
+# ifdef HAVE_SYS_TIME_H
# include <sys/time.h>
# else
# include <time.h>
# endif
#endif
-#if HAVE_SYS_TIMES_H
+#ifdef HAVE_SYS_TIMES_H
# include <sys/times.h>
#endif
-#if HAVE_SYS_RESOURCE_H
+#ifdef HAVE_SYS_RESOURCE_H
# include <sys/resource.h>
#if (defined(__svr4__) && defined(__sun__))
/* Solaris headers (pre 2.6) don't have a getrusage prototype.
# include <malloc/malloc.h>
#endif
-#if HAVE_STDIO_H
+#ifdef HAVE_STDIO_H
# include <stdio.h>
#endif
-#if HAVE_STDLIB_H
+#ifdef HAVE_STDLIB_H
# include <stdlib.h>
#endif
-#if HAVE_CTYPE_H
+#ifdef HAVE_CTYPE_H
# include <ctype.h>
#endif
-#if HAVE_DIRENT_H
+#ifdef HAVE_DIRENT_H
# include <dirent.h>
# define NAMLEN(dirent) strlen((dirent)->d_name)
#else
# define dirent direct
# define NAMLEN(dirent) (dirent)->d_namlen
-# if HAVE_SYS_NDIR_H
+# ifdef HAVE_SYS_NDIR_H
# include <sys/ndir.h>
# endif
-# if HAVE_SYS_DIR_H
+# ifdef HAVE_SYS_DIR_H
# include <sys/dir.h>
# endif
-# if HAVE_NDIR_H
+# ifdef HAVE_NDIR_H
# include <ndir.h>
# endif
#endif
[ --disable-mmap disable mmap in rrd_update, use seek+write instead],
[],
[enable_mmap=yes])
-
+AC_ARG_ENABLE([direct-io],
+[ --enable-direct-io enable O_DIRECT],
+[],
+[enable_direct_io=yes])
AC_ARG_ENABLE(pthread,[ --disable-pthread disable multithread support],
[],[enable_pthread=yes])
AC_CHECK_HEADERS(sys/mman.h)
AC_FUNC_MMAP
AC_CHECK_FUNCS(mmap munmap)
- AC_CHECK_DECLS(madvise, [], [], [#if HAVE_SYS_MMAN_H
+ AC_CHECK_DECLS(madvise, [], [], [#ifdef HAVE_SYS_MMAN_H
# include <sys/mman.h>
#endif])
if test "x$ac_cv_have_decl_madvise" = "xyes";
fi
+dnl if test "x$enable_direct_io" = "xyes"; then
+dnl check for working O_DIRECT
+dnl fi
+AC_SUBST([USE_DIRECT_IO])
+
CONFIGURE_PART(IEEE Math Checks)