# Project Documentation

The documentation for Gammu consists of two major parts - The Gammu Manual, which you are currently reading and comments in the sources, which are partly included in this manual as well.

## The Gammu Manual

This manual is in written in rst format and built using Sphinx with breathe extension.

To generate the documentation there are various `manual-*` targets for make. You can build HTML, PDF, PS, HTMLHELP and Latex versions of it:

    # Generates HTML version of manual in docs/manual/html
    make manual-html

    # Generates PS version of manual in docs/manual/latex/gammu.ps
    make manual-ps

    # Generates PDF version of manual in docs/manual/latex/gammu.pdf
    make manual-pdf

    # Generates HTML version of manual in docs/manual/htmlhelp
    make manual-htmlhelp

    # Generates HTML version of manual in docs/manual/latex
    make manual-latex

## Man pages

The man pages for all commands are generated using Sphinx as well:

    # Generates HTML version of manual in docs/manual/man
    make manual-man

However man pages are stored in Git as well, so you should update generated copy on each change:

    # Updates generated man pages in Git
    make update-man

## Code comments

The code comments in C code should be parseable by Doxygen, what is more or less standard way to document C code.