[gimp] */Makefile.am: work around a bug in the new glib-genmarshal



commit 0ef3795f0a294d97cbeb4fe0faf4c6a5e83e387e
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.

 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 3b028cf..70dbbaf 100644
--- a/app/core/Makefile.am
+++ b/app/core/Makefile.am
@@ -442,13 +442,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 cc31d3a..6fd9c9b 100644
--- a/libgimp/Makefile.am
+++ b/libgimp/Makefile.am
@@ -459,12 +459,11 @@ gimpenums.c: $(srcdir)/gimpenums.h $(srcdir)/gimpenums.c.tail $(GIMP_MKENUMS) Ma
        && 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 8d8d29c..c63ec77 100644
--- a/libgimpwidgets/Makefile.am
+++ b/libgimpwidgets/Makefile.am
@@ -337,8 +337,7 @@ gimpwidgetsmarshal.h: $(srcdir)/gimpwidgetsmarshal.list
        && rm -f xgen-wmh xgen-wmh~
 
 gimpwidgetsmarshal.c: gimpwidgetsmarshal.h
-       $(AM_V_GEN) echo "#include \"gimpwidgetsmarshal.h\"" >> xgen-wmc \
-       && $(GLIB_GENMARSHAL) --prefix=_gimp_widgets_marshal $(srcdir)/gimpwidgetsmarshal.list --body >> 
xgen-wmc \
+       $(AM_V_GEN) $(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]