1/* 2 * Copyright (c) 2003, 2009 Bob Deblier 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2.1 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public 15 * License along with this library; if not, write to the Free Software 16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 17 * 18 */ 19 20#ifndef _BEECRYPT_GNU_H 21#define _BEECRYPT_GNU_H 22 23#if __MINGW32__ 24# define _REENTRANT 25# if !defined(_WIN32_WINNT) 26# define _WIN32_WINNT 0x0400 27# endif 28# include <windows.h> 29#endif 30 31@INCLUDE_INTTYPES_H@ 32@INCLUDE_STDINT_H@ 33@INCLUDE_SYNCH_H@ 34@INCLUDE_THREAD_H@ 35@INCLUDE_PTHREAD_H@ 36@INCLUDE_SEMAPHORE_H@ 37@INCLUDE_SCHED_H@ 38@INCLUDE_STDIO_H@ 39@INCLUDE_STDLIB_H@ 40@INCLUDE_MALLOC_H@ 41@INCLUDE_STRING_H@ 42@INCLUDE_UNISTD_H@ 43@INCLUDE_DLFCN_H@ 44 45@TYPEDEF_BC_COND_T@ 46@TYPEDEF_BC_MUTEX_T@ 47@TYPEDEF_BC_THREAD_T@ 48@TYPEDEF_BC_THREADID_T@ 49 50@TYPEDEF_SIZE_T@ 51 52@TYPEDEF_INT8_T@ 53@TYPEDEF_INT16_T@ 54@TYPEDEF_INT32_T@ 55@TYPEDEF_INT64_T@ 56 57@TYPEDEF_UINT8_T@ 58@TYPEDEF_UINT16_T@ 59@TYPEDEF_UINT32_T@ 60@TYPEDEF_UINT64_T@ 61 62#if defined(__GNUC__) 63# if !defined(__GNUC_PREREQ__) 64# define __GNUC_PREREQ__(maj, min) (__GNUC__ > (maj) || __GNUC__ == (maj) && __GNUC_MINOR__ >= (min)) 65# endif 66#else 67# define __GNUC__ 0 68# define __GNUC_PREREQ__(maj, min) 0 69#endif 70 71/* WARNING: overriding this value is dangerous; some assembler routines 72 * make assumptions about the size set by the configure script 73 */ 74#if !defined(MP_WBITS) 75# define MP_WBITS @MP_WBITS@ 76#endif 77 78#endif 79