1 # mmap-anon.m4 serial 3
2 dnl Copyright (C) 2005 Free Software Foundation, Inc.
3 dnl This file is free software; the Free Software Foundation
4 dnl gives unlimited permission to copy and/or distribute it,
5 dnl with or without modifications, as long as this notice is preserved.
7 AC_DEFUN([gl_FUNC_MMAP_ANON],
9 dnl Work around a bug of AC_EGREP_CPP in autoconf-2.57.
10 AC_REQUIRE([AC_PROG_CPP])
11 AC_REQUIRE([AC_PROG_EGREP])
13 dnl Persuade glibc <sys/mman.h> to define MAP_ANONYMOUS.
14 AC_REQUIRE([AC_GNU_SOURCE])
19 # Try to allow MAP_ANONYMOUS.
20 gl_have_mmap_anonymous=no
21 if test $ac_cv_func_mmap_fixed_mapped = yes; then
22 AC_MSG_CHECKING([for MAP_ANONYMOUS])
23 AC_EGREP_CPP([I cant identify this map.], [
26 I cant identify this map.
29 [gl_have_mmap_anonymous=yes])
30 if test $gl_have_mmap_anonymous != yes; then
31 AC_EGREP_CPP([I cant identify this map.], [
34 I cant identify this map.
37 [AC_DEFINE(MAP_ANONYMOUS, MAP_ANON,
38 [Define to a substitute value for mmap()'s MAP_ANONYMOUS flag.])
39 gl_have_mmap_anonymous=yes])
41 AC_MSG_RESULT($gl_have_mmap_anonymous)
42 if test $gl_have_mmap_anonymous = yes; then
43 AC_DEFINE(HAVE_MAP_ANONYMOUS, 1,
44 [Define to 1 if mmap()'s MAP_ANONYMOUS flag is available after including
45 config.h and <sys/mman.h>.])