Documentation for Developers of Vala

Developing the Compiler

Maintaining Bindings

The Vala repository carries a number of bindings to libraries. The bindings are written in one of three ways:

  1. Manually
  2. Generated using vapigen from a GIR (GObject Introspection Repository) file

  3. Generated using vapigen from a deprecated GIDL file

To update a binding the first thing to do is find how the binding is written. From the Vala source tree:

cd vapi
make binding-name-x.y

If there is no make target then the VAPI is written manually. For example make glib-2.0 has no target. If the VAPI is generated using files from the ./metadata/ directory then the VAPI is generated from a GIR file. For example make gstreamer-1.0 is generated from a GIR file. If the VAPI is generated using files from the ./packages/ directory then the VAPI is generated from a GIDL file. For example make gtk+-3.0 is currently generated from a GIDL file.

Patches should be submitted through bugzilla as a git formatted patch, e.g. use git format-patch HEAD^1 Patches for generated bindings should also include the changes to the VAPI itself. The Vala repository keeps the generated VAPIs in version control as well as the metadata.

Projects/Vala/DeveloperDocumentation (last edited 2016-08-25 11:30:32 by AlThomas)