Be more precise about Carbon v. Cocoa.
[platform/upstream/glib.git] / gio / Makefile.am
1 include $(top_srcdir)/Makefile.decl
2
3 NULL =
4
5 SUBDIRS = gdbus-2.0/codegen
6
7 if OS_UNIX
8 SUBDIRS += xdgmime
9 endif
10
11 if OS_WIN32_AND_DLL_COMPILATION
12 if MS_LIB_AVAILABLE
13 noinst_DATA = gio-2.0.lib
14
15 install_ms_lib_cmd = $(INSTALL) gio-2.0.lib $(DESTDIR)$(libdir)
16 uninstall_ms_lib_cmd = -rm $(DESTDIR)$(libdir)/gio-2.0.lib
17 endif
18 endif
19
20 install-ms-lib:
21         $(install_ms_lib_cmd)
22
23 uninstall-ms-lib:
24         $(uninstall_ms_lib_cmd)
25
26 gio.def: gio.symbols
27         $(AM_V_GEN) (echo EXPORTS; $(CPP) -P -DINCLUDE_VARIABLES -DINCLUDE_INTERNAL_SYMBOLS -DG_OS_WIN32 -DALL_FILES - <$(srcdir)/gio.symbols | sed -e '/^$$/d' -e 's/^/        /' -e 's/G_GNUC_[^ ]*//g' | sort) > $(builddir)/gio.def.tmp && \
28           mv $(builddir)/gio.def.tmp $(builddir)/gio.def
29
30 if OS_LINUX
31 if HAVE_GNUC_VISIBILITY
32 TESTS = abicheck.sh
33 endif
34 endif
35
36 AM_CPPFLAGS = \
37         -DG_LOG_DOMAIN=\"GLib-GIO\"                     \
38         $(gmodule_INCLUDES)                             \
39         $(GLIB_DEBUG_FLAGS)                             \
40         -DGIO_COMPILATION                               \
41         -DGIO_MODULE_DIR=\"$(GIO_MODULE_DIR)\"  
42
43 lib_LTLIBRARIES = libgio-2.0.la
44
45 gdbus_headers =                         \
46         gdbusauthobserver.h             \
47         gcredentials.h                  \
48         gdbusutils.h                    \
49         gdbuserror.h                    \
50         gdbusaddress.h                  \
51         gdbusconnection.h               \
52         gdbusmessage.h                  \
53         gdbusnameowning.h               \
54         gdbusnamewatching.h             \
55         gdbusproxy.h                    \
56         gdbusintrospection.h            \
57         gdbusmethodinvocation.h         \
58         gdbusserver.h                   \
59         gdbusinterface.h                \
60         gdbusinterfaceskeleton.h        \
61         gdbusobject.h                   \
62         gdbusobjectskeleton.h           \
63         gdbusobjectproxy.h              \
64         gdbusobjectmanager.h            \
65         gdbusobjectmanagerclient.h      \
66         gdbusobjectmanagerserver.h      \
67         $(NULL)
68
69 gdbus_sources =                                                         \
70         gdbusutils.h                    gdbusutils.c                    \
71         gdbusaddress.h                  gdbusaddress.c                  \
72         gdbusauthobserver.h             gdbusauthobserver.c             \
73         gdbusauth.h                     gdbusauth.c                     \
74         gdbusauthmechanism.h            gdbusauthmechanism.c            \
75         gdbusauthmechanismanon.h        gdbusauthmechanismanon.c        \
76         gdbusauthmechanismexternal.h    gdbusauthmechanismexternal.c    \
77         gdbusauthmechanismsha1.h        gdbusauthmechanismsha1.c        \
78         gdbuserror.h                    gdbuserror.c                    \
79         gdbusconnection.h               gdbusconnection.c               \
80         gdbusmessage.h                  gdbusmessage.c                  \
81         gdbusnameowning.h               gdbusnameowning.c               \
82         gdbusnamewatching.h             gdbusnamewatching.c             \
83         gdbusproxy.h                    gdbusproxy.c                    \
84         gdbusprivate.h                  gdbusprivate.c                  \
85         gdbusintrospection.h            gdbusintrospection.c            \
86         gdbusmethodinvocation.h         gdbusmethodinvocation.c         \
87         gdbusserver.h                   gdbusserver.c                   \
88         gdbusinterface.h                gdbusinterface.c                \
89         gdbusinterfaceskeleton.h        gdbusinterfaceskeleton.c        \
90         gdbusobject.h                   gdbusobject.c                   \
91         gdbusobjectskeleton.h           gdbusobjectskeleton.c           \
92         gdbusobjectproxy.h              gdbusobjectproxy.c              \
93         gdbusobjectmanager.h            gdbusobjectmanager.c            \
94         gdbusobjectmanagerclient.h      gdbusobjectmanagerclient.c      \
95         gdbusobjectmanagerserver.h      gdbusobjectmanagerserver.c      \
96         $(NULL)
97
98 settings_headers = \
99         gsettingsbackend.h              \
100         gsettingsschema.h               \
101         gsettings.h
102
103 settings_sources = \
104         gvdb/gvdb-format.h              \
105         gvdb/gvdb-reader.h              \
106         gvdb/gvdb-reader.c              \
107         gdelayedsettingsbackend.h       \
108         gdelayedsettingsbackend.c       \
109         gkeyfilesettingsbackend.c       \
110         gmemorysettingsbackend.c        \
111         gnullsettingsbackend.c          \
112         gsettingsbackendinternal.h      \
113         gsettingsbackend.c              \
114         gsettingsschema.h               \
115         gsettingsschema-internal.h      \
116         gsettingsschema.c               \
117         gsettings-mapping.h             \
118         gsettings-mapping.c             \
119         gsettings.c
120
121 if OS_WIN32
122 settings_sources += \
123         gregistrysettingsbackend.h      \
124         gregistrysettingsbackend.c
125 endif
126
127 if OS_COCOA
128 settings_sources += \
129         gnextstepsettingsbackend.c
130 endif
131
132 application_headers = \
133         gapplication.h                  \
134         gapplicationcommandline.h       \
135                                         \
136         gactiongroup.h                  \
137         gactionmap.h                    \
138         gsimpleactiongroup.h            \
139         gremoteactiongroup.h            \
140         gactiongroupexporter.h          \
141         gdbusactiongroup.h              \
142         gaction.h                       \
143         gsimpleaction.h                 \
144                                         \
145         gmenumodel.h                    \
146         gmenu.h                         \
147         gmenuexporter.h                 \
148         gdbusmenumodel.h                \
149         $(NULL)
150
151 application_sources = \
152         gapplication.c                          \
153         gapplicationcommandline.c               \
154         gapplicationimpl-dbus.c                 \
155         gapplicationimpl.h                      \
156                                                 \
157         gactiongroup.c                          \
158         gactionmap.c                            \
159         gsimpleactiongroup.c                    \
160         gremoteactiongroup.c                    \
161         gactiongroupexporter.c                  \
162         gdbusactiongroup.c                      \
163         gaction.c                               \
164         gsimpleaction.c                         \
165                                                 \
166         gmenumodel.c                            \
167         gmenu.c                                 \
168         gmenuexporter.c                         \
169         gdbusmenumodel.c                        \
170         $(NULL)
171
172 local_sources = \
173         glocaldirectorymonitor.c        \
174         glocaldirectorymonitor.h        \
175         glocalfile.c                    \
176         glocalfile.h                    \
177         glocalfileenumerator.c          \
178         glocalfileenumerator.h          \
179         glocalfileinfo.c                \
180         glocalfileinfo.h                \
181         glocalfileinputstream.c         \
182         glocalfileinputstream.h         \
183         glocalfilemonitor.c             \
184         glocalfilemonitor.h             \
185         glocalfileoutputstream.c        \
186         glocalfileoutputstream.h        \
187         glocalfileiostream.c            \
188         glocalfileiostream.h            \
189         glocalvfs.c                     \
190         glocalvfs.h                     \
191         gsocks4proxy.c                  \
192         gsocks4proxy.h                  \
193         gsocks4aproxy.c                 \
194         gsocks4aproxy.h                 \
195         gsocks5proxy.c                  \
196         gsocks5proxy.h                  \
197         $(NULL)
198
199 platform_libadd =
200 platform_deps =
201 appinfo_sources =
202
203 if HAVE_INOTIFY
204 SUBDIRS += inotify
205 platform_libadd += inotify/libinotify.la
206 platform_deps += inotify/libinotify.la
207 endif
208
209 if HAVE_FEN
210 AM_CPPFLAGS += -DHAVE_FEN
211 SUBDIRS += fen
212 platform_libadd += fen/libfen.la
213 platform_deps += fen/libfen.la
214 endif
215
216 if OS_WIN32
217 SUBDIRS += win32
218 platform_libadd += win32/libgiowin32.la
219 platform_deps += win32/libgiowin32.la
220 endif
221
222 SUBDIRS += .
223
224 if HAVE_FAM
225 SUBDIRS += fam
226 endif
227
228 if OS_UNIX
229 appinfo_sources += gdesktopappinfo.c
230 platform_libadd += xdgmime/libxdgmime.la $(RESOLVER_LIBADD)
231 platform_deps += xdgmime/libxdgmime.la
232 unix_sources = \
233         gfiledescriptorbased.c  \
234         gunixconnection.c       \
235         gunixcredentialsmessage.c       \
236         gunixfdlist.c           \
237         gunixfdmessage.c        \
238         gunixmount.c            \
239         gunixmount.h            \
240         gunixmounts.c           \
241         gunixsocketaddress.c    \
242         gunixvolume.c           \
243         gunixvolume.h           \
244         gunixvolumemonitor.c    \
245         gunixvolumemonitor.h    \
246         gunixinputstream.c      \
247         gunixoutputstream.c     \
248         $(NULL)
249
250
251 giounixincludedir=$(includedir)/gio-unix-2.0/gio
252 giounixinclude_HEADERS = \
253         gdesktopappinfo.h       \
254         gfiledescriptorbased.h  \
255         gunixconnection.h       \
256         gunixcredentialsmessage.h       \
257         gunixmounts.h           \
258         gunixfdlist.h           \
259         gunixfdmessage.h        \
260         gunixinputstream.h      \
261         gunixoutputstream.h     \
262         gunixsocketaddress.h    \
263         $(NULL)
264
265 if HAVE_NETLINK
266 unix_sources +=                  \
267         gnetworkmonitornetlink.c \
268         gnetworkmonitornetlink.h \
269         $(NULL)
270 endif
271 endif
272
273 win32_actual_sources = \
274         gwin32mount.c \
275         gwin32mount.h \
276         gwin32volumemonitor.c \
277         gwin32volumemonitor.h \
278         gwin32inputstream.c \
279         gwin32outputstream.c \
280         gwin32outputstream.h \
281         $(NULL)
282
283 win32_more_sources_for_vcproj = \
284         gwin32appinfo.c \
285         gregistrysettingsbackend.c \
286         win32/gwin32directorymonitor.c \
287         win32/gwinhttpfile.c \
288         win32/gwinhttpfileinputstream.c \
289         win32/gwinhttpfileoutputstream.c \
290         win32/gwinhttpvfs.c
291
292 if OS_WIN32
293 appinfo_sources += gwin32appinfo.c gwin32appinfo.h
294 platform_libadd += -lshlwapi -lws2_32 -ldnsapi
295 win32_sources = $(win32_actual_sources)
296
297 giowin32includedir=$(includedir)/gio-win32-2.0/gio
298 giowin32include_HEADERS = \
299         gwin32inputstream.h \
300         gwin32outputstream.h \
301         $(NULL)
302
303 endif
304
305 SUBDIRS += tests
306
307 libgio_2_0_la_SOURCES =         \
308         gappinfo.c              \
309         gasynchelper.c          \
310         gasynchelper.h          \
311         gasyncinitable.c        \
312         gasyncresult.c          \
313         gbufferedinputstream.c  \
314         gbufferedoutputstream.c \
315         gcancellable.c          \
316         gcontenttype.c          \
317         gcontenttypeprivate.h   \
318         gcharsetconverter.c     \
319         gconverter.c            \
320         gconverterinputstream.c \
321         gconverteroutputstream.c        \
322         gcredentials.c          \
323         gdatainputstream.c      \
324         gdataoutputstream.c     \
325         gdrive.c                \
326         gdummyfile.h            \
327         gdummyfile.c            \
328         gdummyproxyresolver.c   \
329         gdummyproxyresolver.h   \
330         gdummytlsbackend.c      \
331         gdummytlsbackend.h      \
332         gemblem.h               \
333         gemblem.c               \
334         gemblemedicon.h         \
335         gemblemedicon.c         \
336         gfile.c                 \
337         gfileattribute.c        \
338         gfileattribute-priv.h   \
339         gfileenumerator.c       \
340         gfileicon.c             \
341         gfileinfo.c             \
342         gfileinfo-priv.h        \
343         gfileinputstream.c      \
344         gfilemonitor.c          \
345         gfilenamecompleter.c    \
346         gfileoutputstream.c     \
347         gfileiostream.c         \
348         gfilterinputstream.c    \
349         gfilteroutputstream.c   \
350         gicon.c                 \
351         ginetaddress.c          \
352         ginetaddressmask.c      \
353         ginetsocketaddress.c    \
354         ginitable.c             \
355         ginputstream.c          \
356         gioenums.h              \
357         gioerror.c              \
358         giomodule.c             \
359         giomodule-priv.h        \
360         gioscheduler.c          \
361         giostream.c             \
362         gloadableicon.c         \
363         gmount.c                \
364         gmemoryinputstream.c    \
365         gmemoryoutputstream.c   \
366         gmountoperation.c       \
367         gnativevolumemonitor.c  \
368         gnativevolumemonitor.h  \
369         gnetworkaddress.c       \
370         gnetworkingprivate.h    \
371         gnetworkmonitor.c       \
372         gnetworkmonitorbase.c   \
373         gnetworkmonitorbase.h   \
374         gnetworkservice.c       \
375         goutputstream.c         \
376         gpermission.c           \
377         gpollableinputstream.c  \
378         gpollableoutputstream.c \
379         gpollfilemonitor.c      \
380         gpollfilemonitor.h      \
381         gproxyresolver.c        \
382         gresolver.c             \
383         gresource.c             \
384         gresourcefile.c         \
385         gresourcefile.h         \
386         gseekable.c             \
387         gsimpleasyncresult.c    \
388         gsimplepermission.c     \
389         gsocket.c               \
390         gsocketaddress.c        \
391         gsocketaddressenumerator.c \
392         gsocketclient.c         \
393         gsocketconnectable.c    \
394         gsocketconnection.c     \
395         gsocketcontrolmessage.c \
396         gsocketinputstream.c    \
397         gsocketinputstream.h    \
398         gsocketlistener.c       \
399         gsocketoutputstream.c   \
400         gsocketoutputstream.h   \
401         gproxy.c                \
402         gproxyaddress.c         \
403         gproxyaddressenumerator.c \
404         gsocketservice.c        \
405         gsrvtarget.c            \
406         gtcpconnection.c        \
407         gtcpwrapperconnection.c \
408         gthreadedsocketservice.c\
409         gthemedicon.c           \
410         gthreadedresolver.c     \
411         gthreadedresolver.h     \
412         gtlsbackend.c           \
413         gtlscertificate.c       \
414         gtlsclientconnection.c  \
415         gtlsconnection.c        \
416         gtlsdatabase.c          \
417         gtlsfiledatabase.c      \
418         gtlsinteraction.c       \
419         gtlspassword.c          \
420         gtlsserverconnection.c  \
421         gunionvolumemonitor.c   \
422         gunionvolumemonitor.h   \
423         gvfs.c                  \
424         gvolume.c               \
425         gvolumemonitor.c        \
426         gzlibcompressor.c       \
427         gzlibdecompressor.c     \
428         gmountprivate.h         \
429         gioenumtypes.h          \
430         gioenumtypes.c          \
431         $(appinfo_sources)      \
432         $(unix_sources)         \
433         $(win32_sources)        \
434         $(application_sources)  \
435         $(settings_sources)     \
436         $(gdbus_sources)        \
437         $(local_sources)        \
438         $(NULL)
439
440 EXTRA_DIST += strinfo.c
441
442 libgio_2_0_la_LIBADD = \
443         $(top_builddir)/glib/libglib-2.0.la             \
444         $(top_builddir)/gobject/libgobject-2.0.la       \
445         $(top_builddir)/gmodule/libgmodule-2.0.la       \
446         $(platform_libadd)                              \
447         $(ZLIB_LIBS)                                    \
448         $(SELINUX_LIBS)                                 \
449         $(GLIB_LIBS)                                    \
450         $(XATTR_LIBS)                                   \
451         $(NETWORK_LIBS)                                 \
452         $(NULL)
453
454 libgio_2_0_la_CPPFLAGS = $(ZLIB_CFLAGS) $(AM_CPPFLAGS)
455
456 if PLATFORM_WIN32
457 no_undefined = -no-undefined
458 endif
459
460 if OS_WIN32_AND_DLL_COMPILATION
461 export_symbols = -export-symbols $(builddir)/gio.def
462 gio_def = gio.def
463
464 gio_win32_res = gio-win32-res.o
465 gio_win32_res_ldflag = -Wl,$(gio_win32_res)
466
467 install-def-file:
468         $(INSTALL) $(builddir)/gio.def $(DESTDIR)$(libdir)/gio-2.0.def
469
470 uninstall-def-file:
471         -rm $(DESTDIR)$(libdir)/gio-2.0.def
472 else
473 install-def-file:
474 uninstall-def-file:
475
476 export_symbols = $(LIBTOOL_EXPORT_OPTIONS)
477 endif
478
479 install-data-local: install-ms-lib install-def-file
480         $(mkinstalldirs) $(DESTDIR)$(GIO_MODULE_DIR)
481
482 uninstall-local: uninstall-ms-lib uninstall-def-file
483
484 libgio_2_0_la_LDFLAGS = $(GLIB_LINK_FLAGS) \
485         $(gio_win32_res_ldflag) \
486         -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
487         -export-dynamic $(no_undefined) $(export_symbols)
488
489 if OS_COCOA
490 # This is dumb.  The ObjC source file should be properly named .m
491 libgio_2_0_la_CFLAGS = -xobjective-c
492 libgio_2_0_la_LDFLAGS += -framework Foundation
493 endif
494
495 libgio_2_0_la_DEPENDENCIES = $(gio_win32_res) $(gio_def) $(platform_deps)
496
497 gio-win32-res.o: gio.rc
498         $(WINDRES) gio.rc $@
499
500 gio_headers =                   \
501         gappinfo.h              \
502         gasyncinitable.h        \
503         gasyncresult.h          \
504         gbufferedinputstream.h  \
505         gbufferedoutputstream.h \
506         gcancellable.h          \
507         gcontenttype.h          \
508         gcharsetconverter.h     \
509         gconverter.h            \
510         gconverterinputstream.h \
511         gconverteroutputstream.h        \
512         gdatainputstream.h      \
513         gdataoutputstream.h     \
514         gdrive.h                \
515         gemblem.h               \
516         gemblemedicon.h         \
517         gfile.h                 \
518         gfileattribute.h        \
519         gfileenumerator.h       \
520         gfileicon.h             \
521         gfileinfo.h             \
522         gfileinputstream.h      \
523         gfilemonitor.h          \
524         gfilenamecompleter.h    \
525         gfileoutputstream.h     \
526         gfileiostream.h         \
527         gfilterinputstream.h    \
528         gfilteroutputstream.h   \
529         gicon.h                 \
530         ginetaddress.h          \
531         ginetaddressmask.h      \
532         ginetsocketaddress.h    \
533         ginputstream.h          \
534         ginitable.h             \
535         gio.h                   \
536         giotypes.h              \
537         gioenums.h              \
538         gioerror.h              \
539         giomodule.h             \
540         gioscheduler.h          \
541         giostream.h             \
542         gloadableicon.h         \
543         gmount.h                \
544         gmemoryinputstream.h    \
545         gmemoryoutputstream.h   \
546         gmountoperation.h       \
547         gnativevolumemonitor.h  \
548         gnetworkaddress.h       \
549         gnetworkmonitor.h       \
550         gnetworkservice.h       \
551         goutputstream.h         \
552         gpermission.h           \
553         gpollableinputstream.h  \
554         gpollableoutputstream.h \
555         gproxyaddress.h         \
556         gproxy.h                \
557         gproxyaddressenumerator.h \
558         gproxyresolver.h        \
559         gresolver.h             \
560         gresource.h             \
561         gseekable.h             \
562         gsimpleasyncresult.h    \
563         gsimplepermission.h     \
564         gsocket.h               \
565         gsocketaddress.h        \
566         gsocketaddressenumerator.h \
567         gsocketclient.h         \
568         gsocketconnectable.h    \
569         gsocketconnection.h     \
570         gsocketcontrolmessage.h \
571         gsocketlistener.h       \
572         gsocketservice.h        \
573         gsrvtarget.h            \
574         gtcpconnection.h        \
575         gtcpwrapperconnection.h \
576         gthreadedsocketservice.h\
577         gthemedicon.h           \
578         gtlsbackend.h           \
579         gtlscertificate.h       \
580         gtlsclientconnection.h  \
581         gtlsconnection.h        \
582         gtlsdatabase.h          \
583         gtlsfiledatabase.h      \
584         gtlsinteraction.h       \
585         gtlspassword.h          \
586         gtlsserverconnection.h  \
587         gvfs.h                  \
588         gvolume.h               \
589         gvolumemonitor.h        \
590         gzlibcompressor.h       \
591         gzlibdecompressor.h     \
592         $(application_headers)  \
593         $(settings_headers)     \
594         $(gdbus_headers)        \
595         $(NULL)
596
597 gioincludedir=$(includedir)/glib-2.0/gio/
598 gioinclude_HEADERS =            \
599         $(gio_headers)          \
600         gioenumtypes.h
601
602 # these sources (also mentioned above) are generated.
603 BUILT_SOURCES =                 \
604         gconstructor_as_data.h  \
605         gioenumtypes.h          \
606         gioenumtypes.c          \
607         $(NULL)
608
609 EXTRA_DIST +=                   \
610         data-to-c.pl            \
611         gio.symbols             \
612         gioenumtypes.h.template \
613         gioenumtypes.c.template \
614         makefile.msc            \
615         abicheck.sh             \
616         gio.rc.in               \
617         gschema.dtd             \
618         gconstructor_as_data.h  \
619         $(NULL)
620
621 BUILT_EXTRA_DIST =              \
622         gio.rc
623
624 # This is read by gobject-introspection/misc/ and gtk-doc
625 gio-public-headers.txt: Makefile
626         echo $(gioinclude_HEADERS) $(giowin32include_HEADERS) $(giounixinclude_HEADERS) > $@.tmp && mv $@.tmp $@
627
628 CLEANFILES = gio-public-headers.txt gconstructor_as_data.h
629
630 all-local: gio-public-headers.txt
631
632 gioenumtypes.h: $(gio_headers) gioenumtypes.h.template
633         $(AM_V_GEN) ( top_builddir=`cd $(top_builddir) && pwd`; \
634           cd $(srcdir) && $$top_builddir/gobject/glib-mkenums --template gioenumtypes.h.template $(gio_headers) ) > \
635             gioenumtypes.h.tmp && mv gioenumtypes.h.tmp gioenumtypes.h
636
637 gioenumtypes.c: $(gio_headers) gioenumtypes.c.template
638         $(AM_V_GEN) ( top_builddir=`cd $(top_builddir) && pwd`; \
639           cd $(srcdir) && $$top_builddir/gobject/glib-mkenums --template gioenumtypes.c.template $(gio_headers) ) > \
640             gioenumtypes.c.tmp && mv gioenumtypes.c.tmp gioenumtypes.c
641
642 gio-2.0.lib: libgio-2.0.la gio.def
643         lib -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgio-2.0-$(LT_CURRENT_MINUS_AGE).dll -def:$(builddir)/gio.def -out:$@
644
645 bin_PROGRAMS = gio-querymodules glib-compile-schemas glib-compile-resources gsettings
646
647 glib_compile_resources_LDADD = \
648         $(top_builddir)/glib/libglib-2.0.la \
649         $(top_builddir)/gobject/libgobject-2.0.la       \
650         libgio-2.0.la
651
652 glib_compile_resources_SOURCES = \
653         gvdb/gvdb-format.h              \
654         gvdb/gvdb-builder.h             \
655         gvdb/gvdb-builder.c             \
656         glib-compile-resources.c
657
658 gio_querymodules_SOURCES = gio-querymodules.c
659 gio_querymodules_LDADD   = \
660         $(top_builddir)/glib/libglib-2.0.la             \
661         $(top_builddir)/gobject/libgobject-2.0.la       \
662         $(top_builddir)/gmodule/libgmodule-2.0.la       \
663         libgio-2.0.la                                   \
664         $(NULL)
665
666 gconstructor_as_data.h: $(top_srcdir)/glib/gconstructor.h data-to-c.pl
667         $(AM_V_GEN) $(srcdir)/data-to-c.pl $(top_srcdir)/glib/gconstructor.h gconstructor_code > $@.tmp && mv $@.tmp $@
668
669 glib_compile_schemas_LDADD = $(top_builddir)/glib/libglib-2.0.la
670 glib_compile_schemas_SOURCES = \
671         gconstructor_as_data.h \
672         gvdb/gvdb-format.h              \
673         gvdb/gvdb-builder.h             \
674         gvdb/gvdb-builder.c             \
675         glib-compile-schemas.c
676
677 gsettings_LDADD = \
678         $(top_builddir)/glib/libglib-2.0.la             \
679         $(top_builddir)/gobject/libgobject-2.0.la       \
680         libgio-2.0.la
681 gsettings_SOURCES = gsettings-tool.c
682
683 schemadir = $(datadir)/glib-2.0/schemas
684 dist_schema_DATA = gschema.dtd
685
686 # ------------------------------------------------------------------------
687 # gdbus(1) tool
688
689 bin_PROGRAMS += gdbus
690 gdbus_SOURCES = gdbus-tool.c
691 gdbus_LDADD = libgio-2.0.la \
692         $(top_builddir)/glib/libglib-2.0.la             \
693         $(top_builddir)/gobject/libgobject-2.0.la
694
695 completiondir = $(sysconfdir)/bash_completion.d
696 completion_DATA = \
697         gdbus-bash-completion.sh                \
698         gsettings-bash-completion.sh            \
699         gresource-bash-completion.sh
700 EXTRA_DIST += $(completion_DATA)
701
702 # ------------------------------------------------------------------------
703 # gresource tool
704
705 bin_PROGRAMS += gresource
706 gresource_SOURCES = gresource-tool.c
707 gresource_CPPFLAGS = $(LIBELF_CFLAGS) $(AM_CPPFLAGS)
708 gresource_LDADD = libgio-2.0.la \
709         $(top_builddir)/glib/libglib-2.0.la             \
710         $(top_builddir)/gobject/libgobject-2.0.la \
711         $(LIBELF_LIBS)
712
713 # ------------------------------------------------------------------------
714
715 dist-hook: $(BUILT_EXTRA_DIST) ../build/win32/vs9/gio.vcproj ../build/win32/vs10/gio.vcxproj ../build/win32/vs10/gio.vcxproj.filters
716         files='$(BUILT_EXTRA_DIST)'; \
717         for f in $$files; do \
718           if test -f $$f; then d=.; else d=$(srcdir); fi; \
719           cp $$d/$$f $(distdir) || exit 1; done
720
721 ../build/win32/vs9/gio.vcproj: $(top_srcdir)/build/win32/vs9/gio.vcprojin
722         for F in `echo $(libgio_2_0_la_SOURCES) $(win32_actual_sources) $(win32_more_sources_for_vcproj) | tr '/' '\\'`; do \
723                 case $$F in \
724                 gunix*.c|gdesktopappinfo.c|gnetworkmonitornetlink.c) ;; \
725                 *.c) echo '   <File RelativePath="..\..\..\gio\'$$F'" />' \
726                      ;; \
727                 esac; \
728         done | sort -u >libgio.sourcefiles
729         $(CPP) -P - <$(top_srcdir)/build/win32/vs9/gio.vcprojin >$@
730         rm libgio.sourcefiles
731
732 ../build/win32/vs10/gio.vcxproj: $(top_srcdir)/build/win32/vs10/gio.vcxprojin
733         for F in `echo $(libgio_2_0_la_SOURCES) $(win32_actual_sources) $(win32_more_sources_for_vcproj) | tr '/' '\\'`; do \
734                 case $$F in \
735                 gunix*.c|gdesktopappinfo.c|gnetworkmonitornetlink.c) ;; \
736                 *.c) echo '    <ClCompile Include="..\..\..\gio\'$$F'" />' \
737                      ;; \
738                 esac; \
739         done | sort -u >libgio.vs10.sourcefiles
740         $(CPP) -P - <$(top_srcdir)/build/win32/vs10/gio.vcxprojin >$@
741         rm libgio.vs10.sourcefiles
742
743 ../build/win32/vs10/gio.vcxproj.filters: $(top_srcdir)/build/win32/vs10/gio.vcxproj.filtersin
744         for F in `echo $(libgio_2_0_la_SOURCES) $(win32_actual_sources) $(win32_more_sources_for_vcproj) | tr '/' '\\'`; do \
745                 case $$F in \
746                 gunix*.c|gdesktopappinfo.c|gnetworkmonitornetlink.c) ;; \
747                 *.c) echo '    <ClCompile Include="..\..\..\gio\'$$F'"><Filter>Source Files</Filter></ClCompile>' \
748                      ;; \
749                 esac; \
750         done | sort -u >libgio.vs10.sourcefiles.filters
751         $(CPP) -P - <$(top_srcdir)/build/win32/vs10/gio.vcxproj.filtersin >$@
752         rm libgio.vs10.sourcefiles.filters
753
754 if HAVE_GLIB_RUNTIME_LIBDIR
755 install-data-hook:
756         mkdir -p $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
757         mv $(DESTDIR)$(libdir)/libgio-2.0.so.0 $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
758         mv $(DESTDIR)$(libdir)/libgio-2.0.so.0.$(LT_CURRENT).$(LT_REVISION) $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
759         rm -f $(DESTDIR)$(libdir)/libgio-2.0.so
760         ln -s $(GLIB_RUNTIME_LIBDIR)/libgio-2.0.so.0.$(LT_CURRENT).$(LT_REVISION) $(DESTDIR)$(libdir)/libgio-2.0.so
761 endif