Add a wrapper for the AddFull document portal api
[glib.git] / gio / Makefile.am
blobb0aad6470e6e5310e8d4dacd603c144363e4aab5
1 include $(top_srcdir)/glib.mk
3 SUBDIRS = gdbus-2.0/codegen
5 if OS_UNIX
6 if !OS_COCOA
7 SUBDIRS += xdgmime
8 endif
9 endif
11 if OS_WIN32_AND_DLL_COMPILATION
12 if MS_LIB_AVAILABLE
13 noinst_DATA += gio-2.0.lib
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
20 install-ms-lib:
21         $(install_ms_lib_cmd)
23 uninstall-ms-lib:
24         $(uninstall_ms_lib_cmd)
26 AM_CPPFLAGS = \
27         -DG_LOG_DOMAIN=\"GLib-GIO\"                     \
28         $(gmodule_INCLUDES)                             \
29         $(GLIB_DEBUG_FLAGS)                             \
30         -DGIO_COMPILATION                               \
31         -DGIO_MODULE_DIR=\"$(GIO_MODULE_DIR)\"  
33 AM_CFLAGS = $(GLIB_WARN_CFLAGS)
35 lib_LTLIBRARIES = libgio-2.0.la
37 gdbus_headers =                         \
38         gdbusauthobserver.h             \
39         gcredentials.h                  \
40         gdbusutils.h                    \
41         gdbuserror.h                    \
42         gdbusaddress.h                  \
43         gdbusconnection.h               \
44         gdbusmessage.h                  \
45         gdbusnameowning.h               \
46         gdbusnamewatching.h             \
47         gdbusproxy.h                    \
48         gdbusintrospection.h            \
49         gdbusmethodinvocation.h         \
50         gdbusserver.h                   \
51         gdbusinterface.h                \
52         gdbusinterfaceskeleton.h        \
53         gdbusobject.h                   \
54         gdbusobjectskeleton.h           \
55         gdbusobjectproxy.h              \
56         gdbusobjectmanager.h            \
57         gdbusobjectmanagerclient.h      \
58         gdbusobjectmanagerserver.h      \
59         gtestdbus.h                     \
60         $(NULL)
62 gdbus_sources =                                                         \
63         gdbusutils.h                    gdbusutils.c                    \
64         gdbusaddress.h                  gdbusaddress.c                  \
65         gdbusauthobserver.h             gdbusauthobserver.c             \
66         gdbusauth.h                     gdbusauth.c                     \
67         gdbusauthmechanism.h            gdbusauthmechanism.c            \
68         gdbusauthmechanismanon.h        gdbusauthmechanismanon.c        \
69         gdbusauthmechanismexternal.h    gdbusauthmechanismexternal.c    \
70         gdbusauthmechanismsha1.h        gdbusauthmechanismsha1.c        \
71         gdbuserror.h                    gdbuserror.c                    \
72         gdbusconnection.h               gdbusconnection.c               \
73         gdbusmessage.h                  gdbusmessage.c                  \
74         gdbusnameowning.h               gdbusnameowning.c               \
75         gdbusnamewatching.h             gdbusnamewatching.c             \
76         gdbusproxy.h                    gdbusproxy.c                    \
77         gdbusprivate.h                  gdbusprivate.c                  \
78         gdbusintrospection.h            gdbusintrospection.c            \
79         gdbusmethodinvocation.h         gdbusmethodinvocation.c         \
80         gdbusserver.h                   gdbusserver.c                   \
81         gdbusinterface.h                gdbusinterface.c                \
82         gdbusinterfaceskeleton.h        gdbusinterfaceskeleton.c        \
83         gdbusobject.h                   gdbusobject.c                   \
84         gdbusobjectskeleton.h           gdbusobjectskeleton.c           \
85         gdbusobjectproxy.h              gdbusobjectproxy.c              \
86         gdbusobjectmanager.h            gdbusobjectmanager.c            \
87         gdbusobjectmanagerclient.h      gdbusobjectmanagerclient.c      \
88         gdbusobjectmanagerserver.h      gdbusobjectmanagerserver.c      \
89         gtestdbus.h                     gtestdbus.c                     \
90         $(NULL)
92 # These are not built into the library yet
93 EXTRA_DIST += gdbusdaemon.c gdbusdaemon.h dbus-daemon.xml
95 gdbus-daemon-generated.h gdbus-daemon-generated.c: $(srcdir)/dbus-daemon.xml $(srcdir)/gdbus-2.0/codegen/gdbus-codegen.in
96         $(AM_V_GEN) UNINSTALLED_GLIB_SRCDIR=$(top_srcdir) \
97                 UNINSTALLED_GLIB_BUILDDIR=$(top_builddir) \
98                 $(PYTHON) $(srcdir)/gdbus-2.0/codegen/gdbus-codegen.in \
99                 --interface-prefix org. \
100                 --generate-c-code gdbus-daemon-generated \
101                 --c-namespace _G \
102                 $(srcdir)/dbus-daemon.xml \
103                 $(NULL)
105 settings_headers = \
106         gsettingsbackend.h              \
107         gsettingsschema.h               \
108         gsettings.h
110 settings_base_sources = \
111         gvdb/gvdb-format.h              \
112         gvdb/gvdb-reader.h              \
113         gvdb/gvdb-reader.c              \
114         gdelayedsettingsbackend.h       \
115         gdelayedsettingsbackend.c       \
116         gkeyfilesettingsbackend.c       \
117         gmemorysettingsbackend.c        \
118         gnullsettingsbackend.c          \
119         gsettingsbackendinternal.h      \
120         gsettingsbackend.c              \
121         gsettingsschema.h               \
122         gsettingsschema-internal.h      \
123         gsettingsschema.c               \
124         gsettings-mapping.h             \
125         gsettings-mapping.c             \
126         gsettings.c
128 settings_sources = $(settings_base_sources)
130 if OS_WIN32
131 win32_settings_sources = \
132         gregistrysettingsbackend.h      \
133         gregistrysettingsbackend.c
135 settings_sources += $(win32_settings_sources)
136 endif
138 if OS_COCOA
139 cocoa_settings_sources = \
140         gnextstepsettingsbackend.c
142 settings_sources += $(cocoa_settings_sources)
143 endif
145 application_headers = \
146         gapplication.h                  \
147         gapplicationcommandline.h       \
148                                         \
149         gactiongroup.h                  \
150         gactionmap.h                    \
151         gsimpleactiongroup.h            \
152         gremoteactiongroup.h            \
153         gactiongroupexporter.h          \
154         gdbusactiongroup.h              \
155         gaction.h                       \
156         gpropertyaction.h               \
157         gsimpleaction.h                 \
158                                         \
159         gmenumodel.h                    \
160         gmenu.h                         \
161         gmenuexporter.h                 \
162         gdbusmenumodel.h                \
163         gnotification.h                 \
164         $(NULL)
166 application_sources = \
167         gapplication.c                          \
168         gapplicationcommandline.c               \
169         gapplicationimpl-dbus.c                 \
170         gapplicationimpl.h                      \
171                                                 \
172         gactiongroup.c                          \
173         gactionmap.c                            \
174         gsimpleactiongroup.c                    \
175         gremoteactiongroup.c                    \
176         gactiongroupexporter.c                  \
177         gdbusactiongroup-private.h              \
178         gdbusactiongroup.c                      \
179         gaction.c                               \
180         gpropertyaction.c                       \
181         gsimpleaction.c                         \
182                                                 \
183         gmenumodel.c                            \
184         gmenu.c                                 \
185         gmenuexporter.c                         \
186         gdbusmenumodel.c                        \
187         gnotification-private.h                 \
188         gnotificationbackend.h                  \
189         gnotification.c                         \
190         gnotificationbackend.c                  \
191         $(NULL)
193 local_sources = \
194         ghttpproxy.c                    \
195         ghttpproxy.h                    \
196         glocalfile.c                    \
197         glocalfile.h                    \
198         glocalfileprivate.h             \
199         glocalfileenumerator.c          \
200         glocalfileenumerator.h          \
201         glocalfileinfo.c                \
202         glocalfileinfo.h                \
203         glocalfileinputstream.c         \
204         glocalfileinputstream.h         \
205         glocalfilemonitor.c             \
206         glocalfilemonitor.h             \
207         glocalfileoutputstream.c        \
208         glocalfileoutputstream.h        \
209         glocalfileiostream.c            \
210         glocalfileiostream.h            \
211         glocalvfs.c                     \
212         glocalvfs.h                     \
213         gsocks4proxy.c                  \
214         gsocks4proxy.h                  \
215         gsocks4aproxy.c                 \
216         gsocks4aproxy.h                 \
217         gsocks5proxy.c                  \
218         gsocks5proxy.h                  \
219         thumbnail-verify.h              \
220         thumbnail-verify.c              \
221         $(NULL)
223 platform_libadd =
224 platform_deps =
225 appinfo_sources =
226 appinfo_headers =
227 contenttype_sources =
229 if HAVE_INOTIFY
230 SUBDIRS += inotify
231 platform_libadd += inotify/libinotify.la
232 platform_deps += inotify/libinotify.la
233 endif
235 if HAVE_KQUEUE
236 SUBDIRS += kqueue
237 platform_libadd += kqueue/libkqueue.la
238 platform_deps += kqueue/libkqueue.la
239 endif
241 if OS_WIN32
242 SUBDIRS += win32
243 platform_libadd += win32/libgiowin32.la
244 platform_deps += win32/libgiowin32.la
245 endif
247 SUBDIRS += . tests
249 if HAVE_FAM
250 SUBDIRS += fam
251 endif
253 if OS_UNIX
254 if !OS_COCOA
255 platform_libadd += xdgmime/libxdgmime.la
256 platform_deps += xdgmime/libxdgmime.la
258 appinfo_headers += gdesktopappinfo.h
259 endif
262 unix_sources = \
263         gfiledescriptorbased.c  \
264         gunixconnection.c       \
265         gunixcredentialsmessage.c       \
266         gunixfdlist.c           \
267         gunixfdmessage.c        \
268         gunixmount.c            \
269         gunixmount.h            \
270         gunixmounts.c           \
271         gunixsocketaddress.c    \
272         gunixvolume.c           \
273         gunixvolume.h           \
274         gunixvolumemonitor.c    \
275         gunixvolumemonitor.h    \
276         gunixinputstream.c      \
277         gunixoutputstream.c     \
278         gcontenttypeprivate.h   \
279         gfdonotificationbackend.c \
280         ggtknotificationbackend.c \
281         gportalnotificationbackend.c \
282         gdocumentportal.c       \
283         gdocumentportal.h       \
284         gportalsupport.c        \
285         gportalsupport.h        \
286         $(portal_sources)       \
287         $(NULL)
289 if OS_COCOA
290 if MAC_OS_X_9
291 unix_sources += gcocoanotificationbackend.c
292 endif
293 endif
295 giounixincludedir=$(includedir)/gio-unix-2.0/gio
296 giounixinclude_HEADERS = \
297         gfiledescriptorbased.h  \
298         gunixconnection.h       \
299         gunixcredentialsmessage.h       \
300         gunixmounts.h           \
301         gunixfdlist.h           \
302         gunixfdmessage.h        \
303         gunixinputstream.h      \
304         gunixoutputstream.h     \
305         gunixsocketaddress.h    \
306         $(appinfo_headers) \
307         $(NULL)
309 if HAVE_NETLINK
310 unix_sources +=                  \
311         gnetworkmonitornetlink.c \
312         gnetworkmonitornetlink.h \
313         gnetworkmonitornm.c      \
314         gnetworkmonitornm.h      \
315         $(NULL)
316 endif
317 endif
319 gdbus_daemon_sources = \
320         gdbusdaemon.c \
321         gdbusdaemon.h \
322         gdbus-daemon-generated.c \
323         gdbus-daemon-generated.h \
324         $(NULL)
326 win32_actual_sources = \
327         $(gdbus_daemon_sources) \
328         gwin32registrykey.c \
329         gwin32registrykey.h \
330         gwin32mount.c \
331         gwin32mount.h \
332         gwin32volumemonitor.c \
333         gwin32volumemonitor.h \
334         gwin32inputstream.c \
335         gwin32outputstream.c \
336         gwin32outputstream.h \
337         gwin32networking.h \
338         $(NULL)
340 win32_more_sources_for_vcproj = \
341         gwin32appinfo.c \
342         gcontenttype-win32.c \
343         gregistrysettingsbackend.c \
344         win32/gwinhttpfile.c \
345         win32/gwinhttpfileinputstream.c \
346         win32/gwinhttpfileoutputstream.c \
347         win32/gwinhttpvfs.c \
348         win32/gwin32fsmonitorutils.c \
349         win32/gwin32filemonitor.c
351 if OS_WIN32
352 appinfo_sources += gwin32appinfo.c gwin32appinfo.h
353 contenttype_sources += gcontenttype-win32.c
354 platform_libadd += -lshlwapi -lws2_32 -ldnsapi -liphlpapi
355 win32_sources = $(win32_actual_sources)
357 giowin32includedir=$(includedir)/gio-win32-2.0/gio
358 giowin32include_HEADERS = \
359         gwin32inputstream.h \
360         gwin32outputstream.h \
361         $(NULL)
363 endif
365 xdp_dbus_built_sources = xdp-dbus.c xdp-dbus.h
366 BUILT_SOURCES += $(xdp_dbus_built_sources)
367 CLEANFILES += $(xdp_dbus_built_sources)
369 portal_interfaces = \
370         org.freedesktop.portal.Documents.xml \
371         org.freedesktop.portal.NetworkMonitor.xml \
372         org.freedesktop.portal.ProxyResolver.xml \
373         $(NULL)
375 EXTRA_DIST += $(portal_interfaces)
377 $(xdp_dbus_built_sources) : $(portal_interfaces)
378         $(AM_V_GEN) UNINSTALLED_GLIB_SRCDIR=$(top_srcdir)               \
379                 UNINSTALLED_GLIB_BUILDDIR=$(top_builddir)               \
380                 $(PYTHON) $(srcdir)/gdbus-2.0/codegen/gdbus-codegen.in  \
381                 --interface-prefix org.freedesktop.portal.              \
382                 --c-namespace GXdp                                      \
383                 --generate-c-code $(builddir)/xdp-dbus                  \
384                 --annotate "org.freedesktop.portal.Documents.Add()" "org.gtk.GDBus.C.UnixFD" "true" \
385                 --annotate "org.freedesktop.portal.Documents.AddNamed()" "org.gtk.GDBus.C.UnixFD" "true" \
386                 --annotate "org.freedesktop.portal.Documents.AddFull()" "org.gtk.GDBus.C.UnixFD" "true" \
387                 $^
389 portal_sources = \
390         gnetworkmonitorportal.c         \
391         gnetworkmonitorportal.h         \
392         gproxyresolverportal.c          \
393         gproxyresolverportal.h          \
394         $(xdp_dbus_built_sources)       \
395         $(NULL)
397 if OS_COCOA
398 contenttype_sources += gosxcontenttype.c
399 appinfo_sources += gosxappinfo.c gosxappinfo.h
400 endif
402 if OS_UNIX
403 if !OS_COCOA
404 contenttype_sources += gcontenttype.c
405 appinfo_sources += gdesktopappinfo.c
406 endif
407 endif
409 gio_base_sources =              \
410         gappinfo.c              \
411         gappinfoprivate.h       \
412         gasynchelper.c          \
413         gasynchelper.h          \
414         gasyncinitable.c        \
415         gasyncresult.c          \
416         gbufferedinputstream.c  \
417         gbufferedoutputstream.c \
418         gbytesicon.c            \
419         gcancellable.c          \
420         gcharsetconverter.c     \
421         gcontextspecificgroup.c \
422         gcontextspecificgroup.h \
423         gconverter.c            \
424         gconverterinputstream.c \
425         gconverteroutputstream.c        \
426         gcredentials.c          \
427         gcredentialsprivate.h   \
428         gdatagrambased.c        \
429         gdatainputstream.c      \
430         gdataoutputstream.c     \
431         gdrive.c                \
432         gdummyfile.h            \
433         gdummyfile.c            \
434         gdummyproxyresolver.c   \
435         gdummyproxyresolver.h   \
436         gdummytlsbackend.c      \
437         gdummytlsbackend.h      \
438         gemblem.h               \
439         gemblem.c               \
440         gemblemedicon.h         \
441         gemblemedicon.c         \
442         gfile.c                 \
443         gfileattribute.c        \
444         gfileattribute-priv.h   \
445         gfileenumerator.c       \
446         gfileicon.c             \
447         gfileinfo.c             \
448         gfileinfo-priv.h        \
449         gfileinputstream.c      \
450         gfilemonitor.c          \
451         gfilenamecompleter.c    \
452         gfileoutputstream.c     \
453         gfileiostream.c         \
454         gfilterinputstream.c    \
455         gfilteroutputstream.c   \
456         gicon.c                 \
457         ginetaddress.c          \
458         ginetaddressmask.c      \
459         ginetsocketaddress.c    \
460         ginitable.c             \
461         ginputstream.c          \
462         gio_probes.d            \
463         gio_trace.h             \
464         gioenums.h              \
465         gioerror.c              \
466         giomodule.c             \
467         giomodule-priv.h        \
468         gioscheduler.c          \
469         giostream.c             \
470         gioprivate.h            \
471         giowin32-priv.h         \
472         gloadableicon.c         \
473         gmount.c                \
474         gmemoryinputstream.c    \
475         gmemoryoutputstream.c   \
476         gmountoperation.c       \
477         gnativevolumemonitor.c  \
478         gnativevolumemonitor.h  \
479         gnativesocketaddress.c  \
480         gnativesocketaddress.h  \
481         gnetworkaddress.c       \
482         gnetworking.c           \
483         gnetworkingprivate.h    \
484         gnetworkmonitor.c       \
485         gnetworkmonitorbase.c   \
486         gnetworkmonitorbase.h   \
487         gnetworkservice.c       \
488         goutputstream.c         \
489         gpermission.c           \
490         gpollableinputstream.c  \
491         gpollableoutputstream.c \
492         gpollableutils.c        \
493         gpollfilemonitor.c      \
494         gpollfilemonitor.h      \
495         gproxy.c                \
496         gproxyaddress.c         \
497         gproxyaddressenumerator.c \
498         gproxyresolver.c        \
499         gresolver.c             \
500         gresource.c             \
501         gresourcefile.c         \
502         gresourcefile.h         \
503         gseekable.c             \
504         gsimpleasyncresult.c    \
505         gsimpleiostream.c       \
506         gsimplepermission.c     \
507         gsocket.c               \
508         gsocketaddress.c        \
509         gsocketaddressenumerator.c \
510         gsocketclient.c         \
511         gsocketconnectable.c    \
512         gsocketconnection.c     \
513         gsocketcontrolmessage.c \
514         gsocketinputstream.c    \
515         gsocketinputstream.h    \
516         gsocketlistener.c       \
517         gsocketoutputstream.c   \
518         gsocketoutputstream.h   \
519         gsubprocesslauncher.c   \
520         gsubprocess.c           \
521         gsubprocesslauncher-private.h   \
522         gsocketservice.c        \
523         gsrvtarget.c            \
524         gsimpleproxyresolver.c  \
525         gtask.c                 \
526         gtcpconnection.c        \
527         gtcpwrapperconnection.c \
528         gthreadedsocketservice.c\
529         gthemedicon.c           \
530         gthreadedresolver.c     \
531         gthreadedresolver.h     \
532         gtlsbackend.c           \
533         gtlscertificate.c       \
534         gtlsclientconnection.c  \
535         gtlsconnection.c        \
536         gtlsdatabase.c          \
537         gtlsfiledatabase.c      \
538         gtlsinteraction.c       \
539         gtlspassword.c          \
540         gtlsserverconnection.c  \
541         gdtlsconnection.c       \
542         gdtlsclientconnection.c \
543         gdtlsserverconnection.c \
544         gunionvolumemonitor.c   \
545         gunionvolumemonitor.h   \
546         gvfs.c                  \
547         gvolume.c               \
548         gvolumemonitor.c        \
549         gzlibcompressor.c       \
550         gzlibdecompressor.c     \
551         gmountprivate.h         \
552         gioenumtypes.h          \
553         gioenumtypes.c          \
554         glistmodel.c            \
555         gliststore.c            \
556         $(application_sources)  \
557         $(gdbus_sources)        \
558         $(local_sources)        \
559         $(NULL)
561 libgio_2_0_la_SOURCES =         \
562         $(gio_base_sources)     \
563         $(appinfo_sources)      \
564         $(contenttype_sources) \
565         $(unix_sources)         \
566         $(win32_sources)        \
567         $(settings_sources)     \
568         $(NULL)
570 EXTRA_DIST += strinfo.c
572 libgio_2_0_la_LIBADD = \
573         $(top_builddir)/gobject/libgobject-2.0.la       \
574         $(top_builddir)/gmodule/libgmodule-2.0.la       \
575         $(top_builddir)/glib/libglib-2.0.la             \
576         $(platform_libadd)                              \
577         $(ZLIB_LIBS)                                    \
578         $(SELINUX_LIBS)                                 \
579         $(GLIB_LIBS)                                    \
580         $(XATTR_LIBS)                                   \
581         $(NETWORK_LIBS)                                 \
582         $(NULL)
584 libgio_2_0_la_CPPFLAGS = $(ZLIB_CFLAGS) $(AM_CPPFLAGS)
586 if PLATFORM_WIN32
587 no_undefined = -no-undefined
588 endif
590 if OS_WIN32_AND_DLL_COMPILATION
591 gio_win32_res = gio-win32-res.o
592 gio_win32_res_ldflag = -Wl,$(gio_win32_res)
593 endif
595 install-data-local: install-ms-lib
596         $(mkinstalldirs) $(DESTDIR)$(GIO_MODULE_DIR)
598 uninstall-local: uninstall-ms-lib
600 libgio_2_0_la_CFLAGS = $(AM_CFLAGS) $(GLIB_HIDDEN_VISIBILITY_CFLAGS)
601 libgio_2_0_la_LDFLAGS = $(GLIB_LINK_FLAGS) \
602         $(gio_win32_res_ldflag) \
603         -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
604         -export-dynamic $(no_undefined)
606 if OS_COCOA
607 # This is dumb.  The ObjC source file should be properly named .m
608 libgio_2_0_la_CFLAGS += -xobjective-c
609 libgio_2_0_la_LDFLAGS += -Wl,-framework,Foundation -Wl,-framework,AppKit
610 endif
612 if HAVE_LIBMOUNT
613 libgio_2_0_la_CFLAGS += $(LIBMOUNT_CFLAGS)
614 libgio_2_0_la_LIBADD += $(LIBMOUNT_LIBS)
615 endif
617 libgio_2_0_la_DEPENDENCIES = $(gio_win32_res) $(gio_def) $(platform_deps)
619 gio-win32-res.o: gio.rc
620         $(WINDRES) gio.rc $@
622 gio_headers =                   \
623         gappinfo.h              \
624         gasyncinitable.h        \
625         gasyncresult.h          \
626         gbufferedinputstream.h  \
627         gbufferedoutputstream.h \
628         gbytesicon.h            \
629         gcancellable.h          \
630         gcontenttype.h          \
631         gcharsetconverter.h     \
632         gconverter.h            \
633         gconverterinputstream.h \
634         gconverteroutputstream.h        \
635         gdatagrambased.h        \
636         gdatainputstream.h      \
637         gdataoutputstream.h     \
638         gdrive.h                \
639         gemblem.h               \
640         gemblemedicon.h         \
641         gfile.h                 \
642         gfileattribute.h        \
643         gfileenumerator.h       \
644         gfileicon.h             \
645         gfileinfo.h             \
646         gfileinputstream.h      \
647         gfilemonitor.h          \
648         gfilenamecompleter.h    \
649         gfileoutputstream.h     \
650         gfileiostream.h         \
651         gfilterinputstream.h    \
652         gfilteroutputstream.h   \
653         gicon.h                 \
654         ginetaddress.h          \
655         ginetaddressmask.h      \
656         ginetsocketaddress.h    \
657         ginputstream.h          \
658         ginitable.h             \
659         gio.h                   \
660         gio-autocleanups.h      \
661         giotypes.h              \
662         gioenums.h              \
663         gioerror.h              \
664         giomodule.h             \
665         gioscheduler.h          \
666         giostream.h             \
667         gloadableicon.h         \
668         gmount.h                \
669         gmemoryinputstream.h    \
670         gmemoryoutputstream.h   \
671         gmountoperation.h       \
672         gnativevolumemonitor.h  \
673         gnetworkaddress.h       \
674         gnetworkmonitor.h       \
675         gnetworkservice.h       \
676         goutputstream.h         \
677         gpermission.h           \
678         gpollableinputstream.h  \
679         gpollableoutputstream.h \
680         gpollableutils.h        \
681         gproxyaddress.h         \
682         gproxy.h                \
683         gproxyaddressenumerator.h \
684         gproxyresolver.h        \
685         gresolver.h             \
686         gresource.h             \
687         gseekable.h             \
688         gsimpleasyncresult.h    \
689         gsimpleiostream.h       \
690         gsimplepermission.h     \
691         gsocket.h               \
692         gsocketaddress.h        \
693         gsocketaddressenumerator.h \
694         gsocketclient.h         \
695         gsocketconnectable.h    \
696         gsocketconnection.h     \
697         gsocketcontrolmessage.h \
698         gsocketlistener.h       \
699         gsocketservice.h        \
700         gsrvtarget.h            \
701         gsimpleproxyresolver.h  \
702         gtask.h                 \
703         gsubprocess.h           \
704         gsubprocesslauncher.h   \
705         gtcpconnection.h        \
706         gtcpwrapperconnection.h \
707         gthreadedsocketservice.h\
708         gthemedicon.h           \
709         gtlsbackend.h           \
710         gtlscertificate.h       \
711         gtlsclientconnection.h  \
712         gtlsconnection.h        \
713         gtlsdatabase.h          \
714         gtlsfiledatabase.h      \
715         gtlsinteraction.h       \
716         gtlspassword.h          \
717         gtlsserverconnection.h  \
718         gdtlsconnection.h       \
719         gdtlsclientconnection.h \
720         gdtlsserverconnection.h \
721         gvfs.h                  \
722         gvolume.h               \
723         gvolumemonitor.h        \
724         gzlibcompressor.h       \
725         gzlibdecompressor.h     \
726         glistmodel.h            \
727         gliststore.h            \
728         $(application_headers)  \
729         $(settings_headers)     \
730         $(gdbus_headers)        \
731         $(NULL)
733 gioincludedir=$(includedir)/glib-2.0/gio/
734 gioinclude_HEADERS =            \
735         $(gio_headers)          \
736         gioenumtypes.h
738 nodist_gioinclude_HEADERS =     \
739         gnetworking.h           \
740         $(NULL)
742 # these sources (also mentioned above) are generated.
743 BUILT_SOURCES +=                \
744         gconstructor_as_data.h  \
745         gioenumtypes.h          \
746         gioenumtypes.c          \
747         gdbus-daemon-generated.c \
748         gdbus-daemon-generated.h \
749         gnetworking.h           \
750         $(NULL)
752 EXTRA_DIST +=                   \
753         data-to-c.pl            \
754         gioenumtypes.h.template \
755         gioenumtypes.c.template \
756         makefile.msc            \
757         gio.rc.in               \
758         gschema.dtd             \
759         gconstructor_as_data.h  \
760         gnetworking.h.win32     \
761         $(NULL)
763 BUILT_EXTRA_DIST +=             \
764         gio.rc
766 # This is read by gobject-introspection/misc/ and gtk-doc
767 gio-public-headers.txt: Makefile
768         $(AM_V_GEN) echo $(gioinclude_HEADERS) $(giowin32include_HEADERS) $(giounixinclude_HEADERS) > $@.tmp && mv $@.tmp $@
770 CLEANFILES += gdbus-daemon-generated.c gdbus-daemon-generated.h gio-public-headers.txt gconstructor_as_data.h
773 DISTCLEANFILES +=               \
774         gioenumtypes.h          \
775         gioenumtypes.c
777 all-local: gio-public-headers.txt
779 gioenumtypes.h: $(gio_headers) gioenumtypes.h.template
780         $(AM_V_GEN) $(top_builddir)/gobject/glib-mkenums --template $(filter %.template,$^) $(filter-out %.template,$^) > \
781             gioenumtypes.h.tmp && mv gioenumtypes.h.tmp gioenumtypes.h
783 gioenumtypes.c: $(gio_headers) gioenumtypes.c.template
784         $(AM_V_GEN) $(top_builddir)/gobject/glib-mkenums --template $(filter %.template,$^) $(filter-out %.template,$^) > \
785             gioenumtypes.c.tmp && mv gioenumtypes.c.tmp gioenumtypes.c
787 gio.def: libgio-2.0.la
788         $(AM_V_GEN) dumpbin.exe -exports .libs/libgio-2.0-0.dll | awk 'BEGIN { print "EXPORTS" } / +[[:digit:]]+ +[[:xdigit:]]+ +[[:xdigit:]]+/{ print $$4 }' > gio.def.tmp && mv gio.def.tmp gio.def
790 gio-2.0.lib: libgio-2.0.la gio.def
791         $(AM_V_GEN) lib.exe -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgio-2.0-$(LT_CURRENT_MINUS_AGE).dll -def:$(builddir)/gio.def -out:$@
793 bin_PROGRAMS = gio-querymodules glib-compile-schemas glib-compile-resources gsettings
795 glib_compile_resources_LDADD = libgio-2.0.la            \
796         $(top_builddir)/gobject/libgobject-2.0.la       \
797         $(top_builddir)/gmodule/libgmodule-2.0.la       \
798         $(top_builddir)/glib/libglib-2.0.la             \
799         $(NULL)
801 glib_compile_resources_SOURCES = \
802         gvdb/gvdb-format.h              \
803         gvdb/gvdb-builder.h             \
804         gvdb/gvdb-builder.c             \
805         glib-compile-resources.c
807 gio_querymodules_SOURCES = gio-querymodules.c
808 gio_querymodules_LDADD   = libgio-2.0.la                \
809         $(top_builddir)/gobject/libgobject-2.0.la       \
810         $(top_builddir)/gmodule/libgmodule-2.0.la       \
811         $(top_builddir)/glib/libglib-2.0.la             \
812         $(NULL)
814 gconstructor_as_data.h: $(top_srcdir)/glib/gconstructor.h data-to-c.pl
815         $(AM_V_GEN) $(srcdir)/data-to-c.pl $(top_srcdir)/glib/gconstructor.h gconstructor_code > $@.tmp && mv $@.tmp $@
817 glib_compile_schemas_LDADD = $(top_builddir)/glib/libglib-2.0.la
818 glib_compile_schemas_SOURCES = \
819         gconstructor_as_data.h \
820         gvdb/gvdb-format.h              \
821         gvdb/gvdb-builder.h             \
822         gvdb/gvdb-builder.c             \
823         glib-compile-schemas.c
825 gsettings_LDADD = libgio-2.0.la                         \
826         $(top_builddir)/gobject/libgobject-2.0.la       \
827         $(top_builddir)/gmodule/libgmodule-2.0.la       \
828         $(top_builddir)/glib/libglib-2.0.la             \
829         $(NULL)
830 gsettings_SOURCES = gsettings-tool.c
832 schemadir = $(datadir)/glib-2.0/schemas
833 dist_schema_DATA = gschema.dtd
835 itsdir = $(datadir)/gettext/its
836 dist_its_DATA = gschema.loc gschema.its
838 # ------------------------------------------------------------------------
839 # SystemTap and dtrace
841 if ENABLE_DTRACE
842 gio_probes.h: gio_probes.d
843         $(AM_V_GEN) $(DTRACE) -C -h -s $< -o $@.tmp
844         @$(SED) \
845                 -e "s,define STAP_HAS_SEMAPHORES 1,undef STAP_HAS_SEMAPHORES," \
846                 -e "s,define _SDT_HAS_SEMAPHORES 1,undef _SDT_HAS_SEMAPHORES," \
847                 < $@.tmp > $@ && rm -f $@.tmp
849 gio_probes.lo: gio_probes.d
850         $(AM_V_GEN) $(LIBTOOL) --mode=compile $(AM_V_lt) --tag=CC $(DTRACE) -G -s $< -o $@
852 BUILT_SOURCES += gio_probes.h gio_probes.lo
853 CLEANFILES += gio_probes.h gio_probes.h.tmp
854 libgio_2_0_la_LIBADD += gio_probes.lo
855 endif
857 tapsetdir   = @ABS_TAPSET_DIR@
858 EXTRA_DIST += gio.stp.in
860 if ENABLE_SYSTEMTAP
861 tapset_DATA = libgio-2.0.so.0.@LT_CURRENT@.@LT_REVISION@.stp
862 CLEANFILES += $(tapset_DATA)
864 $(tapset_DATA): gio.stp.in Makefile
865         $(AM_V_GEN)$(SED) \
866                 -e 's|[@]ABS_GLIB_RUNTIME_LIBDIR[@]|$(ABS_GLIB_RUNTIME_LIBDIR)|g' \
867                 -e 's|[@]LT_CURRENT[@]|$(LT_CURRENT)|g' \
868                 -e 's|[@]LT_REVISION[@]|$(LT_REVISION)|g' \
869                 $< > $@
870 endif
872 # ------------------------------------------------------------------------
873 # gdbus(1) tool
875 bin_PROGRAMS += gdbus
876 gdbus_SOURCES = gdbus-tool.c
877 gdbus_LDADD = libgio-2.0.la                             \
878         $(top_builddir)/gobject/libgobject-2.0.la       \
879         $(top_builddir)/gmodule/libgmodule-2.0.la       \
880         $(top_builddir)/glib/libglib-2.0.la             \
881         $(NULL)
883 if OS_UNIX
884 if !OS_COCOA
885 # ------------------------------------------------------------------------
886 # gapplication(1) tool
887 bin_PROGRAMS += gapplication
888 gapplication_SOURCES = gapplication-tool.c
889 gapplication_LDADD = libgio-2.0.la                      \
890         $(top_builddir)/gobject/libgobject-2.0.la       \
891         $(top_builddir)/gmodule/libgmodule-2.0.la       \
892         $(top_builddir)/glib/libglib-2.0.la             \
893         $(NULL)
894 endif
895 endif
897 completiondir = $(datadir)/bash-completion/completions
898 completion_DATA = \
899         completion/gapplication                         \
900         completion/gdbus                                \
901         completion/gsettings                            \
902         completion/gresource
903 EXTRA_DIST += $(completion_DATA)
905 # ------------------------------------------------------------------------
906 # gresource tool
908 bin_PROGRAMS += gresource
909 gresource_SOURCES = gresource-tool.c
910 gresource_CPPFLAGS = $(LIBELF_CFLAGS) $(AM_CPPFLAGS)
911 gresource_LDADD = libgio-2.0.la                         \
912         $(top_builddir)/gobject/libgobject-2.0.la       \
913         $(top_builddir)/gmodule/libgmodule-2.0.la       \
914         $(top_builddir)/glib/libglib-2.0.la             \
915         $(LIBELF_LIBS)
917 # ------------------------------------------------------------------------
918 # gio tool
920 bin_PROGRAMS += gio
921 gio_SOURCES = \
922         gio-tool.c                                      \
923         gio-tool.h                                      \
924         gio-tool-cat.c                                  \
925         gio-tool-copy.c                                 \
926         gio-tool-info.c                                 \
927         gio-tool-list.c                                 \
928         gio-tool-mime.c                                 \
929         gio-tool-mkdir.c                                \
930         gio-tool-monitor.c                              \
931         gio-tool-mount.c                                \
932         gio-tool-move.c                                 \
933         gio-tool-open.c                                 \
934         gio-tool-rename.c                               \
935         gio-tool-remove.c                               \
936         gio-tool-save.c                                 \
937         gio-tool-set.c                                  \
938         gio-tool-trash.c                                \
939         gio-tool-tree.c                                 \
940         $(NULL)
941 gio_LDADD = libgio-2.0.la                               \
942         $(top_builddir)/gobject/libgobject-2.0.la       \
943         $(top_builddir)/glib/libglib-2.0.la             \
944         $(NULL)
946 # ------------------------------------------------------------------------
947 # ------ MSVC Project File Generation ------
948 # ------------------------------------------------------------------------
950 MSVCPROJS = gio glib-compile-resources glib-compile-schemas gio-tool
952 gio_FILES =     \
953         $(gio_base_sources)                     \
954         $(win32_actual_sources)                 \
955         $(win32_more_sources_for_vcproj)        \
956         $(settings_base_sources)                \
957         $(win32_settings_sources)
959 gio_EXCLUDES = dummy
961 gio_HEADERS_DIR = $(includedir)/glib-2.0/gio
962 gio_HEADERS_INST = $(gioinclude_HEADERS) $(nodist_gioinclude_HEADERS)
963 gio_HEADERS_EXCLUDES = dummy
965 glib_compile_resources_FILES = $(glib_compile_resources_SOURCES)
966 glib_compile_resources_EXCLUDES = dummy
968 glib_compile_schemas_FILES = $(glib_compile_schemas_SOURCES)
969 glib_compile_schemas_EXCLUDES = dummy
971 gio_tool_FILES = $(gio_SOURCES)
972 gio_tool_EXCLUDES = dummy
974 include $(top_srcdir)/win32/Makefile.msvcproj
976 dist-hook: \
977         $(BUILT_EXTRA_DIST)                                             \
978         $(top_builddir)/win32/vs9/gio.vcproj                    \
979         $(top_builddir)/win32/vs9/gio.headers                   \
980         $(top_builddir)/win32/vs9/glib-compile-schemas.vcproj   \
981         $(top_builddir)/win32/vs9/glib-compile-resources.vcproj \
982         $(top_builddir)/win32/vs9/gio-tool.vcproj
983         files='$(BUILT_EXTRA_DIST)'; \
984         for f in $$files; do \
985           if test -f $$f; then d=.; else d=$(srcdir); fi; \
986           cp $$d/$$f $(distdir) || exit 1; done
988 if HAVE_GLIB_RUNTIME_LIBDIR
989 ABS_GLIB_RUNTIME_LIBDIR = $(realpath $(libdir)/$(GLIB_RUNTIME_LIBDIR))
990 else
991 ABS_GLIB_RUNTIME_LIBDIR = $(libdir)
992 endif
994 if HAVE_GLIB_RUNTIME_LIBDIR
995 install-data-hook:
996         mkdir -p $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
997         mv $(DESTDIR)$(libdir)/libgio-2.0.so.0 $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
998         mv $(DESTDIR)$(libdir)/libgio-2.0.so.0.$(LT_CURRENT).$(LT_REVISION) $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
999         rm -f $(DESTDIR)$(libdir)/libgio-2.0.so
1000         ln -s $(GLIB_RUNTIME_LIBDIR)/libgio-2.0.so.0.$(LT_CURRENT).$(LT_REVISION) $(DESTDIR)$(libdir)/libgio-2.0.so
1001 endif