summaryrefslogtreecommitdiff
path: root/glibconfig.h.win32.in
diff options
context:
space:
mode:
authorTor Lillqvist <tml@iki.fi>2003-10-24 03:41:22 +0000
committerTor Lillqvist <tml@src.gnome.org>2003-10-24 03:41:22 +0000
commit5d097b85918181ed940768254595b232de4663c1 (patch)
tree547f717ad6301fad1046d7cbb5f7352bf9b2104f /glibconfig.h.win32.in
parentdfa8c540a1932c4c7e376ca765c0d4707f0fd496 (diff)
Force shared library (DLL) only on Windows. (I don't think that is
2003-10-24 Tor Lillqvist <tml@iki.fi> * configure.in: Force shared library (DLL) only on Windows. (I don't think that is controversial?) Remove unnecessary AC_LIBTOOL_WIN32_DLL. Don't use -D_REENTRANT on Win32, it is not used by mingw or MSVC headers. * config.h.win32.in * glibconfig.h.win32.in: Match what configure produces. * glib/gconvert.c * glib/gutils.c: Mark a couple of functions and variables that aren't public as static. * glib/gnulib/g-gnulib.h: Undef HAVE_SNPRINTF before (re)defining it potentially differently, to silence compiler. * glib/glib.def: Add some missing entries. * tests/gobject/Makefile.am (LDADD): Reorder, put libgobject after libtestgobject. * tests/gobject/ifaceproperties.c (main): NULL-terminate arg list to g_object_set() and _get().
Diffstat (limited to 'glibconfig.h.win32.in')
-rw-r--r--glibconfig.h.win32.in23
1 files changed, 17 insertions, 6 deletions
diff --git a/glibconfig.h.win32.in b/glibconfig.h.win32.in
index 533e687cc..704b6914b 100644
--- a/glibconfig.h.win32.in
+++ b/glibconfig.h.win32.in
@@ -28,18 +28,20 @@ G_BEGIN_DECLS
#define G_MAXLONG LONG_MAX
#define G_MAXULONG ULONG_MAX
-#define G_MININT64 ((gint64) 0x8000000000000000)
-#define G_MAXINT64 ((gint64) 0x7fffffffffffffff)
-#define G_MAXUINT64 ((guint64) 0xffffffffffffffff)
+#define G_MININT64 G_GINT64_CONSTANT(0x8000000000000000)
+#define G_MAXINT64 G_GINT64_CONSTANT(0x7fffffffffffffff)
+#define G_MAXUINT64 G_GINT64_CONSTANT(0xffffffffffffffffU)
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 */
@@ -57,8 +59,9 @@ typedef unsigned __int64 guint64;
#else /* _MSC_VER */
#define G_GINT64_CONSTANT(val) (val##i64)
#endif /* _MSC_VER */
-#define G_GINT64_FORMAT "I64i"
-#define G_GUINT64_FORMAT "I64u"
+#define G_GINT64_MODIFIER "ll"
+#define G_GINT64_FORMAT "lli"
+#define G_GUINT64_FORMAT "llu"
#define GLIB_SIZEOF_VOID_P 4
#define GLIB_SIZEOF_LONG 4
@@ -72,6 +75,7 @@ typedef unsigned int gsize;
#define GINT_TO_POINTER(i) ((gpointer) (i))
#define GUINT_TO_POINTER(u) ((gpointer) (u))
+
#ifdef NeXT /* @#%@! NeXTStep */
# define g_ATEXIT(proc) (!atexit (proc))
#else
@@ -130,7 +134,14 @@ typedef unsigned int gsize;
#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))
+/* double checked locking can be used on this platform */
+#define g_once(once, func, arg) \
+ ((once)->status == G_ONCE_STATUS_READY ? (once)->retval : \
+ g_once_impl (once, func, arg));
+#define g_static_mutex_get_mutex_impl_shortcut(mutex) \
+ (*(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