README
======

The public interface is described in 'libvirt.mli'.  You may prefer to
do 'make doc' at the top level source directory and then read the HTML
documentation starting at html/index.html.

'libvirt.ml' describes how OCaml functions map to C functions.

'libvirt_c.h' contains prototypes of common functions defined
in the epilogue (see below), and provides some general macros.

'libvirt_c_common.c' contains some standard functions (eg.) for
wrapping and unwrapping libvirt objects.

'libvirt_c_oneoffs.c' contains bindings which are too specialised or
one-of-a-kind to be worth generating automatically.

Generated code
--------------

The C bindings in 'libvirt_generated.c' are now generated automatically
by a Perl script called 'generator.pl'.  You do not normally need to
run this script, but you may need to if you want to extend libvirt
coverage.

The majority of the functions are now generated automatically, but
there are a few one-off bindings (eg. one-of-a-type functions,
functions with particularly complex mappings).  Our eventual aim to is
autogenerate as much as possible.  Use 'make autostatus' in this
directory to find out how we're doing.
