X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=glibconfig.h.win32.in;h=fbac9d2bdd3c8b6607785f43a4e321407a735042;hb=5b2c7f10bd5a42d2956b53b13f3aabb947f901dd;hp=ba299d27520850a902d0dcfc18ac2780095603d5;hpb=07741c07d814bfd86998dfed1a5da347bb9335bd;p=platform%2Fupstream%2Fglib.git diff --git a/glibconfig.h.win32.in b/glibconfig.h.win32.in index ba299d2..fbac9d2 100644 --- a/glibconfig.h.win32.in +++ b/glibconfig.h.win32.in @@ -1,41 +1,23 @@ -/* glibconfig.h.win32 */ -/* Handcrafted for Microsoft C and gcc -mno-cygwin ("mingw32"). */ +/* glibconfig.h.win32.in. Originally merged from two versions of + * glibconfig.h, generated by the GLib configure script, for gcc and + * MSVC. + */ + +/* glibconfig.h + * + * This is a generated file. Please modify 'glibconfig.h.win32.in' + */ #ifndef __G_LIBCONFIG_H__ #define __G_LIBCONFIG_H__ -#include - -#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 #include #include +G_BEGIN_DECLS + #define G_MINFLOAT FLT_MIN #define G_MAXFLOAT FLT_MAX #define G_MINDOUBLE DBL_MIN @@ -50,54 +32,129 @@ #define G_MAXLONG LONG_MAX #define G_MAXULONG ULONG_MAX -G_BEGIN_DECLS - typedef signed char gint8; typedef unsigned char guint8; typedef signed short gint16; typedef unsigned short guint16; +#define G_GINT16_MODIFIER "h" #define G_GINT16_FORMAT "hi" #define G_GUINT16_FORMAT "hu" typedef signed int gint32; typedef unsigned int guint32; +#define G_GINT32_MODIFIER "" #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) -#define G_HAVE_ISO_VARARGS 1 -#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 */ +#ifndef _MSC_VER +#define G_GUINT64_CONSTANT(val) (G_GNUC_EXTENSION (val##ULL)) +#else /* _MSC_VER */ +#define G_GUINT64_CONSTANT(val) (val##Ui64) +#endif /* _MSC_VER */ +#define G_GINT64_MODIFIER "I64" #define G_GINT64_FORMAT "I64i" #define G_GUINT64_FORMAT "I64u" +#if defined(_WIN64) || defined(_M_X64) || defined(_M_AMD64) + +#define GLIB_SIZEOF_VOID_P 8 +#define GLIB_SIZEOF_LONG 4 +#define GLIB_SIZEOF_SIZE_T 8 + +typedef signed long long gssize; +typedef unsigned long long gsize; +#define G_GSIZE_MODIFIER "I64" +#define G_GSSIZE_FORMAT "I64d" +#define G_GSIZE_FORMAT "I64u" + +#define G_MAXSIZE G_MAXUINT64 +#define G_MINSSIZE G_MININT64 +#define G_MAXSSIZE G_MAXINT64 + +#else + #define GLIB_SIZEOF_VOID_P 4 #define GLIB_SIZEOF_LONG 4 +#define GLIB_SIZEOF_SIZE_T 4 + +typedef signed int gssize; +typedef unsigned int gsize; +#define G_GSIZE_MODIFIER "" +#define G_GSSIZE_FORMAT "i" +#define G_GSIZE_FORMAT "u" + +#define G_MAXSIZE G_MAXUINT +#define G_MINSSIZE G_MININT +#define G_MAXSSIZE G_MAXINT + +#endif + +typedef gint64 goffset; +#define G_MINOFFSET G_MININT64 +#define G_MAXOFFSET G_MAXINT64 + +#define G_GOFFSET_MODIFIER G_GINT64_MODIFIER +#define G_GOFFSET_FORMAT G_GINT64_FORMAT +#define G_GOFFSET_CONSTANT(val) G_GINT64_CONSTANT(val) -typedef gint32 gssize; -typedef guint32 gsize; -#define GPOINTER_TO_INT(p) ((gint)(p)) -#define GPOINTER_TO_UINT(p) ((guint)(p)) +#ifndef _WIN64 -#define GINT_TO_POINTER(i) ((gpointer)(i)) -#define GUINT_TO_POINTER(u) ((gpointer)(u)) +#define GPOINTER_TO_INT(p) ((gint) (p)) +#define GPOINTER_TO_UINT(p) ((guint) (p)) -#define g_ATEXIT(proc) (atexit (proc)) +#define GINT_TO_POINTER(i) ((gpointer) (i)) +#define GUINT_TO_POINTER(u) ((gpointer) (u)) -#define g_memmove(d,s,n) G_STMT_START { memmove ((d), (s), (n)); } G_STMT_END +typedef signed int gintptr; +typedef unsigned int guintptr; + +#define G_GINTPTR_MODIFIER "" +#define G_GINTPTR_FORMAT "i" +#define G_GUINTPTR_FORMAT "u" + +#else + +#define GPOINTER_TO_INT(p) ((gint) (gint64) (p)) +#define GPOINTER_TO_UINT(p) ((guint) (guint64) (p)) + +#define GINT_TO_POINTER(i) ((gpointer) (gint64) (i)) +#define GUINT_TO_POINTER(u) ((gpointer) (guint64) (u)) + +#ifndef _MSC_VER +typedef signed long long gintptr; +typedef unsigned long long guintptr; +#else +typedef signed __int64 gintptr; +typedef unsigned __int64 guintptr; +#endif + +#define G_GINTPTR_MODIFIER "I64" +#define G_GINTPTR_FORMAT "I64i" +#define G_GUINTPTR_FORMAT "I64u" + +#endif + +#ifdef NeXT /* @#%@! NeXTStep */ +# define g_ATEXIT(proc) (!atexit (proc)) +#else +# define g_ATEXIT(proc) (atexit (proc)) +#endif + +#define g_memmove(dest,src,len) G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END #define GLIB_MAJOR_VERSION @GLIB_MAJOR_VERSION@ #define GLIB_MINOR_VERSION @GLIB_MINOR_VERSION@ @@ -105,18 +162,54 @@ typedef guint32 gsize; #define G_OS_WIN32 #define G_PLATFORM_WIN32 +@GLIB_WIN32_STATIC_COMPILATION_DEFINE@ + +#ifndef _MSC_VER +#define G_VA_COPY va_copy +#endif /* not _MSC_VER */ #ifdef __cplusplus #define G_HAVE_INLINE 1 #else /* !__cplusplus */ +#ifndef _MSC_VER +#define G_HAVE_INLINE 1 +#endif /* _MSC_VER */ #define G_HAVE___INLINE 1 +#if !defined(_MSC_VER) && !defined(__DMC__) +#define G_HAVE___INLINE__ 1 +#endif /* !_MSC_VER and !__DMC__ */ +#endif /* !__cplusplus */ + +#define G_CAN_INLINE 1 + +#ifndef _MSC_VER +#define G_HAVE_ISO_VARARGS 1 + +/* gcc-2.95.x supports both gnu style and ISO varargs, but if -ansi + * is passed ISO vararg support is turned off, and there is no work + * around to turn it on, so we unconditionally turn it off. + */ +#if __GNUC__ == 2 && __GNUC_MINOR__ == 95 +# undef G_HAVE_ISO_VARARGS #endif +#define G_HAVE_GNUC_VARARGS 1 +#else /* _MSC_VER */ +/* varargs macros available since msvc8 (vs2005) */ +# if _MSC_VER >= 1400 +# define G_HAVE_ISO_VARARGS 1 +# endif +#endif /* not _MSC_VER */ +#define G_HAVE_GROWING_STACK 0 + +#define G_GNUC_INTERNAL + #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)) +#define g_static_mutex_get_mutex(mutex) \ + (g_static_mutex_get_mutex_impl_shortcut (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 @@ -124,9 +217,11 @@ typedef struct _GMutex* GStaticMutex; typedef union _GSystemThread GSystemThread; union _GSystemThread { - /* The size of the data array is sizeof (GThreadData *), from - * gthread-win32.c */ +#ifndef _WIN64 char data[4]; +#else + char data[8]; +#endif double dummy_double; void *dummy_pointer; long dummy_long; @@ -136,37 +231,54 @@ union _GSystemThread #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 GSIZE_TO_LE(val) ((gsize) GUINT32_TO_LE (val)) +#define GSSIZE_TO_LE(val) ((gssize) GINT32_TO_LE (val)) +#define GSIZE_TO_BE(val) ((gsize) GUINT32_TO_BE (val)) +#define GSSIZE_TO_BE(val) ((gssize) GINT32_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_POLLHUP =16 +#define GLIB_SYSDEF_POLLERR =8 +#define GLIB_SYSDEF_POLLNVAL =32 #define G_MODULE_SUFFIX "dll" +/* A GPid is an abstraction for a process "handle". It is *not* an + * abstraction for a process identifier in general. GPid is used in + * GLib only for descendant processes spawned with the g_spawn* + * functions. On POSIX there is no "process handle" concept as such, + * but on Windows a GPid is a handle to a process, a kind of pointer, + * not a process identifier. + */ +typedef void * GPid; + +#define GLIB_SYSDEF_AF_UNIX 1 +#define GLIB_SYSDEF_AF_INET 2 +#define GLIB_SYSDEF_AF_INET6 23 + +#define GLIB_SYSDEF_MSG_OOB 1 +#define GLIB_SYSDEF_MSG_PEEK 2 +#define GLIB_SYSDEF_MSG_DONTROUTE 4 + G_END_DECLS -#endif /* __G_LIBCONFIG_H__ */ +#endif /* GLIBCONFIG_H */