aboutsummaryrefslogtreecommitdiff
path: root/libjava/configure.ac
diff options
context:
space:
mode:
authorAndreas Tobler <andreast@gcc.gnu.org>2006-04-23 00:17:26 +0200
committerAndreas Tobler <andreast@gcc.gnu.org>2006-04-23 00:17:26 +0200
commit6d0b58a9aa2992fc85bf10b310e9dd32af3c5cd3 (patch)
tree93ac6e1f58180ad16a8eacfb5c1cdadf705b5752 /libjava/configure.ac
parentac6ed182edca2c15eb0509336b5fcc45fb250fe7 (diff)
downloadgcc-6d0b58a9aa2992fc85bf10b310e9dd32af3c5cd3.zip
gcc-6d0b58a9aa2992fc85bf10b310e9dd32af3c5cd3.tar.gz
gcc-6d0b58a9aa2992fc85bf10b310e9dd32af3c5cd3.tar.bz2
configure.ac: Weaken the check for MMAP.
2006-04-22 Andreas Tobler <a.tobler@schweiz.ch> * configure.ac: Weaken the check for MMAP. * configure: Rebuilt. * include/config.h.in: Likewise. From-SVN: r113182
Diffstat (limited to 'libjava/configure.ac')
-rw-r--r--libjava/configure.ac26
1 files changed, 25 insertions, 1 deletions
diff --git a/libjava/configure.ac b/libjava/configure.ac
index 86359f1..1077b8d 100644
--- a/libjava/configure.ac
+++ b/libjava/configure.ac
@@ -1346,7 +1346,31 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <time.h>]], [[struct tm tim; tim.t
[AC_MSG_RESULT(no)])])])
AC_FUNC_ALLOCA
-AC_FUNC_MMAP
+
+dnl Check for mmap()
+# AC_FUNC_MMAP goes to far and checks for mmap fixed, we do only need mmap
+# at a mmap selected address. See
+# gnu/java/nio/channels/natFileChannelPosix.cc
+
+AC_MSG_CHECKING([for mmap])
+AC_CACHE_VAL(ac_cv_func_mmap_ok,
+ [AC_TRY_LINK(
+ changequote(<<, >>)dnl
+ <<
+#include <unistd.h>
+#include <sys/mman.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+ >>,
+ changequote([, ])dnl
+ [mmap((void *)0, 0, PROT_READ, 0, 0, 0);],
+ ac_cv_func_mmap_ok=yes,
+ ac_cv_func_mmap_ok=no)] )
+AC_MSG_RESULT($ac_cv_func_mmap_ok)
+if test $ac_cv_func_mmap_ok = yes
+then
+ AC_DEFINE(HAVE_MMAP, 1, [ Define to 1 if you have a working `mmap' system call w/o fixed address ability.])
+fi
AC_CHECK_PROGS(PERL, perl, false)