getpagesize.h revision 131557
1129198Scognet/* Emulate getpagesize on systems that lack it. */ 2129198Scognet 3139735Simp/* $FreeBSD: head/gnu/usr.bin/grep/getpagesize.h 131557 2004-07-04 10:02:03Z tjr $ */ 4129198Scognet 5129198Scognet#ifndef HAVE_GETPAGESIZE 6129198Scognet 7129198Scognet#if !defined getpagesize && defined __BEOS__ 8129198Scognet# include <OS.h> 9129198Scognet# define getpagesize() B_PAGE_SIZE 10129198Scognet#endif 11129198Scognet 12129198Scognet#ifdef HAVE_UNISTD_H 13129198Scognet# include <unistd.h> 14129198Scognet#endif 15129198Scognet 16129198Scognet#if !defined getpagesize && defined _SC_PAGESIZE 17129198Scognet# if !(defined VMS && __VMS_VER < 70000000) 18129198Scognet# define getpagesize() sysconf (_SC_PAGESIZE) 19129198Scognet# endif 20129198Scognet#endif 21129198Scognet 22129198Scognet#if !defined getpagesize && defined VMS 23129198Scognet# ifdef __ALPHA 24129198Scognet# define getpagesize() 8192 25129198Scognet# else 26129198Scognet# define getpagesize() 512 27129198Scognet# endif 28129198Scognet#endif 29129198Scognet 30129198Scognet#ifndef getpagesize 31129198Scognet# include <sys/param.h> 32129198Scognet# ifdef EXEC_PAGESIZE 33129198Scognet# define getpagesize() EXEC_PAGESIZE 34129198Scognet# else 35129198Scognet# ifdef NBPG 36129198Scognet# ifndef CLSIZE 37129198Scognet# define CLSIZE 1 38129198Scognet# endif 39129198Scognet# define getpagesize() (NBPG * CLSIZE) 40129198Scognet# else 41294681Sian# ifdef NBPC 42129198Scognet# define getpagesize() NBPC 43239033Sandrew# endif 44129198Scognet# endif 45150864Scognet# endif 46150864Scognet#endif 47150864Scognet 48150864Scognet#endif /* not HAVE_GETPAGESIZE */ 49150864Scognet