1 project(KDEBASE_RUNTIME)
3 # where to look first for cmake modules, before ${CMAKE_ROOT}/Modules/ is checked
4 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules )
6 #search packages used by KDE
7 find_package(KDE4 REQUIRED)
8 find_package(Strigi REQUIRED)
9 # I don't see any package requiring it. please explain why this dependency
11 #find_package(KdepimLibs REQUIRED)
15 include(CheckFunctionExists)
16 include(CheckIncludeFiles)
18 set(SOPRANO_MIN_VERSION "2.0.98")
19 macro_optional_find_package(Soprano)
20 macro_optional_find_package(Nepomuk)
21 macro_log_feature(Soprano_FOUND "Soprano" "Soprano Libraries" "kdesupport" FALSE "" "Required to build Nepomuk.")
22 macro_log_feature(Nepomuk_FOUND "Nepomuk" "Nepomuk Libraries" "kdelibs" FALSE "" "Required to build Nepomuk.")
23 if(SOPRANO_PLUGIN_SESAME2BACKEND_FOUND OR SOPRANO_PLUGIN_REDLANDBACKEND_FOUND)
24 set(SOPRANO_BACKEND_FOUND true)
25 endif(SOPRANO_PLUGIN_SESAME2BACKEND_FOUND OR SOPRANO_PLUGIN_REDLANDBACKEND_FOUND)
26 macro_log_feature(SOPRANO_BACKEND_FOUND "Soprano Storage Backend" "Soprano Libraries" "kdesupport" FALSE "" "No Soprano storage backend found. Nepomuk will not be compiled without it. (It is highly recommended to use the Sesame2 backend for performance.)")
27 macro_log_feature(SOPRANO_PLUGIN_RAPTORPARSER_FOUND "Soprano raptor parser plugin" "Soprano Libraries" "kdesupport" FALSE "" "Required to run Nepomuk.")
28 if(Soprano_FOUND AND SOPRANO_VERSION STRLESS "2.1.64")
29 message(STATUS "WARNING: It is highly recommended to update to Soprano 2.1.64 or newer for enhanced search capabilities")
30 endif(Soprano_FOUND AND SOPRANO_VERSION STRLESS "2.1.64")
32 check_include_files(sys/wait.h HAVE_SYS_WAIT_H)
33 check_include_files(sys/time.h HAVE_SYS_TIME_H)
35 configure_file (config-runtime.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-runtime.h )
37 add_definitions (${QT_DEFINITIONS} ${KDE4_DEFINITIONS})
39 include_directories (${CMAKE_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${KDE4_INCLUDES})
41 # Build infrastructure
42 add_subdirectory(cmake)
44 # Background processes
45 add_subdirectory(kpasswdserver)
46 add_subdirectory(kdedglobalaccel)
47 add_subdirectory(knotify)
48 add_subdirectory(ktimezoned)
49 add_subdirectory(kuiserver)
50 add_subdirectory(kwalletd)
52 add_subdirectory(soliduiserver)
54 if(Soprano_FOUND AND Nepomuk_FOUND AND STRIGI_STRIGIQTDBUSCLIENT_LIBRARY AND SOPRANO_BACKEND_FOUND AND SOPRANO_PLUGIN_RAPTORPARSER_FOUND)
55 macro_optional_add_subdirectory(nepomuk)
56 endif(Soprano_FOUND AND Nepomuk_FOUND AND STRIGI_STRIGIQTDBUSCLIENT_LIBRARY AND SOPRANO_BACKEND_FOUND AND SOPRANO_PLUGIN_RAPTORPARSER_FOUND)
58 # Plugins/components required for basic utility
59 add_subdirectory(kcontrol)
60 add_subdirectory(kioslave)
61 add_subdirectory(kurifilter-plugins)
62 add_subdirectory(phonon)
63 macro_optional_add_subdirectory(renamedlgplugins)
65 # UI Helper applications
67 add_subdirectory(drkonqi)
69 add_subdirectory(kcmshell)
70 add_subdirectory(kdebugdialog)
71 add_subdirectory(khelpcenter)
72 add_subdirectory(knetattach)
73 add_subdirectory(knewstuff)
75 add_subdirectory(kdesu)
78 # Command-line tools (e.g. for shell scripts)
80 add_subdirectory(kdeeject)
82 add_subdirectory(kfile)
83 add_subdirectory(kiconfinder)
84 add_subdirectory(kioclient)
85 add_subdirectory(kioexec)
86 add_subdirectory(ktraderclient)
87 add_subdirectory(kreadconfig)
88 add_subdirectory(kmimetypefinder)
90 add_subdirectory(kstart)
92 add_subdirectory(kquitapp)
93 add_subdirectory(menu)
94 add_subdirectory(solid-hardware)
96 # Platform-specific integration
97 add_subdirectory(platforms)
99 # Default settings, content and config
100 add_subdirectory(l10n)
101 add_subdirectory(kde-menu)
102 macro_optional_add_subdirectory(doc)
105 add_subdirectory(desktoptheme)
106 add_subdirectory(pics)
107 add_subdirectory(kstyles)
109 if(CMAKE_SOURCE_DIR STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}")
110 macro_display_feature_log()
111 endif(CMAKE_SOURCE_DIR STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}")
113 ########### install files ###############
114 install(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/kde4 DESTINATION ${BIN_INSTALL_DIR})