## Makefile for building the gobject DLL with gcc for mingw. The build ## uses tools running on cygwin, however. ## Use: make -f makefile.mingw 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 INCLUDES = -I .. -I . DEFINES = -DHAVE_CONFIG_H -DGOBJECT_COMPILATION -DG_LOG_DOMAIN=g_log_domain_gruntime -DG_ENABLE_DEBUG srcdir=. BUILD_DLL = ../build-dll all : \ gobject-$(GLIB_VER).dll \ glib-genmarshal.exe ifeq ($(wildcard makefile.mingw.in),makefile.mingw.in) makefile.mingw: makefile.mingw.in sed -e 's,@GLIB[_]MAJOR_VERSION@,@GLIB_MAJOR_VERSION@,' \ -e 's,@GLIB[_]MINOR_VERSION@,@GLIB_MINOR_VERSION@,' \ -e 's,@RE[B]UILD@,,' <$< >$@ endif gobject_OBJECTS = \ gboxed.o \ gbsearcharray.o \ gclosure.o \ genums.o \ gobject.o \ gparam.o \ gparamspecs.o \ gsignal.o \ gtype.o \ gtypemodule.o \ gtypeplugin.o \ gvalue.o \ gvaluearray.o \ gvaluetransform.o \ gvaluetypes.o gobject-$(GLIB_VER).dll : $(srcdir)/stamp-gmarshal.h gmarshal.c $(gobject_OBJECTS) gobject.def $(BUILD_DLL) gobject $(GLIB_VER) gobject.def $(gobject_OBJECTS) -L .. -lglib-$(GLIB_VER) glib-genmarshal.exe : glib-genmarshal.c $(CC) -o $@ $(CFLAGS) -UGOBJECT_COMPILATION $< -L .. -lglib-$(GLIB_VER) # Copied from Makefile.am: # initial creation of the real stamp-* files gmarshal.h: # never add deps here test -f "$(srcdir)/$@" || touch $(srcdir)/$@ # normal autogeneration rules # all autogenerated files need to be generated in the srcdir, # so old versions get remade and are not confused with newer # versions in the build dir. thus a development setup requires # srcdir to be writable, passing --disable-rebuilds to # ../configure will supress all autogeneration rules. $(srcdir)/stamp-gmarshal.h: @REBUILD@ gmarshal.list gmarshal.h glib-genmarshal.exe echo "#ifndef __G_MARSHAL_H__" > xgen-gmh \ && echo "#define __G_MARSHAL_H__" >> xgen-gmh \ && ./glib-genmarshal --nostdinc --prefix=g_cclosure_marshal $(srcdir)/gmarshal.list --header >> xgen-gmh \ && echo "#endif /* __G_MARSHAL_H__ */" >> xgen-gmh \ && (cmp -s xgen-gmh $(srcdir)/gmarshal.h || cp xgen-gmh $(srcdir)/gmarshal.h) \ && rm -f xgen-gmh xgen-gmh~ \ && echo timestamp > $@ $(srcdir)/gmarshal.c: @REBUILD@ $(srcdir)/stamp-gmarshal.h ./glib-genmarshal --nostdinc --prefix=g_cclosure_marshal $(srcdir)/gmarshal.list --body >> xgen-gmc \ && cp xgen-gmc $(srcdir)/gmarshal.c \ && rm -f xgen-gmc xgen-gmc~ $(srcdir)/gmarshal.strings: @REBUILD@ $(srcdir)/gmarshal.list grep '^[A-Z]' $(srcdir)/gmarshal.list \ | sed -e 's/^/"g_cclosure_marshal_/' -e 's/:/__/' -e 's/,/_/g' -e 's/$$/",/' > xgen-gms \ && cp xgen-gms $(srcdir)/gmarshal.strings \ && rm -f xgen-gms xgen-gms~ glib-genmarshal.o: gmarshal.strings clean:: -rm gmarshal.h gmarshal.c stamp-gmarshal.h