don't build gdesktopappinfo.obj, it collides with symbols
[platform/upstream/glib.git] / gio / makefile.msc
1 # autogenerated from automake.am with automake.py
2 TOP = ..\..
3 PRJ_TOP = ..
4 PACKAGE = gio
5 PKG_VER = 2.0
6 !INCLUDE $(TOP)\glib\build\win32\make.msc
7
8 # SUBDIRS = fam
9
10 sub-all: 
11         for %d in ($(SUBDIRS)) do nmake -nologo -f makefile.msc sub-one THIS=%d
12
13 sub-one:
14         cd $(THIS)
15         nmake -nologo -f makefile.msc
16         cd ..
17
18 INCLUDES = \
19         -FImsvc_recommended_pragmas.h \
20         -I .. -I ..\glib -I ..\gmodule -I . \
21         $(INTL_CFLAGS)
22
23 DEFINES = \
24         -DG_LOG_DOMAIN=\"GLib-GIO\" \
25         -DGIO_MODULE_DIR=\"$(libdir)/gio/modules\" \
26         -DGIO_COMPILATION
27
28 appinfo_sources = \
29         gwin32appinfo.c gwin32appinfo.h
30
31 gio_headers =                   \
32         gappinfo.h              \
33         gasyncresult.h          \
34         gbufferedinputstream.h  \
35         gbufferedoutputstream.h \
36         gcancellable.h          \
37         gcontenttype.h          \
38         gdatainputstream.h      \
39         gdataoutputstream.h     \
40         gdirectorymonitor.h     \
41         gdrive.h                \
42         gfile.h                 \
43         gfileattribute.h        \
44         gfileenumerator.h       \
45         gfileicon.h             \
46         gfileinfo.h             \
47         gfileinputstream.h      \
48         gfilemonitor.h          \
49         gfilenamecompleter.h    \
50         gfileoutputstream.h     \
51         gfilterinputstream.h    \
52         gfilteroutputstream.h   \
53         gicon.h                 \
54         ginputstream.h          \
55         gio.h                   \
56         gioerror.h              \
57         giomodule.h             \
58         gioscheduler.h          \
59         gloadableicon.h         \
60         gmemoryinputstream.h    \
61         gmemoryoutputstream.h   \
62         gmountoperation.h       \
63         goutputstream.h         \
64         gseekable.h             \
65         gsimpleasyncresult.h    \
66         gthemedicon.h           \
67         gvfs.h                  \
68         gvolume.h               \
69         gvolumemonitor.h        \
70         $(NULL)
71
72 OBJECTS = \
73         gappinfo.obj \
74         gasynchelper.obj \
75         gasyncresult.obj \
76         gbufferedinputstream.obj \
77         gbufferedoutputstream.obj \
78         gcancellable.obj \
79         gcontenttype.obj \
80         gdatainputstream.obj \
81         gdataoutputstream.obj \
82 #       gdesktopappinfo.obj \
83         gdirectorymonitor.obj \
84         gdrive.obj \
85         gdummyfile.obj \
86         gfile.obj \
87         gfileattribute.obj \
88         gfileenumerator.obj \
89         gfileicon.obj \
90         gfileinfo.obj \
91         gfileinputstream.obj \
92         gfilemonitor.obj \
93         gfilenamecompleter.obj \
94         gfileoutputstream.obj \
95         gfilterinputstream.obj \
96         gfilteroutputstream.obj \
97         gicon.obj \
98         ginputstream.obj \
99         gioenumtypes.obj \
100         gioerror.obj \
101         giomodule.obj \
102         gioscheduler.obj \
103         gloadableicon.obj \
104         gmemoryinputstream.obj \
105         gmemoryoutputstream.obj \
106         gmount.obj \
107         gmountoperation.obj \
108         gnativevolumemonitor.obj \
109         goutputstream.obj \
110         gpollfilemonitor.obj \
111         gseekable.obj \
112         gsimpleasyncresult.obj \
113 #       gsocketinputstream.obj \
114 #       gsocketoutputstream.obj \
115         gthemedicon.obj \
116         gunionvolumemonitor.obj \
117         gvfs.obj \
118         gvolume.obj \
119         gvolumemonitor.obj \
120         \
121         glocalvfs.obj \
122         glocalfile.obj \
123         glocalfileenumerator.obj \
124         glocalfileinfo.obj \
125         glocalfileinputstream.obj \
126         glocalfileoutputstream.obj \
127         glocalfilemonitor.obj \
128         glocaldirectorymonitor.obj \
129         gwin32appinfo.obj \
130         \
131         gio-marshal.obj
132
133 libgio_2_0_la_LIBADD = \
134         $(top_builddir)/glib/libglib-2.0.la \
135         $(top_builddir)/gobject/libgobject-2.0.la \
136         $(top_builddir)/gmodule/libgmodule-2.0.la \
137         $(platform_libadd) \
138         $(SELINUX_LIBS) \
139         $(GLIB_LIBS) \
140         $(XATTR_LIBS) \
141         $(NULL)
142
143 unix_sources = \
144         gunixdrive.c \
145         gunixdrive.h \
146         gunixmounts.c \
147         gunixmounts.h \
148         gunixvolume.c \
149         gunixvolume.h \
150         gunixvolumemonitor.c \
151         gunixvolumemonitor.h \
152         $(NULL)
153
154 NULL = \
155         
156
157 libgio_2_0_la_LDFLAG = \
158         -export-dynamic \
159         $(no_undefined) \
160         -export-symbols-regex \
161         '^g_.*'
162
163 giounixincludedi = \
164         $(includedir)/gio-unix-2.0/gio
165
166 platform_libadd = \
167         -lshlwapi
168
169 marshal_sources = \
170         gio-marshal.h gio-marshal.c $(NULL)
171
172 gioincludedi = \
173         $(includedir)/glib-2.0/gio/
174
175 EXTRA_DIST = \
176         gio-marshal.list $(NULL)
177
178 CLEANFILES = \
179         $(marshal_sources) $(NULL)
180
181 no_undefined = \
182         -no-undefined
183
184 giounixinclude_HEADERS = \
185         gunixmounts.h $(NULL)
186
187 GLIB_GEN_MARSHAL = ..\gobject\glib-genmarshal.exe 
188
189 gio-marshal.h: gio-marshal.list
190         $(GLIB_GEN_MARSHAL) --prefix=_gio_marshal gio-marshal.list --header >> xgen-gwmh \
191         && copy /y xgen-gwmh gio-marshal.h \
192         && del xgen-gwmh xgen-gwmh~
193
194 gio-marshal.c: gio-marshal.h
195         echo #include "gio-marshal.h" >> xgen-gwmc \
196         && $(GLIB_GEN_MARSHAL) --prefix=_gio_marshal gio-marshal.list --body >> xgen-gwmc \
197         && copy xgen-gwmc gio-marshal.c \
198         && del xgen-gwmc xgen-gwmc~
199
200 local_sources = \
201         glocaldirectorymonitor.c \
202         glocaldirectorymonitor.h \
203         glocalfile.c \
204         glocalfile.h \
205         glocalfileenumerator.c \
206         glocalfileenumerator.h \
207         glocalfileinfo.c \
208         glocalfileinfo.h \
209         glocalfileinputstream.c \
210         glocalfileinputstream.h \
211         glocalfilemonitor.c \
212         glocalfilemonitor.h \
213         glocalfileoutputstream.c \
214         glocalfileoutputstream.h \
215         glocalvfs.c \
216         glocalvfs.h \
217         $(NULL)
218
219 all : \
220         $(PRJ_TOP)\config.h \
221         gioalias.h              \
222         gioaliasdef.c           \
223         gio-marshal.c \
224         gioenumtypes.h          \
225         gioenumtypes.c          \
226         libgio-$(PKG_VER).dll
227
228
229 $(PRJ_TOP)\config.h: $(PRJ_TOP)\config.h.win32
230         copy $(PRJ_TOP)\config.h.win32 $(PRJ_TOP)\config.h
231
232 gioalias.h: gio.symbols
233         perl ..\glib\makegalias.pl < gio.symbols > gioalias.h
234
235 gioaliasdef.c: gio.symbols
236           perl ..\glib\makegalias.pl -def < gio.symbols > gioaliasdef.c
237
238 gioenumtypes.h: $(gio_headers) gioenumtypes.h.template
239         $(PERL) ..\gobject\glib-mkenums --template gioenumtypes.h.template $(gio_headers) > gioenumtypes.h
240         
241 gioenumtypes.c: $(gio_headers) gioenumtypes.c.template
242         $(PERL) ..\gobject\glib-mkenums --template gioenumtypes.c.template $(gio_headers) > gioenumtypes.c
243
244 gio.def: gio.symbols
245         echo EXPORTS > gio.def
246         cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DINCLUDE_INTERNAL_SYMBOLS -DALL_FILES \
247                 -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \
248                 -DG_GNUC_PRINTF=;G_GNUC_PRINTF gio.symbols >> gio.def
249
250
251 RESOURCE = $(PACKAGE).res
252
253 libgio-$(PKG_VER).dll : $(OBJECTS) $(PACKAGE).def
254         $(CC) $(CFLAGS) -LD -Felibgio-$(PKG_VER).dll $(OBJECTS) \
255         ..\glib\glib-2.0.lib ..\gobject\gobject-2.0.lib ..\gmodule\gmodule-2.0.lib \
256         $(INTL_LIBS) \
257         user32.lib advapi32.lib shell32.lib wsock32.lib $(LDFLAGS) \
258         /implib:gio-2.0.lib /def:$(PACKAGE).def
259
260 .c.obj :
261         $(CC) $(CFLAGS) -c $(PKG_CFLAGS) $<