summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@gnome.org>2017-07-12 17:05:24 +0100
committerEmmanuele Bassi <ebassi@gnome.org>2017-07-13 07:31:29 +0100
commitfa3bc86008cfe517dbb05deb4dff0059f3749c95 (patch)
tree81e9320628770cf3019e5ca80427e5069d717fe5
parentaf889244f9306d8686c6346da35f34694240882e (diff)
downloadvte-fa3bc86008cfe517dbb05deb4dff0059f3749c95.tar.gz
Fix the generation of the signal marshallers
The generation of the signal marshallers is based on an undefined behaviour of the glib-genmarshal tool. Passing both the --header and --body command line arguments is undocumented and untested behaviour. The generated C source adds prototypes for the marshallers, and wraps the whole file between C++ guards. Instead of relying on undocumented behaviour, we can achieve the same result by including the generated header in the generated source. https://bugzilla.gnome.org/show_bug.cgi?id=784853
-rw-r--r--src/Makefile.am3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index a1120ccd..21acac68 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -151,7 +151,8 @@ box_drawing.h: box_drawing.txt box_drawing_generate.sh
$(AM_V_GEN) $(srcdir)/box_drawing_generate.sh < $< > $@
marshal.cc: marshal.list
- $(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=_vte_marshal --header --body --internal $< > $@
+ $(AM_V_GEN) echo '#include "marshal.h"' > $@ \
+ && $(GLIB_GENMARSHAL) --prefix=_vte_marshal --body --internal $< >> $@
marshal.h: marshal.list
$(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=_vte_marshal --header --internal $< > $@