3 set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules )
5 # search packages used by KDE
6 find_package(KDE4 REQUIRED)
10 include(CheckIncludeFile)
11 include(CheckIncludeFiles)
12 include(CheckSymbolExists)
13 include(CheckFunctionExists)
14 include(CheckLibraryExists)
15 include(CheckPrototypeExists)
16 include(CheckTypeSize)
17 include(MacroBoolTo01)
18 include(MacroOptionalAddSubdirectory)
20 # If definitions like -D_GNU_SOURCE are needed for these checks they
21 # should be added to _KDE4_PLATFORM_DEFINITIONS when it is originally
22 # defined outside this file. Here we include these definitions in
23 # CMAKE_REQUIRED_DEFINITIONS so they will be included in the build of
25 set(CMAKE_REQUIRED_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS})
27 set(CMAKE_REQUIRED_LIBRARIES ${KDEWIN32_LIBRARIES} )
28 set(CMAKE_REQUIRED_INCLUDES ${KDEWIN32_INCLUDES} )
31 find_package(KdepimLibs REQUIRED)
32 # find_package(X11VidMode) not used at this time
38 find_package(X11VidMode)
41 find_package(LibVNCServer)
43 macro_optional_find_package(LibVNCServer)
44 macro_log_feature(LIBVNCSERVER_FOUND "libvncserver" "VNC Server library" "http://libvncserver.sourceforge.net/" FALSE "0.9" "Needed to build Krfb and VNC support in Krdc")
46 macro_optional_find_package(LibNXCL)
47 macro_log_feature(LIBNXCL_FOUND "libnxcl" "NX X compression client library" "http://svn.berlios.de/svnroot/repos/freenx/trunk/freenx-client/nxcl/" FALSE "1.0" "Needed to build Krdc with NX support")
49 macro_log_feature(LIBORTP_FOUND "libortp" "oRTP provides an API to send rtp packets" "http://www.linphone.org/index.php/eng/code_review/ortp" FALSE "0.13" "Needed to build Jingle support in Kopete.")
51 macro_log_feature(SPEEX_FOUND "speex" "speex is an encoder/decoder for the speex audio format." "http://www.speex.org/" FALSE "" "Needed to build Jingle support in Kopete.")
53 macro_optional_find_package(JPEG)
54 macro_log_feature(JPEG_FOUND "libjpeg" "Development library for JPEG formatted image files" "http://www.ijg.org/" FALSE "" "Provides JPEG images in Krdc.")
56 macro_optional_find_package(QCA2)
57 macro_log_feature(QCA2_FOUND "QCA2" "Qt Cryptographic Architecture" "http://delta.affinix.com/qca" FALSE "2.0.0" "Needed to build Kopete's GroupWise and Jabber protocols.")
59 macro_optional_find_package(Decibel)
60 macro_log_feature(DECIBEL_FOUND "Decibel" "KDE framework for real-time communication" "http://decibel.kde.org/" FALSE "" "Used by the Kopete telepathy protocol.")
62 macro_optional_find_package(IDN)
63 macro_log_feature(IDN_FOUND "IDN" "GNU Libidn Internationalized Domain Name (IDN) implemenation" "http://www.gnu.org/software/libidn/" FALSE "" "Used by the Kopete Jabber plugin.")
65 macro_optional_find_package(Soprano)
66 macro_log_feature(Soprano_FOUND "Soprano" "Semantic Desktop Storing" "" FALSE "" "Soprano is needed for Nepomuk")
68 macro_optional_find_package(Nepomuk)
69 macro_log_feature(Nepomuk_FOUND "Nepomuk" "Semantic Desktop" "http://nepomuk.kde.org" FALSE "" "Nepomuk is needed for the integration into KGet")
71 macro_optional_find_package(Sqlite)
72 macro_log_feature(SQLITE_FOUND "SQLite" "SQLite is a Binary-Database" "" FALSE "" "Needed for the SQLite-Backend of the KGet-History and the Kopete-Statistic-Plugin")
75 add_definitions (${QT_DEFINITIONS} ${QT_QTDBUS_DEFINITIONS} ${KDE4_DEFINITIONS})
76 include_directories (${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${KDE4_INCLUDES} ${KDEPIMLIBS_INCLUDE_DIR})
78 macro_optional_add_subdirectory(doc)
79 macro_optional_add_subdirectory(kfile-plugins)
80 macro_optional_add_subdirectory(kget)
82 if(LIBORTP_FOUND AND SPEEX_FOUND AND ALSA_FOUND AND NOT NO_JINGLE)
83 set(BUILD_JINGLE TRUE)
84 else(LIBORTP_FOUND AND SPEEX_FOUND AND ALSA_FOUND AND NOT NO_JINGLE)
85 set(BUILD_JINGLE FALSE)
86 endif(LIBORTP_FOUND AND SPEEX_FOUND AND ALSA_FOUND AND NOT NO_JINGLE)
87 macro_optional_add_subdirectory(kopete)
90 macro_optional_add_subdirectory(krdc)
91 macro_optional_add_subdirectory(kppp)
93 if(LIBVNCSERVER_FOUND)
94 macro_optional_add_subdirectory(krfb)
95 endif(LIBVNCSERVER_FOUND)
99 macro_optional_add_subdirectory(kdnssd)
102 macro_optional_add_subdirectory(filesharing)
105 macro_display_feature_log()