summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTor Lillqvist <tml@iki.fi>2000-10-06 21:32:59 +0000
committerTor Lillqvist <tml@src.gnome.org>2000-10-06 21:32:59 +0000
commit8e847255e8c396a5bacbbf2897ad78e36ee47900 (patch)
tree3d6227b8a25700022f9fe6b59531a3b349be17d5
parent0c6a1ee5310d872ad1f2bfdbc54df721a239c05f (diff)
Revamp to be like makefile.mingw.in, make the MSVC build actually work
2000-10-06 Tor Lillqvist <tml@iki.fi> * makefile.msc.in: Revamp to be like makefile.mingw.in, make the MSVC build actually work again. * gmodule/makefile.msc.in * gobject/makefile.msc.in * gthread/makefile.msc.in: New files, like their mingw counterparts. * gmodule/Makefile.am * gobject/Makefile.am * gthread/Makefile.am: Make and distribute them. * */makefile.mingw.in: Allow override of GLib version number from the build/win32/module.defs file. * glib.def: Add new entry point. Fixes from Hans Breuer: * glib.h (struct DIR): Keep the last readdir result cached inside the DIR struct, to enable several DIRs being open simultaneously. * gwin32.c (g_win32_readdir): Use the above instead of static. * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep MSVC happy.
-rw-r--r--ChangeLog28
-rw-r--r--ChangeLog.pre-2-028
-rw-r--r--ChangeLog.pre-2-1028
-rw-r--r--ChangeLog.pre-2-1228
-rw-r--r--ChangeLog.pre-2-228
-rw-r--r--ChangeLog.pre-2-428
-rw-r--r--ChangeLog.pre-2-628
-rw-r--r--ChangeLog.pre-2-828
-rw-r--r--giowin32.c2
-rw-r--r--glib.def1
-rw-r--r--glib.h19
-rw-r--r--glib/giowin32.c2
-rw-r--r--glib/glib.def1
-rw-r--r--glib/glib.h19
-rw-r--r--glib/gwin32.c5
-rw-r--r--glib/makefile.mingw.in5
-rw-r--r--glib/makefile.msc.in151
-rw-r--r--gmodule/Makefile.am5
-rw-r--r--gmodule/makefile.mingw.in5
-rw-r--r--gmodule/makefile.msc.in48
-rw-r--r--gobject/Makefile.am4
-rw-r--r--gobject/makefile.mingw.in4
-rw-r--r--gobject/makefile.msc.in35
-rw-r--r--gthread/Makefile.am5
-rw-r--r--gthread/makefile.mingw.in5
-rw-r--r--gthread/makefile.msc.in32
-rw-r--r--gwin32.c5
-rw-r--r--makefile.mingw.in5
-rw-r--r--makefile.msc.in151
-rw-r--r--tests/makefile.msc.in35
30 files changed, 526 insertions, 242 deletions
diff --git a/ChangeLog b/ChangeLog
index 7d3229554..39a208d13 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,31 @@
+2000-10-06 Tor Lillqvist <tml@iki.fi>
+
+ * makefile.msc.in: Revamp to be like makefile.mingw.in, make
+ the MSVC build actually work again.
+
+ * gmodule/makefile.msc.in
+ * gobject/makefile.msc.in
+ * gthread/makefile.msc.in: New files, like their mingw counterparts.
+
+ * gmodule/Makefile.am
+ * gobject/Makefile.am
+ * gthread/Makefile.am: Make and distribute them.
+
+ * */makefile.mingw.in: Allow override of GLib version number from
+ the build/win32/module.defs file.
+
+ * glib.def: Add new entry point.
+
+ Fixes from Hans Breuer:
+
+ * glib.h (struct DIR): Keep the last readdir result cached inside
+ the DIR struct, to enable several DIRs being open simultaneously.
+
+ * gwin32.c (g_win32_readdir): Use the above instead of static.
+
+ * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
+ MSVC happy.
+
2000-10-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib.h: Changed alloca stuff a bit: when we have a working
diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0
index 7d3229554..39a208d13 100644
--- a/ChangeLog.pre-2-0
+++ b/ChangeLog.pre-2-0
@@ -1,3 +1,31 @@
+2000-10-06 Tor Lillqvist <tml@iki.fi>
+
+ * makefile.msc.in: Revamp to be like makefile.mingw.in, make
+ the MSVC build actually work again.
+
+ * gmodule/makefile.msc.in
+ * gobject/makefile.msc.in
+ * gthread/makefile.msc.in: New files, like their mingw counterparts.
+
+ * gmodule/Makefile.am
+ * gobject/Makefile.am
+ * gthread/Makefile.am: Make and distribute them.
+
+ * */makefile.mingw.in: Allow override of GLib version number from
+ the build/win32/module.defs file.
+
+ * glib.def: Add new entry point.
+
+ Fixes from Hans Breuer:
+
+ * glib.h (struct DIR): Keep the last readdir result cached inside
+ the DIR struct, to enable several DIRs being open simultaneously.
+
+ * gwin32.c (g_win32_readdir): Use the above instead of static.
+
+ * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
+ MSVC happy.
+
2000-10-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib.h: Changed alloca stuff a bit: when we have a working
diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10
index 7d3229554..39a208d13 100644
--- a/ChangeLog.pre-2-10
+++ b/ChangeLog.pre-2-10
@@ -1,3 +1,31 @@
+2000-10-06 Tor Lillqvist <tml@iki.fi>
+
+ * makefile.msc.in: Revamp to be like makefile.mingw.in, make
+ the MSVC build actually work again.
+
+ * gmodule/makefile.msc.in
+ * gobject/makefile.msc.in
+ * gthread/makefile.msc.in: New files, like their mingw counterparts.
+
+ * gmodule/Makefile.am
+ * gobject/Makefile.am
+ * gthread/Makefile.am: Make and distribute them.
+
+ * */makefile.mingw.in: Allow override of GLib version number from
+ the build/win32/module.defs file.
+
+ * glib.def: Add new entry point.
+
+ Fixes from Hans Breuer:
+
+ * glib.h (struct DIR): Keep the last readdir result cached inside
+ the DIR struct, to enable several DIRs being open simultaneously.
+
+ * gwin32.c (g_win32_readdir): Use the above instead of static.
+
+ * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
+ MSVC happy.
+
2000-10-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib.h: Changed alloca stuff a bit: when we have a working
diff --git a/ChangeLog.pre-2-12 b/ChangeLog.pre-2-12
index 7d3229554..39a208d13 100644
--- a/ChangeLog.pre-2-12
+++ b/ChangeLog.pre-2-12
@@ -1,3 +1,31 @@
+2000-10-06 Tor Lillqvist <tml@iki.fi>
+
+ * makefile.msc.in: Revamp to be like makefile.mingw.in, make
+ the MSVC build actually work again.
+
+ * gmodule/makefile.msc.in
+ * gobject/makefile.msc.in
+ * gthread/makefile.msc.in: New files, like their mingw counterparts.
+
+ * gmodule/Makefile.am
+ * gobject/Makefile.am
+ * gthread/Makefile.am: Make and distribute them.
+
+ * */makefile.mingw.in: Allow override of GLib version number from
+ the build/win32/module.defs file.
+
+ * glib.def: Add new entry point.
+
+ Fixes from Hans Breuer:
+
+ * glib.h (struct DIR): Keep the last readdir result cached inside
+ the DIR struct, to enable several DIRs being open simultaneously.
+
+ * gwin32.c (g_win32_readdir): Use the above instead of static.
+
+ * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
+ MSVC happy.
+
2000-10-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib.h: Changed alloca stuff a bit: when we have a working
diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2
index 7d3229554..39a208d13 100644
--- a/ChangeLog.pre-2-2
+++ b/ChangeLog.pre-2-2
@@ -1,3 +1,31 @@
+2000-10-06 Tor Lillqvist <tml@iki.fi>
+
+ * makefile.msc.in: Revamp to be like makefile.mingw.in, make
+ the MSVC build actually work again.
+
+ * gmodule/makefile.msc.in
+ * gobject/makefile.msc.in
+ * gthread/makefile.msc.in: New files, like their mingw counterparts.
+
+ * gmodule/Makefile.am
+ * gobject/Makefile.am
+ * gthread/Makefile.am: Make and distribute them.
+
+ * */makefile.mingw.in: Allow override of GLib version number from
+ the build/win32/module.defs file.
+
+ * glib.def: Add new entry point.
+
+ Fixes from Hans Breuer:
+
+ * glib.h (struct DIR): Keep the last readdir result cached inside
+ the DIR struct, to enable several DIRs being open simultaneously.
+
+ * gwin32.c (g_win32_readdir): Use the above instead of static.
+
+ * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
+ MSVC happy.
+
2000-10-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib.h: Changed alloca stuff a bit: when we have a working
diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4
index 7d3229554..39a208d13 100644
--- a/ChangeLog.pre-2-4
+++ b/ChangeLog.pre-2-4
@@ -1,3 +1,31 @@
+2000-10-06 Tor Lillqvist <tml@iki.fi>
+
+ * makefile.msc.in: Revamp to be like makefile.mingw.in, make
+ the MSVC build actually work again.
+
+ * gmodule/makefile.msc.in
+ * gobject/makefile.msc.in
+ * gthread/makefile.msc.in: New files, like their mingw counterparts.
+
+ * gmodule/Makefile.am
+ * gobject/Makefile.am
+ * gthread/Makefile.am: Make and distribute them.
+
+ * */makefile.mingw.in: Allow override of GLib version number from
+ the build/win32/module.defs file.
+
+ * glib.def: Add new entry point.
+
+ Fixes from Hans Breuer:
+
+ * glib.h (struct DIR): Keep the last readdir result cached inside
+ the DIR struct, to enable several DIRs being open simultaneously.
+
+ * gwin32.c (g_win32_readdir): Use the above instead of static.
+
+ * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
+ MSVC happy.
+
2000-10-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib.h: Changed alloca stuff a bit: when we have a working
diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6
index 7d3229554..39a208d13 100644
--- a/ChangeLog.pre-2-6
+++ b/ChangeLog.pre-2-6
@@ -1,3 +1,31 @@
+2000-10-06 Tor Lillqvist <tml@iki.fi>
+
+ * makefile.msc.in: Revamp to be like makefile.mingw.in, make
+ the MSVC build actually work again.
+
+ * gmodule/makefile.msc.in
+ * gobject/makefile.msc.in
+ * gthread/makefile.msc.in: New files, like their mingw counterparts.
+
+ * gmodule/Makefile.am
+ * gobject/Makefile.am
+ * gthread/Makefile.am: Make and distribute them.
+
+ * */makefile.mingw.in: Allow override of GLib version number from
+ the build/win32/module.defs file.
+
+ * glib.def: Add new entry point.
+
+ Fixes from Hans Breuer:
+
+ * glib.h (struct DIR): Keep the last readdir result cached inside
+ the DIR struct, to enable several DIRs being open simultaneously.
+
+ * gwin32.c (g_win32_readdir): Use the above instead of static.
+
+ * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
+ MSVC happy.
+
2000-10-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib.h: Changed alloca stuff a bit: when we have a working
diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8
index 7d3229554..39a208d13 100644
--- a/ChangeLog.pre-2-8
+++ b/ChangeLog.pre-2-8
@@ -1,3 +1,31 @@
+2000-10-06 Tor Lillqvist <tml@iki.fi>
+
+ * makefile.msc.in: Revamp to be like makefile.mingw.in, make
+ the MSVC build actually work again.
+
+ * gmodule/makefile.msc.in
+ * gobject/makefile.msc.in
+ * gthread/makefile.msc.in: New files, like their mingw counterparts.
+
+ * gmodule/Makefile.am
+ * gobject/Makefile.am
+ * gthread/Makefile.am: Make and distribute them.
+
+ * */makefile.mingw.in: Allow override of GLib version number from
+ the build/win32/module.defs file.
+
+ * glib.def: Add new entry point.
+
+ Fixes from Hans Breuer:
+
+ * glib.h (struct DIR): Keep the last readdir result cached inside
+ the DIR struct, to enable several DIRs being open simultaneously.
+
+ * gwin32.c (g_win32_readdir): Use the above instead of static.
+
+ * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
+ MSVC happy.
+
2000-10-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib.h: Changed alloca stuff a bit: when we have a working
diff --git a/giowin32.c b/giowin32.c
index 4acdb160a..89cdb0e2b 100644
--- a/giowin32.c
+++ b/giowin32.c
@@ -897,7 +897,7 @@ g_io_channel_win32_make_pollfd (GIOChannel *channel,
if (win32_channel->data_avail_event == NULL)
create_events (win32_channel);
- fd->fd = win32_channel->data_avail_event;
+ fd->fd = (gint) win32_channel->data_avail_event;
fd->events = condition;
if (win32_channel->thread_id == 0)
diff --git a/glib.def b/glib.def
index 826ab92c4..db9b5aab5 100644
--- a/glib.def
+++ b/glib.def
@@ -244,6 +244,7 @@ EXPORTS
g_node_first_sibling
g_node_get_root
g_node_insert
+ g_node_insert_after
g_node_insert_before
g_node_is_ancestor
g_node_last_child
diff --git a/glib.h b/glib.h
index a59779c0c..42e9acae7 100644
--- a/glib.h
+++ b/glib.h
@@ -3027,18 +3027,21 @@ typedef int pid_t;
# define closedir g_win32_closedir
# define NAME_MAX 255
-struct DIR
-{
- gchar *dir_name;
- gboolean just_opened;
- guint find_file_handle;
- gpointer find_file_data;
-};
-typedef struct DIR DIR;
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);
diff --git a/glib/giowin32.c b/glib/giowin32.c
index 4acdb160a..89cdb0e2b 100644
--- a/glib/giowin32.c
+++ b/glib/giowin32.c
@@ -897,7 +897,7 @@ g_io_channel_win32_make_pollfd (GIOChannel *channel,
if (win32_channel->data_avail_event == NULL)
create_events (win32_channel);
- fd->fd = win32_channel->data_avail_event;
+ fd->fd = (gint) win32_channel->data_avail_event;
fd->events = condition;
if (win32_channel->thread_id == 0)
diff --git a/glib/glib.def b/glib/glib.def
index 826ab92c4..db9b5aab5 100644
--- a/glib/glib.def
+++ b/glib/glib.def
@@ -244,6 +244,7 @@ EXPORTS
g_node_first_sibling
g_node_get_root
g_node_insert
+ g_node_insert_after
g_node_insert_before
g_node_is_ancestor
g_node_last_child
diff --git a/glib/glib.h b/glib/glib.h
index a59779c0c..42e9acae7 100644
--- a/glib/glib.h
+++ b/glib/glib.h
@@ -3027,18 +3027,21 @@ typedef int pid_t;
# define closedir g_win32_closedir
# define NAME_MAX 255
-struct DIR
-{
- gchar *dir_name;
- gboolean just_opened;
- guint find_file_handle;
- gpointer find_file_data;
-};
-typedef struct DIR DIR;
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);
diff --git a/glib/gwin32.c b/glib/gwin32.c
index 256fe021a..90cddc415 100644
--- a/glib/gwin32.c
+++ b/glib/gwin32.c
@@ -130,7 +130,6 @@ g_win32_opendir (const char *dirname)
struct dirent*
g_win32_readdir (DIR *dir)
{
- static struct dirent result;
gchar *basename;
g_return_val_if_fail (dir != NULL, NULL);
@@ -157,11 +156,11 @@ g_win32_readdir (DIR *dir)
basename = g_path_get_basename (((LPWIN32_FIND_DATA) dir->find_file_data)->cFileName);
- strcpy (result.d_name, basename);
+ strcpy (dir->readdir_result.d_name, basename);
g_free (basename);
- return &result;
+ return &dir->readdir_result;
}
void
diff --git a/glib/makefile.mingw.in b/glib/makefile.mingw.in
index 6b7ad5b26..8cc0cbdc5 100644
--- a/glib/makefile.mingw.in
+++ b/glib/makefile.mingw.in
@@ -7,12 +7,13 @@
# should be in your PATH.
BIN = /bin
-GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
-
TOP = ..
include build/win32/make.mingw
+# Possibly override GLib version in build/win32/module.defs
+GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
+
################################################################
# Nothing much configurable below
diff --git a/glib/makefile.msc.in b/glib/makefile.msc.in
index 2b9223efc..0bd252ff2 100644
--- a/glib/makefile.msc.in
+++ b/glib/makefile.msc.in
@@ -1,67 +1,52 @@
-## Makefile for building the GLib, gmodule and gthread dlls with Microsoft C
+## Makefile for building the GLib dlls with Microsoft C
## Use: nmake -f makefile.msc install
# Change this to wherever you want to install the DLLs. This directory
# should be in your PATH.
BIN = C:\bin
-# This is the location of pthreads for Win32,
-# see http://sourceware.cygnus.com/pthreads-win32/
-# We want the 1999-05-30 snapshot.
-PTHREADS = ..\pthreads-snap-1999-05-30
-PTHREAD_LIB = $(PTHREADS)\pthread.lib
-PTHREAD_INC = -I $(PTHREADS)
+TOP = ..
-################################################################
-
-# Nothing much configurable below
+!INCLUDE $(TOP)\build\win32\make.msc
-!IFNDEF DEBUG
-# Full optimization:
-OPTIMIZE = -Ox -MD
-LINKDEBUG =
-!ELSE
-# Debugging:
-OPTIMIZE = -Zi -MDd
-LINKDEBUG = /debug
-!ENDIF
+# Possibly override GLib version in build\win32\module.defs
+GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
-# cl -? describes the options
-CC = cl -G5 -GF $(OPTIMIZE) -W3 -nologo
+################################################################
-# No general LDFLAGS needed
-LDFLAGS = /link $(LINKDEBUG)
-INSTALL = copy
+# Nothing much configurable below
-GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
+INCLUDES = -I .
+DEFINES = -DHAVE_CONFIG_H -DGLIB_COMPILATION -DG_LOG_DOMAIN=g_log_domain_glib
+DEPCFLAGS = $(LIBICONV_CFLAGS)
-CFLAGS = -I. -DHAVE_CONFIG_H
+DLLS_TO_BUILD = \
+ glib-$(GLIB_VER).dll \
+ sub-gmodule \
+ sub-gthread \
+ sub-gobject
all : \
- glibconfig.h \
config.h \
- glib-$(GLIB_VER).dll \
- gmodule\gmoduleconf.h \
- gmodule-$(GLIB_VER).dll \
- gthread-$(GLIB_VER).dll \
+ glibconfig.h \
+ $(DLLS_TO_BUILD) \
testglib.exe \
- testgmodule.exe \
testgdate.exe \
testgdateparser.exe
install : all
- $(INSTALL) glib-$(GLIB_VER).dll $(BIN)
- $(INSTALL) gmodule-$(GLIB_VER).dll $(BIN)
- $(INSTALL) gthread-$(GLIB_VER).dll $(BIN)
+ copy glib-$(GLIB_VER).dll $(BIN)
glib_OBJECTS = \
garray.obj \
gasyncqueue.obj \
+ gbacktrace.obj \
gcache.obj \
gcompletion.obj \
gdataset.obj \
gdate.obj \
gerror.obj \
+ gconvert.obj \
ghash.obj \
ghook.obj \
giochannel.obj \
@@ -89,91 +74,69 @@ glib_OBJECTS = \
gutils.obj \
gwin32.obj
-glib-$(GLIB_VER).dll : $(glib_OBJECTS) glib.def
- $(CC) $(CFLAGS) -LD -Feglib-$(GLIB_VER).dll $(glib_OBJECTS) user32.lib advapi32.lib wsock32.lib $(LDFLAGS) /def:glib.def
-
glibconfig.h: glibconfig.h.win32
copy glibconfig.h.win32 glibconfig.h
config.h: config.h.win32
copy config.h.win32 config.h
-.c.obj :
- $(CC) $(CFLAGS) -GD -c -DGLIB_COMPILATION -DG_LOG_DOMAIN=g_log_domain_glib $<
+makefile.msc: makefile.msc.in
+ $(SED) -e s,@GLIB[_]MAJOR_VERSION@,@GLIB_MAJOR_VERSION@, \
+ -e s,@GLIB[_]MINOR_VERSION@,@GLIB_MINOR_VERSION@, <makefile.msc.in >$@
-.c.i :
- $(CC) $(CFLAGS) -GD -E -DGLIB_COMPILATION -DG_LOG_DOMAIN=g_log_domain_glib $< >$@
+################ glib
-gmodule_OBJECTS = \
- gmodule.obj
+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
-gmodule-$(GLIB_VER).dll : $(gmodule_OBJECTS) gmodule\gmodule.def
- $(CC) $(CFLAGS) -LD -Fegmodule-$(GLIB_VER).dll $(gmodule_OBJECTS) glib-$(GLIB_VER).lib $(LDFLAGS) /def:gmodule\gmodule.def
+################ subdirectories
-gmodule.obj : gmodule\gmodule.c gmodule\gmodule-win32.c
- $(CC) $(CFLAGS) -GD -Igmodule -c -DG_LOG_DOMAIN=g_log_domain_gmodule gmodule\gmodule.c
+sub-gmodule :
+ cd gmodule
+ -$(MAKE) -f makefile.msc all
+ cd ..
-gmodule\gmoduleconf.h: gmodule\gmoduleconf.h.win32
- copy gmodule\gmoduleconf.h.win32 gmodule\gmoduleconf.h
+sub-gthread :
+ cd gthread
+ -$(MAKE) -f makefile.msc all
+ cd ..
-gthread_OBJECTS = \
- gthread-impl.obj
+sub-gobject :
+ cd gobject
+ -$(MAKE) -f makefile.msc all
+ cd ..
-gthread-$(GLIB_VER).dll : $(gthread_OBJECTS) gthread\gthread.def
- $(CC) $(CFLAGS) -LD -Fegthread-$(GLIB_VER).dll $(gthread_OBJECTS) glib-$(GLIB_VER).lib $(PTHREAD_LIB) $(LDFLAGS) /def:gthread\gthread.def
+################ test progs
-gthread-impl.obj : gthread\gthread-impl.c gthread\gthread-posix.c
- $(CC) $(CFLAGS) -GD $(PTHREAD_INC) -DG_LOG_DOMAIN=\"GThread\" -c gthread\gthread-impl.c
+testglib.obj : testglib.c
+ $(CC) -c $(CFLAGS) -DG_LOG_DOMAIN=\"testglib\" testglib.c
testglib.exe : glib-$(GLIB_VER).dll testglib.obj
$(CC) $(CFLAGS) -Fetestglib.exe testglib.obj glib-$(GLIB_VER).lib $(LDFLAGS) /subsystem:console
-testglib.obj : testglib.c
- $(CC) -c $(CFLAGS) testglib.c
+testgdate.obj : testgdate.c
+ $(CC) -c $(CFLAGS) -DG_LOG_DOMAIN=\"testgdate\" testgdate.c
testgdate.exe : glib-$(GLIB_VER).dll testgdate.obj
$(CC) $(CFLAGS) -Fetestgdate.exe testgdate.obj glib-$(GLIB_VER).lib $(LDFLAGS) /subsystem:console
-testgdate.obj : testgdate.c
- $(CC) -c $(CFLAGS) testgdate.c
+testgdateparser.obj : testgdateparser.c
+ $(CC) -c $(CFLAGS) -DG_LOG_DOMAIN=\"testgdateparser\" testgdateparser.c
testgdateparser.exe : glib-$(GLIB_VER).dll testgdateparser.obj
$(CC) $(CFLAGS) -Fetestgdateparser.exe testgdateparser.obj glib-$(GLIB_VER).lib $(LDFLAGS) /subsystem:console
-testgdateparser.obj : testgdateparser.c
- $(CC) -c $(CFLAGS) testgdateparser.c
-
-testgmodule.exe : glib-$(GLIB_VER).dll gmodule-$(GLIB_VER).dll testgmodule.obj libgplugin_a.dll libgplugin_b.dll
- $(CC) $(CFLAGS) testgmodule.obj glib-$(GLIB_VER).lib gmodule-$(GLIB_VER).lib $(LDFLAGS) /subsystem:console
-
-testgmodule.obj : gmodule\testgmodule.c
- $(CC) $(CFLAGS) -Igmodule -c gmodule\testgmodule.c
-
-libgplugin_a.dll : libgplugin_a.obj
- $(CC) $(CFLAGS) -LD libgplugin_a.obj glib-$(GLIB_VER).lib gmodule-$(GLIB_VER).lib $(LDFLAGS)
-
-libgplugin_a.obj : gmodule\libgplugin_a.c
- $(CC) $(CFLAGS) -Igmodule -c gmodule\libgplugin_a.c
-
-libgplugin_b.dll : libgplugin_b.obj
- $(CC) $(CFLAGS) -LD libgplugin_b.obj glib-$(GLIB_VER).lib gmodule-$(GLIB_VER).lib $(LDFLAGS)
-
-libgplugin_b.obj : gmodule\libgplugin_b.c
- $(CC) $(CFLAGS) -Igmodule -c gmodule\libgplugin_b.c
+################ other stuff
-clean:
+clean::
del config.h
del glibconfig.h
- del gmodule\gmoduleconf.h
- del *.exe
- del *.obj
- del *.dll
- del *.lib
- del *.err
- del *.map
- del *.sym
- del *.exp
- del *.lk1
- del *.mk1
- del *.pdb
- del *.ilk
+ cd gmodule
+ $(MAKE) -f makefile.msc clean
+ cd ..
+ cd gthread
+ $(MAKE) -f makefile.msc clean
+ cd ..
+ cd gobject
+ $(MAKE) -f makefile.msc clean
+ cd ..
diff --git a/gmodule/Makefile.am b/gmodule/Makefile.am
index 4ac2ea1e7..659d00cac 100644
--- a/gmodule/Makefile.am
+++ b/gmodule/Makefile.am
@@ -6,6 +6,8 @@ INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/gmodule \
EXTRA_DIST = \
makefile.mingw \
makefile.mingw.in \
+ makefile.msc \
+ makefile.msc.in \
gmoduleconf.h.in \
gmodule.def \
gmodule-dl.c \
@@ -58,6 +60,9 @@ gmodule.rc: $(top_builddir)/config.status $(top_srcdir)/gmodule/gmodule.rc.in
makefile.mingw: $(top_builddir)/config.status $(top_srcdir)/gmodule/makefile.mingw.in
cd $(top_builddir) && CONFIG_FILES=gmodule/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+makefile.msc: $(top_builddir)/config.status $(top_srcdir)/gmodule/makefile.msc.in
+ cd $(top_builddir) && CONFIG_FILES=gmodule/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
.PHONY: files release
files:
diff --git a/gmodule/makefile.mingw.in b/gmodule/makefile.mingw.in
index e127c0fd2..f90a2ced9 100644
--- a/gmodule/makefile.mingw.in
+++ b/gmodule/makefile.mingw.in
@@ -3,12 +3,13 @@
## Use: make -f makefile.mingw
-GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
-
TOP = ../..
include ../build/win32/make.mingw
+# Possibly override GLib version in build\win32\module.defs
+GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
+
################################################################
# Nothing much configurable below
diff --git a/gmodule/makefile.msc.in b/gmodule/makefile.msc.in
new file mode 100644
index 000000000..c9bfb17b2
--- /dev/null
+++ b/gmodule/makefile.msc.in
@@ -0,0 +1,48 @@
+## Makefile for building the gmodule dll with Microsoft C
+## Use: nmake -f makefile.msc install
+
+TOP = ..\..
+
+!INCLUDE $(TOP)\build\win32\make.msc
+
+# Possibly override GLib version in build\win32\module.defs
+GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
+
+################################################################
+
+# Nothing much configurable below
+
+INCLUDES = -I .. -I .
+DEFINES = -DHAVE_CONFIG_H -DG_LOG_DOMAIN=g_log_domain_gmodule
+
+all : \
+ gmoduleconf.h \
+ gmodule-$(GLIB_VER).dll \
+ testgmodule.exe
+
+gmodule_OBJECTS = \
+ gmodule.obj
+
+gmoduleconf.h: gmoduleconf.h.win32
+ copy gmoduleconf.h.win32 gmoduleconf.h
+
+makefile.msc: makefile.msc.in
+ $(SED) -e s,@GLIB[_]MAJOR_VERSION@,@GLIB_MAJOR_VERSION@, \
+ -e s,@GLIB[_]MINOR_VERSION@,@GLIB_MINOR_VERSION@, <makefile.msc.in >$@
+
+gmodule-$(GLIB_VER).dll : $(gmodule_OBJECTS) gmodule.def
+ $(CC) $(CFLAGS) -LD -Fegmodule-$(GLIB_VER).dll $(gmodule_OBJECTS) ..\glib-$(GLIB_VER).lib $(LDFLAGS) /def:gmodule.def
+
+################ test prog
+
+testgmodule.exe : gmodule-$(GLIB_VER).dll testgmodule.obj libgplugin_a.dll libgplugin_b.dll
+ $(CC) $(CFLAGS) testgmodule.obj gmodule-$(GLIB_VER).lib ..\glib-$(GLIB_VER).lib $(LDFLAGS) /subsystem:console
+
+libgplugin_a.dll : libgplugin_a.obj
+ $(CC) $(CFLAGS) -LD libgplugin_a.obj gmodule-$(GLIB_VER).lib ..\glib-$(GLIB_VER).lib $(LDFLAGS)
+
+libgplugin_b.dll : libgplugin_b.obj
+ $(CC) $(CFLAGS) -LD libgplugin_b.obj gmodule-$(GLIB_VER).lib ..\glib-$(GLIB_VER).lib $(LDFLAGS)
+
+clean::
+ del gmoduleconf.h
diff --git a/gobject/Makefile.am b/gobject/Makefile.am
index d847d8110..c05591cd7 100644
--- a/gobject/Makefile.am
+++ b/gobject/Makefile.am
@@ -83,6 +83,8 @@ gobject_query_LDADD = $(progs_LDADD)
EXTRA_DIST += \
makefile.mingw \
makefile.mingw.in \
+ makefile.msc \
+ makefile.msc.in \
gobject.def \
gobject.rc \
gobject.rc.in
@@ -93,3 +95,5 @@ gobject.rc: $(top_builddir)/config.status $(top_srcdir)/gobject/gobject.rc.in
makefile.mingw: $(top_builddir)/config.status $(top_srcdir)/gobject/makefile.mingw.in
cd $(top_builddir) && CONFIG_FILES=gobject/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+makefile.msc: $(top_builddir)/config.status $(top_srcdir)/gobject/makefile.msc.in
+ cd $(top_builddir) && CONFIG_FILES=gobject/$@ CONFIG_HEADERS= $(SHELL) ./config.status
diff --git a/gobject/makefile.mingw.in b/gobject/makefile.mingw.in
index fd6db1791..7e9a87a30 100644
--- a/gobject/makefile.mingw.in
+++ b/gobject/makefile.mingw.in
@@ -3,12 +3,14 @@
## Use: make -f makefile.mingw
-GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
TOP = ../..
include ../build/win32/make.mingw
+# Possibly override GLib version in build/win32/module.defs
+GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
+
################################################################
# Nothing much configurable below
diff --git a/gobject/makefile.msc.in b/gobject/makefile.msc.in
new file mode 100644
index 000000000..d6df9a863
--- /dev/null
+++ b/gobject/makefile.msc.in
@@ -0,0 +1,35 @@
+## Makefile for building the gobject dll with Microsoft C
+## Use: nmake -f makefile.msc install
+
+TOP = ..\..
+
+!INCLUDE $(TOP)\build\win32\make.msc
+
+# Possibly override GLib version in build\win32\object.defs
+GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
+
+################################################################
+
+# Nothing much configurable below
+
+INCLUDES = -I .. -I .
+DEFINES = -DHAVE_CONFIG_H -DGOBJECT_COMPILATION -DG_LOG_DOMAIN=g_log_domain_gobject
+
+all : \
+ gobject-$(GLIB_VER).dll
+
+gobject_OBJECTS = \
+ gvalue.obj \
+ gvaluetypes.obj \
+ gparam.obj \
+ gparamspecs.obj \
+ genums.obj \
+ gobject.obj \
+ gtype.obj
+
+makefile.msc: makefile.msc.in
+ $(SED) -e s,@GLIB[_]MAJOR_VERSION@,@GLIB_MAJOR_VERSION@, \
+ -e s,@GLIB[_]MINOR_VERSION@,@GLIB_MINOR_VERSION@, <makefile.msc.in >$@
+
+gobject-$(GLIB_VER).dll : $(gobject_OBJECTS) gobject.def
+ $(CC) $(CFLAGS) -LD -Fegobject-$(GLIB_VER).dll $(gobject_OBJECTS) ..\glib-$(GLIB_VER).lib $(LDFLAGS) /def:gobject.def
diff --git a/gthread/Makefile.am b/gthread/Makefile.am
index 33db071fc..d80bafb8b 100644
--- a/gthread/Makefile.am
+++ b/gthread/Makefile.am
@@ -6,6 +6,8 @@ INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/gthread \
EXTRA_DIST = \
makefile.mingw \
makefile.mingw.in \
+ makefile.msc \
+ makefile.msc.in \
gthread-posix.c \
gthread-solaris.c \
gthread-none.c \
@@ -31,3 +33,6 @@ gthread.rc: $(top_builddir)/config.status $(top_srcdir)/gthread/gthread.rc.in
makefile.mingw: $(top_builddir)/config.status $(top_srcdir)/gthread/makefile.mingw.in
cd $(top_builddir) && CONFIG_FILES=gthread/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+makefile.msc: $(top_builddir)/config.status $(top_srcdir)/gthread/makefile.msc.in
+ cd $(top_builddir) && CONFIG_FILES=gthread/$@ CONFIG_HEADERS= $(SHELL) ./config.status
diff --git a/gthread/makefile.mingw.in b/gthread/makefile.mingw.in
index 7cfaa8d56..d38ab6d85 100644
--- a/gthread/makefile.mingw.in
+++ b/gthread/makefile.mingw.in
@@ -3,12 +3,13 @@
## Use: make -f makefile.mingw
-GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
-
TOP = ../..
include ../build/win32/make.mingw
+# Possibly override GLib version in build/win32/module.defs
+GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
+
################################################################
# Nothing much configurable below
diff --git a/gthread/makefile.msc.in b/gthread/makefile.msc.in
new file mode 100644
index 000000000..c000036d5
--- /dev/null
+++ b/gthread/makefile.msc.in
@@ -0,0 +1,32 @@
+## Makefile for building the gthread dll with Microsoft C
+## Use: nmake -f makefile.msc install
+
+GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
+
+TOP = ..\..
+
+!INCLUDE $(TOP)\build\win32\make.msc
+
+# Possibly override GLib version in build\win32\module.defs
+GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
+
+################################################################
+
+# Nothing much configurable below
+
+INCLUDES = -I .. -I .
+DEFINES = -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"GThread\"
+DEPCFLAGS = $(PTHREAD_CFLAGS)
+
+all : \
+ gthread-$(GLIB_VER).dll
+
+gthread_OBJECTS = \
+ gthread-impl.obj
+
+makefile.msc: makefile.msc.in
+ $(SED) -e s,@GLIB[_]MAJOR_VERSION@,@GLIB_MAJOR_VERSION@, \
+ -e s,@GLIB[_]MINOR_VERSION@,@GLIB_MINOR_VERSION@, <makefile.msc.in >$@
+
+gthread-$(GLIB_VER).dll : $(gthread_OBJECTS) gthread.def
+ $(CC) $(CFLAGS) -LD -Fegthread-$(GLIB_VER).dll $(gthread_OBJECTS) ..\glib-$(GLIB_VER).lib $(PTHREAD_LIBS) $(LDFLAGS) /def:gthread.def
diff --git a/gwin32.c b/gwin32.c
index 256fe021a..90cddc415 100644
--- a/gwin32.c
+++ b/gwin32.c
@@ -130,7 +130,6 @@ g_win32_opendir (const char *dirname)
struct dirent*
g_win32_readdir (DIR *dir)
{
- static struct dirent result;
gchar *basename;
g_return_val_if_fail (dir != NULL, NULL);
@@ -157,11 +156,11 @@ g_win32_readdir (DIR *dir)
basename = g_path_get_basename (((LPWIN32_FIND_DATA) dir->find_file_data)->cFileName);
- strcpy (result.d_name, basename);
+ strcpy (dir->readdir_result.d_name, basename);
g_free (basename);
- return &result;
+ return &dir->readdir_result;
}
void
diff --git a/makefile.mingw.in b/makefile.mingw.in
index 6b7ad5b26..8cc0cbdc5 100644
--- a/makefile.mingw.in
+++ b/makefile.mingw.in
@@ -7,12 +7,13 @@
# should be in your PATH.
BIN = /bin
-GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
-
TOP = ..
include build/win32/make.mingw
+# Possibly override GLib version in build/win32/module.defs
+GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
+
################################################################
# Nothing much configurable below
diff --git a/makefile.msc.in b/makefile.msc.in
index 2b9223efc..0bd252ff2 100644
--- a/makefile.msc.in
+++ b/makefile.msc.in
@@ -1,67 +1,52 @@
-## Makefile for building the GLib, gmodule and gthread dlls with Microsoft C
+## Makefile for building the GLib dlls with Microsoft C
## Use: nmake -f makefile.msc install
# Change this to wherever you want to install the DLLs. This directory
# should be in your PATH.
BIN = C:\bin
-# This is the location of pthreads for Win32,
-# see http://sourceware.cygnus.com/pthreads-win32/
-# We want the 1999-05-30 snapshot.
-PTHREADS = ..\pthreads-snap-1999-05-30
-PTHREAD_LIB = $(PTHREADS)\pthread.lib
-PTHREAD_INC = -I $(PTHREADS)
+TOP = ..
-################################################################
-
-# Nothing much configurable below
+!INCLUDE $(TOP)\build\win32\make.msc
-!IFNDEF DEBUG
-# Full optimization:
-OPTIMIZE = -Ox -MD
-LINKDEBUG =
-!ELSE
-# Debugging:
-OPTIMIZE = -Zi -MDd
-LINKDEBUG = /debug
-!ENDIF
+# Possibly override GLib version in build\win32\module.defs
+GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
-# cl -? describes the options
-CC = cl -G5 -GF $(OPTIMIZE) -W3 -nologo
+################################################################
-# No general LDFLAGS needed
-LDFLAGS = /link $(LINKDEBUG)
-INSTALL = copy
+# Nothing much configurable below
-GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
+INCLUDES = -I .
+DEFINES = -DHAVE_CONFIG_H -DGLIB_COMPILATION -DG_LOG_DOMAIN=g_log_domain_glib
+DEPCFLAGS = $(LIBICONV_CFLAGS)
-CFLAGS = -I. -DHAVE_CONFIG_H
+DLLS_TO_BUILD = \
+ glib-$(GLIB_VER).dll \
+ sub-gmodule \
+ sub-gthread \
+ sub-gobject
all : \
- glibconfig.h \
config.h \
- glib-$(GLIB_VER).dll \
- gmodule\gmoduleconf.h \
- gmodule-$(GLIB_VER).dll \
- gthread-$(GLIB_VER).dll \
+ glibconfig.h \
+ $(DLLS_TO_BUILD) \
testglib.exe \
- testgmodule.exe \
testgdate.exe \
testgdateparser.exe
install : all
- $(INSTALL) glib-$(GLIB_VER).dll $(BIN)
- $(INSTALL) gmodule-$(GLIB_VER).dll $(BIN)
- $(INSTALL) gthread-$(GLIB_VER).dll $(BIN)
+ copy glib-$(GLIB_VER).dll $(BIN)
glib_OBJECTS = \
garray.obj \
gasyncqueue.obj \
+ gbacktrace.obj \
gcache.obj \
gcompletion.obj \
gdataset.obj \
gdate.obj \
gerror.obj \
+ gconvert.obj \
ghash.obj \
ghook.obj \
giochannel.obj \
@@ -89,91 +74,69 @@ glib_OBJECTS = \
gutils.obj \
gwin32.obj
-glib-$(GLIB_VER).dll : $(glib_OBJECTS) glib.def
- $(CC) $(CFLAGS) -LD -Feglib-$(GLIB_VER).dll $(glib_OBJECTS) user32.lib advapi32.lib wsock32.lib $(LDFLAGS) /def:glib.def
-
glibconfig.h: glibconfig.h.win32
copy glibconfig.h.win32 glibconfig.h
config.h: config.h.win32
copy config.h.win32 config.h
-.c.obj :
- $(CC) $(CFLAGS) -GD -c -DGLIB_COMPILATION -DG_LOG_DOMAIN=g_log_domain_glib $<
+makefile.msc: makefile.msc.in
+ $(SED) -e s,@GLIB[_]MAJOR_VERSION@,@GLIB_MAJOR_VERSION@, \
+ -e s,@GLIB[_]MINOR_VERSION@,@GLIB_MINOR_VERSION@, <makefile.msc.in >$@
-.c.i :
- $(CC) $(CFLAGS) -GD -E -DGLIB_COMPILATION -DG_LOG_DOMAIN=g_log_domain_glib $< >$@
+################ glib
-gmodule_OBJECTS = \
- gmodule.obj
+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
-gmodule-$(GLIB_VER).dll : $(gmodule_OBJECTS) gmodule\gmodule.def
- $(CC) $(CFLAGS) -LD -Fegmodule-$(GLIB_VER).dll $(gmodule_OBJECTS) glib-$(GLIB_VER).lib $(LDFLAGS) /def:gmodule\gmodule.def
+################ subdirectories
-gmodule.obj : gmodule\gmodule.c gmodule\gmodule-win32.c
- $(CC) $(CFLAGS) -GD -Igmodule -c -DG_LOG_DOMAIN=g_log_domain_gmodule gmodule\gmodule.c
+sub-gmodule :
+ cd gmodule
+ -$(MAKE) -f makefile.msc all
+ cd ..
-gmodule\gmoduleconf.h: gmodule\gmoduleconf.h.win32
- copy gmodule\gmoduleconf.h.win32 gmodule\gmoduleconf.h
+sub-gthread :
+ cd gthread
+ -$(MAKE) -f makefile.msc all
+ cd ..
-gthread_OBJECTS = \
- gthread-impl.obj
+sub-gobject :
+ cd gobject
+ -$(MAKE) -f makefile.msc all
+ cd ..
-gthread-$(GLIB_VER).dll : $(gthread_OBJECTS) gthread\gthread.def
- $(CC) $(CFLAGS) -LD -Fegthread-$(GLIB_VER).dll $(gthread_OBJECTS) glib-$(GLIB_VER).lib $(PTHREAD_LIB) $(LDFLAGS) /def:gthread\gthread.def
+################ test progs
-gthread-impl.obj : gthread\gthread-impl.c gthread\gthread-posix.c
- $(CC) $(CFLAGS) -GD $(PTHREAD_INC) -DG_LOG_DOMAIN=\"GThread\" -c gthread\gthread-impl.c
+testglib.obj : testglib.c
+ $(CC) -c $(CFLAGS) -DG_LOG_DOMAIN=\"testglib\" testglib.c
testglib.exe : glib-$(GLIB_VER).dll testglib.obj
$(CC) $(CFLAGS) -Fetestglib.exe testglib.obj glib-$(GLIB_VER).lib $(LDFLAGS) /subsystem:console
-testglib.obj : testglib.c
- $(CC) -c $(CFLAGS) testglib.c
+testgdate.obj : testgdate.c
+ $(CC) -c $(CFLAGS) -DG_LOG_DOMAIN=\"testgdate\" testgdate.c
testgdate.exe : glib-$(GLIB_VER).dll testgdate.obj
$(CC) $(CFLAGS) -Fetestgdate.exe testgdate.obj glib-$(GLIB_VER).lib $(LDFLAGS) /subsystem:console
-testgdate.obj : testgdate.c
- $(CC) -c $(CFLAGS) testgdate.c
+testgdateparser.obj : testgdateparser.c
+ $(CC) -c $(CFLAGS) -DG_LOG_DOMAIN=\"testgdateparser\" testgdateparser.c
testgdateparser.exe : glib-$(GLIB_VER).dll testgdateparser.obj
$(CC) $(CFLAGS) -Fetestgdateparser.exe testgdateparser.obj glib-$(GLIB_VER).lib $(LDFLAGS) /subsystem:console
-testgdateparser.obj : testgdateparser.c
- $(CC) -c $(CFLAGS) testgdateparser.c
-
-testgmodule.exe : glib-$(GLIB_VER).dll gmodule-$(GLIB_VER).dll testgmodule.obj libgplugin_a.dll libgplugin_b.dll
- $(CC) $(CFLAGS) testgmodule.obj glib-$(GLIB_VER).lib gmodule-$(GLIB_VER).lib $(LDFLAGS) /subsystem:console
-
-testgmodule.obj : gmodule\testgmodule.c
- $(CC) $(CFLAGS) -Igmodule -c gmodule\testgmodule.c
-
-libgplugin_a.dll : libgplugin_a.obj
- $(CC) $(CFLAGS) -LD libgplugin_a.obj glib-$(GLIB_VER).lib gmodule-$(GLIB_VER).lib $(LDFLAGS)
-
-libgplugin_a.obj : gmodule\libgplugin_a.c
- $(CC) $(CFLAGS) -Igmodule -c gmodule\libgplugin_a.c
-
-libgplugin_b.dll : libgplugin_b.obj
- $(CC) $(CFLAGS) -LD libgplugin_b.obj glib-$(GLIB_VER).lib gmodule-$(GLIB_VER).lib $(LDFLAGS)
-
-libgplugin_b.obj : gmodule\libgplugin_b.c
- $(CC) $(CFLAGS) -Igmodule -c gmodule\libgplugin_b.c
+################ other stuff
-clean:
+clean::
del config.h
del glibconfig.h
- del gmodule\gmoduleconf.h
- del *.exe
- del *.obj
- del *.dll
- del *.lib
- del *.err
- del *.map
- del *.sym
- del *.exp
- del *.lk1
- del *.mk1
- del *.pdb
- del *.ilk
+ cd gmodule
+ $(MAKE) -f makefile.msc clean
+ cd ..
+ cd gthread
+ $(MAKE) -f makefile.msc clean
+ cd ..
+ cd gobject
+ $(MAKE) -f makefile.msc clean
+ cd ..
diff --git a/tests/makefile.msc.in b/tests/makefile.msc.in
index 27a757c5b..eecee8dac 100644
--- a/tests/makefile.msc.in
+++ b/tests/makefile.msc.in
@@ -1,19 +1,19 @@
## Makefile for building the GLib test programs with Microsoft C
## Use: nmake -f makefile.msc check
-################################################################
+TOP = ..\..
-# Nothing much configurable below
+!INCLUDE $(TOP)\build\win32\make.msc
-# cl -? describes the options
-CC = cl -G5 -GF -Ox -W3 -MD -nologo
+# Possibly override GLib version in build\win32\module.defs
+GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
-# No general LDFLAGS needed
-LDFLAGS = /link
+################################################################
-GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
+# Nothing much configurable below
-CFLAGS = -I.. -DHAVE_CONFIG_H
+INCLUDES = -I..
+DEFINES = -DHAVE_CONFIG_H
TESTS = \
array-test.exe \
@@ -26,7 +26,7 @@ TESTS = \
rand-test.exe \
relation-test.exe\
slist-test.exe \
- strfunc-test.exe\
+# strfunc-test.exe\
string-test.exe \
thread-test.exe \
threadpool-test.exe\
@@ -35,20 +35,13 @@ TESTS = \
all : $(TESTS)
+makefile.msc: makefile.msc.in
+ $(SED) -e s,@GLIB[_]MAJOR_VERSION@,@GLIB_MAJOR_VERSION@, \
+ -e s,@GLIB[_]MINOR_VERSION@,@GLIB_MINOR_VERSION@, <makefile.msc.in >$@
+
.c.exe :
$(CC) $(CFLAGS) -c $<
- $(CC) $(CFLAGS) -Fe$@ $< ..\glib-$(GLIB_VER).lib ..\gthread-$(GLIB_VER).lib $(LDFLAGS) /subsystem:console
+ $(CC) $(CFLAGS) -Fe$@ $< ..\glib-$(GLIB_VER).lib ..\gmodule\gmodule-$(GLIB_VER).lib ..\gthread\gthread-$(GLIB_VER).lib $(LDFLAGS) /subsystem:console
check: all
for %p in ($(TESTS)) do %p
-
-clean:
- del *.exe
- del *.obj
- del *.dll
- del *.lib
- del *.err
- del *.map
- del *.sym
- del *.exp
- del *.pdb