2001-10-23 00:24:11 +02:00
|
|
|
/* glibconfig.h.win32.in Merged from two versions generated by configure for gcc and MSVC. */
|
2001-09-26 22:35:51 +02:00
|
|
|
/* glibconfig.h
|
2001-09-26 08:20:31 +02:00
|
|
|
*
|
2001-09-26 22:35:51 +02:00
|
|
|
* This is a generated file. Please modify 'configure.in'
|
2001-09-26 08:20:31 +02:00
|
|
|
*/
|
1998-11-05 00:07:23 +01:00
|
|
|
|
2000-10-12 16:55:37 +02:00
|
|
|
#ifndef __G_LIBCONFIG_H__
|
|
|
|
#define __G_LIBCONFIG_H__
|
1998-11-05 00:07:23 +01:00
|
|
|
|
2001-09-26 08:20:31 +02:00
|
|
|
#include <glib/gmacros.h>
|
2005-07-09 01:04:06 +02:00
|
|
|
|
1998-11-05 00:07:23 +01:00
|
|
|
#include <limits.h>
|
|
|
|
#include <float.h>
|
|
|
|
|
2001-09-26 08:20:31 +02:00
|
|
|
G_BEGIN_DECLS
|
|
|
|
|
Merge in current Win32 version. Almost no Unix code touched.
* README.win32: More text.
* config.h.win32 glibconfig.h.win32: Update to match the
corresponding generated files on Unix.
* makefile.msc: Update with new source files, and gthread
library. Use the compiler flag -MD instead of using -D_DLL and
"/nodefaultlib:libc msvcrt.lib" in the link phase.
* glib.def: Include new functions, drop removed ones.
* glib.h: Add comments about main loop and polling on Win32. (In
general, it's only for the GIMP's use.) Add Win32 IO Channel
functions. Remove the obsoleted old IO Channel stuff (which was
in #if 0 already).
* giowin32.c: New file.
* gmain.c: Include config.h, conditionalize <sys/time.h>
inclusion. Add g_poll implementation for Win32 (only for the
GIMP's needs for now, it's hard or even impossible to be as clean
and generic as on Unix). Implement g_get_current_time on Win32. If
threads aren't supported, don't try to wake up main thread's
loop. On Win32, use a semaphore and not a pipe to wake up the main
loop.
* gmessages.c: On Win32, allocate a console window if the standard
output handle is invalid before writing to stdout, and reopen stdout
to that console window.
* giochannel.c: Conditionalize unistd.h inclusion. Some indentation
cleanup.
* gstrfuncs.c: Include <signal.h>.
* gutils.c: On Win32, also check the HOMEDRIVE and HOMEPATH
environment variables.
* gmodule-dl.c gmodule-dld.c: In
_g_module_build_path, don't add the "lib" prefix and
".so" or ".sl" suffix if already there.
* gmodule-win32.c: Likewise for the ".dll" suffix.
* gthread-posix.c: Conditionalize <sys/time.h> inclusion.
1999-01-17 00:46:42 +01:00
|
|
|
#define G_MINFLOAT FLT_MIN
|
|
|
|
#define G_MAXFLOAT FLT_MAX
|
|
|
|
#define G_MINDOUBLE DBL_MIN
|
|
|
|
#define G_MAXDOUBLE DBL_MAX
|
|
|
|
#define G_MINSHORT SHRT_MIN
|
|
|
|
#define G_MAXSHORT SHRT_MAX
|
1999-04-13 23:05:08 +02:00
|
|
|
#define G_MAXUSHORT USHRT_MAX
|
Merge in current Win32 version. Almost no Unix code touched.
* README.win32: More text.
* config.h.win32 glibconfig.h.win32: Update to match the
corresponding generated files on Unix.
* makefile.msc: Update with new source files, and gthread
library. Use the compiler flag -MD instead of using -D_DLL and
"/nodefaultlib:libc msvcrt.lib" in the link phase.
* glib.def: Include new functions, drop removed ones.
* glib.h: Add comments about main loop and polling on Win32. (In
general, it's only for the GIMP's use.) Add Win32 IO Channel
functions. Remove the obsoleted old IO Channel stuff (which was
in #if 0 already).
* giowin32.c: New file.
* gmain.c: Include config.h, conditionalize <sys/time.h>
inclusion. Add g_poll implementation for Win32 (only for the
GIMP's needs for now, it's hard or even impossible to be as clean
and generic as on Unix). Implement g_get_current_time on Win32. If
threads aren't supported, don't try to wake up main thread's
loop. On Win32, use a semaphore and not a pipe to wake up the main
loop.
* gmessages.c: On Win32, allocate a console window if the standard
output handle is invalid before writing to stdout, and reopen stdout
to that console window.
* giochannel.c: Conditionalize unistd.h inclusion. Some indentation
cleanup.
* gstrfuncs.c: Include <signal.h>.
* gutils.c: On Win32, also check the HOMEDRIVE and HOMEPATH
environment variables.
* gmodule-dl.c gmodule-dld.c: In
_g_module_build_path, don't add the "lib" prefix and
".so" or ".sl" suffix if already there.
* gmodule-win32.c: Likewise for the ".dll" suffix.
* gthread-posix.c: Conditionalize <sys/time.h> inclusion.
1999-01-17 00:46:42 +01:00
|
|
|
#define G_MININT INT_MIN
|
|
|
|
#define G_MAXINT INT_MAX
|
1999-04-13 23:05:08 +02:00
|
|
|
#define G_MAXUINT UINT_MAX
|
Merge in current Win32 version. Almost no Unix code touched.
* README.win32: More text.
* config.h.win32 glibconfig.h.win32: Update to match the
corresponding generated files on Unix.
* makefile.msc: Update with new source files, and gthread
library. Use the compiler flag -MD instead of using -D_DLL and
"/nodefaultlib:libc msvcrt.lib" in the link phase.
* glib.def: Include new functions, drop removed ones.
* glib.h: Add comments about main loop and polling on Win32. (In
general, it's only for the GIMP's use.) Add Win32 IO Channel
functions. Remove the obsoleted old IO Channel stuff (which was
in #if 0 already).
* giowin32.c: New file.
* gmain.c: Include config.h, conditionalize <sys/time.h>
inclusion. Add g_poll implementation for Win32 (only for the
GIMP's needs for now, it's hard or even impossible to be as clean
and generic as on Unix). Implement g_get_current_time on Win32. If
threads aren't supported, don't try to wake up main thread's
loop. On Win32, use a semaphore and not a pipe to wake up the main
loop.
* gmessages.c: On Win32, allocate a console window if the standard
output handle is invalid before writing to stdout, and reopen stdout
to that console window.
* giochannel.c: Conditionalize unistd.h inclusion. Some indentation
cleanup.
* gstrfuncs.c: Include <signal.h>.
* gutils.c: On Win32, also check the HOMEDRIVE and HOMEPATH
environment variables.
* gmodule-dl.c gmodule-dld.c: In
_g_module_build_path, don't add the "lib" prefix and
".so" or ".sl" suffix if already there.
* gmodule-win32.c: Likewise for the ".dll" suffix.
* gthread-posix.c: Conditionalize <sys/time.h> inclusion.
1999-01-17 00:46:42 +01:00
|
|
|
#define G_MINLONG LONG_MIN
|
|
|
|
#define G_MAXLONG LONG_MAX
|
1999-04-13 23:05:08 +02:00
|
|
|
#define G_MAXULONG ULONG_MAX
|
1998-11-05 00:07:23 +01:00
|
|
|
|
|
|
|
typedef signed char gint8;
|
|
|
|
typedef unsigned char guint8;
|
|
|
|
typedef signed short gint16;
|
|
|
|
typedef unsigned short guint16;
|
2003-10-24 05:41:22 +02:00
|
|
|
#define G_GINT16_MODIFIER "h"
|
1999-04-13 23:05:08 +02:00
|
|
|
#define G_GINT16_FORMAT "hi"
|
|
|
|
#define G_GUINT16_FORMAT "hu"
|
1998-11-05 00:07:23 +01:00
|
|
|
typedef signed int gint32;
|
|
|
|
typedef unsigned int guint32;
|
2003-10-24 05:41:22 +02:00
|
|
|
#define G_GINT32_MODIFIER ""
|
1999-04-13 23:05:08 +02:00
|
|
|
#define G_GINT32_FORMAT "i"
|
|
|
|
#define G_GUINT32_FORMAT "u"
|
2001-10-23 00:24:11 +02:00
|
|
|
#define G_HAVE_GINT64 1 /* deprecated, always true */
|
1998-11-25 04:02:56 +01:00
|
|
|
|
2001-09-26 22:35:51 +02:00
|
|
|
#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;
|
1998-11-05 00:07:23 +01:00
|
|
|
typedef unsigned __int64 guint64;
|
2001-09-26 22:35:51 +02:00
|
|
|
#endif /* _MSC_VER */
|
|
|
|
|
|
|
|
#ifndef _MSC_VER
|
|
|
|
#define G_GINT64_CONSTANT(val) (G_GNUC_EXTENSION (val##LL))
|
|
|
|
#else /* _MSC_VER */
|
1999-04-24 15:52:51 +02:00
|
|
|
#define G_GINT64_CONSTANT(val) (val##i64)
|
2001-09-26 22:35:51 +02:00
|
|
|
#endif /* _MSC_VER */
|
2006-03-08 00:45:30 +01:00
|
|
|
#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 */
|
2003-12-13 15:38:18 +01:00
|
|
|
#define G_GINT64_MODIFIER "I64"
|
|
|
|
#define G_GINT64_FORMAT "I64i"
|
|
|
|
#define G_GUINT64_FORMAT "I64u"
|
1998-11-25 04:02:56 +01:00
|
|
|
|
2008-07-24 01:53:15 +02:00
|
|
|
#if defined(_WIN64) || defined(_M_X64) || defined(_M_AMD64)
|
2008-07-23 23:05:16 +02:00
|
|
|
|
|
|
|
#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
|
|
|
|
|
2000-12-29 20:25:40 +01:00
|
|
|
#define GLIB_SIZEOF_VOID_P 4
|
|
|
|
#define GLIB_SIZEOF_LONG 4
|
2001-11-28 00:30:07 +01:00
|
|
|
#define GLIB_SIZEOF_SIZE_T 4
|
2000-12-29 20:25:40 +01:00
|
|
|
|
2002-05-17 23:07:59 +02:00
|
|
|
typedef signed int gssize;
|
|
|
|
typedef unsigned int gsize;
|
2004-01-12 01:16:18 +01:00
|
|
|
#define G_GSIZE_MODIFIER ""
|
|
|
|
#define G_GSSIZE_FORMAT "i"
|
|
|
|
#define G_GSIZE_FORMAT "u"
|
|
|
|
|
2004-03-03 12:40:35 +01:00
|
|
|
#define G_MAXSIZE G_MAXUINT
|
2007-08-01 11:46:08 +02:00
|
|
|
#define G_MINSSIZE G_MININT
|
|
|
|
#define G_MAXSSIZE G_MAXINT
|
|
|
|
|
2008-07-23 23:05:16 +02:00
|
|
|
#endif
|
|
|
|
|
2007-08-01 11:46:08 +02:00
|
|
|
typedef gint64 goffset;
|
|
|
|
#define G_MINOFFSET G_MININT64
|
|
|
|
#define G_MAXOFFSET G_MAXINT64
|
|
|
|
|
2009-05-12 13:54:12 +02:00
|
|
|
#define G_GOFFSET_MODIFIER G_GINT64_MODIFIER
|
|
|
|
#define G_GOFFSET_FORMAT G_GINT64_FORMAT
|
|
|
|
#define G_GOFFSET_CONSTANT(val) G_GINT64_CONSTANT(val)
|
|
|
|
|
|
|
|
|
2008-08-02 13:21:14 +02:00
|
|
|
#ifndef _WIN64
|
2004-03-03 12:40:35 +01:00
|
|
|
|
2001-09-26 08:20:31 +02:00
|
|
|
#define GPOINTER_TO_INT(p) ((gint) (p))
|
|
|
|
#define GPOINTER_TO_UINT(p) ((guint) (p))
|
1998-11-05 00:07:23 +01:00
|
|
|
|
2001-09-26 08:20:31 +02:00
|
|
|
#define GINT_TO_POINTER(i) ((gpointer) (i))
|
|
|
|
#define GUINT_TO_POINTER(u) ((gpointer) (u))
|
2003-10-24 05:41:22 +02:00
|
|
|
|
2008-08-02 10:51:27 +02:00
|
|
|
typedef signed int gintptr;
|
|
|
|
typedef unsigned int guintptr;
|
2008-08-02 13:21:14 +02:00
|
|
|
|
2008-08-02 10:51:27 +02:00
|
|
|
#else
|
2008-08-02 13:21:14 +02:00
|
|
|
|
|
|
|
#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))
|
|
|
|
|
2008-08-02 10:51:27 +02:00
|
|
|
#ifndef _MSC_VER
|
|
|
|
typedef signed long long gintptr;
|
|
|
|
typedef unsigned long long guintptr;
|
|
|
|
#else
|
|
|
|
typedef signed __int64 gintptr;
|
|
|
|
typedef unsigned __int64 guintptr;
|
|
|
|
#endif
|
2008-08-02 13:21:14 +02:00
|
|
|
|
2008-08-02 10:51:27 +02:00
|
|
|
#endif
|
|
|
|
|
2001-09-26 08:20:31 +02:00
|
|
|
#ifdef NeXT /* @#%@! NeXTStep */
|
|
|
|
# define g_ATEXIT(proc) (!atexit (proc))
|
|
|
|
#else
|
|
|
|
# define g_ATEXIT(proc) (atexit (proc))
|
|
|
|
#endif
|
1998-11-05 00:07:23 +01:00
|
|
|
|
2005-07-09 01:04:06 +02:00
|
|
|
#define g_memmove(dest,src,len) G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END
|
removed dummy structure definitions for struct _GCache, _GTree, _GTimer,
Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org>
* glib.h: removed dummy structure definitions for struct _GCache,
_GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk.
* gutils.c: implement glib's inline functions _after_ all include
statements have been processed.
removed Tor's MAXPATHLEN check since there already was one supplied
further down in this file.
(LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32,
since lcc maybe used on other platforms as well. why in hell is this
stuff required?
(g_get_any_init): for windows, if the user name is supplied, use it as
realname also.
in general, if there is no homedir specified, use the tmpdir that
we already figured.
* gtimer.c (g_timer_elapsed): changed a g_assert() statement to
g_return_if_fail().
* applied glib-tml-981020-0.patch for WIN32 portability, added some
comments and g_return_if_fail() statements, minor indentation fixes.
ChangeLog entry from Tor Lillqvist is appended.
* glib.h (struct dirent): use lower case structure members.
* glib.h:
* makefile.lcc:
* makefile.msc:
s/COMPILING_GLIB/GLIB_COMPILATION/
1998-10-20: Tor Lillqvist <tml@iki.fi>
* README.win32 glib.def gmodule.def
* glibconfig.h.win32 gmodule/gmoduleconf.h.win32:
New files for the Windows port. The .def files list exported
symbols for the Microsoft linker and compatibles.
* configure.in:
Added checks for some platform-dependent headers: pwd.h sys/param.h
sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat.
* gerror.c:
Conditionalized inclusion of system-dependent headers. Changes
for Windows: no gdb to do a stack trace. Just call abort().
* glib.h:
Changes for Windows:
Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for
platform-dependent file name syntax elements. Added macros
G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for
platform-dependent search path syntax conventions.
Added pragmas for Microsoft C to make it more pedantic.
Marked GLib's global variables for export from DLL.
Added the function g_strescape that escapes backslashes.
Added functions g_path_is_absolute and g_path_skip_root to
handle platform-dependent file name syntax.
Added the function g_getenv that expands environment variables
that contain references to other environment variables, as is
typical on Windows NT.
Added the GIOChannel structure which is used to encapsulate the
IPC mechanism used by the GIMP's plug-ins, and possibly other
things later. On Unix a GIOChannel encapsulates just a file
descriptor. On Windows it contains a file handle from _pipe() and a
few other things related to the implementation of gdk_input_add
and GIMP plug-in communication. Subject to change.
Removed duplicate declarations of the version variables.
For the Microsoft compiler, declare own implementation of
ftruncate and the <dirent.h> functions.
* gmem.c:
Define a symbolic name for the profiling table size.
* gmessages.c:
Conditionalized inclusion of unistd.h. On Windows, output using
stdio to stdout.
* gscanner.c:
Conditionalized inclusion of unistd.h. Added changes for
Microsoft C. Added CR to the skipped character set. Added small
workaround for MSC compiler bug in g_scanner_cur_value.
* gstrfuncs.c:
Added the function g_strescape, which escapes the backslash
character. Needed especially when printing Windows filenames.
* gtimer.c:
Conditionalized inclusion of unistd.h and sys/time.h. Added
implementations for Windows.
* gutils.c:
Conditionalized inclusion of platform-dependent headers. Use
the platform-independent file name syntax macros.
Conditionalize code on platform-dependent features. Added the
functions g_path_is_absolute g_path_skip_root and g_getenv.
Added the GIOChannel-related functions. Added
compiler-dependent Unix compatibility functions for Windows.
* makefile.lcc makefile.msc:
New files. Compiler-specific makefiles for LCC-Win32 and
Microsoft C. Only Microsoft C is actually supported currently.
* testglib.c:
Added pathname check cases for Windows. Added workaround for
bug in the Microsoft runtime library. Improved some tests a bit.
Tue Oct 27 04:00:11 1998 Tim Janik <timj@gtk.org>
* testgmodule.c (main): changed the #ifdef WIN32 test to NATIVE_WIN32,
this needs to be more constistent throughout the code, do we go for
NATIVE_WIN32 or WIN32?
* gmodule.c (LibMain): special cased the #ifdef __LCC__ case for
NATIVE_WIN32, since lcc maybe used on other platforms as well.
* libgplugin_a.c (LibMain):
* libgplugin_b.c (LibMain):
likewise. not sure i like this special requirement for lcc in here.
* gmodule-dl.c (_g_module_build_path):
feature empty "" directories and prepend the module name with "lib".
* gmodule-dld.c (_g_module_build_path):
* gmodule-win32.c (_g_module_build_path):
feature empty "" directories.
* we need some more magic in the _g_module_build_path variants
so we don't append/prepend lib and .so, .sl or .dll for those names
that already contain it.
* applied patch from Tor Lillqvist for g_module_build_path() and
windows support.
1998-10-20: Tor Lillqvist <tml@iki.fi>
* gmodule/gmodule-win32.c:
New file.
* gmodule/gmodule.c gmodule/gmodule.h:
Added the funcion g_module_build_path that builds the path to
a module file, decorating the name according to the system's
conventions. Added the Windows implementation.
* gmodule/libgplugin_a.c gmodule/libgplugin_b.c:
Added LibMain for LCC-Win32.
* gmodule/testgmodule.c:
Handle Windows dll names.
1998-10-27 05:11:34 +01:00
|
|
|
|
1999-05-06 19:33:15 +02:00
|
|
|
#define GLIB_MAJOR_VERSION @GLIB_MAJOR_VERSION@
|
|
|
|
#define GLIB_MINOR_VERSION @GLIB_MINOR_VERSION@
|
|
|
|
#define GLIB_MICRO_VERSION @GLIB_MICRO_VERSION@
|
removed dummy structure definitions for struct _GCache, _GTree, _GTimer,
Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org>
* glib.h: removed dummy structure definitions for struct _GCache,
_GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk.
* gutils.c: implement glib's inline functions _after_ all include
statements have been processed.
removed Tor's MAXPATHLEN check since there already was one supplied
further down in this file.
(LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32,
since lcc maybe used on other platforms as well. why in hell is this
stuff required?
(g_get_any_init): for windows, if the user name is supplied, use it as
realname also.
in general, if there is no homedir specified, use the tmpdir that
we already figured.
* gtimer.c (g_timer_elapsed): changed a g_assert() statement to
g_return_if_fail().
* applied glib-tml-981020-0.patch for WIN32 portability, added some
comments and g_return_if_fail() statements, minor indentation fixes.
ChangeLog entry from Tor Lillqvist is appended.
* glib.h (struct dirent): use lower case structure members.
* glib.h:
* makefile.lcc:
* makefile.msc:
s/COMPILING_GLIB/GLIB_COMPILATION/
1998-10-20: Tor Lillqvist <tml@iki.fi>
* README.win32 glib.def gmodule.def
* glibconfig.h.win32 gmodule/gmoduleconf.h.win32:
New files for the Windows port. The .def files list exported
symbols for the Microsoft linker and compatibles.
* configure.in:
Added checks for some platform-dependent headers: pwd.h sys/param.h
sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat.
* gerror.c:
Conditionalized inclusion of system-dependent headers. Changes
for Windows: no gdb to do a stack trace. Just call abort().
* glib.h:
Changes for Windows:
Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for
platform-dependent file name syntax elements. Added macros
G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for
platform-dependent search path syntax conventions.
Added pragmas for Microsoft C to make it more pedantic.
Marked GLib's global variables for export from DLL.
Added the function g_strescape that escapes backslashes.
Added functions g_path_is_absolute and g_path_skip_root to
handle platform-dependent file name syntax.
Added the function g_getenv that expands environment variables
that contain references to other environment variables, as is
typical on Windows NT.
Added the GIOChannel structure which is used to encapsulate the
IPC mechanism used by the GIMP's plug-ins, and possibly other
things later. On Unix a GIOChannel encapsulates just a file
descriptor. On Windows it contains a file handle from _pipe() and a
few other things related to the implementation of gdk_input_add
and GIMP plug-in communication. Subject to change.
Removed duplicate declarations of the version variables.
For the Microsoft compiler, declare own implementation of
ftruncate and the <dirent.h> functions.
* gmem.c:
Define a symbolic name for the profiling table size.
* gmessages.c:
Conditionalized inclusion of unistd.h. On Windows, output using
stdio to stdout.
* gscanner.c:
Conditionalized inclusion of unistd.h. Added changes for
Microsoft C. Added CR to the skipped character set. Added small
workaround for MSC compiler bug in g_scanner_cur_value.
* gstrfuncs.c:
Added the function g_strescape, which escapes the backslash
character. Needed especially when printing Windows filenames.
* gtimer.c:
Conditionalized inclusion of unistd.h and sys/time.h. Added
implementations for Windows.
* gutils.c:
Conditionalized inclusion of platform-dependent headers. Use
the platform-independent file name syntax macros.
Conditionalize code on platform-dependent features. Added the
functions g_path_is_absolute g_path_skip_root and g_getenv.
Added the GIOChannel-related functions. Added
compiler-dependent Unix compatibility functions for Windows.
* makefile.lcc makefile.msc:
New files. Compiler-specific makefiles for LCC-Win32 and
Microsoft C. Only Microsoft C is actually supported currently.
* testglib.c:
Added pathname check cases for Windows. Added workaround for
bug in the Microsoft runtime library. Improved some tests a bit.
Tue Oct 27 04:00:11 1998 Tim Janik <timj@gtk.org>
* testgmodule.c (main): changed the #ifdef WIN32 test to NATIVE_WIN32,
this needs to be more constistent throughout the code, do we go for
NATIVE_WIN32 or WIN32?
* gmodule.c (LibMain): special cased the #ifdef __LCC__ case for
NATIVE_WIN32, since lcc maybe used on other platforms as well.
* libgplugin_a.c (LibMain):
* libgplugin_b.c (LibMain):
likewise. not sure i like this special requirement for lcc in here.
* gmodule-dl.c (_g_module_build_path):
feature empty "" directories and prepend the module name with "lib".
* gmodule-dld.c (_g_module_build_path):
* gmodule-win32.c (_g_module_build_path):
feature empty "" directories.
* we need some more magic in the _g_module_build_path variants
so we don't append/prepend lib and .so, .sl or .dll for those names
that already contain it.
* applied patch from Tor Lillqvist for g_module_build_path() and
windows support.
1998-10-20: Tor Lillqvist <tml@iki.fi>
* gmodule/gmodule-win32.c:
New file.
* gmodule/gmodule.c gmodule/gmodule.h:
Added the funcion g_module_build_path that builds the path to
a module file, decorating the name according to the system's
conventions. Added the Windows implementation.
* gmodule/libgplugin_a.c gmodule/libgplugin_b.c:
Added LibMain for LCC-Win32.
* gmodule/testgmodule.c:
Handle Windows dll names.
1998-10-27 05:11:34 +01:00
|
|
|
|
1999-10-04 04:32:50 +02:00
|
|
|
#define G_OS_WIN32
|
2001-03-10 22:37:28 +01:00
|
|
|
#define G_PLATFORM_WIN32
|
2008-04-04 00:43:31 +02:00
|
|
|
@GLIB_WIN32_STATIC_COMPILATION_DEFINE@
|
1999-10-04 04:32:50 +02:00
|
|
|
|
2002-12-15 06:37:52 +01:00
|
|
|
#ifndef _MSC_VER
|
|
|
|
#define G_VA_COPY va_copy
|
|
|
|
#endif /* not _MSC_VER */
|
2001-09-26 08:20:31 +02:00
|
|
|
|
Merge in current Win32 version. Almost no Unix code touched.
* README.win32: More text.
* config.h.win32 glibconfig.h.win32: Update to match the
corresponding generated files on Unix.
* makefile.msc: Update with new source files, and gthread
library. Use the compiler flag -MD instead of using -D_DLL and
"/nodefaultlib:libc msvcrt.lib" in the link phase.
* glib.def: Include new functions, drop removed ones.
* glib.h: Add comments about main loop and polling on Win32. (In
general, it's only for the GIMP's use.) Add Win32 IO Channel
functions. Remove the obsoleted old IO Channel stuff (which was
in #if 0 already).
* giowin32.c: New file.
* gmain.c: Include config.h, conditionalize <sys/time.h>
inclusion. Add g_poll implementation for Win32 (only for the
GIMP's needs for now, it's hard or even impossible to be as clean
and generic as on Unix). Implement g_get_current_time on Win32. If
threads aren't supported, don't try to wake up main thread's
loop. On Win32, use a semaphore and not a pipe to wake up the main
loop.
* gmessages.c: On Win32, allocate a console window if the standard
output handle is invalid before writing to stdout, and reopen stdout
to that console window.
* giochannel.c: Conditionalize unistd.h inclusion. Some indentation
cleanup.
* gstrfuncs.c: Include <signal.h>.
* gutils.c: On Win32, also check the HOMEDRIVE and HOMEPATH
environment variables.
* gmodule-dl.c gmodule-dld.c: In
_g_module_build_path, don't add the "lib" prefix and
".so" or ".sl" suffix if already there.
* gmodule-win32.c: Likewise for the ".dll" suffix.
* gthread-posix.c: Conditionalize <sys/time.h> inclusion.
1999-01-17 00:46:42 +01:00
|
|
|
#ifdef __cplusplus
|
|
|
|
#define G_HAVE_INLINE 1
|
|
|
|
#else /* !__cplusplus */
|
2001-09-26 22:35:51 +02:00
|
|
|
#ifndef _MSC_VER
|
|
|
|
#define G_HAVE_INLINE 1
|
|
|
|
#endif /* _MSC_VER */
|
1998-11-05 00:07:23 +01:00
|
|
|
#define G_HAVE___INLINE 1
|
2007-01-18 20:05:21 +01:00
|
|
|
#if !defined(_MSC_VER) && !defined(__DMC__)
|
2001-09-26 22:35:51 +02:00
|
|
|
#define G_HAVE___INLINE__ 1
|
2007-01-18 20:05:21 +01:00
|
|
|
#endif /* !_MSC_VER and !__DMC__ */
|
2001-09-26 08:20:31 +02:00
|
|
|
#endif /* !__cplusplus */
|
|
|
|
|
2005-07-09 01:04:06 +02:00
|
|
|
#define G_CAN_INLINE 1
|
|
|
|
|
2001-09-26 22:35:51 +02:00
|
|
|
#ifndef _MSC_VER
|
2007-01-18 20:05:21 +01:00
|
|
|
#define G_HAVE_ISO_VARARGS 1
|
2001-09-26 08:20:31 +02:00
|
|
|
|
2002-02-24 22:42:34 +01:00
|
|
|
/* 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
|
|
|
|
|
2001-09-26 08:20:31 +02:00
|
|
|
#define G_HAVE_GNUC_VARARGS 1
|
2007-12-09 15:38:26 +01:00
|
|
|
#else /* _MSC_VER */
|
|
|
|
/* varargs macros available since msvc8 (vs2005) */
|
|
|
|
# if _MSC_VER >= 1400
|
|
|
|
# define G_HAVE_ISO_VARARGS 1
|
|
|
|
# endif
|
2001-09-26 22:35:51 +02:00
|
|
|
#endif /* not _MSC_VER */
|
2001-12-22 09:29:06 +01:00
|
|
|
#define G_HAVE_GROWING_STACK 0
|
Merge in current Win32 version. Almost no Unix code touched.
* README.win32: More text.
* config.h.win32 glibconfig.h.win32: Update to match the
corresponding generated files on Unix.
* makefile.msc: Update with new source files, and gthread
library. Use the compiler flag -MD instead of using -D_DLL and
"/nodefaultlib:libc msvcrt.lib" in the link phase.
* glib.def: Include new functions, drop removed ones.
* glib.h: Add comments about main loop and polling on Win32. (In
general, it's only for the GIMP's use.) Add Win32 IO Channel
functions. Remove the obsoleted old IO Channel stuff (which was
in #if 0 already).
* giowin32.c: New file.
* gmain.c: Include config.h, conditionalize <sys/time.h>
inclusion. Add g_poll implementation for Win32 (only for the
GIMP's needs for now, it's hard or even impossible to be as clean
and generic as on Unix). Implement g_get_current_time on Win32. If
threads aren't supported, don't try to wake up main thread's
loop. On Win32, use a semaphore and not a pipe to wake up the main
loop.
* gmessages.c: On Win32, allocate a console window if the standard
output handle is invalid before writing to stdout, and reopen stdout
to that console window.
* giochannel.c: Conditionalize unistd.h inclusion. Some indentation
cleanup.
* gstrfuncs.c: Include <signal.h>.
* gutils.c: On Win32, also check the HOMEDRIVE and HOMEPATH
environment variables.
* gmodule-dl.c gmodule-dld.c: In
_g_module_build_path, don't add the "lib" prefix and
".so" or ".sl" suffix if already there.
* gmodule-win32.c: Likewise for the ".dll" suffix.
* gthread-posix.c: Conditionalize <sys/time.h> inclusion.
1999-01-17 00:46:42 +01:00
|
|
|
|
2004-11-06 04:26:56 +01:00
|
|
|
#define G_GNUC_INTERNAL
|
|
|
|
|
Merge in current Win32 version. Almost no Unix code touched.
* README.win32: More text.
* config.h.win32 glibconfig.h.win32: Update to match the
corresponding generated files on Unix.
* makefile.msc: Update with new source files, and gthread
library. Use the compiler flag -MD instead of using -D_DLL and
"/nodefaultlib:libc msvcrt.lib" in the link phase.
* glib.def: Include new functions, drop removed ones.
* glib.h: Add comments about main loop and polling on Win32. (In
general, it's only for the GIMP's use.) Add Win32 IO Channel
functions. Remove the obsoleted old IO Channel stuff (which was
in #if 0 already).
* giowin32.c: New file.
* gmain.c: Include config.h, conditionalize <sys/time.h>
inclusion. Add g_poll implementation for Win32 (only for the
GIMP's needs for now, it's hard or even impossible to be as clean
and generic as on Unix). Implement g_get_current_time on Win32. If
threads aren't supported, don't try to wake up main thread's
loop. On Win32, use a semaphore and not a pipe to wake up the main
loop.
* gmessages.c: On Win32, allocate a console window if the standard
output handle is invalid before writing to stdout, and reopen stdout
to that console window.
* giochannel.c: Conditionalize unistd.h inclusion. Some indentation
cleanup.
* gstrfuncs.c: Include <signal.h>.
* gutils.c: On Win32, also check the HOMEDRIVE and HOMEPATH
environment variables.
* gmodule-dl.c gmodule-dld.c: In
_g_module_build_path, don't add the "lib" prefix and
".so" or ".sl" suffix if already there.
* gmodule-win32.c: Likewise for the ".dll" suffix.
* gthread-posix.c: Conditionalize <sys/time.h> inclusion.
1999-01-17 00:46:42 +01:00
|
|
|
#define G_THREADS_ENABLED
|
2001-05-22 14:28:06 +02:00
|
|
|
#define G_THREADS_IMPL_WIN32
|
|
|
|
typedef struct _GMutex* GStaticMutex;
|
|
|
|
#define G_STATIC_MUTEX_INIT NULL
|
2003-10-24 05:41:22 +02:00
|
|
|
#define g_static_mutex_get_mutex(mutex) \
|
|
|
|
(g_static_mutex_get_mutex_impl_shortcut (mutex))
|
2000-03-22 21:46:19 +01:00
|
|
|
/* 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
|
|
|
|
* for some of our native implementations. */
|
|
|
|
typedef union _GSystemThread GSystemThread;
|
|
|
|
union _GSystemThread
|
|
|
|
{
|
2008-08-04 21:32:26 +02:00
|
|
|
#ifndef _WIN64
|
2000-03-22 21:46:19 +01:00
|
|
|
char data[4];
|
2008-08-04 21:32:26 +02:00
|
|
|
#else
|
|
|
|
char data[8];
|
|
|
|
#endif
|
2000-03-22 21:46:19 +01:00
|
|
|
double dummy_double;
|
|
|
|
void *dummy_pointer;
|
|
|
|
long dummy_long;
|
|
|
|
};
|
removed dummy structure definitions for struct _GCache, _GTree, _GTimer,
Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org>
* glib.h: removed dummy structure definitions for struct _GCache,
_GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk.
* gutils.c: implement glib's inline functions _after_ all include
statements have been processed.
removed Tor's MAXPATHLEN check since there already was one supplied
further down in this file.
(LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32,
since lcc maybe used on other platforms as well. why in hell is this
stuff required?
(g_get_any_init): for windows, if the user name is supplied, use it as
realname also.
in general, if there is no homedir specified, use the tmpdir that
we already figured.
* gtimer.c (g_timer_elapsed): changed a g_assert() statement to
g_return_if_fail().
* applied glib-tml-981020-0.patch for WIN32 portability, added some
comments and g_return_if_fail() statements, minor indentation fixes.
ChangeLog entry from Tor Lillqvist is appended.
* glib.h (struct dirent): use lower case structure members.
* glib.h:
* makefile.lcc:
* makefile.msc:
s/COMPILING_GLIB/GLIB_COMPILATION/
1998-10-20: Tor Lillqvist <tml@iki.fi>
* README.win32 glib.def gmodule.def
* glibconfig.h.win32 gmodule/gmoduleconf.h.win32:
New files for the Windows port. The .def files list exported
symbols for the Microsoft linker and compatibles.
* configure.in:
Added checks for some platform-dependent headers: pwd.h sys/param.h
sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat.
* gerror.c:
Conditionalized inclusion of system-dependent headers. Changes
for Windows: no gdb to do a stack trace. Just call abort().
* glib.h:
Changes for Windows:
Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for
platform-dependent file name syntax elements. Added macros
G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for
platform-dependent search path syntax conventions.
Added pragmas for Microsoft C to make it more pedantic.
Marked GLib's global variables for export from DLL.
Added the function g_strescape that escapes backslashes.
Added functions g_path_is_absolute and g_path_skip_root to
handle platform-dependent file name syntax.
Added the function g_getenv that expands environment variables
that contain references to other environment variables, as is
typical on Windows NT.
Added the GIOChannel structure which is used to encapsulate the
IPC mechanism used by the GIMP's plug-ins, and possibly other
things later. On Unix a GIOChannel encapsulates just a file
descriptor. On Windows it contains a file handle from _pipe() and a
few other things related to the implementation of gdk_input_add
and GIMP plug-in communication. Subject to change.
Removed duplicate declarations of the version variables.
For the Microsoft compiler, declare own implementation of
ftruncate and the <dirent.h> functions.
* gmem.c:
Define a symbolic name for the profiling table size.
* gmessages.c:
Conditionalized inclusion of unistd.h. On Windows, output using
stdio to stdout.
* gscanner.c:
Conditionalized inclusion of unistd.h. Added changes for
Microsoft C. Added CR to the skipped character set. Added small
workaround for MSC compiler bug in g_scanner_cur_value.
* gstrfuncs.c:
Added the function g_strescape, which escapes the backslash
character. Needed especially when printing Windows filenames.
* gtimer.c:
Conditionalized inclusion of unistd.h and sys/time.h. Added
implementations for Windows.
* gutils.c:
Conditionalized inclusion of platform-dependent headers. Use
the platform-independent file name syntax macros.
Conditionalize code on platform-dependent features. Added the
functions g_path_is_absolute g_path_skip_root and g_getenv.
Added the GIOChannel-related functions. Added
compiler-dependent Unix compatibility functions for Windows.
* makefile.lcc makefile.msc:
New files. Compiler-specific makefiles for LCC-Win32 and
Microsoft C. Only Microsoft C is actually supported currently.
* testglib.c:
Added pathname check cases for Windows. Added workaround for
bug in the Microsoft runtime library. Improved some tests a bit.
Tue Oct 27 04:00:11 1998 Tim Janik <timj@gtk.org>
* testgmodule.c (main): changed the #ifdef WIN32 test to NATIVE_WIN32,
this needs to be more constistent throughout the code, do we go for
NATIVE_WIN32 or WIN32?
* gmodule.c (LibMain): special cased the #ifdef __LCC__ case for
NATIVE_WIN32, since lcc maybe used on other platforms as well.
* libgplugin_a.c (LibMain):
* libgplugin_b.c (LibMain):
likewise. not sure i like this special requirement for lcc in here.
* gmodule-dl.c (_g_module_build_path):
feature empty "" directories and prepend the module name with "lib".
* gmodule-dld.c (_g_module_build_path):
* gmodule-win32.c (_g_module_build_path):
feature empty "" directories.
* we need some more magic in the _g_module_build_path variants
so we don't append/prepend lib and .so, .sl or .dll for those names
that already contain it.
* applied patch from Tor Lillqvist for g_module_build_path() and
windows support.
1998-10-20: Tor Lillqvist <tml@iki.fi>
* gmodule/gmodule-win32.c:
New file.
* gmodule/gmodule.c gmodule/gmodule.h:
Added the funcion g_module_build_path that builds the path to
a module file, decorating the name according to the system's
conventions. Added the Windows implementation.
* gmodule/libgplugin_a.c gmodule/libgplugin_b.c:
Added LibMain for LCC-Win32.
* gmodule/testgmodule.c:
Handle Windows dll names.
1998-10-27 05:11:34 +01:00
|
|
|
|
1998-11-05 00:07:23 +01:00
|
|
|
#define GINT16_TO_LE(val) ((gint16) (val))
|
|
|
|
#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))
|
2000-03-22 21:46:19 +01:00
|
|
|
#define G_BYTE_ORDER G_LITTLE_ENDIAN
|
removed dummy structure definitions for struct _GCache, _GTree, _GTimer,
Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org>
* glib.h: removed dummy structure definitions for struct _GCache,
_GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk.
* gutils.c: implement glib's inline functions _after_ all include
statements have been processed.
removed Tor's MAXPATHLEN check since there already was one supplied
further down in this file.
(LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32,
since lcc maybe used on other platforms as well. why in hell is this
stuff required?
(g_get_any_init): for windows, if the user name is supplied, use it as
realname also.
in general, if there is no homedir specified, use the tmpdir that
we already figured.
* gtimer.c (g_timer_elapsed): changed a g_assert() statement to
g_return_if_fail().
* applied glib-tml-981020-0.patch for WIN32 portability, added some
comments and g_return_if_fail() statements, minor indentation fixes.
ChangeLog entry from Tor Lillqvist is appended.
* glib.h (struct dirent): use lower case structure members.
* glib.h:
* makefile.lcc:
* makefile.msc:
s/COMPILING_GLIB/GLIB_COMPILATION/
1998-10-20: Tor Lillqvist <tml@iki.fi>
* README.win32 glib.def gmodule.def
* glibconfig.h.win32 gmodule/gmoduleconf.h.win32:
New files for the Windows port. The .def files list exported
symbols for the Microsoft linker and compatibles.
* configure.in:
Added checks for some platform-dependent headers: pwd.h sys/param.h
sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat.
* gerror.c:
Conditionalized inclusion of system-dependent headers. Changes
for Windows: no gdb to do a stack trace. Just call abort().
* glib.h:
Changes for Windows:
Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for
platform-dependent file name syntax elements. Added macros
G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for
platform-dependent search path syntax conventions.
Added pragmas for Microsoft C to make it more pedantic.
Marked GLib's global variables for export from DLL.
Added the function g_strescape that escapes backslashes.
Added functions g_path_is_absolute and g_path_skip_root to
handle platform-dependent file name syntax.
Added the function g_getenv that expands environment variables
that contain references to other environment variables, as is
typical on Windows NT.
Added the GIOChannel structure which is used to encapsulate the
IPC mechanism used by the GIMP's plug-ins, and possibly other
things later. On Unix a GIOChannel encapsulates just a file
descriptor. On Windows it contains a file handle from _pipe() and a
few other things related to the implementation of gdk_input_add
and GIMP plug-in communication. Subject to change.
Removed duplicate declarations of the version variables.
For the Microsoft compiler, declare own implementation of
ftruncate and the <dirent.h> functions.
* gmem.c:
Define a symbolic name for the profiling table size.
* gmessages.c:
Conditionalized inclusion of unistd.h. On Windows, output using
stdio to stdout.
* gscanner.c:
Conditionalized inclusion of unistd.h. Added changes for
Microsoft C. Added CR to the skipped character set. Added small
workaround for MSC compiler bug in g_scanner_cur_value.
* gstrfuncs.c:
Added the function g_strescape, which escapes the backslash
character. Needed especially when printing Windows filenames.
* gtimer.c:
Conditionalized inclusion of unistd.h and sys/time.h. Added
implementations for Windows.
* gutils.c:
Conditionalized inclusion of platform-dependent headers. Use
the platform-independent file name syntax macros.
Conditionalize code on platform-dependent features. Added the
functions g_path_is_absolute g_path_skip_root and g_getenv.
Added the GIOChannel-related functions. Added
compiler-dependent Unix compatibility functions for Windows.
* makefile.lcc makefile.msc:
New files. Compiler-specific makefiles for LCC-Win32 and
Microsoft C. Only Microsoft C is actually supported currently.
* testglib.c:
Added pathname check cases for Windows. Added workaround for
bug in the Microsoft runtime library. Improved some tests a bit.
Tue Oct 27 04:00:11 1998 Tim Janik <timj@gtk.org>
* testgmodule.c (main): changed the #ifdef WIN32 test to NATIVE_WIN32,
this needs to be more constistent throughout the code, do we go for
NATIVE_WIN32 or WIN32?
* gmodule.c (LibMain): special cased the #ifdef __LCC__ case for
NATIVE_WIN32, since lcc maybe used on other platforms as well.
* libgplugin_a.c (LibMain):
* libgplugin_b.c (LibMain):
likewise. not sure i like this special requirement for lcc in here.
* gmodule-dl.c (_g_module_build_path):
feature empty "" directories and prepend the module name with "lib".
* gmodule-dld.c (_g_module_build_path):
* gmodule-win32.c (_g_module_build_path):
feature empty "" directories.
* we need some more magic in the _g_module_build_path variants
so we don't append/prepend lib and .so, .sl or .dll for those names
that already contain it.
* applied patch from Tor Lillqvist for g_module_build_path() and
windows support.
1998-10-20: Tor Lillqvist <tml@iki.fi>
* gmodule/gmodule-win32.c:
New file.
* gmodule/gmodule.c gmodule/gmodule.h:
Added the funcion g_module_build_path that builds the path to
a module file, decorating the name according to the system's
conventions. Added the Windows implementation.
* gmodule/libgplugin_a.c gmodule/libgplugin_b.c:
Added LibMain for LCC-Win32.
* gmodule/testgmodule.c:
Handle Windows dll names.
1998-10-27 05:11:34 +01:00
|
|
|
|
2001-09-26 08:20:31 +02:00
|
|
|
#define GLIB_SYSDEF_POLLIN =1
|
|
|
|
#define GLIB_SYSDEF_POLLOUT =4
|
|
|
|
#define GLIB_SYSDEF_POLLPRI =2
|
|
|
|
#define GLIB_SYSDEF_POLLHUP =16
|
2002-12-15 06:37:52 +01:00
|
|
|
#define GLIB_SYSDEF_POLLERR =8
|
2001-09-26 08:20:31 +02:00
|
|
|
#define GLIB_SYSDEF_POLLNVAL =32
|
Merge in current Win32 version. Almost no Unix code touched.
* README.win32: More text.
* config.h.win32 glibconfig.h.win32: Update to match the
corresponding generated files on Unix.
* makefile.msc: Update with new source files, and gthread
library. Use the compiler flag -MD instead of using -D_DLL and
"/nodefaultlib:libc msvcrt.lib" in the link phase.
* glib.def: Include new functions, drop removed ones.
* glib.h: Add comments about main loop and polling on Win32. (In
general, it's only for the GIMP's use.) Add Win32 IO Channel
functions. Remove the obsoleted old IO Channel stuff (which was
in #if 0 already).
* giowin32.c: New file.
* gmain.c: Include config.h, conditionalize <sys/time.h>
inclusion. Add g_poll implementation for Win32 (only for the
GIMP's needs for now, it's hard or even impossible to be as clean
and generic as on Unix). Implement g_get_current_time on Win32. If
threads aren't supported, don't try to wake up main thread's
loop. On Win32, use a semaphore and not a pipe to wake up the main
loop.
* gmessages.c: On Win32, allocate a console window if the standard
output handle is invalid before writing to stdout, and reopen stdout
to that console window.
* giochannel.c: Conditionalize unistd.h inclusion. Some indentation
cleanup.
* gstrfuncs.c: Include <signal.h>.
* gutils.c: On Win32, also check the HOMEDRIVE and HOMEPATH
environment variables.
* gmodule-dl.c gmodule-dld.c: In
_g_module_build_path, don't add the "lib" prefix and
".so" or ".sl" suffix if already there.
* gmodule-win32.c: Likewise for the ".dll" suffix.
* gthread-posix.c: Conditionalize <sys/time.h> inclusion.
1999-01-17 00:46:42 +01:00
|
|
|
|
2000-12-25 23:07:01 +01:00
|
|
|
#define G_MODULE_SUFFIX "dll"
|
removed dummy structure definitions for struct _GCache, _GTree, _GTimer,
Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org>
* glib.h: removed dummy structure definitions for struct _GCache,
_GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk.
* gutils.c: implement glib's inline functions _after_ all include
statements have been processed.
removed Tor's MAXPATHLEN check since there already was one supplied
further down in this file.
(LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32,
since lcc maybe used on other platforms as well. why in hell is this
stuff required?
(g_get_any_init): for windows, if the user name is supplied, use it as
realname also.
in general, if there is no homedir specified, use the tmpdir that
we already figured.
* gtimer.c (g_timer_elapsed): changed a g_assert() statement to
g_return_if_fail().
* applied glib-tml-981020-0.patch for WIN32 portability, added some
comments and g_return_if_fail() statements, minor indentation fixes.
ChangeLog entry from Tor Lillqvist is appended.
* glib.h (struct dirent): use lower case structure members.
* glib.h:
* makefile.lcc:
* makefile.msc:
s/COMPILING_GLIB/GLIB_COMPILATION/
1998-10-20: Tor Lillqvist <tml@iki.fi>
* README.win32 glib.def gmodule.def
* glibconfig.h.win32 gmodule/gmoduleconf.h.win32:
New files for the Windows port. The .def files list exported
symbols for the Microsoft linker and compatibles.
* configure.in:
Added checks for some platform-dependent headers: pwd.h sys/param.h
sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat.
* gerror.c:
Conditionalized inclusion of system-dependent headers. Changes
for Windows: no gdb to do a stack trace. Just call abort().
* glib.h:
Changes for Windows:
Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for
platform-dependent file name syntax elements. Added macros
G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for
platform-dependent search path syntax conventions.
Added pragmas for Microsoft C to make it more pedantic.
Marked GLib's global variables for export from DLL.
Added the function g_strescape that escapes backslashes.
Added functions g_path_is_absolute and g_path_skip_root to
handle platform-dependent file name syntax.
Added the function g_getenv that expands environment variables
that contain references to other environment variables, as is
typical on Windows NT.
Added the GIOChannel structure which is used to encapsulate the
IPC mechanism used by the GIMP's plug-ins, and possibly other
things later. On Unix a GIOChannel encapsulates just a file
descriptor. On Windows it contains a file handle from _pipe() and a
few other things related to the implementation of gdk_input_add
and GIMP plug-in communication. Subject to change.
Removed duplicate declarations of the version variables.
For the Microsoft compiler, declare own implementation of
ftruncate and the <dirent.h> functions.
* gmem.c:
Define a symbolic name for the profiling table size.
* gmessages.c:
Conditionalized inclusion of unistd.h. On Windows, output using
stdio to stdout.
* gscanner.c:
Conditionalized inclusion of unistd.h. Added changes for
Microsoft C. Added CR to the skipped character set. Added small
workaround for MSC compiler bug in g_scanner_cur_value.
* gstrfuncs.c:
Added the function g_strescape, which escapes the backslash
character. Needed especially when printing Windows filenames.
* gtimer.c:
Conditionalized inclusion of unistd.h and sys/time.h. Added
implementations for Windows.
* gutils.c:
Conditionalized inclusion of platform-dependent headers. Use
the platform-independent file name syntax macros.
Conditionalize code on platform-dependent features. Added the
functions g_path_is_absolute g_path_skip_root and g_getenv.
Added the GIOChannel-related functions. Added
compiler-dependent Unix compatibility functions for Windows.
* makefile.lcc makefile.msc:
New files. Compiler-specific makefiles for LCC-Win32 and
Microsoft C. Only Microsoft C is actually supported currently.
* testglib.c:
Added pathname check cases for Windows. Added workaround for
bug in the Microsoft runtime library. Improved some tests a bit.
Tue Oct 27 04:00:11 1998 Tim Janik <timj@gtk.org>
* testgmodule.c (main): changed the #ifdef WIN32 test to NATIVE_WIN32,
this needs to be more constistent throughout the code, do we go for
NATIVE_WIN32 or WIN32?
* gmodule.c (LibMain): special cased the #ifdef __LCC__ case for
NATIVE_WIN32, since lcc maybe used on other platforms as well.
* libgplugin_a.c (LibMain):
* libgplugin_b.c (LibMain):
likewise. not sure i like this special requirement for lcc in here.
* gmodule-dl.c (_g_module_build_path):
feature empty "" directories and prepend the module name with "lib".
* gmodule-dld.c (_g_module_build_path):
* gmodule-win32.c (_g_module_build_path):
feature empty "" directories.
* we need some more magic in the _g_module_build_path variants
so we don't append/prepend lib and .so, .sl or .dll for those names
that already contain it.
* applied patch from Tor Lillqvist for g_module_build_path() and
windows support.
1998-10-20: Tor Lillqvist <tml@iki.fi>
* gmodule/gmodule-win32.c:
New file.
* gmodule/gmodule.c gmodule/gmodule.h:
Added the funcion g_module_build_path that builds the path to
a module file, decorating the name according to the system's
conventions. Added the Windows implementation.
* gmodule/libgplugin_a.c gmodule/libgplugin_b.c:
Added LibMain for LCC-Win32.
* gmodule/testgmodule.c:
Handle Windows dll names.
1998-10-27 05:11:34 +01:00
|
|
|
|
2008-08-08 06:56:22 +02:00
|
|
|
/* 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.
|
2008-08-07 17:40:03 +02:00
|
|
|
*/
|
2004-03-03 12:40:35 +01:00
|
|
|
typedef void * GPid;
|
2004-02-26 00:48:22 +01:00
|
|
|
|
2009-05-30 15:29:23 +02:00
|
|
|
#define GLIB_SYSDEF_AF_UNIX 1
|
2008-12-12 19:13:55 +01:00
|
|
|
#define GLIB_SYSDEF_AF_INET 2
|
|
|
|
#define GLIB_SYSDEF_AF_INET6 23
|
|
|
|
|
2009-05-30 15:29:23 +02:00
|
|
|
#define GLIB_SYSDEF_MSG_OOB 1
|
|
|
|
#define GLIB_SYSDEF_MSG_PEEK 2
|
|
|
|
#define GLIB_SYSDEF_MSG_DONTROUTE 4
|
|
|
|
|
2000-10-12 16:55:37 +02:00
|
|
|
G_END_DECLS
|
1998-11-05 00:07:23 +01:00
|
|
|
|
2001-09-26 08:20:31 +02:00
|
|
|
#endif /* GLIBCONFIG_H */
|