1 ## Makefile for building the gmodule DLL with gcc for mingw. The build
2 ## uses tools running on cygwin, however.
4 ## Use: make -f makefile.mingw
6 GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
10 include ../build/win32/make.mingw
12 ################################################################
14 # Nothing much configurable below
17 DEFINES = -DHAVE_CONFIG_H -DG_LOG_DOMAIN=g_log_domain_gmodule
19 BUILD_DLL = ../build-dll
23 gmodule-$(GLIB_VER).dll \
26 makefile.mingw: makefile.mingw.in
27 sed -e 's,@GLIB[_]MAJOR_VERSION@,@GLIB_MAJOR_VERSION@,' \
28 -e 's,@GLIB[_]MINOR_VERSION@,@GLIB_MINOR_VERSION@,' <$< >$@
33 gmoduleconf.h: gmoduleconf.h.win32
36 gmodule-$(GLIB_VER).dll : $(gmodule_OBJECTS) gmodule.def
37 $(BUILD_DLL) gmodule $(GLIB_VER) gmodule.def $(gmodule_OBJECTS) -L .. -lglib-$(GLIB_VER)
39 ################ test prog
41 testgmodule.exe : gmodule-$(GLIB_VER).dll testgmodule.o libgplugin_a.dll libgplugin_b.dll
42 # Wow, do we really have to do it like this to get some symbols
43 # exported from a .exe? Apparently yes. Does the __declspec(dllexport)
44 # actually do anything in gcc?
45 $(CC) $(CFLAGS) -Wl,--base-file,testgmodule.base -o testgmodule.exe testgmodule.o -L .. -lglib-$(GLIB_VER) -L . -lgmodule-$(GLIB_VER) $(LDFLAGS)
46 $(DLLTOOL) --base-file testgmodule.base --output-exp testgmodule.exp testgmodule.o
47 $(CC) $(CFLAGS) -Wl,--base-file,testgmodule.base,testgmodule.exp -o testgmodule.exe testgmodule.o -L .. -lglib-$(GLIB_VER) -L . -lgmodule-$(GLIB_VER) $(LDFLAGS)
48 $(DLLTOOL) --base-file testgmodule.base --output-exp testgmodule.exp testgmodule.o
49 $(CC) $(CFLAGS) -Wl,testgmodule.exp -o testgmodule.exe testgmodule.o -L .. -lglib-$(GLIB_VER) -L . -lgmodule-$(GLIB_VER) $(LDFLAGS)
51 libgplugin_a.dll : libgplugin_a.o
52 $(BUILD_DLL) libgplugin_a - - libgplugin_a.o -L .. -lglib-$(GLIB_VER) -L . -lgmodule-$(GLIB_VER)
54 libgplugin_b.dll : libgplugin_b.o
55 $(BUILD_DLL) libgplugin_b - - libgplugin_b.o -L .. -lglib-$(GLIB_VER) -L . -lgmodule-$(GLIB_VER)