aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEmilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk>2011-02-10 00:12:32 +0800
committerEmilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk>2011-02-10 17:24:55 +0800
commite4d6dc647732a895dbf6c1b0983ccad39ed3a61c (patch)
tree92c7ea6c6f312fa18aeed8890d6d7e713354a3cb
parent3fc3cb87f63dfbf4a33bc5512073600688729dd2 (diff)
downloadgsoc2013-empathy-e4d6dc647732a895dbf6c1b0983ccad39ed3a61c.tar
gsoc2013-empathy-e4d6dc647732a895dbf6c1b0983ccad39ed3a61c.tar.gz
gsoc2013-empathy-e4d6dc647732a895dbf6c1b0983ccad39ed3a61c.tar.bz2
gsoc2013-empathy-e4d6dc647732a895dbf6c1b0983ccad39ed3a61c.tar.lz
gsoc2013-empathy-e4d6dc647732a895dbf6c1b0983ccad39ed3a61c.tar.xz
gsoc2013-empathy-e4d6dc647732a895dbf6c1b0983ccad39ed3a61c.tar.zst
gsoc2013-empathy-e4d6dc647732a895dbf6c1b0983ccad39ed3a61c.zip
Generate closures for src/
-rw-r--r--src/Makefile.am23
1 files changed, 22 insertions, 1 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index 72cc541df..d2b7f013d 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -84,7 +84,10 @@ libexec_PROGRAMS = \
empathy-auth-client \
empathy-chat
-BUILT_SOURCES=
+BUILT_SOURCES = \
+ src-marshal.h \
+ src-marshal.c \
+ src-marshal.list
empathy_accounts_SOURCES = \
empathy-accounts.c empathy-accounts.h \
@@ -205,6 +208,24 @@ dist_man_MANS = \
empathy.1 \
empathy-accounts.1
+src-marshal.list: $(empathy_SOURCES) Makefile.am
+ $(AM_V_GEN)( cd $(srcdir) && \
+ sed -n -e 's/.*src_marshal_\([[:upper:][:digit:]]*__[[:upper:][:digit:]_]*\).*/\1/p' \
+ $(wildcard *.c) ) \
+ | sed -e 's/__/:/' -e 'y/_/,/' | sort -u > $@.tmp
+ @if cmp -s $@.tmp $@; then \
+ rm $@.tmp; \
+ else \
+ mv $@.tmp $@; \
+ fi
+
+%-marshal.h: %-marshal.list Makefile
+ $(AM_V_GEN)$(GLIB_GENMARSHAL) --header --prefix=_$(subst -,_,$*)_marshal $< > $*-marshal.h
+
+%-marshal.c: %-marshal.list Makefile
+ $(AM_V_GEN)echo "#include \"src-marshal.h\"" > $@ && \
+ $(GLIB_GENMARSHAL) --body --prefix=_$(subst -,_,$*)_marshal $< >> $*-marshal.c
+
# rules for making the glib enum objects
%-enumtypes.h: %.h Makefile.in
$(AM_V_GEN)glib-mkenums \