-------------------------------------------------------------------------------
Cmdliner - Declarative definition of command line interfaces for OCaml
           Release 0.9.3
-------------------------------------------------------------------------------

Cmdliner is a module for the declarative definition of command line
interfaces.

It provides a simple and compositional mechanism to convert command
line arguments to OCaml values and pass them to your functions. The
module automatically handles syntax errors, help messages and UNIX man
page generation. It supports programs with single or multiple commands
and respects most of the POSIX and GNU conventions.

Cmdliner is made of a single independent module and distributed under
the BSD3 license. 

Home page: http://erratique.ch/software/cmdliner
Contact: Daniel Bünzli <daniel.buenzli at erratique.ch>


Installation
------------

To install Cmdliner you need at least : 

    OCaml >= 3.12.0  

If you have `findlib`, it can be installed by typing :

    ocaml setup.ml -configure
    ocaml setup.ml -build 
    ocaml setup.ml -install

If you don't, `cmdliner.mli` and `cmdliner.ml` contain everything, the
code, the documentation and the license. Install the dependencies and
use the sources the way you want. For example if you use `ocamlbuild`
you can issue the following commands from the root directory of your
project :

    ln -s /path/to/cmdliner-0.9.3/src cmdliner
    echo "<cmdliner> : include" >> _tags


Documentation
-------------

The documentation and API reference is automatically generated by
`ocamldoc` from `cmdliner.mli`. For you convenience you can find a
generated version in the `doc` directory of the distribution.


Sample programs
---------------

Sample programs are located in the `test` directory of the
distribution. They define the command line of some classic
programs and can be built with:

    ocamlbuild test/tests.otarget

The resulting binaries are in `_build/test`.