*******************************************************************************
Program Depends
*******************************************************************************
--------
:common:
--------
bzip2
zlib
iconv (libc on GNU/Linux)
----------------
:libeiskaltdcpp:
----------------
gettext
libssl (>= 0.9.8)
liblua5.1 (optional, see cmake keys)
libpcrecpp0 (optional, see cmake keys)
miniupnpc (optional, see cmake keys)
libidn (optional, see cmake keys)
----------------
:eiskaltdcpp-qt:
----------------
libqtcore4, libqtgui4, libqt4-network, libqt4-xml (>= 4.4.0)
libqt4-script (>= 4.4.0) (optional, see cmake keys)
libqt4-dbus (>= 4.4.0) (optional, see cmake keys)
libaspell (optional, see cmake keys)
-----------------
:eiskaltdcpp-gtk:
-----------------
gettext
libpango
libgtk2 (>= 2.10)
libglib2 (>= 2.10)
libglade2 (>= 2.10)
libnotify (>= 0.4.1) (optional, see cmake keys)
libgnome2 (optional, see cmake keys)


*******************************************************************************
Optional Depends
*******************************************************************************
----------------
:eiskaltdcpp-qt:
----------------
sh (bash, dash, etc...)
    see examples/ and eiskaltdcpp-qt/qtscripts/
php5-cli (or other version, check the compatibility by yourself)
    see eiskaltdcpp-qt/examples/ and eiskaltdcpp-qt/qtscripts/
libqtscript4-core, libqtscript4-gui, libqtscript4-network, libqtscript4-xml
    see eiskaltdcpp-qt/qtscripts/
-----------------
:eiskaltdcpp-gtk:
-----------------
...


*******************************************************************************
Build Depends
*******************************************************************************
--------
:common:
--------
gcc
zlib
bzip2
cmake (>= 2.6.0)
iconv (libc on GNU/Linux)
pkg-config
----------------
:libeiskaltdcpp:
----------------
gettext
libboost-dev (>=1.38.0) (headers only) (optional, see cmake keys)
liblua5.1-dev (optional, see cmake keys)
libpcre3-dev (optional, see cmake keys)
miniupnpc (optional, see cmake keys)
libidn (optional, see cmake keys)
----------------
:eiskaltdcpp-qt:
----------------
qt4 (>=4.4.0)
libaspell-dev (optional, see cmake keys)
-----------------
:eiskaltdcpp-gtk:
-----------------
libgtk2.0-dev
libglade2-dev
libnotify-dev (optional, see cmake keys)
libgnome2-dev (optional, see cmake keys)


*******************************************************************************
Installation in Linux and other UNIX-like systems
*******************************************************************************
mkdir -p builddir && cd builddir
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr ../
make -j2
sudo make install

---------
# Note: you can get the lastest program sorces from git repository
git clone git://github.com/negativ/eiskaltdcpp.git
# or
wget -4 http://nodeload.github.com/negativ/eiskaltdcpp/tarball/master
# or
svn export http://svn.github.com/negativ/eiskaltdcpp/ eiskaltdcpp


*******************************************************************************
Keys for cmake
*******************************************************************************
----------------
:libeiskaltdcpp:
----------------
-DLOCAL_BOOST=ON/OFF (default: OFF)
    use local boost headers
    Script downloads archive with only necessary headers: http://code.google.com/p/eiskaltdc/downloads/detail?name=boost.tar.gz
    (This archive have less size than official boost archive)
    If boost.tar.gz already available in source tree nothing happens.
-DLUA_SCRIPT=ON/OFF (default: OFF)
    lua scripts
-DPERL_REGEX=ON/OFF (default: OFF)
    use pcre lib for regex in perl style (now it uses only in ADL Search)
-DUSE_IDNA=ON/OFF (default: ON)
    Use libidn for rfc3490
-DLINK=STATIC/SHARED (default: SHARED)
    make static or shared library
    Option available only on Unix-like systems.
    On MS Windows platform it forcibly set to STATIC.
----------------
:eiskaltdcpp-qt:
----------------
-DUSE_QT=ON/OFF (default: ON)
    build EiskaltDC++ with Qt interface
-DUSE_ASPELL=ON/OFF (default: not set)
    forced use or not use aspell
-DFREE_SPACE_BAR_C=ON/OFF (default: ON)
    free space bar in status panel
-DDBUS_NOTIFY=ON/OFF (default: ON)
    use or not use QtDBus module
-DUSE_JS=ON/OFF (default: OFF)
    Enable/disable QtScript basic support
-DUSE_QT_QML=ON/OFF (default: OFF)
    Enable/disable Qt Declarative Ui support. Work only with Qt >= 4.7.0
-DUSE_QT_SQLITE=ON/OFF (default: OFF)
    Build with SQLite support. (This is experimental option)
 -----------------
:eiskaltdcpp-gtk:
-----------------
-DUSE_GTK=ON/OFF (default: OFF)
    build EiskaltDC++ with Gtk interface (based on FreeDC++ and LinuxDC++)
-DUSE_LIBGNOME2=ON/OFF (default: OFF)
    Enable/disable sound notifications support in EiskaltDC++ Gtk
-DUSE_LIBNOTIFY=ON/OFF (default: ON)
    Enable/disable popup notifications support in EiskaltDC++ Gtk
--------------------
:eiskaltdcpp-daemon:
--------------------
-DNO_UI_DAEMON=ON/OFF (default: OFF)
    build daemon without any UI
--------
:common:
--------
-DWITH_EMOTICONS=ON/OFF (default: ON)
    If ON install emoticons/
-DWITH_EXAMPLES=ON/OFF (default: ON)
    If ON install examples/
-DWITH_LUASCRIPTS=ON/OFF (default: OFF)
    If ON install luascripts/
-DUSE_MINIUPNP=ON/OFF (default: OFF)
    use or not use miniupnpc lib
-DLOCAL_MINIUPNP=ON/OFF (default: OFF)
    If ON use local miniupnpc lib (not set this in ON if you not set USE_MINIUPNP in ON)
-DWITH_SOUNDS=ON/OFF (default: OFF)
    If ON install sounds/
-Dlinguas:STRING="needed translations, separator is whitespace" (default: *)
    examples:
    -Dlinguas="en ru" - install ru and en translations
    -Dlingaus="*"     - install all translations
    -Dlinguas=""      - don't install any translation
-DFORCE_XDG=ON/OFF (default: ON)
    use or not use $XDG_CONFIG_HOME and $XDG_CONFIG_DOWNLOADS variables
    see http://standards.freedesktop.org/basedir-spec/latest/ar01s03.html
-DCMAKE_INSTALL_PREFIX=<prefix for install> (default: /usr/local)
    .
-DLIBDIR=<lib prefix> (default: lib)
    install lib to <prefix for install>/<lib prefix>
    examples:
    -DLIBDIR=lib64 - install lib to <prefix for install>/lib64
-DLIB_INSTALL_DIR=<lib prefix> (default: lib)
    see -DLIBDIR
-DWITH_DEV_FILES=ON/OFF (default: OFF)
    If ON install development files (headers for libeiskaltdcpp)
    see also -DEISKALTDCPP_INCLUDE_DIR
-DEISKALTDCPP_INCLUDE_DIR=<dir> (default: <prefix for install>/include/eiskaltdcpp)
    install development files (headers for libeiskaltdcpp) to <dir>
-DDESKTOP_ENTRY_PATH=<prefix for install> (default: /usr/local/share/applications/)
    .
-DPIXMAPS_ENTRY_PATH=<prefix for install> (default: /usr/local/share/pixmaps/)
    .
-DENABLE_STACKTRACE=ON/OFF (default: OFF)
    Show stacktrace when program receive SIGSEGV
-DCMAKE_BUILD_TYPE={Release, RelWithDebInfo, Debug, MinRelSize}
    build type
    .
    Warning: builds with -DCMAKE_BUILD_TYPE=Debug now is broken
    (due to some features of the DC++ kernel)
And other standart cmake keys...

---------
# Example of the complete assembly:
mkdir -p builddir && cd builddir
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DUSE_QT=ON -DUSE_GTK=ON -DUSE_JS=ON -DUSE_ASPELL=ON -DFREE_SPACE_BAR_C=ON  -DCREATE_MO=ON -DLUA_SCRIPT=ON -DWITH_SOUNDS=ON -DWITH_LUASCRIPTS=ON -DUSE_MINIUPNP=ON -DLOCAL_MINIUPNP=ON ../
make
sudo make install


*******************************************************************************
Uninstall program
*******************************************************************************
sudo make uninstall


*******************************************************************************
*BSD specific notes
*******************************************************************************
mkdir -p builddir && cd builddir
cmake -DCMAKE_BUILD_TYPE=Release ../
gmake -j2
sudo gmake install


*******************************************************************************
Mac OS X specific notes
*******************************************************************************
# For generate native bundle on Mac OS X use:
cpack -G DragNDrop


*******************************************************************************
MS Windows specific notes
*******************************************************************************
Instructions are available in the file: win32/READ_ME.txt


*******************************************************************************
Haiku-OS specific notes
*******************************************************************************
To configure program use command like this:
cmake -DLOCAL_BOOST=ON -DCMAKE_INSTALL_PREFIX=/boot/apps/Eiskaltdcpp -DCMAKE_CXX_FLAGS="-DTIMER_OLD_BOOST" -DCMAKE_SHARE_DIR=/boot/apps/Eiskaltdcpp -DCMAKE_CLIENT_DATA_DIR=/boot/apps/Eiskaltdcpp ..
