[gimp/gimp-2-8] */Makefile.am: work around a bug in the new glib-genmarshal
- From: N/A <ell src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp/gimp-2-8] */Makefile.am: work around a bug in the new glib-genmarshal
- Date: Mon, 28 Aug 2017 20:49:16 +0000 (UTC)
commit 32eb0831a43b3cb4ba3f0ae954d1d144267cb94b
Author: Ell <ell_se yahoo com>
Date: Sun Aug 27 15:22:44 2017 -0400
*/Makefile.am: work around a bug in the new glib-genmarshal
glib-genmarshal was rewritten in glib 2.53.4, and as of now (2.53.6)
it has a bug where it unconditionally generates marshaler bodies,
even for standard marshalers, even with --stdinc. This causes
libgimpwidgets to define and export g_cclosure_marshal_VOID__INT()
and g_cclosure_marshal_VOID__OBJECT(), which upsets defcheck, and
breaks the build.
Work around this for now by using --header --body when generating
the marshal.c files, which includes the prototypes in the source,
instead of including the header ourselves. This is the only code
path where the new glib-genmarshal doesn't generate bodies for
standard marshalers. Note, however, that this usage is deprecated,
so we'll probably want to change it back once it's fixed.
(cherry picked from commit 0ef3795f0a294d97cbeb4fe0faf4c6a5e83e387e)
app/core/Makefile.am | 5 ++---
libgimp/Makefile.am | 5 ++---
libgimpwidgets/Makefile.am | 3 +--
3 files changed, 5 insertions(+), 8 deletions(-)
---
diff --git a/app/core/Makefile.am b/app/core/Makefile.am
index de6c124..5afd401 100644
--- a/app/core/Makefile.am
+++ b/app/core/Makefile.am
@@ -416,13 +416,12 @@ gen_sources = xgen-gmh xgen-gmc xgen-cec
CLEANFILES = $(gen_sources)
gimpmarshal.h: $(srcdir)/gimpmarshal.list
- $(GLIB_GENMARSHAL) --prefix=gimp_marshal $(srcdir)/gimpmarshal.list --header >> xgen-gmh \
+ $(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=gimp_marshal $(srcdir)/gimpmarshal.list --header >> xgen-gmh \
&& (cmp -s xgen-gmh $(@F) || cp xgen-gmh $(@F)) \
&& rm -f xgen-gmh xgen-gmh~
gimpmarshal.c: gimpmarshal.h
- echo "#include \"gimpmarshal.h\"" >> xgen-gmc \
- && $(GLIB_GENMARSHAL) --prefix=gimp_marshal $(srcdir)/gimpmarshal.list --body >> xgen-gmc \
+ $(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=gimp_marshal $(srcdir)/gimpmarshal.list --header --body >>
xgen-gmc \
&& cp xgen-gmc $(@F) \
&& rm -f xgen-gmc xgen-gmc~
diff --git a/libgimp/Makefile.am b/libgimp/Makefile.am
index 35c20b5..6c7601f 100644
--- a/libgimp/Makefile.am
+++ b/libgimp/Makefile.am
@@ -439,12 +439,11 @@ gimpenums.c: $(srcdir)/gimpenums.h $(srcdir)/gimpenums.c.tail $(GIMP_MKENUMS)
&& rm -f xgen-cec
gimpuimarshal.h: $(srcdir)/gimpuimarshal.list
- $(GLIB_GENMARSHAL) --prefix=_gimpui_marshal $(srcdir)/gimpuimarshal.list --header >> xgen-umh \
+ $(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=_gimpui_marshal $(srcdir)/gimpuimarshal.list --header >>
xgen-umh \
&& (cmp -s xgen-umh $(@F) || cp xgen-umh $(@F)) \
&& rm -f xgen-umh xgen-umh~
gimpuimarshal.c: gimpuimarshal.h
- echo "#include \"gimpuimarshal.h\"" >> xgen-umc \
- && $(GLIB_GENMARSHAL) --prefix=_gimpui_marshal $(srcdir)/gimpuimarshal.list --body >> xgen-umc \
+ $(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=_gimpui_marshal $(srcdir)/gimpuimarshal.list --header --body
xgen-umc \
&& cp xgen-umc $(@F) \
&& rm -f xgen-umc xgen-umc~
diff --git a/libgimpwidgets/Makefile.am b/libgimpwidgets/Makefile.am
index c32c80a..6477c57 100644
--- a/libgimpwidgets/Makefile.am
+++ b/libgimpwidgets/Makefile.am
@@ -317,8 +317,7 @@ gimpwidgetsmarshal.h: $(srcdir)/gimpwidgetsmarshal.list
&& rm -f xgen-wmh xgen-wmh~
gimpwidgetsmarshal.c: gimpwidgetsmarshal.h
- echo "#include \"gimpwidgetsmarshal.h\"" >> xgen-wmc \
- && $(GLIB_GENMARSHAL) --prefix=_gimp_widgets_marshal $(srcdir)/gimpwidgetsmarshal.list --body >>
xgen-wmc \
+ $(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=_gimp_widgets_marshal $(srcdir)/gimpwidgetsmarshal.list
--header --body >> xgen-wmc \
&& cp xgen-wmc $(@F) \
&& rm -f xgen-wmc xgen-wmc~
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]