mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-03-12 10:45:13 +01:00
Pass -DGSPAWN_HELPER when building it. Link with user32.lib.
2000-10-19 Tor Lillqvist <tml@iki.fi> * makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link with user32.lib. * gspawn-win32.c * gfileutils.c: Make them compile with picky MSVC. * gwin32.h: New file. Move Win32-only stuff that isn't related to GIOChannels here from giochannel.h. * Makefile.am: Add it here. * giochannel.h: Move stuff to gwin32.h. * glib.h: On Win32, include gwin32.h.
This commit is contained in:
parent
1bfc515a37
commit
4905022b8e
17
ChangeLog
17
ChangeLog
@ -1,3 +1,20 @@
|
|||||||
|
2000-10-19 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
|
||||||
|
with user32.lib.
|
||||||
|
|
||||||
|
* gspawn-win32.c
|
||||||
|
* gfileutils.c: Make them compile with picky MSVC.
|
||||||
|
|
||||||
|
* gwin32.h: New file. Move Win32-only stuff that isn't related to
|
||||||
|
GIOChannels here from giochannel.h.
|
||||||
|
|
||||||
|
* Makefile.am: Add it here.
|
||||||
|
|
||||||
|
* giochannel.h: Move stuff to gwin32.h.
|
||||||
|
|
||||||
|
* glib.h: On Win32, include gwin32.h.
|
||||||
|
|
||||||
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* glib.h convert.c (g_convert_with_fallback): Change
|
* glib.h convert.c (g_convert_with_fallback): Change
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2000-10-19 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
|
||||||
|
with user32.lib.
|
||||||
|
|
||||||
|
* gspawn-win32.c
|
||||||
|
* gfileutils.c: Make them compile with picky MSVC.
|
||||||
|
|
||||||
|
* gwin32.h: New file. Move Win32-only stuff that isn't related to
|
||||||
|
GIOChannels here from giochannel.h.
|
||||||
|
|
||||||
|
* Makefile.am: Add it here.
|
||||||
|
|
||||||
|
* giochannel.h: Move stuff to gwin32.h.
|
||||||
|
|
||||||
|
* glib.h: On Win32, include gwin32.h.
|
||||||
|
|
||||||
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* glib.h convert.c (g_convert_with_fallback): Change
|
* glib.h convert.c (g_convert_with_fallback): Change
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2000-10-19 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
|
||||||
|
with user32.lib.
|
||||||
|
|
||||||
|
* gspawn-win32.c
|
||||||
|
* gfileutils.c: Make them compile with picky MSVC.
|
||||||
|
|
||||||
|
* gwin32.h: New file. Move Win32-only stuff that isn't related to
|
||||||
|
GIOChannels here from giochannel.h.
|
||||||
|
|
||||||
|
* Makefile.am: Add it here.
|
||||||
|
|
||||||
|
* giochannel.h: Move stuff to gwin32.h.
|
||||||
|
|
||||||
|
* glib.h: On Win32, include gwin32.h.
|
||||||
|
|
||||||
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* glib.h convert.c (g_convert_with_fallback): Change
|
* glib.h convert.c (g_convert_with_fallback): Change
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2000-10-19 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
|
||||||
|
with user32.lib.
|
||||||
|
|
||||||
|
* gspawn-win32.c
|
||||||
|
* gfileutils.c: Make them compile with picky MSVC.
|
||||||
|
|
||||||
|
* gwin32.h: New file. Move Win32-only stuff that isn't related to
|
||||||
|
GIOChannels here from giochannel.h.
|
||||||
|
|
||||||
|
* Makefile.am: Add it here.
|
||||||
|
|
||||||
|
* giochannel.h: Move stuff to gwin32.h.
|
||||||
|
|
||||||
|
* glib.h: On Win32, include gwin32.h.
|
||||||
|
|
||||||
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* glib.h convert.c (g_convert_with_fallback): Change
|
* glib.h convert.c (g_convert_with_fallback): Change
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2000-10-19 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
|
||||||
|
with user32.lib.
|
||||||
|
|
||||||
|
* gspawn-win32.c
|
||||||
|
* gfileutils.c: Make them compile with picky MSVC.
|
||||||
|
|
||||||
|
* gwin32.h: New file. Move Win32-only stuff that isn't related to
|
||||||
|
GIOChannels here from giochannel.h.
|
||||||
|
|
||||||
|
* Makefile.am: Add it here.
|
||||||
|
|
||||||
|
* giochannel.h: Move stuff to gwin32.h.
|
||||||
|
|
||||||
|
* glib.h: On Win32, include gwin32.h.
|
||||||
|
|
||||||
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* glib.h convert.c (g_convert_with_fallback): Change
|
* glib.h convert.c (g_convert_with_fallback): Change
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2000-10-19 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
|
||||||
|
with user32.lib.
|
||||||
|
|
||||||
|
* gspawn-win32.c
|
||||||
|
* gfileutils.c: Make them compile with picky MSVC.
|
||||||
|
|
||||||
|
* gwin32.h: New file. Move Win32-only stuff that isn't related to
|
||||||
|
GIOChannels here from giochannel.h.
|
||||||
|
|
||||||
|
* Makefile.am: Add it here.
|
||||||
|
|
||||||
|
* giochannel.h: Move stuff to gwin32.h.
|
||||||
|
|
||||||
|
* glib.h: On Win32, include gwin32.h.
|
||||||
|
|
||||||
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* glib.h convert.c (g_convert_with_fallback): Change
|
* glib.h convert.c (g_convert_with_fallback): Change
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2000-10-19 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
|
||||||
|
with user32.lib.
|
||||||
|
|
||||||
|
* gspawn-win32.c
|
||||||
|
* gfileutils.c: Make them compile with picky MSVC.
|
||||||
|
|
||||||
|
* gwin32.h: New file. Move Win32-only stuff that isn't related to
|
||||||
|
GIOChannels here from giochannel.h.
|
||||||
|
|
||||||
|
* Makefile.am: Add it here.
|
||||||
|
|
||||||
|
* giochannel.h: Move stuff to gwin32.h.
|
||||||
|
|
||||||
|
* glib.h: On Win32, include gwin32.h.
|
||||||
|
|
||||||
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* glib.h convert.c (g_convert_with_fallback): Change
|
* glib.h convert.c (g_convert_with_fallback): Change
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2000-10-19 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
|
||||||
|
with user32.lib.
|
||||||
|
|
||||||
|
* gspawn-win32.c
|
||||||
|
* gfileutils.c: Make them compile with picky MSVC.
|
||||||
|
|
||||||
|
* gwin32.h: New file. Move Win32-only stuff that isn't related to
|
||||||
|
GIOChannels here from giochannel.h.
|
||||||
|
|
||||||
|
* Makefile.am: Add it here.
|
||||||
|
|
||||||
|
* giochannel.h: Move stuff to gwin32.h.
|
||||||
|
|
||||||
|
* glib.h: On Win32, include gwin32.h.
|
||||||
|
|
||||||
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* glib.h convert.c (g_convert_with_fallback): Change
|
* glib.h convert.c (g_convert_with_fallback): Change
|
||||||
|
@ -129,7 +129,8 @@ glibinclude_HEADERS = \
|
|||||||
gtree.h \
|
gtree.h \
|
||||||
gtypes.h \
|
gtypes.h \
|
||||||
gunicode.h \
|
gunicode.h \
|
||||||
gutils.h
|
gutils.h \
|
||||||
|
gwin32.h
|
||||||
|
|
||||||
configexecincludedir = $(libdir)/glib-2.0/include
|
configexecincludedir = $(libdir)/glib-2.0/include
|
||||||
#configexecinclude_DATA = glibconfig.h
|
#configexecinclude_DATA = glibconfig.h
|
||||||
|
21
gfileutils.c
21
gfileutils.c
@ -33,8 +33,27 @@
|
|||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
|
|
||||||
|
#ifdef G_OS_WIN32
|
||||||
|
#include <io.h>
|
||||||
|
#ifndef F_OK
|
||||||
|
#define F_OK 0
|
||||||
|
#define X_OK 1
|
||||||
|
#define W_OK 2
|
||||||
|
#define R_OK 4
|
||||||
|
#endif /* !F_OK */
|
||||||
|
|
||||||
|
#ifndef S_ISREG
|
||||||
|
#define S_ISREG(mode) ((mode)&_S_IFREG)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef S_ISDIR
|
||||||
|
#define S_ISDIR(mode) ((mode)&_S_IFDIR)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* G_OS_WIN32 */
|
||||||
|
|
||||||
#ifndef S_ISLNK
|
#ifndef S_ISLNK
|
||||||
# define S_ISLNK(x) 0
|
#define S_ISLNK(x) 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define _(x) x
|
#define _(x) x
|
||||||
|
79
giochannel.h
79
giochannel.h
@ -183,85 +183,6 @@ GIOChannel *g_io_channel_win32_new_stream_socket (int socket);
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Windows emulation stubs for common Unix functions
|
|
||||||
*/
|
|
||||||
#ifdef G_OS_WIN32
|
|
||||||
# define MAXPATHLEN 1024
|
|
||||||
|
|
||||||
#ifdef _MSC_VER
|
|
||||||
typedef int pid_t;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
|
||||||
* To get prototypes for the following POSIXish functions, you have to
|
|
||||||
* include the indicated non-POSIX headers. The functions are defined
|
|
||||||
* in OLDNAMES.LIB (MSVC) or -lmoldname-msvc (mingw32).
|
|
||||||
*
|
|
||||||
* getcwd: <direct.h> (MSVC), <io.h> (mingw32)
|
|
||||||
* getpid: <process.h>
|
|
||||||
* access: <io.h>
|
|
||||||
* unlink: <stdio.h> or <io.h>
|
|
||||||
* open, read, write, lseek, close: <io.h>
|
|
||||||
* rmdir: <direct.h>
|
|
||||||
* pipe: <direct.h>
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* pipe is not in OLDNAMES.LIB or -lmoldname-msvc. */
|
|
||||||
#define pipe(phandles) _pipe (phandles, 4096, _O_BINARY)
|
|
||||||
|
|
||||||
/* For some POSIX functions that are not provided by the MS runtime,
|
|
||||||
* we provide emulators in glib, which are prefixed with g_win32_.
|
|
||||||
*/
|
|
||||||
# define ftruncate(fd, size) g_win32_ftruncate (fd, size)
|
|
||||||
|
|
||||||
/* -lmingw32 also has emulations for these, but we need our own
|
|
||||||
* for MSVC anyhow, so we might aswell use them always.
|
|
||||||
*/
|
|
||||||
# define opendir g_win32_opendir
|
|
||||||
# define readdir g_win32_readdir
|
|
||||||
# define rewinddir g_win32_rewinddir
|
|
||||||
# define closedir g_win32_closedir
|
|
||||||
# define NAME_MAX 255
|
|
||||||
|
|
||||||
struct dirent
|
|
||||||
{
|
|
||||||
gchar d_name[NAME_MAX + 1];
|
|
||||||
};
|
|
||||||
|
|
||||||
struct DIR
|
|
||||||
{
|
|
||||||
gchar *dir_name;
|
|
||||||
gboolean just_opened;
|
|
||||||
guint find_file_handle;
|
|
||||||
gpointer find_file_data;
|
|
||||||
struct dirent readdir_result;
|
|
||||||
};
|
|
||||||
typedef struct DIR DIR;
|
|
||||||
|
|
||||||
/* emulation functions */
|
|
||||||
extern int g_win32_ftruncate (gint f,
|
|
||||||
guint size);
|
|
||||||
DIR* g_win32_opendir (const gchar *dirname);
|
|
||||||
struct dirent* g_win32_readdir (DIR *dir);
|
|
||||||
void g_win32_rewinddir (DIR *dir);
|
|
||||||
gint g_win32_closedir (DIR *dir);
|
|
||||||
|
|
||||||
/* The MS setlocale uses locale names of the form "English_United
|
|
||||||
* States.1252" etc. We want the Unixish standard form "en", "zh_TW"
|
|
||||||
* etc. This function gets the current thread locale from Windows and
|
|
||||||
* returns it as a string of the above form for use in forming file
|
|
||||||
* names etc. The returned string should be deallocated with g_free().
|
|
||||||
*/
|
|
||||||
gchar * g_win32_getlocale (void);
|
|
||||||
|
|
||||||
/* Translate a Win32 error code (as returned by GetLastError()) into
|
|
||||||
* the corresponding message. The returned string should be deallocated
|
|
||||||
* with g_free().
|
|
||||||
*/
|
|
||||||
gchar * g_win32_error_message (gint error);
|
|
||||||
|
|
||||||
#endif /* G_OS_WIN32 */
|
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
||||||
#endif /* __G_IOCHANNEL_H__ */
|
#endif /* __G_IOCHANNEL_H__ */
|
||||||
|
3
glib.h
3
glib.h
@ -65,5 +65,8 @@
|
|||||||
#include <gtypes.h>
|
#include <gtypes.h>
|
||||||
#include <gunicode.h>
|
#include <gunicode.h>
|
||||||
#include <gutils.h>
|
#include <gutils.h>
|
||||||
|
#ifdef G_OS_WIN32
|
||||||
|
#include <gwin32.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* __G_LIB_H__ */
|
#endif /* __G_LIB_H__ */
|
||||||
|
@ -129,7 +129,8 @@ glibinclude_HEADERS = \
|
|||||||
gtree.h \
|
gtree.h \
|
||||||
gtypes.h \
|
gtypes.h \
|
||||||
gunicode.h \
|
gunicode.h \
|
||||||
gutils.h
|
gutils.h \
|
||||||
|
gwin32.h
|
||||||
|
|
||||||
configexecincludedir = $(libdir)/glib-2.0/include
|
configexecincludedir = $(libdir)/glib-2.0/include
|
||||||
#configexecinclude_DATA = glibconfig.h
|
#configexecinclude_DATA = glibconfig.h
|
||||||
|
@ -33,8 +33,27 @@
|
|||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
|
|
||||||
|
#ifdef G_OS_WIN32
|
||||||
|
#include <io.h>
|
||||||
|
#ifndef F_OK
|
||||||
|
#define F_OK 0
|
||||||
|
#define X_OK 1
|
||||||
|
#define W_OK 2
|
||||||
|
#define R_OK 4
|
||||||
|
#endif /* !F_OK */
|
||||||
|
|
||||||
|
#ifndef S_ISREG
|
||||||
|
#define S_ISREG(mode) ((mode)&_S_IFREG)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef S_ISDIR
|
||||||
|
#define S_ISDIR(mode) ((mode)&_S_IFDIR)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* G_OS_WIN32 */
|
||||||
|
|
||||||
#ifndef S_ISLNK
|
#ifndef S_ISLNK
|
||||||
# define S_ISLNK(x) 0
|
#define S_ISLNK(x) 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define _(x) x
|
#define _(x) x
|
||||||
|
@ -183,85 +183,6 @@ GIOChannel *g_io_channel_win32_new_stream_socket (int socket);
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Windows emulation stubs for common Unix functions
|
|
||||||
*/
|
|
||||||
#ifdef G_OS_WIN32
|
|
||||||
# define MAXPATHLEN 1024
|
|
||||||
|
|
||||||
#ifdef _MSC_VER
|
|
||||||
typedef int pid_t;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
|
||||||
* To get prototypes for the following POSIXish functions, you have to
|
|
||||||
* include the indicated non-POSIX headers. The functions are defined
|
|
||||||
* in OLDNAMES.LIB (MSVC) or -lmoldname-msvc (mingw32).
|
|
||||||
*
|
|
||||||
* getcwd: <direct.h> (MSVC), <io.h> (mingw32)
|
|
||||||
* getpid: <process.h>
|
|
||||||
* access: <io.h>
|
|
||||||
* unlink: <stdio.h> or <io.h>
|
|
||||||
* open, read, write, lseek, close: <io.h>
|
|
||||||
* rmdir: <direct.h>
|
|
||||||
* pipe: <direct.h>
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* pipe is not in OLDNAMES.LIB or -lmoldname-msvc. */
|
|
||||||
#define pipe(phandles) _pipe (phandles, 4096, _O_BINARY)
|
|
||||||
|
|
||||||
/* For some POSIX functions that are not provided by the MS runtime,
|
|
||||||
* we provide emulators in glib, which are prefixed with g_win32_.
|
|
||||||
*/
|
|
||||||
# define ftruncate(fd, size) g_win32_ftruncate (fd, size)
|
|
||||||
|
|
||||||
/* -lmingw32 also has emulations for these, but we need our own
|
|
||||||
* for MSVC anyhow, so we might aswell use them always.
|
|
||||||
*/
|
|
||||||
# define opendir g_win32_opendir
|
|
||||||
# define readdir g_win32_readdir
|
|
||||||
# define rewinddir g_win32_rewinddir
|
|
||||||
# define closedir g_win32_closedir
|
|
||||||
# define NAME_MAX 255
|
|
||||||
|
|
||||||
struct dirent
|
|
||||||
{
|
|
||||||
gchar d_name[NAME_MAX + 1];
|
|
||||||
};
|
|
||||||
|
|
||||||
struct DIR
|
|
||||||
{
|
|
||||||
gchar *dir_name;
|
|
||||||
gboolean just_opened;
|
|
||||||
guint find_file_handle;
|
|
||||||
gpointer find_file_data;
|
|
||||||
struct dirent readdir_result;
|
|
||||||
};
|
|
||||||
typedef struct DIR DIR;
|
|
||||||
|
|
||||||
/* emulation functions */
|
|
||||||
extern int g_win32_ftruncate (gint f,
|
|
||||||
guint size);
|
|
||||||
DIR* g_win32_opendir (const gchar *dirname);
|
|
||||||
struct dirent* g_win32_readdir (DIR *dir);
|
|
||||||
void g_win32_rewinddir (DIR *dir);
|
|
||||||
gint g_win32_closedir (DIR *dir);
|
|
||||||
|
|
||||||
/* The MS setlocale uses locale names of the form "English_United
|
|
||||||
* States.1252" etc. We want the Unixish standard form "en", "zh_TW"
|
|
||||||
* etc. This function gets the current thread locale from Windows and
|
|
||||||
* returns it as a string of the above form for use in forming file
|
|
||||||
* names etc. The returned string should be deallocated with g_free().
|
|
||||||
*/
|
|
||||||
gchar * g_win32_getlocale (void);
|
|
||||||
|
|
||||||
/* Translate a Win32 error code (as returned by GetLastError()) into
|
|
||||||
* the corresponding message. The returned string should be deallocated
|
|
||||||
* with g_free().
|
|
||||||
*/
|
|
||||||
gchar * g_win32_error_message (gint error);
|
|
||||||
|
|
||||||
#endif /* G_OS_WIN32 */
|
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
||||||
#endif /* __G_IOCHANNEL_H__ */
|
#endif /* __G_IOCHANNEL_H__ */
|
||||||
|
@ -65,5 +65,8 @@
|
|||||||
#include <gtypes.h>
|
#include <gtypes.h>
|
||||||
#include <gunicode.h>
|
#include <gunicode.h>
|
||||||
#include <gutils.h>
|
#include <gutils.h>
|
||||||
|
#ifdef G_OS_WIN32
|
||||||
|
#include <gwin32.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* __G_LIB_H__ */
|
#endif /* __G_LIB_H__ */
|
||||||
|
@ -44,12 +44,14 @@
|
|||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <io.h>
|
#include <io.h>
|
||||||
#include <process.h>
|
#include <process.h>
|
||||||
|
#include <direct.h>
|
||||||
|
|
||||||
#ifdef _
|
#ifdef _
|
||||||
#warning "FIXME remove gettext hack"
|
#warning "FIXME remove gettext hack"
|
||||||
|
117
glib/gwin32.h
Normal file
117
glib/gwin32.h
Normal file
@ -0,0 +1,117 @@
|
|||||||
|
/* GLIB - Library of useful routines for C programming
|
||||||
|
* Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
|
||||||
|
*
|
||||||
|
* This library is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
* License as published by the Free Software Foundation; either
|
||||||
|
* version 2 of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This library is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with this library; if not, write to the
|
||||||
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||||
|
* Boston, MA 02111-1307, USA.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Modified by the GLib Team and others 1997-2000. See the AUTHORS
|
||||||
|
* file for a list of people on the GLib Team. See the ChangeLog
|
||||||
|
* files for a list of changes. These files are distributed with
|
||||||
|
* GLib at ftp://ftp.gtk.org/pub/gtk/.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __G_WIN32_H__
|
||||||
|
#define __G_WIN32_H__
|
||||||
|
|
||||||
|
#include <gtypes.h>
|
||||||
|
|
||||||
|
#ifdef G_OS_WIN32
|
||||||
|
|
||||||
|
/* Windows emulation stubs for common Unix functions
|
||||||
|
*/
|
||||||
|
|
||||||
|
G_BEGIN_DECLS
|
||||||
|
|
||||||
|
#define MAXPATHLEN 1024
|
||||||
|
|
||||||
|
#ifdef _MSC_VER
|
||||||
|
typedef int pid_t;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* To get prototypes for the following POSIXish functions, you have to
|
||||||
|
* include the indicated non-POSIX headers. The functions are defined
|
||||||
|
* in OLDNAMES.LIB (MSVC) or -lmoldname-msvc (mingw32).
|
||||||
|
*
|
||||||
|
* getcwd: <direct.h> (MSVC), <io.h> (mingw32)
|
||||||
|
* getpid: <process.h>
|
||||||
|
* access: <io.h>
|
||||||
|
* unlink: <stdio.h> or <io.h>
|
||||||
|
* open, read, write, lseek, close: <io.h>
|
||||||
|
* rmdir: <direct.h>
|
||||||
|
* pipe: <direct.h>
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* pipe is not in OLDNAMES.LIB or -lmoldname-msvc. */
|
||||||
|
#define pipe(phandles) _pipe (phandles, 4096, _O_BINARY)
|
||||||
|
|
||||||
|
/* For some POSIX functions that are not provided by the MS runtime,
|
||||||
|
* we provide emulators in glib, which are prefixed with g_win32_.
|
||||||
|
*/
|
||||||
|
# define ftruncate(fd, size) g_win32_ftruncate (fd, size)
|
||||||
|
|
||||||
|
/* -lmingw32 also has emulations for these, but we need our own
|
||||||
|
* for MSVC anyhow, so we might aswell use them always.
|
||||||
|
*/
|
||||||
|
# define opendir g_win32_opendir
|
||||||
|
# define readdir g_win32_readdir
|
||||||
|
# define rewinddir g_win32_rewinddir
|
||||||
|
# define closedir g_win32_closedir
|
||||||
|
# define NAME_MAX 255
|
||||||
|
|
||||||
|
struct dirent
|
||||||
|
{
|
||||||
|
gchar d_name[NAME_MAX + 1];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct DIR
|
||||||
|
{
|
||||||
|
gchar *dir_name;
|
||||||
|
gboolean just_opened;
|
||||||
|
guint find_file_handle;
|
||||||
|
gpointer find_file_data;
|
||||||
|
struct dirent readdir_result;
|
||||||
|
};
|
||||||
|
typedef struct DIR DIR;
|
||||||
|
|
||||||
|
/* emulation functions */
|
||||||
|
extern int g_win32_ftruncate (gint f,
|
||||||
|
guint size);
|
||||||
|
DIR* g_win32_opendir (const gchar *dirname);
|
||||||
|
struct dirent* g_win32_readdir (DIR *dir);
|
||||||
|
void g_win32_rewinddir (DIR *dir);
|
||||||
|
gint g_win32_closedir (DIR *dir);
|
||||||
|
|
||||||
|
/* The MS setlocale uses locale names of the form "English_United
|
||||||
|
* States.1252" etc. We want the Unixish standard form "en", "zh_TW"
|
||||||
|
* etc. This function gets the current thread locale from Windows and
|
||||||
|
* returns it as a string of the above form for use in forming file
|
||||||
|
* names etc. The returned string should be deallocated with g_free().
|
||||||
|
*/
|
||||||
|
gchar * g_win32_getlocale (void);
|
||||||
|
|
||||||
|
/* Translate a Win32 error code (as returned by GetLastError()) into
|
||||||
|
* the corresponding message. The returned string should be deallocated
|
||||||
|
* with g_free().
|
||||||
|
*/
|
||||||
|
gchar * g_win32_error_message (gint error);
|
||||||
|
|
||||||
|
G_END_DECLS
|
||||||
|
|
||||||
|
#endif /* G_OS_WIN32 */
|
||||||
|
|
||||||
|
#endif /* __G_IOCHANNEL_H__ */
|
@ -97,7 +97,7 @@ glib-$(GLIB_VER).dll : $(glib_OBJECTS) glib.def
|
|||||||
./build-dll glib $(GLIB_VER) glib.def $(glib_OBJECTS) $(LIBICONV_LIBS) -luser32 -lwsock32
|
./build-dll glib $(GLIB_VER) glib.def $(glib_OBJECTS) $(LIBICONV_LIBS) -luser32 -lwsock32
|
||||||
|
|
||||||
gspawn-win32-helper.exe : gspawn-win32.c
|
gspawn-win32-helper.exe : gspawn-win32.c
|
||||||
$(CC) $(CFLAGS) -mwindows -DGSPAWN_HELPER -DG_LOG_DOMAIN=\"gspawn-win32-helper\" -o $@ $< -L . -lglib-$(GLIB_VER)
|
$(CC) $(CFLAGS) -mwindows -DGSPAWN_HELPER -DG_LOG_DOMAIN=\"gspawn-win32-helper\" -o $@ $< -L . -lglib-$(GLIB_VER)
|
||||||
|
|
||||||
################ subdirectories
|
################ subdirectories
|
||||||
|
|
||||||
|
@ -94,7 +94,7 @@ glib-$(GLIB_VER).dll : $(glib_OBJECTS) glib.def
|
|||||||
$(CC) $(CFLAGS) -LD -Feglib-$(GLIB_VER).dll $(glib_OBJECTS) $(LIBICONV_LIBS) user32.lib advapi32.lib wsock32.lib $(LDFLAGS) /def:glib.def
|
$(CC) $(CFLAGS) -LD -Feglib-$(GLIB_VER).dll $(glib_OBJECTS) $(LIBICONV_LIBS) user32.lib advapi32.lib wsock32.lib $(LDFLAGS) /def:glib.def
|
||||||
|
|
||||||
gspawn-win32-helper.exe : gspawn-win32.c glib-$(GLIB_VER).dll
|
gspawn-win32-helper.exe : gspawn-win32.c glib-$(GLIB_VER).dll
|
||||||
$(CC) $(CFLAGS) -Fe$@ -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32.c glib-$(GLIB_VER).lib $(LDFLAGS) /subsystem:windows
|
$(CC) $(CFLAGS) -Fe$@ -DGSPAWN_HELPER -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32.c glib-$(GLIB_VER).lib $(LDFLAGS) /subsystem:windows user32.lib
|
||||||
|
|
||||||
################ subdirectories
|
################ subdirectories
|
||||||
|
|
||||||
|
@ -44,12 +44,14 @@
|
|||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <io.h>
|
#include <io.h>
|
||||||
#include <process.h>
|
#include <process.h>
|
||||||
|
#include <direct.h>
|
||||||
|
|
||||||
#ifdef _
|
#ifdef _
|
||||||
#warning "FIXME remove gettext hack"
|
#warning "FIXME remove gettext hack"
|
||||||
|
117
gwin32.h
Normal file
117
gwin32.h
Normal file
@ -0,0 +1,117 @@
|
|||||||
|
/* GLIB - Library of useful routines for C programming
|
||||||
|
* Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
|
||||||
|
*
|
||||||
|
* This library is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
* License as published by the Free Software Foundation; either
|
||||||
|
* version 2 of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This library is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with this library; if not, write to the
|
||||||
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||||
|
* Boston, MA 02111-1307, USA.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Modified by the GLib Team and others 1997-2000. See the AUTHORS
|
||||||
|
* file for a list of people on the GLib Team. See the ChangeLog
|
||||||
|
* files for a list of changes. These files are distributed with
|
||||||
|
* GLib at ftp://ftp.gtk.org/pub/gtk/.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __G_WIN32_H__
|
||||||
|
#define __G_WIN32_H__
|
||||||
|
|
||||||
|
#include <gtypes.h>
|
||||||
|
|
||||||
|
#ifdef G_OS_WIN32
|
||||||
|
|
||||||
|
/* Windows emulation stubs for common Unix functions
|
||||||
|
*/
|
||||||
|
|
||||||
|
G_BEGIN_DECLS
|
||||||
|
|
||||||
|
#define MAXPATHLEN 1024
|
||||||
|
|
||||||
|
#ifdef _MSC_VER
|
||||||
|
typedef int pid_t;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* To get prototypes for the following POSIXish functions, you have to
|
||||||
|
* include the indicated non-POSIX headers. The functions are defined
|
||||||
|
* in OLDNAMES.LIB (MSVC) or -lmoldname-msvc (mingw32).
|
||||||
|
*
|
||||||
|
* getcwd: <direct.h> (MSVC), <io.h> (mingw32)
|
||||||
|
* getpid: <process.h>
|
||||||
|
* access: <io.h>
|
||||||
|
* unlink: <stdio.h> or <io.h>
|
||||||
|
* open, read, write, lseek, close: <io.h>
|
||||||
|
* rmdir: <direct.h>
|
||||||
|
* pipe: <direct.h>
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* pipe is not in OLDNAMES.LIB or -lmoldname-msvc. */
|
||||||
|
#define pipe(phandles) _pipe (phandles, 4096, _O_BINARY)
|
||||||
|
|
||||||
|
/* For some POSIX functions that are not provided by the MS runtime,
|
||||||
|
* we provide emulators in glib, which are prefixed with g_win32_.
|
||||||
|
*/
|
||||||
|
# define ftruncate(fd, size) g_win32_ftruncate (fd, size)
|
||||||
|
|
||||||
|
/* -lmingw32 also has emulations for these, but we need our own
|
||||||
|
* for MSVC anyhow, so we might aswell use them always.
|
||||||
|
*/
|
||||||
|
# define opendir g_win32_opendir
|
||||||
|
# define readdir g_win32_readdir
|
||||||
|
# define rewinddir g_win32_rewinddir
|
||||||
|
# define closedir g_win32_closedir
|
||||||
|
# define NAME_MAX 255
|
||||||
|
|
||||||
|
struct dirent
|
||||||
|
{
|
||||||
|
gchar d_name[NAME_MAX + 1];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct DIR
|
||||||
|
{
|
||||||
|
gchar *dir_name;
|
||||||
|
gboolean just_opened;
|
||||||
|
guint find_file_handle;
|
||||||
|
gpointer find_file_data;
|
||||||
|
struct dirent readdir_result;
|
||||||
|
};
|
||||||
|
typedef struct DIR DIR;
|
||||||
|
|
||||||
|
/* emulation functions */
|
||||||
|
extern int g_win32_ftruncate (gint f,
|
||||||
|
guint size);
|
||||||
|
DIR* g_win32_opendir (const gchar *dirname);
|
||||||
|
struct dirent* g_win32_readdir (DIR *dir);
|
||||||
|
void g_win32_rewinddir (DIR *dir);
|
||||||
|
gint g_win32_closedir (DIR *dir);
|
||||||
|
|
||||||
|
/* The MS setlocale uses locale names of the form "English_United
|
||||||
|
* States.1252" etc. We want the Unixish standard form "en", "zh_TW"
|
||||||
|
* etc. This function gets the current thread locale from Windows and
|
||||||
|
* returns it as a string of the above form for use in forming file
|
||||||
|
* names etc. The returned string should be deallocated with g_free().
|
||||||
|
*/
|
||||||
|
gchar * g_win32_getlocale (void);
|
||||||
|
|
||||||
|
/* Translate a Win32 error code (as returned by GetLastError()) into
|
||||||
|
* the corresponding message. The returned string should be deallocated
|
||||||
|
* with g_free().
|
||||||
|
*/
|
||||||
|
gchar * g_win32_error_message (gint error);
|
||||||
|
|
||||||
|
G_END_DECLS
|
||||||
|
|
||||||
|
#endif /* G_OS_WIN32 */
|
||||||
|
|
||||||
|
#endif /* __G_IOCHANNEL_H__ */
|
@ -97,7 +97,7 @@ glib-$(GLIB_VER).dll : $(glib_OBJECTS) glib.def
|
|||||||
./build-dll glib $(GLIB_VER) glib.def $(glib_OBJECTS) $(LIBICONV_LIBS) -luser32 -lwsock32
|
./build-dll glib $(GLIB_VER) glib.def $(glib_OBJECTS) $(LIBICONV_LIBS) -luser32 -lwsock32
|
||||||
|
|
||||||
gspawn-win32-helper.exe : gspawn-win32.c
|
gspawn-win32-helper.exe : gspawn-win32.c
|
||||||
$(CC) $(CFLAGS) -mwindows -DGSPAWN_HELPER -DG_LOG_DOMAIN=\"gspawn-win32-helper\" -o $@ $< -L . -lglib-$(GLIB_VER)
|
$(CC) $(CFLAGS) -mwindows -DGSPAWN_HELPER -DG_LOG_DOMAIN=\"gspawn-win32-helper\" -o $@ $< -L . -lglib-$(GLIB_VER)
|
||||||
|
|
||||||
################ subdirectories
|
################ subdirectories
|
||||||
|
|
||||||
|
@ -94,7 +94,7 @@ glib-$(GLIB_VER).dll : $(glib_OBJECTS) glib.def
|
|||||||
$(CC) $(CFLAGS) -LD -Feglib-$(GLIB_VER).dll $(glib_OBJECTS) $(LIBICONV_LIBS) user32.lib advapi32.lib wsock32.lib $(LDFLAGS) /def:glib.def
|
$(CC) $(CFLAGS) -LD -Feglib-$(GLIB_VER).dll $(glib_OBJECTS) $(LIBICONV_LIBS) user32.lib advapi32.lib wsock32.lib $(LDFLAGS) /def:glib.def
|
||||||
|
|
||||||
gspawn-win32-helper.exe : gspawn-win32.c glib-$(GLIB_VER).dll
|
gspawn-win32-helper.exe : gspawn-win32.c glib-$(GLIB_VER).dll
|
||||||
$(CC) $(CFLAGS) -Fe$@ -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32.c glib-$(GLIB_VER).lib $(LDFLAGS) /subsystem:windows
|
$(CC) $(CFLAGS) -Fe$@ -DGSPAWN_HELPER -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32.c glib-$(GLIB_VER).lib $(LDFLAGS) /subsystem:windows user32.lib
|
||||||
|
|
||||||
################ subdirectories
|
################ subdirectories
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user