Alan:

>>          The gobject-introspection module installs:
>>          * typelib files to /usr/lib/girepository-1.0
>>          * GIR files to /usr/share/gir-1.0
>>
>>          for the following modules:
>>          * OpenGL
>>          * Glib
>>          * cairo
>>          * fontconfig
>>          * freetype2
>>          * libxml2
>>          * xfixes
>>          * xft
>>          * xlib
>
> Since many of those come from another consolidation (X), how are
> they kept in sync when new versions of the libraries are delivered?
>
> Should the files for each library be packaged with the library itself
> instead of in the common packages?

Yes, that is the long-term goal.  The gir-repository module is a
temporary module to provide bootstrapping until that happens.  Though
for the lower-level libraries outside of the GNOME stack, it might
make sense to continue delivering them as static files.  Note these
are only needed to define very stable and common type definitions and
interfaces that are used in other libraries that use
gobject-introspection, for example.

I have attached the gir and typelib files for these modules.  They
are very small, unlike the ones that are generated from the source
code.

For example, the Xlib gir file only provides bindings for very basic
things like:  Atom, Display, Drawable, GC, KeyCode, KeySym, Picture,
Screen, VisualID, Window, XEvent, XConfigureEvent, XID, Pixmap, XImage,
XFontStruct, XTrapezoid, XVisualInfo, XWindowAttributes, and
XOpenDisplay.

Another example, the libxml file only defines Node, NodePtr, Doc,
DocPtr, NsPtr, Char, and TextWriter,

Interfaces that are unlikely to change, in other words.

Note that no modules use gobject-introspection yet (aside from clutter
1.0 which also nothing uses).  The main value in adding these modules
now is that it provides users with the ability to do development work on
modules that require these modules, such as GNOME Shell.

Brian

Reply via email to