## 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 . -I ..\glib DEFINES = -DHAVE_CONFIG_H -DGOBJECT_COMPILATION -DG_LOG_DOMAIN=g_log_domain_gruntime \ -DG_ENABLE_DEBUG # -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS # -DG_DISABLE_CAST_CHECKS all : \ glib-genmarshal.exe \ gobject-query.exe \ gmarshal.h \ gmarshal.c \ gobject-$(GLIB_VER).dll \ gobject-$(GLIB_VER)s.lib gobject_OBJECTS = \ gboxed.obj \ gbsearcharray.obj \ gclosure.obj \ genums.obj \ gobject.obj \ gparam.obj \ gparamspecs.obj \ gsignal.obj \ gtype.obj \ gtypemodule.obj \ gtypeplugin.obj \ gvalue.obj \ gvaluearray.obj \ gvaluetypes.obj \ gvaluetransform.obj gmarshal.h : gmarshal.list glib-genmarshal.exe echo #ifndef __G_MARSHAL_H__ > xgen-gmh echo #define __G_MARSHAL_H__ >> xgen-gmh glib-genmarshal --nostdinc --prefix=g_cclosure_marshal gmarshal.list --header >> xgen-gmh echo #endif /* __G_MARSHAL_H__ */ >> xgen-gmh copy xgen-gmh gmarshal.h gmarshal.c: gmarshal.list gmarshal.h glib-genmarshal.exe glib-genmarshal --nostdinc --prefix=g_cclosure_marshal gmarshal.list --body > gmarshal.c makefile.msc: makefile.msc.in $(SED) -e s,@GLIB[_]MAJOR_VERSION@,@GLIB_MAJOR_VERSION@, \ -e s,@GLIB[_]MINOR_VERSION@,@GLIB_MINOR_VERSION@, $@ gobject-$(GLIB_VER).dll : $(gobject_OBJECTS) gobject.def $(CC) $(CFLAGS) -Fm -LD -Fegobject-$(GLIB_VER).dll $(gobject_OBJECTS) \ ..\glib\glib-$(GLIB_VER).lib $(LDFLAGS) /def:gobject.def gobject-$(GLIB_VER)s.lib : $(gobject_OBJECTS) lib /out:gobject-$(GLIB_VER)s.lib $(gobject_OBJECTS) # link glib's static version to avoid installing glib-genmarshal.exe : glib-genmarshal.c ..\glib\glib-$(GLIB_VER)s.lib gmarshal.strings $(CC) -Fe$@ $(CFLAGS) -UGOBJECT_COMPILATION glib-genmarshal.c \ ..\glib\glib-$(GLIB_VER)s.lib user32.lib advapi32.lib $(INTL_LIBS) $(LIBICONV_LIBS) gobject-query.exe : gobject-query.c ..\glib\glib-$(GLIB_VER).lib gobject-$(GLIB_VER).dll $(CC) -Fe$@ $(CFLAGS) -UGOBJECT_COMPILATION gobject-query.c \ ..\glib\glib-$(GLIB_VER).lib gobject-$(GLIB_VER).lib user32.lib advapi32.lib $(INTL_LIBS) $(LIBICONV_LIBS) gmarshal.strings : gmarshal.list perl marshal-genstrings.pl > gmarshal.strings