WHAT IT IS
----------

Pigment is a library designed to easily build user interfaces for
embedded multimedia. Its design allows to use it on several platforms,
thanks to a plugin system allowing to choose the underlying graphical
API.

WHERE TO START
--------------

We have a development website at https://code.fluendo.com/pigment/trac
You can subscribe to our mailing lists; see the website for details.
We track bugs in Trac on the website.
You can join us on IRC at #pigment on irc.freenode.org

You can generate the Pigment API documentation typing the following
command and then point your browser to docs/pgm/html/index.html.

  ./autogen.sh && make

PLATFORMS
---------

- Linux is *of course* fully supported.
- MacOSX is supported, using the autotools.
- Windows is supported, see the win32/README.txt file for more information.

INSTALLING FROM PACKAGES
------------------------

You should always prefer installing from packages first. There are Pigment
packages for a number of distributions, including Fedora, Debian, Ubuntu,
Mandrake, Gentoo, etc.

Only in cases where you:
- want to hack on Pigment
- want to verify that a bug has been fixed
- do not have a sane distribution
should you choose to build from source tarballs or SVN.

COMPILING FROM SVN
------------------

To build Pigment from repository source code, you simply do something
like this:

  svn co https://code.fluendo.com/pigment/svn/trunk pigment
  cd pigment
  ./autogen.sh --prefix=/opt/pigment
  make
  make install

You can also run Pigment uninstalled, which is recommended if you want
to develop on it. The script misc/pgm-uninstalled is helpful in
setting up your environment for this:

  svn co https://code.fluendo.com/pigment/svn/trunk pigment
  cd pigment
  ./autogen.sh
  make
  ./misc/pgm-uninstalled

OPENGL ES EMULATION WITH X11
----------------------------

To build the Pigment OpenGL ES-CM 1.X plugin for PC emulation on X11
from SVN, you first need a wrapper OpenGL ES library like the one
provided by PowerVR for instance. Then you have to correctly set your
environment to detect the headers and the library for the build:

  export CFLAGS=-I/path/to/opengl-es-pc-emulation/include
  export LDLAGS=-L/path/to/opengl-es-pc-emulation/lib

Enable the use of the emulation layer:

  ./autogen.sh --enable-opengles-pc-emulation

Then set the path to the library to detect it at run-time:

  export LD_LIBRARY_PATH=/path/to/opengl-es-pc-emulation/lib:$LD_LIBRARY_PATH

BUILD DEPENDENCIES
------------------

Ubuntu Feisty, Gutsy & Hardy:

  Core dependencies:
  - autoconf
  - automake1.7
  - libglib2.0-dev
  - libgtk2.0-dev
  - gtk-doc-tools
  - libgstreamer0.10-dev
  - libgstreamer-plugins-base0.10-dev

  OpenGL plugin:
  - libx11-dev
  - libgl1-mesa-dev
  - libpango1.0-dev
  - libcairo-dev

  Unit tests:
  - check
