GNOME Bugzilla – Bug 567934
Add introspection support inside pango
Last modified: 2009-06-11 16:01:28 UTC
The introspection framework is getting mature, we should include gir/typelib generation/installation directly into Pango.
Created attachment 126548 [details] [review] v1 Adds gir generation and typelib compilation. I also added a HarfBuzz-1.0.gir, which should be treated internal to pangoft2. Perhaps it would be even better to just skip gir generation for pangoft2, dunno. There's a couple of annotation examples included in this. I didn't annotate the whole API, just the simple list cases I found.
Humm, why do you need the HarfBuzz.gir again? I think we should just do this for pangocairo. Unless you guys are going to bind Xft, FreeType, Xlib, etc...
HarfBuzz is needed because some of the APIs inside PangoFT2 requires the types from within there. We've tradtionally solved that kind of problem by creating new girs a lá HarfBuzz-1.0.gir. Eg, gobject-introspection already includes similar stub girs for cairo/xft/freetype/xlib. Some of them are used by other libraries as well. But yes, it's basically a hack to get things going. Are there any applications out there actually using PangoX / PangoXft / PangoFT2? If not, let's just skip gir generation for them.
(In reply to comment #3) > HarfBuzz is needed because some of the APIs inside PangoFT2 requires the types > from within there. No public API though. Don't you just scan public API? > We've tradtionally solved that kind of problem by creating > new girs a lá HarfBuzz-1.0.gir. > > Eg, gobject-introspection already includes similar stub girs for > cairo/xft/freetype/xlib. Some of them are used by other libraries as well. > > But yes, it's basically a hack to get things going. > Are there any applications out there actually using PangoX / PangoXft / > PangoFT2? > If not, let's just skip gir generation for them. Well, there are definitely apps still using PangoFT2 (the GIMP for example), and possibly PangoXft. None that I know of expose API dealing with those two though.
Created attachment 126575 [details] [review] v2 Scans a little bit less in terms of public headers and their sources. Removed HarfBuzz-1.0.gir. I also added -Wno-portability to configure.in with a comment explaining why.
Johan, go ahead and commit please! I'll roll a tarball later.
Thanks! Committed: 2009-01-20 Johan Dahlin <jdahlin@async.com.br> Bug 567934 – Add introspection support inside pango * configure.in: * pango/Makefile.am: * pango/pango-attributes.c: * pango/pango-layout.c: Remember that it depends on an unreleased version (0.6.2) of gobject-introspection so you might want to wait for me to release that first.