Dependencies
------------

*Base dependencies*

* C compiler (tested with link:http://gcc.gnu.org/[gcc] and
  link:http://clang.llvm.org/[clang])
* link:https://www.gnu.org/software/make/[GNU make]
* link:https://www.python.org/[Python] (2.6 or newer)

*Optional Image loaders*

* libjpeg
* link:http://www.libpng.org/[libpng]
* link:http://sourceforge.net/projects/giflib/[giflib]
* link:http://www.remotesensing.org/libtiff/[libtiff]
* link:https://developers.google.com/speed/webp/[libwebp]
* link:http://code.google.com/p/openjpeg/[openjpeg] >= 2.0.0
* link:http://www.zlib.net/[zlib] (usually installed as libpng dependency)

*Optional Text rendering*

* link:http://www.freetype.org/[FreeType]
* link:https://www.freedesktop.org/wiki/Software/fontconfig/[Fontconfig]

*Optional Backends*

* X11
* link:http://aa-project.sourceforge.net/aalib/[AA-lib]
* link:http://www.libsdl.org/[SDL] 1.2 or 2
  (not recomended, known to be slow and buggy)
* link:https://xcb.freedesktop.org/[XCB]
  (90% of code finished at this point)
* link:https://wayland.freedesktop.org/[Wayland]

*Python Bindings*

* link:http://www.swig.org/[Swig]
* Python (devel library)

Compilation
-----------

Once devel packages are installed the compilation is as simple as running
+configure+ and +make+.

NOTE: The 'configure' script is written in 'Python'.

.Compilation
-------------------------------------------------------------------------------
gfxprim # ./configure
...

gfxprim # make
-------------------------------------------------------------------------------

TIP: GFXprim supports proper parallel build, you most likely want to add
     the '-j' with number of your processors + 1 as a parameter to the 'make'.


.Installation
-------------------------------------------------------------------------------
gfxprim # make install
-------------------------------------------------------------------------------

The +make install+ command will install GFXprim libraries and devel headers
into your system.

OpenSUSE & Fedora
~~~~~~~~~~~~~~~~~

Instruction to install required packages on
link:http://www.opensuse.org/[OpenSUSE].

Works for link:http://www.fedoraproject.org/[Fedora] too if you substitute
+zypper in+ with +yum install+.

.Install basic tools
-------------------------------------------------------------------------------
zypper in gcc make
-------------------------------------------------------------------------------

.Install image devel libraries
-------------------------------------------------------------------------------
zypper in libjpeg-devel libpng-devel giflib-devel libtiff-devel
-------------------------------------------------------------------------------

.Install FreeType devel library
-------------------------------------------------------------------------------
zypper in freetype-devel fontconfig-devel
-------------------------------------------------------------------------------

.Install X11 devel library
-------------------------------------------------------------------------------
zypper in libX11-devel libXext-devel libXrandr-devel libXfixes-devel
-------------------------------------------------------------------------------

.Install XCB devel library
-------------------------------------------------------------------------------
zypper in xcb-util-keysyms-devel
-------------------------------------------------------------------------------

.Install Wayland devel library
-------------------------------------------------------------------------------
zypper in wayland-devel libxkbcommon-devel
-------------------------------------------------------------------------------

.Install swig
-------------------------------------------------------------------------------
zypper in swig python-devel
-------------------------------------------------------------------------------

.All in the one for the lazy
-------------------------------------------------------------------------------
zypper in gcc make libjpeg-devel libpng-devel giflib-devel libtiff-devel
          freetype-devel fontconfig-devel libX11-devel libXext-devel
          libXrandr-devel xcb-util-keysyms-devel wayland-devel libxkbcommon-devel
          swig python-devel
-------------------------------------------------------------------------------

Debian
~~~~~~

Instruction to install required packages on link:http://www.debian.org[Debian]
and other Debian based distributions.

.Install basic tools
-------------------------------------------------------------------------------
apt-get install gcc make pkg-config
-------------------------------------------------------------------------------

.Install image devel libraries
-------------------------------------------------------------------------------
apt-get install libjpeg-dev libpng-dev libgif-dev libtiff-dev libwebp-dev
-------------------------------------------------------------------------------

.Install FreeType devel library
-------------------------------------------------------------------------------
apt-get install libfreetype6-dev libfontconfig-dev
-------------------------------------------------------------------------------

.Install X11 devel library
-------------------------------------------------------------------------------
apt-get install libx11-dev libxfixes-dev libxext-dev libxrandr-dev
-------------------------------------------------------------------------------

.Install Wayland devel library
-------------------------------------------------------------------------------
apt-get install libwayland-dev libxkbcommon-dev
-------------------------------------------------------------------------------

.Install swig
-------------------------------------------------------------------------------
apt-get install swig python-dev
-------------------------------------------------------------------------------

.All in the one for the lazy
-------------------------------------------------------------------------------
apt-get install gcc make pkg-config libjpeg-dev libpng-dev libgif-dev
                libtiff-dev libwebp-dev libfreetype6-dev libfontconfig-dev
                libx11-dev libxfixes-dev libxext-dev libxrandr-dev
                libwayland-dev libxkbcommon-dev swig python-dev
-------------------------------------------------------------------------------

Deb packages can be build from the GFXprim source (after installing necessary
devel packages) by:

.Building debian packages
-------------------------------------------------------------------------------
apt-get install devscripts
cd gfxprim
debuild -i -us -uc
-------------------------------------------------------------------------------
