===========================
Compiling NP Labs Libraries
===========================

In order to make cross platform builds easier on ourselves, we use cmake. Project files/makefiles are not shipped with the source, and will need to be generated by cmake.  Therefore, if you want to compile our software, you'll also need cmake. This is available at http://www.cmake.org. 

To generate a cmake file tree, simply enter the lib(name) directory and run the following command:

cmake .

This will generate the default files for your system (Makefiles for *nixes, Visual Studio projects for Windows). If you want to generate another kind of make files, just run the command:

cmake

with no . or options to list the generators available for your platform.

cmake will search for any required libraries on *nix platforms, since we have a reasonable set of directories to look through (/usr/*, /usr/local/*, etc...). On Windows (Visual Studio specifically), these checks are bypassed and all available projects are created (since there is no dedicated place to check for library code). You will need to prune whatever libraries you don't want to build out of the generated Visual Studio projects.

After cmake generates the files, you may use them to compile as normal.

=============
Test Machines
=============

All NP labs libraries are compiled and tested on the following platforms:

- Windows (XP Pro, Cygwin/gcc and Visual Studio 2005)
- OS X (10.5.5, Intel, gcc 4)
- Linux (Ubuntu 8.04, gcc 4.2)

There is no guarentee a library will work on all platforms, or there may be different dependencies for different platforms. Compatibility issues with outside libraries may exist. If these happen, they will be listed in the README.txt file under "Platform Specific Issues". 
