Check for working mmap()
authorDave Yeo <dave.r.yeo@gmail.com>
Mon, 9 May 2011 10:38:44 +0000 (12:38 +0200)
committerSøren Sandmann Pedersen <ssp@redhat.com>
Mon, 9 May 2011 10:38:44 +0000 (12:38 +0200)
OS/2 doesn't have a working mmap().

configure.ac
test/utils.c

index 9a8ebe9..2defbd4 100644 (file)
@@ -650,6 +650,11 @@ fi
 AC_CHECK_HEADER([sys/mman.h],
    [AC_DEFINE(HAVE_SYS_MMAN_H, [1], [Define to 1 if we have <sys/mman.h>])])
 
+AC_CHECK_FUNC(mmap, have_mmap=yes, have_mmap=no)
+if test x$have_mmap = xyes; then
+   AC_DEFINE(HAVE_MMAP, 1, [Whether we have mmap()])
+fi
+
 AC_CHECK_FUNC(mprotect, have_mprotect=yes, have_mprotect=no)
 if test x$have_mprotect = xyes; then
    AC_DEFINE(HAVE_MPROTECT, 1, [Whether we have mprotect()])
index 56701c4..4025602 100644 (file)
@@ -229,7 +229,7 @@ typedef struct
     int n_bytes;
 } info_t;
 
-#if defined(HAVE_MPROTECT) && defined(HAVE_GETPAGESIZE) && defined(HAVE_SYS_MMAN_H)
+#if defined(HAVE_MPROTECT) && defined(HAVE_GETPAGESIZE) && defined(HAVE_SYS_MMAN_H) && defined(HAVE_MMAP)
 
 /* This is apparently necessary on at least OS X */
 #ifndef MAP_ANONYMOUS