GNU bug report logs -
#49122
gobject-introspection and not finding cairo
Previous Next
Full log
Message #20 received at 49122 <at> debbugs.gnu.org (full text, mbox):
Hi John,
John Kehayias <john.kehayias <at> protonmail.com> writes:
> I've managed to fix the initial problem I noted, but this would depend
> on having cairo as an input so that gobject-introspection can find the
> library to patch the typelib. Unfortunately, this would be a circular
> dependency. This is a long standing issue with how cairo is handled
> here (see, e.g.,
> https://gitlab.freedesktop.org/cairo/cairo/-/issues/141).
>
> I don't know how circular dependencies are solved in guix, so I'm not
> sure what to do to fix this. gobject-introspection doesn't need cairo
> to build or function, so the build depends is not really needed other
> than to fix this bug. So this could be done with a separate package or
> in two steps?
Upstream said:
--8<---------------cut here---------------start------------->8---
The Cairo API is not really introspectable, because its type system does
not use GObject.
We could generate the introspection data by using a filter script to
turn the snake case cairo_*_t types into the expected CamelCase Cairo*
types, but it's not entirely trivial, and it would still not by usable
by anything.
--8<---------------cut here---------------end--------------->8---
Introducing an extra dependency to the closure of gobject-introspection,
we'd have applications soft-linking to potentially different versions of
cairo (cairo and cairo-sans-poppler), which seems ugly.
Could we move the cairo.gir file to the cairo package, and this would be
picked up by gobject-introspection if at the right location?
It'd differ from upstream, but that'd be cleaner. Perhaps we could
contribute such fix for inclusion upstream too.
--
Thanks,
Maxim
This bug report was last modified 1 year and 201 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.