To compile libabigail, you first need to install its dependencies.  At
the moment the dependencies are the following Free Software packages:

    elfutils
    libtool
    libxml2

If you are building from the Git repository, then you'd also need the
following packages:

    autoconf
    automake
    libtool
    pkg-config

If you wan to build the documentation of libabigail, then you also
need these packages (and its dependencies):

     doxygen
     python-sphinx

Note that if you are installing these packages in a binary form
provided by your distribution, then you probably need to install the
development variant of those that have one.

Once you have installed the development packages of the dependencies,
there are two options for compiling libabigail, depending on the two
kinds of source code package you have: either you've got the source
code from our Git source control management system, or you've got a
released tarball.

* Getting and compiling libabigail from Git
===========================================

To get the source code from git, you have to type:

    git clone git://sourceware.org/git/libabigail.git

Please note that to compile libabigail from its sources in this case,
you need to have the 'autoconf' page installed on your machine.

Then go to your local libabigail.git directory where the source code
you've checked out lies and create a 'build' directory that will
receive the binaries resulting from the compilation:

    cd libabigail.git
    mkdir build

Generate the relevant build-system-related information needed to
configure the package for compilation, by typing:

    autoreconf -i

Then configure the package:

    cd build
    ../configure --prefix=<absolute-path-of-where-you-want-the-binaries-to-be-installed>

Then build the package

    make

And then install its resulting binaries and documentation:

    make install

* Getting and compiling libabigail from released tarballs
=========================================================

First, get a tarball from ftp://sourceware.org/pub/libabigail.

Then untar it and go to the resulting source directory.

Then create a build directory that is to receive the result of the
compilation and cd into it:

    mkdir build
    cd build

Then configure the package:

    ../configure --prefix=<absolute-path-of-where-you-want-the-binaries-to-be-installed>

Then compile it:

    make

Then install the resulting binaries

    make install

* Building the documentation of libabigail
==========================================

To build the documentation of libabigail, you need to install the
python-sphinx package prior to running configure.

Once you've done that, type:

     make doc

This will generate the documentation in html, info and man format, in
under the doc/ subdirectory of your build directory.

If you only want the html documentation (mainly the web site, apidoc and manuals) then just type:

   make html-doc

If you only want to generate the man documentation, just type:

   make man

If you only want to generate the info documentation, just type:

   make info