Installation Instructions
-------------------------

Please follow the instructions below to build anomaly with cmake.


Pre-requisites
--------------

You will need the 'cmake' build system installed in order to build anomaly from
source.

More information on cmake can be obtained at http://cmake.org


Basic Installation
------------------

Briefly, these shell commands will unpack, build and install anomaly:

  $ tar xzf anomaly-X.Y.Z.tar.gz                  [1]
  $ cd anomaly-X.Y.Z                              [2]
  $ cmake .                                       [3]
  $ make                                          [4]
  $ make test                                     [5]
  $ sudo make install                             [6]
  $ cd .. ; rm -r anomaly-X.Y.Z                   [7]

These commands are explained below:

  1. Unpacks the source tarball.  This creates the directory anomaly-X.Y.Z,
     containing all the code.

  2. Change directory to the root of the distribution.

  3. Invokes cmake to scan for dependencies and machine-specific details, then
     generate the makefiles.

  4. Builds anomaly.  This may take a minute.

  5. Optional step that runs the unit tests.  On completion, will report the
     number of passing and failing tests.  There should be zero failing tests.
     If you see failing tests, please report this.

  6. Installs the program, documentation and other data files.

  7. Removes the temporary directory.


Uninstallation
--------------

To uninstall anomaly, you need the Makefiles, so if you deleted them in step 7
above, they must first be regenerated by following steps [1], [2] and [3].  Then
simply run:

  $ sudo make uninstall TODO TODO TODO -- cmake doesn't include uninstall


Anomaly Build Notes
----------------

Anomaly 1.0.0 has dependencies that are detected by cmake in almost all cases,
but there are situations and operating systems that mean you will need to offer
a little help.

If anomaly will not build on your system, first take a look at the Operating
System notes below.  If this doesn't help, then go to the Troubleshooting
section, which includes instructions on how to contact us for help.


Operating System Notes
----------------------

...


Troubleshooting
---------------

...


---
