glib/gio/Makefile.am
Benjamin Otte ceba40c27d add private header with attribute ids
attribute ids are generated when the attribute hash is initialized. This
way we can guarantee that the ids match every time.
2009-06-29 18:25:02 +02:00

437 lines
9.6 KiB
Makefile

include $(top_srcdir)/Makefile.decl
NULL =
SUBDIRS=
if OS_UNIX
SUBDIRS += libasyncns xdgmime
endif
if OS_WIN32_AND_DLL_COMPILATION
if MS_LIB_AVAILABLE
noinst_DATA = gio-2.0.lib
install_ms_lib_cmd = $(INSTALL) gio-2.0.lib $(DESTDIR)$(libdir)
uninstall_ms_lib_cmd = -rm $(DESTDIR)$(libdir)/gio-2.0.lib
endif
endif
install-ms-lib:
$(install_ms_lib_cmd)
uninstall-ms-lib:
$(uninstall_ms_lib_cmd)
gio.def: gio.symbols
(echo -e 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) > gio.def.tmp && \
mv gio.def.tmp gio.def
gioalias.h: gio.symbols
$(PERL) $(srcdir)/makegioalias.pl < $(srcdir)/gio.symbols > gioalias.h.tmp && \
mv gioalias.h.tmp gioalias.h
gioaliasdef.c: gio.symbols
$(PERL) $(srcdir)/makegioalias.pl -def < $(srcdir)/gio.symbols > gioaliasdef.c.tmp && \
mv gioaliasdef.c.tmp gioaliasdef.c
if OS_LINUX
if HAVE_GNUC_VISIBILITY
TESTS = abicheck.sh pltcheck.sh
endif
endif
AM_CPPFLAGS = \
-DG_LOG_DOMAIN=\"GLib-GIO\" \
-I$(top_builddir) \
-I$(top_srcdir) \
-I$(top_srcdir)/glib \
-I$(top_srcdir)/gmodule \
$(GLIB_DEBUG_FLAGS) \
-DG_DISABLE_DEPRECATED \
-DGIO_COMPILATION \
-DGIO_MODULE_DIR=\"$(GIO_MODULE_DIR)\"
lib_LTLIBRARIES = libgio-2.0.la
marshal_sources = \
gio-marshal.h \
gio-marshal.c \
$(NULL)
if CROSS_COMPILING
glib_genmarshal=$(GLIB_GENMARSHAL)
else
glib_genmarshal=../gobject/glib-genmarshal
endif
gio-marshal.h: gio-marshal.list
$(glib_genmarshal) --prefix=_gio_marshal $(srcdir)/gio-marshal.list --header --internal > $@.tmp && \
mv $@.tmp $@
gio-marshal.c: gio-marshal.h gio-marshal.list
(echo "#include \"gio-marshal.h\""; \
$(glib_genmarshal) --prefix=_gio_marshal $(srcdir)/gio-marshal.list --body --internal) > $@.tmp && \
mv $@.tmp $@
local_sources = \
glocaldirectorymonitor.c \
glocaldirectorymonitor.h \
glocalfile.c \
glocalfile.h \
glocalfileenumerator.c \
glocalfileenumerator.h \
glocalfileinfo.c \
glocalfileinfo.h \
glocalfileinputstream.c \
glocalfileinputstream.h \
glocalfilemonitor.c \
glocalfilemonitor.h \
glocalfileoutputstream.c \
glocalfileoutputstream.h \
glocalfileiostream.c \
glocalfileiostream.h \
glocalvfs.c \
glocalvfs.h \
$(NULL)
platform_libadd =
platform_deps =
appinfo_sources =
if HAVE_INOTIFY
SUBDIRS += inotify
platform_libadd += inotify/libinotify.la
platform_deps += inotify/libinotify.la
endif
if HAVE_FEN
AM_CPPFLAGS += -DHAVE_FEN
SUBDIRS += fen
platform_libadd += fen/libfen.la
platform_deps += fen/libfen.la
endif
if OS_WIN32
SUBDIRS += win32
platform_libadd += win32/libgiowin32.la
platform_deps += win32/libgiowin32.la
endif
SUBDIRS += .
if HAVE_FAM
SUBDIRS += fam
endif
if OS_UNIX
appinfo_sources += gdesktopappinfo.c gdesktopappinfo.h
platform_libadd += libasyncns/libasyncns.la xdgmime/libxdgmime.la
platform_deps += libasyncns/libasyncns.la xdgmime/libxdgmime.la
unix_sources = \
gunixconnection.c \
gunixfdmessage.c \
gunixmount.c \
gunixmount.h \
gunixmounts.c \
gunixmounts.h \
gunixresolver.c \
gunixresolver.h \
gunixsocketaddress.c \
gunixvolume.c \
gunixvolume.h \
gunixvolumemonitor.c \
gunixvolumemonitor.h \
gunixinputstream.c \
gunixoutputstream.c \
$(NULL)
giounixincludedir=$(includedir)/gio-unix-2.0/gio
giounixinclude_HEADERS = \
gdesktopappinfo.h \
gunixconnection.h \
gunixmounts.h \
gunixfdmessage.h \
gunixinputstream.h \
gunixoutputstream.h \
gunixsocketaddress.h \
$(NULL)
endif
if OS_WIN32
appinfo_sources += gwin32appinfo.c gwin32appinfo.h
platform_libadd += -lshlwapi -lws2_32 -ldnsapi
win32_sources = \
gwin32mount.c \
gwin32mount.h \
gwin32resolver.c \
gwin32resolver.h \
gwin32volumemonitor.c \
gwin32volumemonitor.h \
$(NULL)
endif
SUBDIRS += tests
libgio_2_0_la_SOURCES = \
gappinfo.c \
gasynchelper.c \
gasynchelper.h \
gasyncinitable.c \
gasyncresult.c \
gbufferedinputstream.c \
gbufferedoutputstream.c \
gcancellable.c \
gcontenttype.c \
gcontenttypeprivate.h \
gdatainputstream.c \
gdataoutputstream.c \
gdrive.c \
gdummyfile.h \
gdummyfile.c \
gemblem.h \
gemblem.c \
gemblemedicon.h \
gemblemedicon.c \
gfile.c \
gfileattribute.c \
gfileattribute-priv.h \
gfileenumerator.c \
gfileicon.c \
gfileinfo.c \
gfileinfo-priv.h \
gfileinputstream.c \
gfilemonitor.c \
gfilenamecompleter.c \
gfileoutputstream.c \
gfileiostream.c \
gfilterinputstream.c \
gfilteroutputstream.c \
gicon.c \
ginetaddress.c \
ginetsocketaddress.c \
ginitable.c \
ginputstream.c \
gioenums.h \
gioerror.c \
giomodule.c \
giomodule-priv.h \
gioscheduler.c \
giostream.c \
gloadableicon.c \
gmount.c \
gmemoryinputstream.c \
gmemoryoutputstream.c \
gmountoperation.c \
gnativevolumemonitor.c \
gnativevolumemonitor.h \
gnetworkaddress.c \
gnetworkingprivate.h \
gnetworkservice.c \
goutputstream.c \
gpollfilemonitor.c \
gpollfilemonitor.h \
gresolver.c \
gseekable.c \
gsimpleasyncresult.c \
gsocket.c \
gsocketaddress.c \
gsocketaddressenumerator.c \
gsocketclient.c \
gsocketconnectable.c \
gsocketconnection.c \
gsocketcontrolmessage.c \
gsocketinputstream.c \
gsocketinputstream.h \
gsocketlistener.c \
gsocketoutputstream.c \
gsocketoutputstream.h \
gsocketservice.c \
gsrvtarget.c \
gtcpconnection.c \
gthreadedsocketservice.c\
gthemedicon.c \
gthreadedresolver.c \
gthreadedresolver.h \
gunionvolumemonitor.c \
gunionvolumemonitor.h \
gvfs.c \
gvolume.c \
gvolumemonitor.c \
gmountprivate.h \
gioenumtypes.h \
gioenumtypes.c \
gioalias.h \
gioaliasdef.c \
$(appinfo_sources) \
$(unix_sources) \
$(win32_sources) \
$(local_sources) \
$(marshal_sources) \
$(NULL)
$(libgio_2_0_la_OBJECTS): $(marshal_sources)
libgio_2_0_la_LIBADD = \
$(top_builddir)/glib/libglib-2.0.la \
$(top_builddir)/gobject/libgobject-2.0.la \
$(top_builddir)/gmodule/libgmodule-2.0.la \
$(platform_libadd) \
$(SELINUX_LIBS) \
$(GLIB_LIBS) \
$(XATTR_LIBS) \
$(NULL)
if PLATFORM_WIN32
no_undefined = -no-undefined
endif
if OS_WIN32_AND_DLL_COMPILATION
export_symbols = -export-symbols gio.def
gio_def = gio.def
install-def-file:
$(INSTALL) gio.def $(DESTDIR)$(libdir)/gio-2.0.def
uninstall-def-file:
-rm $(DESTDIR)$(libdir)/gio-2.0.def
else
install-def-file:
uninstall-def-file:
export_symbols = -export-symbols-regex '^g_.*'
endif
install-data-local: install-ms-lib install-def-file
$(mkinstalldirs) $(DESTDIR)$(GIO_MODULE_DIR)
uninstall-local: uninstall-ms-lib uninstall-def-file
libgio_2_0_la_LDFLAGS = \
-version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
-export-dynamic $(no_undefined) $(export_symbols)
libgio_2_0_la_DEPENDENCIES = $(gio_def) $(platform_deps)
gio_headers = \
gappinfo.h \
gasyncinitable.h \
gasyncresult.h \
gbufferedinputstream.h \
gbufferedoutputstream.h \
gcancellable.h \
gcontenttype.h \
gdatainputstream.h \
gdataoutputstream.h \
gdrive.h \
gemblem.h \
gemblemedicon.h \
gfile.h \
gfileattribute.h \
gfileenumerator.h \
gfileicon.h \
gfileinfo.h \
gfileinputstream.h \
gfilemonitor.h \
gfilenamecompleter.h \
gfileoutputstream.h \
gfileiostream.h \
gfilterinputstream.h \
gfilteroutputstream.h \
gicon.h \
ginetaddress.h \
ginetsocketaddress.h \
ginputstream.h \
ginitable.h \
gio.h \
giotypes.h \
gioenums.h \
gioerror.h \
giomodule.h \
gioscheduler.h \
giostream.h \
gloadableicon.h \
gmount.h \
gmemoryinputstream.h \
gmemoryoutputstream.h \
gmountoperation.h \
gnativevolumemonitor.h \
gnetworkaddress.h \
gnetworkservice.h \
goutputstream.h \
gresolver.h \
gseekable.h \
gsimpleasyncresult.h \
gsocket.h \
gsocketaddress.h \
gsocketaddressenumerator.h \
gsocketclient.h \
gsocketconnectable.h \
gsocketconnection.h \
gsocketcontrolmessage.h \
gsocketlistener.h \
gsocketservice.h \
gsrvtarget.h \
gtcpconnection.h \
gthreadedsocketservice.h\
gthemedicon.h \
gvfs.h \
gvolume.h \
gvolumemonitor.h \
$(NULL)
gioincludedir=$(includedir)/glib-2.0/gio/
gioinclude_HEADERS = \
$(gio_headers) \
gioenumtypes.h
# these sources (also mentioned above) are generated.
BUILT_SOURCES = \
gio-marshal.h \
gio-marshal.c \
gioalias.h \
gioaliasdef.c \
gioenumtypes.h \
gioenumtypes.c \
$(NULL)
EXTRA_DIST += \
gio-marshal.list \
gio.symbols \
gioenumtypes.h.template \
gioenumtypes.c.template \
makefile.msc \
makegioalias.pl \
abicheck.sh \
pltcheck.sh \
$(NULL)
CLEANFILES = \
$(marshal_sources) \
$(NULL)
gioenumtypes.h: $(gio_headers) gioenumtypes.h.template
( top_builddir=`cd $(top_builddir) && pwd`; \
cd $(srcdir) && $$top_builddir/gobject/glib-mkenums --template gioenumtypes.h.template $(gio_headers) ) > \
gioenumtypes.h.tmp && mv gioenumtypes.h.tmp gioenumtypes.h
gioenumtypes.c: $(gio_headers) gioenumtypes.c.template
( top_builddir=`cd $(top_builddir) && pwd`; \
cd $(srcdir) && $$top_builddir/gobject/glib-mkenums --template gioenumtypes.c.template $(gio_headers) ) > \
gioenumtypes.c.tmp && mv gioenumtypes.c.tmp gioenumtypes.c
gio-2.0.lib: libgio-2.0.la gio.def
lib -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgio-2.0-$(LT_CURRENT_MINUS_AGE).dll -def:gio.def -out:$@
if HAVE_GLIB_RUNTIME_LIBDIR
install-data-hook:
mkdir -p $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
mv $(DESTDIR)$(libdir)/libgio-2.0.so.0 $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
mv $(DESTDIR)$(libdir)/libgio-2.0.so.0.$(LT_CURRENT).0 $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
rm -f $(DESTDIR)$(libdir)/libgio-2.0.so
ln -s $(GLIB_RUNTIME_LIBDIR)/libgio-2.0.so.0.$(LT_CURRENT).0 $(DESTDIR)$(libdir)/libgio-2.0.so
endif