1238106Sdes/* Emulate getpagesize on systems that lack it.  */
2238106Sdes
3238106Sdes/* $FreeBSD: releng/10.3/gnu/usr.bin/grep/getpagesize.h 131557 2004-07-04 10:02:03Z tjr $ */
4238106Sdes
5238106Sdes#ifndef HAVE_GETPAGESIZE
6238106Sdes
7238106Sdes#if !defined getpagesize && defined __BEOS__
8238106Sdes# include <OS.h>
9238106Sdes# define getpagesize() B_PAGE_SIZE
10238106Sdes#endif
11238106Sdes
12238106Sdes#ifdef HAVE_UNISTD_H
13238106Sdes# include <unistd.h>
14238106Sdes#endif
15238106Sdes
16238106Sdes#if !defined getpagesize && defined _SC_PAGESIZE
17238106Sdes# if !(defined VMS && __VMS_VER < 70000000)
18238106Sdes#  define getpagesize() sysconf (_SC_PAGESIZE)
19238106Sdes# endif
20238106Sdes#endif
21238106Sdes
22238106Sdes#if !defined getpagesize && defined VMS
23238106Sdes# ifdef __ALPHA
24238106Sdes#  define getpagesize() 8192
25238106Sdes# else
26238106Sdes#  define getpagesize() 512
27238106Sdes# endif
28238106Sdes#endif
29238106Sdes
30238106Sdes#ifndef getpagesize
31238106Sdes# include <sys/param.h>
32238106Sdes# ifdef EXEC_PAGESIZE
33238106Sdes#  define getpagesize() EXEC_PAGESIZE
34238106Sdes# else
35238106Sdes#  ifdef NBPG
36238106Sdes#   ifndef CLSIZE
37238106Sdes#    define CLSIZE 1
38238106Sdes#   endif
39238106Sdes#   define getpagesize() (NBPG * CLSIZE)
40238106Sdes#  else
41238106Sdes#   ifdef NBPC
42238106Sdes#    define getpagesize() NBPC
43238106Sdes#   endif
44238106Sdes#  endif
45238106Sdes# endif
46238106Sdes#endif
47238106Sdes
48238106Sdes#endif /* not HAVE_GETPAGESIZE */
49238106Sdes