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)
34 find_package(X11VidMode)
37 find_package(Boost REQUIRED )
39 macro_optional_find_package(DNSSD)
40 macro_optional_find_package(SLP)
41 macro_optional_find_package(IDN)
42 macro_optional_find_package(LibVNCServer)
43 macro_optional_find_package(Plasma)
45 macro_log_feature(LIBVNCSERVER_FOUND "libvncserver" "VNC Server lib, needed to build Krfb and VNC support in KRDC. Version 0.9 or later required." "http://libvncserver.sourceforge.net/")
46 macro_log_feature(DNSSD_FOUND "libdnssd" "Support for Zeroconf, needed to build dnssd" "http://www.zeroconf.org")
47 macro_log_feature(QCA2_FOUND "libqca2" "Qca2 is needed to build some parts of Kopete" "Module into kdesupport" FALSE "2.0")
48 macro_log_feature(SLP_FOUND "openslp" "OpenSLP is needed to build Krfb" "http://www.openslp.org/")
49 macro_log_feature(DECIBEL_FOUND "Decibel" "Decibel is the KDE framework for real-time communication" "HOWTO in kopete/protocols/telepathy")
50 macro_log_feature(IDN_FOUND "libidn" "libidn provides International Domain Name Support for Kopete's Jabber plugin" "http://www.gnu.org/software/libidn")
51 macro_log_feature(SQLITE_FOUND "Sqlite" "Sqlite provides the database storage for Kopete's Statistics pluin" "www.sqlite.org")
52 macro_log_feature(PLASMA_FOUND "Plasma" "Plasma is needed for KNewsTicker and the Plasma applet of KGet." "Part of kdebase")
54 macro_bool_to_01(SLP_FOUND HAVE_SLP) # for krfb
56 add_definitions (${QT_DEFINITIONS} ${QT_QTDBUS_DEFINITIONS} ${KDE4_DEFINITIONS})
57 include_directories (${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${KDE4_INCLUDES})
59 macro_optional_add_subdirectory(doc)
60 macro_optional_add_subdirectory(kfile-plugins)
61 macro_optional_add_subdirectory(kget)
62 macro_optional_add_subdirectory(kopete)
63 macro_optional_add_subdirectory(krdc)
64 macro_optional_add_subdirectory(lanbrowsing)
67 macro_optional_add_subdirectory(kppp)
69 if(LIBVNCSERVER_FOUND AND SLP_FOUND)
70 macro_optional_add_subdirectory(krfb)
71 endif(LIBVNCSERVER_FOUND AND SLP_FOUND)
75 macro_optional_add_subdirectory(knewsticker)
79 macro_optional_add_subdirectory(kdnssd)
83 macro_optional_add_subdirectory(filesharing)
86 macro_display_feature_log()