Add gintptr and guintptr typedefs here, too, appropriately ifdeffed for
[platform/upstream/glib.git] / glibconfig.h.win32.in
1 /* glibconfig.h.win32.in Merged from two versions generated by configure for gcc and MSVC.  */
2 /* glibconfig.h
3  *
4  * This is a generated file.  Please modify 'configure.in'
5  */
6
7 #ifndef __G_LIBCONFIG_H__
8 #define __G_LIBCONFIG_H__
9
10 #include <glib/gmacros.h>
11
12 #include <limits.h>
13 #include <float.h>
14
15 G_BEGIN_DECLS
16
17 #define G_MINFLOAT      FLT_MIN
18 #define G_MAXFLOAT      FLT_MAX
19 #define G_MINDOUBLE     DBL_MIN
20 #define G_MAXDOUBLE     DBL_MAX
21 #define G_MINSHORT      SHRT_MIN
22 #define G_MAXSHORT      SHRT_MAX
23 #define G_MAXUSHORT     USHRT_MAX
24 #define G_MININT        INT_MIN
25 #define G_MAXINT        INT_MAX
26 #define G_MAXUINT       UINT_MAX
27 #define G_MINLONG       LONG_MIN
28 #define G_MAXLONG       LONG_MAX
29 #define G_MAXULONG      ULONG_MAX
30
31 typedef signed char gint8;
32 typedef unsigned char guint8;
33 typedef signed short gint16;
34 typedef unsigned short guint16;
35 #define G_GINT16_MODIFIER "h"
36 #define G_GINT16_FORMAT "hi"
37 #define G_GUINT16_FORMAT "hu"
38 typedef signed int gint32;
39 typedef unsigned int guint32;
40 #define G_GINT32_MODIFIER ""
41 #define G_GINT32_FORMAT "i"
42 #define G_GUINT32_FORMAT "u"
43 #define G_HAVE_GINT64 1          /* deprecated, always true */
44
45 #ifndef _MSC_VER
46 G_GNUC_EXTENSION typedef signed long long gint64;
47 G_GNUC_EXTENSION typedef unsigned long long guint64;
48 #else /* _MSC_VER */
49 typedef signed __int64 gint64;
50 typedef unsigned __int64 guint64;
51 #endif /* _MSC_VER */
52
53 #ifndef _MSC_VER
54 #define G_GINT64_CONSTANT(val)  (G_GNUC_EXTENSION (val##LL))
55 #else /* _MSC_VER */
56 #define G_GINT64_CONSTANT(val)  (val##i64)
57 #endif /* _MSC_VER */
58 #ifndef _MSC_VER
59 #define G_GUINT64_CONSTANT(val) (G_GNUC_EXTENSION (val##ULL))
60 #else /* _MSC_VER */
61 #define G_GUINT64_CONSTANT(val) (val##Ui64)
62 #endif /* _MSC_VER */
63 #define G_GINT64_MODIFIER "I64"
64 #define G_GINT64_FORMAT "I64i"
65 #define G_GUINT64_FORMAT "I64u"
66
67 #if defined(_WIN64) || defined(_M_X64) || defined(_M_AMD64)
68
69 #define GLIB_SIZEOF_VOID_P 8
70 #define GLIB_SIZEOF_LONG   4
71 #define GLIB_SIZEOF_SIZE_T 8
72
73 typedef signed long long gssize;
74 typedef unsigned long long gsize;
75 #define G_GSIZE_MODIFIER "I64"
76 #define G_GSSIZE_FORMAT "I64d"
77 #define G_GSIZE_FORMAT "I64u"
78
79 #define G_MAXSIZE       G_MAXUINT64
80 #define G_MINSSIZE      G_MININT64
81 #define G_MAXSSIZE      G_MAXINT64
82
83 #else
84
85 #define GLIB_SIZEOF_VOID_P 4
86 #define GLIB_SIZEOF_LONG   4
87 #define GLIB_SIZEOF_SIZE_T 4
88
89 typedef signed int gssize;
90 typedef unsigned int gsize;
91 #define G_GSIZE_MODIFIER ""
92 #define G_GSSIZE_FORMAT "i"
93 #define G_GSIZE_FORMAT "u"
94
95 #define G_MAXSIZE       G_MAXUINT
96 #define G_MINSSIZE      G_MININT
97 #define G_MAXSSIZE      G_MAXINT
98
99 #endif
100
101 typedef gint64 goffset;
102 #define G_MINOFFSET     G_MININT64
103 #define G_MAXOFFSET     G_MAXINT64
104
105
106 #define GPOINTER_TO_INT(p)      ((gint)   (p))
107 #define GPOINTER_TO_UINT(p)     ((guint)  (p))
108
109 #define GINT_TO_POINTER(i)      ((gpointer)  (i))
110 #define GUINT_TO_POINTER(u)     ((gpointer)  (u))
111
112 #ifndef _WIN64
113 typedef signed int gintptr;
114 typedef unsigned int guintptr;
115 #else
116 #ifndef _MSC_VER
117 typedef signed long long gintptr;
118 typedef unsigned long long guintptr;
119 #else
120 typedef signed __int64 gintptr;
121 typedef unsigned __int64 guintptr;
122 #endif
123 #endif
124
125 #ifdef NeXT /* @#%@! NeXTStep */
126 # define g_ATEXIT(proc) (!atexit (proc))
127 #else
128 # define g_ATEXIT(proc) (atexit (proc))
129 #endif
130
131 #define g_memmove(dest,src,len) G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END
132
133 #define GLIB_MAJOR_VERSION @GLIB_MAJOR_VERSION@
134 #define GLIB_MINOR_VERSION @GLIB_MINOR_VERSION@
135 #define GLIB_MICRO_VERSION @GLIB_MICRO_VERSION@
136
137 #define G_OS_WIN32
138 #define G_PLATFORM_WIN32
139 @GLIB_WIN32_STATIC_COMPILATION_DEFINE@
140
141 #ifndef _MSC_VER
142 #define G_VA_COPY       va_copy
143 #endif /* not _MSC_VER */
144
145 #ifdef  __cplusplus
146 #define G_HAVE_INLINE   1
147 #else   /* !__cplusplus */
148 #ifndef _MSC_VER
149 #define G_HAVE_INLINE 1
150 #endif /* _MSC_VER */
151 #define G_HAVE___INLINE 1
152 #if !defined(_MSC_VER) && !defined(__DMC__)
153 #define G_HAVE___INLINE__ 1
154 #endif /* !_MSC_VER and !__DMC__ */
155 #endif  /* !__cplusplus */
156
157 #define G_CAN_INLINE    1
158
159 #ifndef _MSC_VER
160 #define G_HAVE_ISO_VARARGS 1
161
162 /* gcc-2.95.x supports both gnu style and ISO varargs, but if -ansi
163  * is passed ISO vararg support is turned off, and there is no work
164  * around to turn it on, so we unconditionally turn it off.
165  */
166 #if __GNUC__ == 2 && __GNUC_MINOR__ == 95
167 #  undef G_HAVE_ISO_VARARGS
168 #endif
169
170 #define G_HAVE_GNUC_VARARGS 1
171 #else /* _MSC_VER */
172 /* varargs macros available since msvc8 (vs2005) */
173 #  if _MSC_VER >= 1400
174 #    define G_HAVE_ISO_VARARGS 1
175 #   endif
176 #endif /* not _MSC_VER */
177 #define G_HAVE_GROWING_STACK 0
178
179 #define G_GNUC_INTERNAL
180
181 #define G_THREADS_ENABLED
182 #define G_THREADS_IMPL_WIN32
183 typedef struct _GMutex* GStaticMutex;
184 #define G_STATIC_MUTEX_INIT NULL
185 #define g_static_mutex_get_mutex(mutex) \
186   (g_static_mutex_get_mutex_impl_shortcut (mutex))
187 /* This represents a system thread as used by the implementation. An
188  * alien implementaion, as loaded by g_thread_init can only count on
189  * "sizeof (gpointer)" bytes to store their info. We however need more
190  * for some of our native implementations. */
191 typedef union _GSystemThread GSystemThread;
192 union _GSystemThread
193 {
194   char   data[4];
195   double dummy_double;
196   void  *dummy_pointer;
197   long   dummy_long;
198 };
199
200 #define GINT16_TO_LE(val)       ((gint16) (val))
201 #define GUINT16_TO_LE(val)      ((guint16) (val))
202 #define GINT16_TO_BE(val)       ((gint16) GUINT16_SWAP_LE_BE (val))
203 #define GUINT16_TO_BE(val)      (GUINT16_SWAP_LE_BE (val))
204 #define GINT32_TO_LE(val)       ((gint32) (val))
205 #define GUINT32_TO_LE(val)      ((guint32) (val))
206 #define GINT32_TO_BE(val)       ((gint32) GUINT32_SWAP_LE_BE (val))
207 #define GUINT32_TO_BE(val)      (GUINT32_SWAP_LE_BE (val))
208 #define GINT64_TO_LE(val)       ((gint64) (val))
209 #define GUINT64_TO_LE(val)      ((guint64) (val))
210 #define GINT64_TO_BE(val)       ((gint64) GUINT64_SWAP_LE_BE (val))
211 #define GUINT64_TO_BE(val)      (GUINT64_SWAP_LE_BE (val))
212 #define GLONG_TO_LE(val)        ((glong) GINT32_TO_LE (val))
213 #define GULONG_TO_LE(val)       ((gulong) GUINT32_TO_LE (val))
214 #define GLONG_TO_BE(val)        ((glong) GINT32_TO_BE (val))
215 #define GULONG_TO_BE(val)       ((gulong) GUINT32_TO_BE (val))
216 #define GINT_TO_LE(val)         ((gint) GINT32_TO_LE (val))
217 #define GUINT_TO_LE(val)        ((guint) GUINT32_TO_LE (val))
218 #define GINT_TO_BE(val)         ((gint) GINT32_TO_BE (val))
219 #define GUINT_TO_BE(val)        ((guint) GUINT32_TO_BE (val))
220 #define G_BYTE_ORDER G_LITTLE_ENDIAN
221
222 #define GLIB_SYSDEF_POLLIN =1
223 #define GLIB_SYSDEF_POLLOUT =4
224 #define GLIB_SYSDEF_POLLPRI =2
225 #define GLIB_SYSDEF_POLLHUP =16
226 #define GLIB_SYSDEF_POLLERR =8
227 #define GLIB_SYSDEF_POLLNVAL =32
228
229 #define G_MODULE_SUFFIX "dll"
230
231 typedef void * GPid;
232
233 G_END_DECLS
234
235 #endif /* GLIBCONFIG_H */