1a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner/* getpagesize emulation for systems where it cannot be done in a C macro. 2a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner 3a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner Copyright (C) 2007 Free Software Foundation, Inc. 4a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner 5a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner This program is free software: you can redistribute it and/or modify 6a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner it under the terms of the GNU General Public License as published by 7a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner the Free Software Foundation; either version 3 of the License, or 8a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner (at your option) any later version. 9a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner 10a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner This program is distributed in the hope that it will be useful, 11a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner but WITHOUT ANY WARRANTY; without even the implied warranty of 12a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner GNU General Public License for more details. 14a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner 15a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner You should have received a copy of the GNU General Public License 16a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner along with this program. If not, see <http://www.gnu.org/licenses/>. */ 17a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner 18a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner/* Written by Bruno Haible and Martin Lambers. */ 19a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner 20a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner#include <config.h> 21a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner 22a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner/* Specification. */ 23a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner#include <unistd.h> 24a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner 25a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner/* This implementation is only for native Win32 systems. */ 26a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ 27a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner 28a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner# define WIN32_LEAN_AND_MEAN 29a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner# include <windows.h> 30a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner 31a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turnerint 32a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turnergetpagesize (void) 33a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner{ 34a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner SYSTEM_INFO system_info; 35a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner GetSystemInfo (&system_info); 36a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner return system_info.dwPageSize; 37a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner} 38a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner 39a6dfe5f70959a596290e1591579d26a288a1a2f9David 'Digit' Turner#endif 40