TagLib Installation
===================

TagLib uses the CMake build system. As a user, you will most likely want to
build TagLib in release mode and install it into a system-wide location.
This can be done using the following commands:

  cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_RELEASE_TYPE=Release .
  make
  sudo make install

In order to build the included examples, use the BUILD_EXAMPLES option:

  cmake -DBUILD_EXAMPLES=ON [...]

See http://www.cmake.org/cmake/help/runningcmake.html for generic help on
running CMake.

Mac OS X
--------

On Mac OS X, you might want to build a framework that can be easily integrated
into your application. If you set the BUILD_FRAMEWORK option on, it will compile
TagLib as a framework. For example, the following command can be used to build
an Universal Binary framework with Mac OS X 10.4 as the deployment target:

  cmake -DCMAKE_BUILD_TYPE=Release \
    -DBUILD_FRAMEWORK=ON \
    -DCMAKE_C_COMPILER=/usr/bin/gcc-4.0 \
    -DCMAKE_CXX_COMPILER=/usr/bin/c++-4.0 \
    -DCMAKE_OSX_SYSROOT=/Developer/SDKs/MacOSX10.4u.sdk/ \
    -DCMAKE_OSX_DEPLOYMENT_TARGET=10.4 \
    -DCMAKE_OSX_ARCHITECTURES="ppc;i386;x86_64"

For a 10.6 Snow Leopard static library with both 32-bit and 64-bit code, use:

  cmake -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_OSX_DEPLOYMENT_TARGET=10.6 \
    -DCMAKE_OSX_ARCHITECTURES="i386;x86_64" \
    -DENABLE_STATIC=ON \
    -DCMAKE_INSTALL_PREFIX="<folder you want to build to>"

After 'make', and 'make install', add libtag.a to your XCode project, and add
the include folder to the project's User Header Search Paths.

Windows
-------

For building a static library on Windows with Visual Studio 2010, cd to
the TagLib folder then:

  cmake -DENABLE_STATIC=ON -DENABLE_STATIC_RUNTIME=ON -G "Visual Studio 10" ...
  
Including ENABLE_STATIC_RUNTIME=ON indicates you want TagLib built using the
static runtime library, rather than the DLL form of the runtime.
CMake will create a Visual Studio solution, taglib.sln that you can open and
build as normal.  

Unit Tests
----------

If you want to run the test suite to make sure TagLib works properly on your
system, you need to have cppunit installed. To build the tests, include
the option -DBUILD_TESTS=on when running cmake.

The test suite has a custom target in the build system, so you can run
the tests using make:

  make check

