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 18:04:29 +0800
commit42a6c594b066bb28ee7ccfe66837562caf72254d (patch)
tree55ae96a5a3a5a4c969f6bfbdbfb004f6dd7cac5b
parent51f8d1fb607505c8ae9390fe081e72945130290b (diff)
downloadgsoc2013-empathy-42a6c594b066bb28ee7ccfe66837562caf72254d.tar
gsoc2013-empathy-42a6c594b066bb28ee7ccfe66837562caf72254d.tar.gz
gsoc2013-empathy-42a6c594b066bb28ee7ccfe66837562caf72254d.tar.bz2
gsoc2013-empathy-42a6c594b066bb28ee7ccfe66837562caf72254d.tar.lz
gsoc2013-empathy-42a6c594b066bb28ee7ccfe66837562caf72254d.tar.xz
gsoc2013-empathy-42a6c594b066bb28ee7ccfe66837562caf72254d.tar.zst
gsoc2013-empathy-42a6c594b066bb28ee7ccfe66837562caf72254d.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 e321b83a3..e175580ba 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -90,7 +90,10 @@ libexec_PROGRAMS = \
empathy-av \
empathy-auth-client
-BUILT_SOURCES=
+BUILT_SOURCES = \
+ src-marshal.h \
+ src-marshal.c \
+ src-marshal.list
empathy_accounts_SOURCES = \
empathy-accounts.c empathy-accounts.h \
@@ -199,6 +202,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 \