trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: October 2010

tqtinterface, arts and kdelibs - compilable with cmake

From: Serghei Amelian <serghei@...>
Date: Thu, 7 Oct 2010 17:59:27 +0300
Hello,

In this moment, cmake support for tqtinterface, arts and kdelibs are ready for 
building tests.

Some info about cmake build system:

1) preffered mode for building are "out-of-source", which prevent sources to 
be "polluted" with generated files and compiled objects (in kde4 
out-of-source mode are mandatory).

For example, tqtinterfaces will be configured in this way:

mkdir /tmp/tqtinterface
cd /tmp/tqtinterface
svn co 
svn://anonsvn.kde.org/home/kde/branches/trinity/dependencies/tqtinterface
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr ../tqtinterface
make -j 3
make install DESTDIR=/tmp/tqtinterface/install

2) There are some standard rules to activate/deactivate features:

For example, kdelibs have: WITH_LIBART, WITH_ARTS, WITH_TIFF, etc (for rest of 
options check kdelibs/CMakeLists.txt)

For compile kdelibs with arts and tiff and without aspell, we will run:

cmake -DWITH_ARTS=ON -DWITH_TIFF=ON -DWITH_ASPELL=OFF <path_to_sources>

3) If we need to alter standard install directories we have variables like 
BIN_INSTALL_DIR, SYSCONFDIR, XDG_MENUDIR.

Example:

cmake cmake -DCMAKE_INSTALL_PREFIX=/opt/kde3 -DSYSCONFDIR=/etc <sources>

4) Enabling RPATH:

cmake -DCMAKE_INSTALL_RPATH=/usr/kde/3.5/lib

###################################

(almost) complete example, kdelibs for ubuntu:

cmake -DCMAKE_INSTALL_PREFIX=/opt/kde3 \
  -DINCLUDE_INSTALL_DIR=/opt/kde3/include/kde \
  -DSYSCONFDIR=/etc \
  -DWITH_LIBIDN=ON -DWITH_SSL=ON -DWITH_LIBART=ON \
  -DWITH_ALSA=ON -DWITH_ARTS=ON -DWITH_CUPS=ON \
  -DWITH_JASPER=ON -DWITH_OPENEXR=ON -DWITH_ASPELL=ON \
  -DWITH_TIFF=ON -DWITH_LUA=OFF \
  <path to kdelibs sources>

LUA support are disabled because is not done yet.

If you won't using RPATH, ensure that LD_LIBRARY_PATH is correcty set, 
otherwise kdelibs will fail when will try to use mcopidl.

For testing, are preferable to use big number of concurrent compile processes 
(-j 10, for example), to check if all dependencies are compiled in proper 
order.

-- 
Serghei