README for PolarSSL

-- COMPILING
There are currently three active build systems within the PolarSSL releases:
 - Make
 - CMake
 - Microsoft Visual Studio

The main system used for development is CMake. That system is always the most up-to-date. The others should reflect all changes present in the CMake build system, but some features are not ported there by default.

--- Make
In order to build the source using Make, just enter at the command line:
make

--- CMake
In order to build the source using CMake, just enter at the command line:
cmake .
make

There are 3 different active build modes specified within the CMake buildsystem:
 - Release
   This generates the default code without any unnecessary information in the binary files.
 - Debug
   This generates debug information and disables optimization of the code.
 - Coverage
   This generates code coverage information in addition to debug information.

Switching build modes in CMake is simple. For debug mode, enter at the command line:
cmake -D CMAKE_BUILD_TYPE:String="Debug" .

--- Microsoft Visual Studio
The build files for Microsoft Visual Studio are generated for Visual Studio 6.0 all future Visual Studio's should be able to open and use this older version of the build files.

The workspace 'polarssl.dsw' contains all the basic projects needed to build the library and all the programs. The files in tests are not generated and compiled, as these need a perl environment as well.
