Home | History | Annotate | Download | only in glib
      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 #ifndef _WIN64
    106 
    107 #define GPOINTER_TO_INT(p)	((gint)   (p))
    108 #define GPOINTER_TO_UINT(p)	((guint)  (p))
    109 
    110 #define GINT_TO_POINTER(i)	((gpointer)  (i))
    111 #define GUINT_TO_POINTER(u)	((gpointer)  (u))
    112 
    113 typedef signed int gintptr;
    114 typedef unsigned int guintptr;
    115 
    116 #else
    117 
    118 #define GPOINTER_TO_INT(p)	((gint)  (gint64) (p))
    119 #define GPOINTER_TO_UINT(p)	((guint) (guint64) (p))
    120 
    121 #define GINT_TO_POINTER(i)	((gpointer) (gint64) (i))
    122 #define GUINT_TO_POINTER(u)	((gpointer) (guint64) (u))
    123 
    124 #ifndef _MSC_VER
    125 typedef signed long long gintptr;
    126 typedef unsigned long long guintptr;
    127 #else
    128 typedef signed __int64 gintptr;
    129 typedef unsigned __int64 guintptr;
    130 #endif
    131 
    132 #endif
    133 
    134 #ifdef NeXT /* @#%@! NeXTStep */
    135 # define g_ATEXIT(proc)	(!atexit (proc))
    136 #else
    137 # define g_ATEXIT(proc)	(atexit (proc))
    138 #endif
    139 
    140 #define g_memmove(dest,src,len) G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END
    141 
    142 #define GLIB_MAJOR_VERSION @GLIB_MAJOR_VERSION@
    143 #define GLIB_MINOR_VERSION @GLIB_MINOR_VERSION@
    144 #define GLIB_MICRO_VERSION @GLIB_MICRO_VERSION@
    145 
    146 #define G_OS_WIN32
    147 #define G_PLATFORM_WIN32
    148 @GLIB_WIN32_STATIC_COMPILATION_DEFINE@
    149 
    150 #ifndef _MSC_VER
    151 #define G_VA_COPY	va_copy
    152 #endif /* not _MSC_VER */
    153 
    154 #ifdef	__cplusplus
    155 #define	G_HAVE_INLINE	1
    156 #else	/* !__cplusplus */
    157 #ifndef _MSC_VER
    158 #define G_HAVE_INLINE 1
    159 #endif /* _MSC_VER */
    160 #define G_HAVE___INLINE 1
    161 #if !defined(_MSC_VER) && !defined(__DMC__)
    162 #define G_HAVE___INLINE__ 1
    163 #endif /* !_MSC_VER and !__DMC__ */
    164 #endif	/* !__cplusplus */
    165 
    166 #define G_CAN_INLINE	1
    167 
    168 #ifndef _MSC_VER
    169 #define G_HAVE_ISO_VARARGS 1
    170 
    171 /* gcc-2.95.x supports both gnu style and ISO varargs, but if -ansi
    172  * is passed ISO vararg support is turned off, and there is no work
    173  * around to turn it on, so we unconditionally turn it off.
    174  */
    175 #if __GNUC__ == 2 && __GNUC_MINOR__ == 95
    176 #  undef G_HAVE_ISO_VARARGS
    177 #endif
    178 
    179 #define G_HAVE_GNUC_VARARGS 1
    180 #else /* _MSC_VER */
    181 /* varargs macros available since msvc8 (vs2005) */
    182 #  if _MSC_VER >= 1400
    183 #    define G_HAVE_ISO_VARARGS 1
    184 #   endif
    185 #endif /* not _MSC_VER */
    186 #define G_HAVE_GROWING_STACK 0
    187 
    188 #define G_GNUC_INTERNAL
    189 
    190 #define G_THREADS_ENABLED
    191 #define G_THREADS_IMPL_WIN32
    192 typedef struct _GMutex* GStaticMutex;
    193 #define G_STATIC_MUTEX_INIT NULL
    194 #define g_static_mutex_get_mutex(mutex) \
    195   (g_static_mutex_get_mutex_impl_shortcut (mutex))
    196 /* This represents a system thread as used by the implementation. An
    197  * alien implementaion, as loaded by g_thread_init can only count on
    198  * "sizeof (gpointer)" bytes to store their info. We however need more
    199  * for some of our native implementations. */
    200 typedef union _GSystemThread GSystemThread;
    201 union _GSystemThread
    202 {
    203 #ifndef _WIN64
    204   char   data[4];
    205 #else
    206   char   data[8];
    207 #endif
    208   double dummy_double;
    209   void  *dummy_pointer;
    210   long   dummy_long;
    211 };
    212 
    213 #define GINT16_TO_LE(val)	((gint16) (val))
    214 #define GUINT16_TO_LE(val)	((guint16) (val))
    215 #define GINT16_TO_BE(val)	((gint16) GUINT16_SWAP_LE_BE (val))
    216 #define GUINT16_TO_BE(val)	(GUINT16_SWAP_LE_BE (val))
    217 #define GINT32_TO_LE(val)	((gint32) (val))
    218 #define GUINT32_TO_LE(val)	((guint32) (val))
    219 #define GINT32_TO_BE(val)	((gint32) GUINT32_SWAP_LE_BE (val))
    220 #define GUINT32_TO_BE(val)	(GUINT32_SWAP_LE_BE (val))
    221 #define GINT64_TO_LE(val)	((gint64) (val))
    222 #define GUINT64_TO_LE(val)	((guint64) (val))
    223 #define GINT64_TO_BE(val)	((gint64) GUINT64_SWAP_LE_BE (val))
    224 #define GUINT64_TO_BE(val)	(GUINT64_SWAP_LE_BE (val))
    225 #define GLONG_TO_LE(val)	((glong) GINT32_TO_LE (val))
    226 #define GULONG_TO_LE(val)	((gulong) GUINT32_TO_LE (val))
    227 #define GLONG_TO_BE(val)	((glong) GINT32_TO_BE (val))
    228 #define GULONG_TO_BE(val)	((gulong) GUINT32_TO_BE (val))
    229 #define GINT_TO_LE(val)		((gint) GINT32_TO_LE (val))
    230 #define GUINT_TO_LE(val)	((guint) GUINT32_TO_LE (val))
    231 #define GINT_TO_BE(val)		((gint) GINT32_TO_BE (val))
    232 #define GUINT_TO_BE(val)	((guint) GUINT32_TO_BE (val))
    233 #define G_BYTE_ORDER G_LITTLE_ENDIAN
    234 
    235 #define GLIB_SYSDEF_POLLIN =1
    236 #define GLIB_SYSDEF_POLLOUT =4
    237 #define GLIB_SYSDEF_POLLPRI =2
    238 #define GLIB_SYSDEF_POLLHUP =16
    239 #define GLIB_SYSDEF_POLLERR =8
    240 #define GLIB_SYSDEF_POLLNVAL =32
    241 
    242 #define G_MODULE_SUFFIX "dll"
    243 
    244 /* A GPid is an abstraction for a process "handle". It is *not* an
    245  * abstraction for a process identifier in general. GPid is used in
    246  * GLib only for descendant processes spawned with the g_spawn*
    247  * functions. On POSIX there is no "process handle" concept as such,
    248  * but on Windows a GPid is a handle to a process, a kind of pointer,
    249  * not a process identifier.
    250  */
    251 typedef void * GPid;
    252 
    253 G_END_DECLS
    254 
    255 #endif /* GLIBCONFIG_H */
    256