1 include $(top_srcdir)/glib.mk
3 SUBDIRS = gdbus-2.0/codegen
11 if OS_WIN32_AND_DLL_COMPILATION
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
24 $(uninstall_ms_lib_cmd)
27 -DG_LOG_DOMAIN=\"GLib-GIO\" \
31 -DGIO_MODULE_DIR=\"$(GIO_MODULE_DIR)\"
33 AM_CFLAGS = $(GLIB_WARN_CFLAGS)
35 lib_LTLIBRARIES = libgio-2.0.la
48 gdbusintrospection.h \
49 gdbusmethodinvocation.h \
52 gdbusinterfaceskeleton.h \
54 gdbusobjectskeleton.h \
56 gdbusobjectmanager.h \
57 gdbusobjectmanagerclient.h \
58 gdbusobjectmanagerserver.h \
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 \
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 \
102 $(srcdir)/dbus-daemon.xml \
110 settings_base_sources = \
114 gdelayedsettingsbackend.h \
115 gdelayedsettingsbackend.c \
116 gkeyfilesettingsbackend.c \
117 gmemorysettingsbackend.c \
118 gnullsettingsbackend.c \
119 gsettingsbackendinternal.h \
122 gsettingsschema-internal.h \
124 gsettings-mapping.h \
125 gsettings-mapping.c \
128 settings_sources = $(settings_base_sources)
131 win32_settings_sources = \
132 gregistrysettingsbackend.h \
133 gregistrysettingsbackend.c
135 settings_sources += $(win32_settings_sources)
139 cocoa_settings_sources = \
140 gnextstepsettingsbackend.c
142 settings_sources += $(cocoa_settings_sources)
145 application_headers = \
147 gapplicationcommandline.h \
151 gsimpleactiongroup.h \
152 gremoteactiongroup.h \
153 gactiongroupexporter.h \
166 application_sources = \
168 gapplicationcommandline.c \
169 gapplicationimpl-dbus.c \
174 gsimpleactiongroup.c \
175 gremoteactiongroup.c \
176 gactiongroupexporter.c \
177 gdbusactiongroup-private.h \
187 gnotification-private.h \
188 gnotificationbackend.h \
190 gnotificationbackend.c \
198 glocalfileprivate.h \
199 glocalfileenumerator.c \
200 glocalfileenumerator.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 \
227 contenttype_sources =
231 platform_libadd += inotify/libinotify.la
232 platform_deps += inotify/libinotify.la
237 platform_libadd += kqueue/libkqueue.la
238 platform_deps += kqueue/libkqueue.la
243 platform_libadd += win32/libgiowin32.la
244 platform_deps += win32/libgiowin32.la
255 platform_libadd += xdgmime/libxdgmime.la
256 platform_deps += xdgmime/libxdgmime.la
258 appinfo_headers += gdesktopappinfo.h
263 gfiledescriptorbased.c \
265 gunixcredentialsmessage.c \
271 gunixsocketaddress.c \
274 gunixvolumemonitor.c \
275 gunixvolumemonitor.h \
277 gunixoutputstream.c \
278 gcontenttypeprivate.h \
279 gfdonotificationbackend.c \
280 ggtknotificationbackend.c \
281 gportalnotificationbackend.c \
293 unix_sources += gcocoanotificationbackend.c
297 giounixincludedir=$(includedir)/gio-unix-2.0/gio
298 giounixinclude_HEADERS = \
299 gfiledescriptorbased.h \
301 gunixcredentialsmessage.h \
306 gunixoutputstream.h \
307 gunixsocketaddress.h \
313 gnetworkmonitornetlink.c \
314 gnetworkmonitornetlink.h \
315 gnetworkmonitornm.c \
316 gnetworkmonitornm.h \
321 gdbus_daemon_sources = \
324 gdbus-daemon-generated.c \
325 gdbus-daemon-generated.h \
328 win32_actual_sources = \
329 $(gdbus_daemon_sources) \
330 gwin32registrykey.c \
331 gwin32registrykey.h \
334 gwin32volumemonitor.c \
335 gwin32volumemonitor.h \
336 gwin32inputstream.c \
337 gwin32outputstream.c \
338 gwin32outputstream.h \
342 win32_more_sources_for_vcproj = \
344 gcontenttype-win32.c \
345 gregistrysettingsbackend.c \
346 win32/gwinhttpfile.c \
347 win32/gwinhttpfileinputstream.c \
348 win32/gwinhttpfileoutputstream.c \
349 win32/gwinhttpvfs.c \
350 win32/gwin32fsmonitorutils.c \
351 win32/gwin32filemonitor.c
354 appinfo_sources += gwin32appinfo.c gwin32appinfo.h
355 contenttype_sources += gcontenttype-win32.c
356 platform_libadd += -lshlwapi -lws2_32 -ldnsapi -liphlpapi
357 win32_sources = $(win32_actual_sources)
359 giowin32includedir=$(includedir)/gio-win32-2.0/gio
360 giowin32include_HEADERS = \
361 gwin32inputstream.h \
362 gwin32outputstream.h \
367 xdp_dbus_built_sources = xdp-dbus.c xdp-dbus.h
368 BUILT_SOURCES += $(xdp_dbus_built_sources)
369 CLEANFILES += $(xdp_dbus_built_sources)
371 portal_interfaces = \
372 org.freedesktop.portal.Documents.xml \
373 org.freedesktop.portal.OpenURI.xml \
374 org.freedesktop.portal.NetworkMonitor.xml \
375 org.freedesktop.portal.ProxyResolver.xml \
378 EXTRA_DIST += $(portal_interfaces)
380 $(xdp_dbus_built_sources) : $(portal_interfaces)
381 $(AM_V_GEN) UNINSTALLED_GLIB_SRCDIR=$(top_srcdir) \
382 UNINSTALLED_GLIB_BUILDDIR=$(top_builddir) \
383 $(PYTHON) $(srcdir)/gdbus-2.0/codegen/gdbus-codegen.in \
384 --interface-prefix org.freedesktop.portal. \
386 --generate-c-code $(builddir)/xdp-dbus \
387 --annotate "org.freedesktop.portal.Documents.Add()" "org.gtk.GDBus.C.UnixFD" "true" \
388 --annotate "org.freedesktop.portal.Documents.AddNamed()" "org.gtk.GDBus.C.UnixFD" "true" \
389 --annotate "org.freedesktop.portal.Documents.AddFull()" "org.gtk.GDBus.C.UnixFD" "true" \
390 --annotate "org.freedesktop.portal.OpenURI.OpenFile()" "org.gtk.GDBus.C.UnixFD" "true" \
394 gnetworkmonitorportal.c \
395 gnetworkmonitorportal.h \
396 gproxyresolverportal.c \
397 gproxyresolverportal.h \
398 $(xdp_dbus_built_sources) \
402 contenttype_sources += gosxcontenttype.c
403 appinfo_sources += gosxappinfo.c gosxappinfo.h
408 contenttype_sources += gcontenttype.c
409 appinfo_sources += gdesktopappinfo.c
420 gbufferedinputstream.c \
421 gbufferedoutputstream.c \
424 gcharsetconverter.c \
425 gcontextspecificgroup.c \
426 gcontextspecificgroup.h \
428 gconverterinputstream.c \
429 gconverteroutputstream.c \
431 gcredentialsprivate.h \
434 gdataoutputstream.c \
438 gdummyproxyresolver.c \
439 gdummyproxyresolver.h \
448 gfileattribute-priv.h \
455 gfilenamecompleter.c \
456 gfileoutputstream.c \
458 gfilterinputstream.c \
459 gfilteroutputstream.c \
463 ginetsocketaddress.c \
478 gmemoryinputstream.c \
479 gmemoryoutputstream.c \
481 gnativevolumemonitor.c \
482 gnativevolumemonitor.h \
483 gnativesocketaddress.c \
484 gnativesocketaddress.h \
487 gnetworkingprivate.h \
489 gnetworkmonitorbase.c \
490 gnetworkmonitorbase.h \
494 gpollableinputstream.c \
495 gpollableoutputstream.c \
501 gproxyaddressenumerator.c \
508 gsimpleasyncresult.c \
510 gsimplepermission.c \
513 gsocketaddressenumerator.c \
515 gsocketconnectable.c \
516 gsocketconnection.c \
517 gsocketcontrolmessage.c \
518 gsocketinputstream.c \
519 gsocketinputstream.h \
521 gsocketoutputstream.c \
522 gsocketoutputstream.h \
523 gsubprocesslauncher.c \
525 gsubprocesslauncher-private.h \
528 gsimpleproxyresolver.c \
531 gtcpwrapperconnection.c \
532 gthreadedsocketservice.c\
534 gthreadedresolver.c \
535 gthreadedresolver.h \
538 gtlsclientconnection.c \
544 gtlsserverconnection.c \
546 gdtlsclientconnection.c \
547 gdtlsserverconnection.c \
548 gunionvolumemonitor.c \
549 gunionvolumemonitor.h \
554 gzlibdecompressor.c \
560 $(application_sources) \
565 libgio_2_0_la_SOURCES = \
566 $(gio_base_sources) \
568 $(contenttype_sources) \
571 $(settings_sources) \
574 EXTRA_DIST += strinfo.c
576 libgio_2_0_la_LIBADD = \
577 $(top_builddir)/gobject/libgobject-2.0.la \
578 $(top_builddir)/gmodule/libgmodule-2.0.la \
579 $(top_builddir)/glib/libglib-2.0.la \
588 libgio_2_0_la_CPPFLAGS = $(ZLIB_CFLAGS) $(AM_CPPFLAGS)
591 no_undefined = -no-undefined
594 if OS_WIN32_AND_DLL_COMPILATION
595 gio_win32_res = gio-win32-res.o
596 gio_win32_res_ldflag = -Wl,$(gio_win32_res)
599 install-data-local: install-ms-lib
600 $(mkinstalldirs) $(DESTDIR)$(GIO_MODULE_DIR)
602 uninstall-local: uninstall-ms-lib
604 libgio_2_0_la_CFLAGS = $(AM_CFLAGS) $(GLIB_HIDDEN_VISIBILITY_CFLAGS)
605 libgio_2_0_la_LDFLAGS = $(GLIB_LINK_FLAGS) \
606 $(gio_win32_res_ldflag) \
607 -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
608 -export-dynamic $(no_undefined)
611 # This is dumb. The ObjC source file should be properly named .m
612 libgio_2_0_la_CFLAGS += -xobjective-c
613 libgio_2_0_la_LDFLAGS += -Wl,-framework,Foundation -Wl,-framework,AppKit
617 libgio_2_0_la_CFLAGS += $(LIBMOUNT_CFLAGS)
618 libgio_2_0_la_LIBADD += $(LIBMOUNT_LIBS)
621 libgio_2_0_la_DEPENDENCIES = $(gio_win32_res) $(gio_def) $(platform_deps)
623 gio-win32-res.o: gio.rc
630 gbufferedinputstream.h \
631 gbufferedoutputstream.h \
635 gcharsetconverter.h \
637 gconverterinputstream.h \
638 gconverteroutputstream.h \
641 gdataoutputstream.h \
652 gfilenamecompleter.h \
653 gfileoutputstream.h \
655 gfilterinputstream.h \
656 gfilteroutputstream.h \
660 ginetsocketaddress.h \
673 gmemoryinputstream.h \
674 gmemoryoutputstream.h \
676 gnativevolumemonitor.h \
682 gpollableinputstream.h \
683 gpollableoutputstream.h \
687 gproxyaddressenumerator.h \
692 gsimpleasyncresult.h \
694 gsimplepermission.h \
697 gsocketaddressenumerator.h \
699 gsocketconnectable.h \
700 gsocketconnection.h \
701 gsocketcontrolmessage.h \
705 gsimpleproxyresolver.h \
708 gsubprocesslauncher.h \
710 gtcpwrapperconnection.h \
711 gthreadedsocketservice.h\
715 gtlsclientconnection.h \
721 gtlsserverconnection.h \
723 gdtlsclientconnection.h \
724 gdtlsserverconnection.h \
729 gzlibdecompressor.h \
732 $(application_headers) \
733 $(settings_headers) \
737 gioincludedir=$(includedir)/glib-2.0/gio/
738 gioinclude_HEADERS = \
742 nodist_gioinclude_HEADERS = \
746 # these sources (also mentioned above) are generated.
748 gconstructor_as_data.h \
751 gdbus-daemon-generated.c \
752 gdbus-daemon-generated.h \
758 gioenumtypes.h.template \
759 gioenumtypes.c.template \
762 gconstructor_as_data.h \
763 gnetworking.h.win32 \
766 BUILT_EXTRA_DIST += \
769 # This is read by gobject-introspection/misc/ and gtk-doc
770 gio-public-headers.txt: Makefile
771 $(AM_V_GEN) echo $(gioinclude_HEADERS) $(giowin32include_HEADERS) $(giounixinclude_HEADERS) > $@.tmp && mv $@.tmp $@
773 CLEANFILES += gdbus-daemon-generated.c gdbus-daemon-generated.h gio-public-headers.txt gconstructor_as_data.h
780 all-local: gio-public-headers.txt
782 gioenumtypes.h: $(gio_headers) gioenumtypes.h.template
783 $(AM_V_GEN) $(top_builddir)/gobject/glib-mkenums --template $(filter %.template,$^) $(filter-out %.template,$^) > \
784 gioenumtypes.h.tmp && mv gioenumtypes.h.tmp gioenumtypes.h
786 gioenumtypes.c: $(gio_headers) gioenumtypes.c.template
787 $(AM_V_GEN) $(top_builddir)/gobject/glib-mkenums --template $(filter %.template,$^) $(filter-out %.template,$^) > \
788 gioenumtypes.c.tmp && mv gioenumtypes.c.tmp gioenumtypes.c
790 gio.def: libgio-2.0.la
791 $(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
793 gio-2.0.lib: libgio-2.0.la gio.def
794 $(AM_V_GEN) lib.exe -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgio-2.0-$(LT_CURRENT_MINUS_AGE).dll -def:$(builddir)/gio.def -out:$@
796 bin_PROGRAMS = gio-querymodules glib-compile-schemas glib-compile-resources gsettings
798 glib_compile_resources_LDADD = libgio-2.0.la \
799 $(top_builddir)/gobject/libgobject-2.0.la \
800 $(top_builddir)/gmodule/libgmodule-2.0.la \
801 $(top_builddir)/glib/libglib-2.0.la \
804 glib_compile_resources_SOURCES = \
806 gvdb/gvdb-builder.h \
807 gvdb/gvdb-builder.c \
808 glib-compile-resources.c
810 gio_querymodules_SOURCES = gio-querymodules.c
811 gio_querymodules_LDADD = libgio-2.0.la \
812 $(top_builddir)/gobject/libgobject-2.0.la \
813 $(top_builddir)/gmodule/libgmodule-2.0.la \
814 $(top_builddir)/glib/libglib-2.0.la \
817 gconstructor_as_data.h: $(top_srcdir)/glib/gconstructor.h data-to-c.pl
818 $(AM_V_GEN) $(srcdir)/data-to-c.pl $(top_srcdir)/glib/gconstructor.h gconstructor_code > $@.tmp && mv $@.tmp $@
820 glib_compile_schemas_LDADD = $(top_builddir)/glib/libglib-2.0.la
821 glib_compile_schemas_SOURCES = \
822 gconstructor_as_data.h \
824 gvdb/gvdb-builder.h \
825 gvdb/gvdb-builder.c \
826 glib-compile-schemas.c
828 gsettings_LDADD = libgio-2.0.la \
829 $(top_builddir)/gobject/libgobject-2.0.la \
830 $(top_builddir)/gmodule/libgmodule-2.0.la \
831 $(top_builddir)/glib/libglib-2.0.la \
833 gsettings_SOURCES = gsettings-tool.c
835 schemadir = $(datadir)/glib-2.0/schemas
836 dist_schema_DATA = gschema.dtd
838 itsdir = $(datadir)/gettext/its
839 dist_its_DATA = gschema.loc gschema.its
841 # ------------------------------------------------------------------------
842 # SystemTap and dtrace
845 gio_probes.h: gio_probes.d
846 $(AM_V_GEN) $(DTRACE) -C -h -s $< -o $@.tmp
848 -e "s,define STAP_HAS_SEMAPHORES 1,undef STAP_HAS_SEMAPHORES," \
849 -e "s,define _SDT_HAS_SEMAPHORES 1,undef _SDT_HAS_SEMAPHORES," \
850 < $@.tmp > $@ && rm -f $@.tmp
852 gio_probes.lo: gio_probes.d
853 $(AM_V_GEN) $(LIBTOOL) --mode=compile $(AM_V_lt) --tag=CC $(DTRACE) -G -s $< -o $@
855 BUILT_SOURCES += gio_probes.h gio_probes.lo
856 CLEANFILES += gio_probes.h gio_probes.h.tmp
857 libgio_2_0_la_LIBADD += gio_probes.lo
860 tapsetdir = @ABS_TAPSET_DIR@
861 EXTRA_DIST += gio.stp.in
864 tapset_DATA = libgio-2.0.so.0.@LT_CURRENT@.@LT_REVISION@.stp
865 CLEANFILES += $(tapset_DATA)
867 $(tapset_DATA): gio.stp.in Makefile
869 -e 's|[@]ABS_GLIB_RUNTIME_LIBDIR[@]|$(ABS_GLIB_RUNTIME_LIBDIR)|g' \
870 -e 's|[@]LT_CURRENT[@]|$(LT_CURRENT)|g' \
871 -e 's|[@]LT_REVISION[@]|$(LT_REVISION)|g' \
875 # ------------------------------------------------------------------------
878 bin_PROGRAMS += gdbus
879 gdbus_SOURCES = gdbus-tool.c
880 gdbus_LDADD = libgio-2.0.la \
881 $(top_builddir)/gobject/libgobject-2.0.la \
882 $(top_builddir)/gmodule/libgmodule-2.0.la \
883 $(top_builddir)/glib/libglib-2.0.la \
888 # ------------------------------------------------------------------------
889 # gapplication(1) tool
890 bin_PROGRAMS += gapplication
891 gapplication_SOURCES = gapplication-tool.c
892 gapplication_LDADD = libgio-2.0.la \
893 $(top_builddir)/gobject/libgobject-2.0.la \
894 $(top_builddir)/gmodule/libgmodule-2.0.la \
895 $(top_builddir)/glib/libglib-2.0.la \
900 completiondir = $(datadir)/bash-completion/completions
902 completion/gapplication \
904 completion/gsettings \
906 EXTRA_DIST += $(completion_DATA)
908 # ------------------------------------------------------------------------
911 bin_PROGRAMS += gresource
912 gresource_SOURCES = gresource-tool.c
913 gresource_CPPFLAGS = $(LIBELF_CFLAGS) $(AM_CPPFLAGS)
914 gresource_LDADD = libgio-2.0.la \
915 $(top_builddir)/gobject/libgobject-2.0.la \
916 $(top_builddir)/gmodule/libgmodule-2.0.la \
917 $(top_builddir)/glib/libglib-2.0.la \
920 # ------------------------------------------------------------------------
944 gio_LDADD = libgio-2.0.la \
945 $(top_builddir)/gobject/libgobject-2.0.la \
946 $(top_builddir)/glib/libglib-2.0.la \
949 # ------------------------------------------------------------------------
950 # ------ MSVC Project File Generation ------
951 # ------------------------------------------------------------------------
953 MSVCPROJS = gio glib-compile-resources glib-compile-schemas gio-tool
956 $(gio_base_sources) \
957 $(win32_actual_sources) \
958 $(win32_more_sources_for_vcproj) \
959 $(settings_base_sources) \
960 $(win32_settings_sources)
964 gio_HEADERS_DIR = $(includedir)/glib-2.0/gio
965 gio_HEADERS_INST = $(gioinclude_HEADERS) $(nodist_gioinclude_HEADERS)
966 gio_HEADERS_EXCLUDES = dummy
968 glib_compile_resources_FILES = $(glib_compile_resources_SOURCES)
969 glib_compile_resources_EXCLUDES = dummy
971 glib_compile_schemas_FILES = $(glib_compile_schemas_SOURCES)
972 glib_compile_schemas_EXCLUDES = dummy
974 gio_tool_FILES = $(gio_SOURCES)
975 gio_tool_EXCLUDES = dummy
977 include $(top_srcdir)/win32/Makefile.msvcproj
980 $(BUILT_EXTRA_DIST) \
981 $(top_builddir)/win32/vs9/gio.vcproj \
982 $(top_builddir)/win32/vs9/gio.headers \
983 $(top_builddir)/win32/vs9/glib-compile-schemas.vcproj \
984 $(top_builddir)/win32/vs9/glib-compile-resources.vcproj \
985 $(top_builddir)/win32/vs9/gio-tool.vcproj
986 files='$(BUILT_EXTRA_DIST)'; \
987 for f in $$files; do \
988 if test -f $$f; then d=.; else d=$(srcdir); fi; \
989 cp $$d/$$f $(distdir) || exit 1; done
991 if HAVE_GLIB_RUNTIME_LIBDIR
992 ABS_GLIB_RUNTIME_LIBDIR = $(realpath $(libdir)/$(GLIB_RUNTIME_LIBDIR))
994 ABS_GLIB_RUNTIME_LIBDIR = $(libdir)
997 if HAVE_GLIB_RUNTIME_LIBDIR
999 mkdir -p $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
1000 mv $(DESTDIR)$(libdir)/libgio-2.0.so.0 $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
1001 mv $(DESTDIR)$(libdir)/libgio-2.0.so.0.$(LT_CURRENT).$(LT_REVISION) $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
1002 rm -f $(DESTDIR)$(libdir)/libgio-2.0.so
1003 ln -s $(GLIB_RUNTIME_LIBDIR)/libgio-2.0.so.0.$(LT_CURRENT).$(LT_REVISION) $(DESTDIR)$(libdir)/libgio-2.0.so