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