After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 705557 - Add autoconf/automake helper macros for glib-mkenums and glib-genmarshal
Add autoconf/automake helper macros for glib-mkenums and glib-genmarshal
Status: RESOLVED DUPLICATE of bug 654395
Product: glib
Classification: Platform
Component: build
unspecified
Other Linux
: Normal enhancement
: ---
Assigned To: gtkdev
gtkdev
: 628961 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2013-08-06 12:20 UTC by Philip Withnall
Modified: 2013-12-10 11:39 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Add a GLIB_GENUM autoconf macro supplying rules for glib-mkenums (4.30 KB, patch)
2013-08-06 12:22 UTC, Philip Withnall
none Details | Review
Add a GLIB_MARSHALLERS autoconf macro supplying rules for glib-genmarshal (4.83 KB, patch)
2013-08-06 12:23 UTC, Philip Withnall
none Details | Review

Description Philip Withnall 2013-08-06 12:20:45 UTC
Patches coming to provide GLIB_GENUM and GLIB_MARSHALLERS autoconf macros which provide automake recipes and constructor variables for use in magically generating genum and marshaller code using glib-mkenums and glib-genmarshal.

See the documentation in the patches for how they work.

They’re both based on Emmanuele’s patches from bug #628961, moved to GLib and updated to work with non-recursive automake and different namespaces.
Comment 1 Philip Withnall 2013-08-06 12:22:04 UTC
Created attachment 250958 [details] [review]
Add a GLIB_GENUM autoconf macro supplying rules for glib-mkenums

GLIB_GENUM
Comment 2 Philip Withnall 2013-08-06 12:23:08 UTC
Created attachment 250959 [details] [review]
Add a GLIB_MARSHALLERS autoconf macro supplying rules for glib-genmarshal

GLIB_MARSHALLERS
Comment 3 Philip Withnall 2013-08-06 12:24:24 UTC
*** Bug 628961 has been marked as a duplicate of this bug. ***
Comment 4 Colin Walters 2013-08-06 13:04:19 UTC
How does this intersect with https://bugzilla.gnome.org/show_bug.cgi?id=654395 ?
Comment 5 Dan Winship 2013-08-06 13:05:07 UTC
bug 654395 has an alternate approach, which created a "Makefile.glib" containing the rules, a la the "Makefile.introspection" provided by gobject-introspection. I have started work on migrating these rules into the new glib.mk instead, which has required a bit of rewriting since glib.mk is included at automake time rather than make time. (I've pushed this to the wip/danw/glib.mk branch now; note that the current state does not actually work.)

The rules there are a bit more magical and convenient than the ones here. In particular, the marshaller rules generate the .list file for you, and the enum-types rules don't require template files.
Comment 6 Philip Withnall 2013-08-06 15:06:06 UTC
(In reply to comment #5)
> The rules there are a bit more magical and convenient than the ones here. In
> particular, the marshaller rules generate the .list file for you, and the
> enum-types rules don't require template files.

Magical and convenient gets my vote, as long as there’s still the option to ignore it and create custom recipes for mkenums (as needed in libgdata because mkenums gets the namespace conversions wrong). However, as Christian pointed out in bug #628961 comment #3, Makefile.glib needs to be installed somewhere and building an application against GLib requires some way of pointing at it and making sure to include the right one.

As long as glib.mk is going to be ready soon, I guess these patches can be rejected and the bug marked as a duplicate.
Comment 7 Dan Winship 2013-12-10 11:39:18 UTC
i've updated the stuff in 654395 (and yes, it does allow you to create your own enums, etc, files if the rules there don't work for you). So let's mark this a dup

*** This bug has been marked as a duplicate of bug 654395 ***