summaryrefslogtreecommitdiff
path: root/makefile.mingw.in
blob: 9b750d41f7fecae420b4215fda13ec5d14be077b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
## Makefile for building the GLib DLL with gcc for mingw. The build
## uses tools running on cygwin, however.

## Use: make -f makefile.mingw

# Change this to wherever you want to install the DLLs. This directory
# should be in your PATH.
BIN = /bin

GLIB_VER = @GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@

TOP = ..

include $(TOP)/build/win32/make.mingw

################################################################

# Nothing much configurable below

INCLUDES = -I .
DEFINES = -DHAVE_CONFIG_H -DGLIB_COMPILATION -DG_LOG_DOMAIN=g_log_domain_glib

DLLS_TO_BUILD = \
 	glib-$(GLIB_VER).dll \
	gmodule/gmodule-$(GLIB_VER).dll \
	gthread/gthread-$(GLIB_VER).dll \
	gobject/gobject-$(GLIB_VER).dll \


all : \
	config.h \
	glibconfig.h \
	$(DLLS_TO_BUILD) \
	testglib.exe \
	testgdate.exe \
	testgdateparser.exe

install : all
	$(INSTALL) $(DLLS_TO_BUILD) $(BIN)

glib_OBJECTS = \
	garray.o \
	gasyncqueue.o \
	gcache.o \
	gcompletion.o \
	gdataset.o \
	gdate.o \
	gerror.o \
	ghook.o \
	ghash.o \
	giochannel.o \
	giowin32.o \
	glist.o \
	gmain.o \
	gmem.o \
	gmessages.o \
	gnode.o \
	gprimes.o \
	gqueue.o \
	grand.o \
	gslist.o \
	gthread.o \
	gthreadpool.o \
	gtimer.o \
	gtree.o \
	grel.o \
	gstring.o \
	gstrfuncs.o \
	gscanner.o \
	gutils.o \
	gwin32.o

glibconfig.h: glibconfig.h.win32
	cp $< $@

config.h: config.h.win32
	cp $< $@

makefile.mingw: makefile.mingw.in
	sed -e 's,@GLIB[_]MAJOR_VERSION@,@GLIB_MAJOR_VERSION@,' \
	    -e 's,@GLIB[_]MINOR_VERSION@,@GLIB_MINOR_VERSION@,' <$< >$@

################ glib

glib-$(GLIB_VER).dll : $(glib_OBJECTS) glib.def
	./build-dll glib $(GLIB_VER) glib.def $(glib_OBJECTS) -luser32 -lwsock32

################ subdirectories

gmodule/gmodule-$(GLIB_VER).dll : glib-$(GLIB_VER).dll
	cd gmodule && $(MAKE) -f makefile.mingw all

gthread/gthread-$(GLIB_VER).dll : glib-$(GLIB_VER).dll
	cd gthread && $(MAKE) -f makefile.mingw all

gobject/gobject-$(GLIB_VER).dll : glib-$(GLIB_VER).dll
	cd gobject && $(MAKE) -f makefile.mingw all

################ test progs

testglib.o : testglib.c
	$(CC) -c $(CFLAGS) -DG_LOG_DOMAIN=\"testglib\" $<

testglib.exe : glib-$(GLIB_VER).dll testglib.o
	$(CC) $(CFLAGS) -o testglib testglib.o -L . -lglib-$(GLIB_VER) $(LDFLAGS)

testgdate.o : testgdate.c
	$(CC) -c $(CFLAGS) -DG_LOG_DOMAIN=\"testgdate\" $<

testgdate.exe : glib-$(GLIB_VER).dll testgdate.o
	$(CC) $(CFLAGS) -o testgdate.exe testgdate.o -L . -lglib-$(GLIB_VER) $(LDFLAGS)

testgdateparser.o : testgdateparser.c
	$(CC) -c $(CFLAGS) -DG_LOG_DOMAIN=\"testgdateparser\" $<

testgdateparser.exe : glib-$(GLIB_VER).dll testgdateparser.o
	$(CC) $(CFLAGS) -o testgdateparser.exe testgdateparser.o -L . -lglib-$(GLIB_VER) $(LDFLAGS)


################ other stuff

clean::
	-rm config.h glibconfig.h gmodule/gmoduleconf.h