Skip to content

Generate introspection data

Emmanuele Bassi requested to merge ebassi/gir into main

Currently, the introspection data for GLib and its sub-libraries is generated by gobject-introspection, to avoid the cyclic dependency between the two projects.

Since gobject-introspection is generally available on installed systems, we can check for its presence, and generate the introspection data directly from GLib.

This does introduce a cyclic dependency, which is why it's possible to build GLib without introspection, then build gobject-introspection, and finally rebuild GLib.

By having introspection data available during the GLib build, we can do things like generating documentation; validating newly added API; and close the loop between adding new API and it becoming available to non-C consumers of the C ABI (i.e. language bindings).

Helps: #3037 (closed)

Edited by Philip Withnall

Merge request reports