-/* glibconfig.h.win32 */
-/* Handcrafted for Microsoft C and gcc -mno-cygwin ("mingw32"). */
+/* glibconfig.h.win32.in Merged from two versions generated by configure for gcc and MSVC. */
+/* glibconfig.h
+ *
+ * This is a generated file. Please modify 'configure.in'
+ */
#ifndef __G_LIBCONFIG_H__
#define __G_LIBCONFIG_H__
-#include <gmacros.h>
-
-#ifdef _MSC_VER
-/* Make MSVC more pedantic, this is a recommended pragma list
- * from _Win32_Programming_ by Rector and Newcomer.
- */
-#pragma warning(error:4002)
-#pragma warning(error:4003)
-#pragma warning(1:4010)
-#pragma warning(error:4013)
-#pragma warning(1:4016)
-#pragma warning(error:4020)
-#pragma warning(error:4021)
-#pragma warning(error:4027)
-#pragma warning(error:4029)
-#pragma warning(error:4033)
-#pragma warning(error:4035)
-#pragma warning(error:4045)
-#pragma warning(error:4047)
-#pragma warning(error:4049)
-#pragma warning(error:4053)
-#pragma warning(error:4071)
-#pragma warning(disable:4101)
-#pragma warning(error:4150)
-
-#pragma warning(disable:4244) /* No possible loss of data warnings */
-#pragma warning(disable:4305) /* No truncation from int to char warnings */
-#endif /* _MSC_VER */
+#include <glib/gmacros.h>
#include <limits.h>
#include <float.h>
+G_BEGIN_DECLS
+
#define G_MINFLOAT FLT_MIN
#define G_MAXFLOAT FLT_MAX
#define G_MINDOUBLE DBL_MIN
#define G_MAXLONG LONG_MAX
#define G_MAXULONG ULONG_MAX
-G_BEGIN_DECLS
+#define G_MININT64 ((gint64) 0x8000000000000000)
+#define G_MAXINT64 ((gint64) 0x7fffffffffffffff)
+#define G_MAXUINT64 ((guint64) 0xffffffffffffffff)
typedef signed char gint8;
typedef unsigned char guint8;
typedef unsigned int guint32;
#define G_GINT32_FORMAT "i"
#define G_GUINT32_FORMAT "u"
+#define G_HAVE_GINT64 1 /* deprecated, always true */
-#define G_HAVE_GINT64 1
-
-/* These are compiler specific */
-#ifdef _MSC_VER
-typedef __int64 gint64;
+#ifndef _MSC_VER
+G_GNUC_EXTENSION typedef signed long long gint64;
+G_GNUC_EXTENSION typedef unsigned long long guint64;
+#else /* _MSC_VER */
+typedef signed __int64 gint64;
typedef unsigned __int64 guint64;
-#define G_GINT64_CONSTANT(val) (val##i64)
-#elif __GNUC__
-typedef long long gint64;
-typedef unsigned long long guint64;
-#define G_GINT64_CONSTANT(val) (val##LL)
-#endif
+#endif /* _MSC_VER */
-/* These depend on the C library. Using this file means the we
- * use the (bundled) Microsoft msvcrt.dll.
- */
+#ifndef _MSC_VER
+#define G_GINT64_CONSTANT(val) (G_GNUC_EXTENSION (val##LL))
+#else /* _MSC_VER */
+#define G_GINT64_CONSTANT(val) (val##i64)
+#endif /* _MSC_VER */
#define G_GINT64_FORMAT "I64i"
#define G_GUINT64_FORMAT "I64u"
#define GLIB_SIZEOF_VOID_P 4
#define GLIB_SIZEOF_LONG 4
-typedef gint32 gssize;
+typedef gint32 gssize;
typedef guint32 gsize;
-#define GPOINTER_TO_INT(p) ((gint)(p))
-#define GPOINTER_TO_UINT(p) ((guint)(p))
+#define GPOINTER_TO_INT(p) ((gint) (p))
+#define GPOINTER_TO_UINT(p) ((guint) (p))
-#define GINT_TO_POINTER(i) ((gpointer)(i))
-#define GUINT_TO_POINTER(u) ((gpointer)(u))
+#define GINT_TO_POINTER(i) ((gpointer) (i))
+#define GUINT_TO_POINTER(u) ((gpointer) (u))
-#define g_ATEXIT(proc) (atexit (proc))
+#ifdef NeXT /* @#%@! NeXTStep */
+# define g_ATEXIT(proc) (!atexit (proc))
+#else
+# define g_ATEXIT(proc) (atexit (proc))
+#endif
#define g_memmove(d,s,n) G_STMT_START { memmove ((d), (s), (n)); } G_STMT_END
#define G_OS_WIN32
#define G_PLATFORM_WIN32
+
+
#ifdef __cplusplus
#define G_HAVE_INLINE 1
#else /* !__cplusplus */
+#ifndef _MSC_VER
+#define G_HAVE_INLINE 1
+#else /* _MSC_VER */
+
+#endif /* _MSC_VER */
#define G_HAVE___INLINE 1
+#ifndef _MSC_VER
+#define G_HAVE___INLINE__ 1
+#endif /* not _MSC_VER */
+#endif /* !__cplusplus */
+
+#ifndef _MSC_VER
+#ifndef __cplusplus
+# define G_HAVE_ISO_VARARGS 1
#endif
-#define G_THREADS_ENABLED
-/*
- * The following program can be used to determine the magic values below:
- * #include <stdio.h>
- * #include <pthread.h>
- * main(int argc, char **argv)
- * {
- * int i;
- * pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER;
- * printf ("sizeof (pthread_mutex_t) = %d\n", sizeof (pthread_mutex_t));
- * printf ("sizeof (pthread_t) = %d\n", sizeof (pthread_t));
- * printf ("PTHREAD_MUTEX_INITIALIZER = ");
- * for (i = 0; i < sizeof (pthread_mutex_t); i++)
- * printf ("%u, ", ((unsigned char *) &m)[i]);
- * printf ("\n");
- * exit(0);
- * }
- */
+#define G_HAVE_GNUC_VARARGS 1
+#endif /* not _MSC_VER */
-#define G_THREADS_IMPL_POSIX
-typedef struct _GStaticMutex GStaticMutex;
-struct _GStaticMutex
-{
- struct _GMutex *runtime_mutex;
- union {
- /* The size of the pad array should be sizeof (pthread_mutex_t) */
- /* This value corresponds to the 1999-05-30 version of pthreads-win32 */
- char pad[4];
- double dummy_double;
- void *dummy_pointer;
- long dummy_long;
- } static_mutex;
-};
-/* This should be NULL followed by the bytes in PTHREAD_MUTEX_INITIALIZER */
-#define G_STATIC_MUTEX_INIT { NULL, { { 255, 255, 255, 255 } } }
-#define g_static_mutex_get_mutex(mutex) \
- (g_thread_use_default_impl ? ((GMutex*) &((mutex)->static_mutex)) : \
- g_static_mutex_get_mutex_impl (&((mutex)->runtime_mutex)))
+
+#define G_THREADS_ENABLED
+#define G_THREADS_IMPL_WIN32
+typedef struct _GMutex* GStaticMutex;
+#define G_STATIC_MUTEX_INIT NULL
+#define g_static_mutex_get_mutex(mutex) (g_static_mutex_get_mutex_impl (mutex))
/* This represents a system thread as used by the implementation. An
* alien implementaion, as loaded by g_thread_init can only count on
* "sizeof (gpointer)" bytes to store their info. We however need more
typedef union _GSystemThread GSystemThread;
union _GSystemThread
{
- /* The size of the data array should be sizeof (pthread_t) */
- /* This value corresponds to the 1999-05-30 version of pthreads-win32 */
char data[4];
double dummy_double;
void *dummy_pointer;
#define GUINT16_TO_LE(val) ((guint16) (val))
#define GINT16_TO_BE(val) ((gint16) GUINT16_SWAP_LE_BE (val))
#define GUINT16_TO_BE(val) (GUINT16_SWAP_LE_BE (val))
-
#define GINT32_TO_LE(val) ((gint32) (val))
#define GUINT32_TO_LE(val) ((guint32) (val))
#define GINT32_TO_BE(val) ((gint32) GUINT32_SWAP_LE_BE (val))
#define GUINT32_TO_BE(val) (GUINT32_SWAP_LE_BE (val))
-
#define GINT64_TO_LE(val) ((gint64) (val))
#define GUINT64_TO_LE(val) ((guint64) (val))
#define GINT64_TO_BE(val) ((gint64) GUINT64_SWAP_LE_BE (val))
#define GUINT64_TO_BE(val) (GUINT64_SWAP_LE_BE (val))
-
#define GLONG_TO_LE(val) ((glong) GINT32_TO_LE (val))
#define GULONG_TO_LE(val) ((gulong) GUINT32_TO_LE (val))
#define GLONG_TO_BE(val) ((glong) GINT32_TO_BE (val))
#define GULONG_TO_BE(val) ((gulong) GUINT32_TO_BE (val))
-
#define GINT_TO_LE(val) ((gint) GINT32_TO_LE (val))
#define GUINT_TO_LE(val) ((guint) GUINT32_TO_LE (val))
#define GINT_TO_BE(val) ((gint) GINT32_TO_BE (val))
#define GUINT_TO_BE(val) ((guint) GUINT32_TO_BE (val))
#define G_BYTE_ORDER G_LITTLE_ENDIAN
-#define GLIB_SYSDEF_POLLIN = 1
-#define GLIB_SYSDEF_POLLOUT = 4
-#define GLIB_SYSDEF_POLLPRI = 2
-#define GLIB_SYSDEF_POLLERR = 8
-#define GLIB_SYSDEF_POLLHUP = 16
-#define GLIB_SYSDEF_POLLNVAL = 32
+#define GLIB_SYSDEF_POLLIN =1
+#define GLIB_SYSDEF_POLLOUT =4
+#define GLIB_SYSDEF_POLLPRI =2
+#define GLIB_SYSDEF_POLLERR =8
+#define GLIB_SYSDEF_POLLHUP =16
+#define GLIB_SYSDEF_POLLNVAL =32
#define G_MODULE_SUFFIX "dll"
G_END_DECLS
-#endif /* __G_LIBCONFIG_H__ */
+#endif /* GLIBCONFIG_H */