BeeCrypt  4.2.1
gnu.h
Go to the documentation of this file.
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 
34 
35 #include <pthread.h>
36 #include <semaphore.h>
37 #include <sched.h>
38 #include <stdio.h>
39 #include <stdlib.h>
40 
41 #include <string.h>
42 #include <unistd.h>
43 #include <dlfcn.h>
44 
45 typedef pthread_cond_t bc_cond_t;
46 typedef pthread_mutex_t bc_mutex_t;
47 typedef pthread_t bc_thread_t;
48 typedef pthread_t bc_threadid_t;
49 
50 
51 
52 
53 
54 
55 
56 
57 
58 
59 
60 
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 # include <bits/wordsize.h>
76 #if __WORDSIZE == 32
77 # define MP_WBITS 32U
78 #elif __WORDSIZE == 64
79 # define MP_WBITS 64U
80 #endif
81 #endif
82 
83 #endif