4 set (KDE_VERSION_MAJOR 3)
5 set (KDE_VERSION_MINOR 96)
6 set (KDE_VERSION_RELEASE 00)
7 set (KDE_VERSION "${KDE_VERSION_MAJOR}.${KDE_VERSION_MINOR}.${KDE_VERSION_RELEASE}" )
8 set (KDE_VERSION_STRING "${KDE_VERSION} (KDE 4.0 Beta4)")
10 # where to look first for cmake modules, before ${CMAKE_ROOT}/Modules/ is checked
11 set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules")
13 set(KDE_DISTRIBUTION_TEXT "compiled sources" CACHE STRING "Indicate the distribution in bug reports" )
15 # this must be before FindKDE4Internal in order to preset the result of the visibility test, so that it will be skipped
16 option(KHTML_BUILD_TESTREGRESSION "Build KHTML's testregression. Note: this disables hidden visibility")
17 # Disable visibility if testregression is built, because the symbols are needed then
18 if (KHTML_BUILD_TESTREGRESSION)
19 set (__KDE_HAVE_GCC_VISIBILITY 0)
20 endif (KHTML_BUILD_TESTREGRESSION)
23 find_package(KDE4Internal REQUIRED)
24 find_package(ZLIB REQUIRED)
25 find_package(Strigi REQUIRED)
26 # Soprano can be found in kdesupport and is used for Konto and KNepomuk
30 find_package(Carbon REQUIRED)
34 set(LIB_INSTALL_DIR ${LIB_INSTALL_DIR}
35 RUNTIME DESTINATION ${BIN_INSTALL_DIR}
36 LIBRARY DESTINATION ${LIB_INSTALL_DIR}
37 ARCHIVE DESTINATION ${LIB_INSTALL_DIR} )
41 # set some default settings
44 # make some more macros available
45 include (MacroLibrary)
47 # macro_optional_find_package() is the same as FIND_PACKAGE(<name>) but additionally creates an OPTION(WITH_<name>)
48 # so the checking for the software can be disabled via ccmake or -DWITH_<name>=OFF
49 macro_optional_find_package(BZip2)
50 macro_optional_find_package(OpenSSL)
51 macro_optional_find_package(Libintl)
52 macro_optional_find_package(OpenGL)
54 #########################################################################
55 # Disallow in-source build
56 macro_ensure_out_of_source_build("kdelibs requires an out of source build. Please create a separate build directory and run 'cmake path_to_kdelibs [options]' there.")
58 # ... and warn in case of an earlier in-source build
59 set(generatedFileInSourceDir EXISTS ${kdelibs_SOURCE_DIR}/kdemacros.h OR EXISTS ${kdelibs_SOURCE_DIR}/config.h)
60 if(${generatedFileInSourceDir})
61 message(STATUS "kdemacros.h or config.h exists in your source directory.")
62 message(FATAL_ERROR "Please run svn-clean, it would seem that your source directory has generated files in it.")
63 endif(${generatedFileInSourceDir})
64 #########################################################################
67 add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS} -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES) # for off_t
68 remove_definitions(-DQT3_SUPPORT_WARNINGS -DQT3_SUPPORT)
70 # for including config.h and for includes like <kparts/foo.h>
71 include_directories( ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/interfaces)
73 # Those variables for are only valid inside of kdelibs, of course.
74 # Use the one variable for the lib you depend upon.
75 # E.g. kdeui uses ${KDE4_KDECORE_INCLUDES}. Something that depends on kparts uses ${KDE4_KPARTS_INCLUDES}.
77 set(KDE4_KJS_INCLUDES ${CMAKE_SOURCE_DIR}/kjs
78 ${CMAKE_BINARY_DIR}/kjs)
80 # kdecore depends on Qt (need only headers from kjs)
81 set(KDE4_KDECORE_INCLUDES ${KDE4_KJS_INCLUDES}
82 ${CMAKE_SOURCE_DIR}/kdecore
83 ${CMAKE_BINARY_DIR}/kdecore
84 ${CMAKE_SOURCE_DIR}/kdecore/compression
85 ${CMAKE_SOURCE_DIR}/kdecore/config
86 ${CMAKE_SOURCE_DIR}/kdecore/date
87 ${CMAKE_SOURCE_DIR}/kdecore/io
88 ${CMAKE_SOURCE_DIR}/kdecore/jobs
89 ${CMAKE_SOURCE_DIR}/kdecore/kernel
90 ${CMAKE_SOURCE_DIR}/kdecore/network
91 ${CMAKE_SOURCE_DIR}/kdecore/services
92 ${CMAKE_SOURCE_DIR}/kdecore/localization
93 ${CMAKE_SOURCE_DIR}/kdecore/sycoca
94 ${CMAKE_SOURCE_DIR}/kdecore/text
95 ${CMAKE_SOURCE_DIR}/kdecore/util
96 ${CMAKE_SOURCE_DIR}/kdecore/sonnet
98 ${_KDE4_PLATFORM_INCLUDE_DIRS})
99 # kdeui depends on kdecore
100 set(KDE4_KDEUI_INCLUDES ${CMAKE_SOURCE_DIR}/kdeui
101 ${CMAKE_SOURCE_DIR}/kdeui/actions
102 ${CMAKE_SOURCE_DIR}/kdeui/colors
103 ${CMAKE_SOURCE_DIR}/kdeui/config
104 ${CMAKE_SOURCE_DIR}/kdeui/dialogs
105 ${CMAKE_SOURCE_DIR}/kdeui/findreplace
106 ${CMAKE_SOURCE_DIR}/kdeui/fonts
107 ${CMAKE_SOURCE_DIR}/kdeui/icons
108 ${CMAKE_SOURCE_DIR}/kdeui/itemviews
109 ${CMAKE_SOURCE_DIR}/kdeui/jobs
110 ${CMAKE_SOURCE_DIR}/kdeui/kernel
111 ${CMAKE_SOURCE_DIR}/kdeui/paged
112 ${CMAKE_SOURCE_DIR}/kdeui/plotting
113 ${CMAKE_SOURCE_DIR}/kdeui/shortcuts
114 ${CMAKE_SOURCE_DIR}/kdeui/sonnet
115 ${CMAKE_SOURCE_DIR}/kdeui/util
116 ${CMAKE_SOURCE_DIR}/kdeui/widgets
117 ${CMAKE_SOURCE_DIR}/kdeui/windowmanagement
118 ${CMAKE_SOURCE_DIR}/kdeui/xmlgui
119 ${KDE4_KDECORE_INCLUDES})
121 # kio depends on kdeui
122 set(KDE4_KIO_INCLUDES ${CMAKE_SOURCE_DIR}/kio
123 ${CMAKE_SOURCE_DIR}/kio/bookmarks
124 ${CMAKE_SOURCE_DIR}/kio/kio
125 ${CMAKE_SOURCE_DIR}/kio/kfile
126 ${KDE4_KDEUI_INCLUDES})
129 set(KDE4_KPTY_INCLUDES ${CMAKE_SOURCE_DIR}/kpty ${KDE4_KIO_INCLUDES} )
131 # kparts depends on kio
132 set(KDE4_KPARTS_INCLUDES ${CMAKE_SOURCE_DIR}/kparts
133 ${KDE4_KIO_INCLUDES})
135 # kde3support depends on kparts
136 set(KDE4_KDE3SUPPORT_INCLUDES ${CMAKE_SOURCE_DIR}/kde3support
137 ${CMAKE_SOURCE_DIR}/kde3support/kdecore
138 ${CMAKE_SOURCE_DIR}/kde3support/kdeui
139 ${CMAKE_SOURCE_DIR}/kde3support/kio
140 ${KDE4_KPARTS_INCLUDES})
142 # khtml depends on kde3support currently
143 set(KDE4_KHTML_INCLUDES ${CMAKE_SOURCE_DIR}/khtml
144 ${KDE4_KDE3SUPPORT_INCLUDES})
146 # ACL stuff (used in kio/ and kioslaves/)
147 macro_optional_find_package(ACL)
148 macro_bool_to_01(ACL_FOUND HAVE_LIBACL HAVE_POSIX_ACL)
149 configure_file(config-acl.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-acl.h )
151 include(ConfigureChecks.cmake)
153 # now create config headers
154 configure_file(config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h )
155 configure_file(config-prefix.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-prefix.h )
156 configure_file(config-compiler.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-compiler.h )
157 configure_file(config-pty.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-pty.h )
158 configure_file(kdemacros.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/kdemacros.h )
161 check_library_exists(nsl gethostbyname "" HAVE_NSL_LIBRARY)
162 check_library_exists(socket connect "" HAVE_SOCKET_LIBRARY)
164 # list the subdirectories
166 add_subdirectory( cmake )
167 add_subdirectory( kdecore )
168 add_subdirectory( kdeui )
170 add_subdirectory( kpty )
171 add_subdirectory( kdesu )
173 add_subdirectory( kjs )
174 add_subdirectory( kjsembed )
175 add_subdirectory( kwallet )
176 add_subdirectory( kio )
177 add_subdirectory( phonon )
178 add_subdirectory( solid )
179 add_subdirectory( kded )
180 add_subdirectory( kde3support )
181 add_subdirectory( kfile )
182 add_subdirectory( kconf_update )
183 add_subdirectory( kdoctools )
184 add_subdirectory( kioslave )
185 add_subdirectory( knewstuff )
186 add_subdirectory( kparts )
187 add_subdirectory( kutils )
188 add_subdirectory( licenses )
189 add_subdirectory( mimetypes )
190 add_subdirectory( doc )
191 add_subdirectory( kinit )
192 add_subdirectory( threadweaver )
193 add_subdirectory( sonnet )
194 add_subdirectory( khtml )
195 add_subdirectory( interfaces )
196 add_subdirectory( kdewidgets )
197 add_subdirectory( kate )
198 add_subdirectory( knotify )
199 add_subdirectory( kimgio )
200 add_subdirectory( dnssd )
201 add_subdirectory( kross )
202 add_subdirectory( security )
203 add_subdirectory( includes )
205 macro_log_feature(Soprano_FOUND "Soprano" "Soprano Libraries" "kdesupport" FALSE "" "Provide metadata support (for semantic desktop).")
207 macro_optional_add_subdirectory(nepomuk)
211 ######## write dependency file which will be installed #########
215 file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/KDELibsDependencies.cmake
216 "# this file was generated during the kdelibs build process
217 set(KDE_VERSION_MAJOR ${KDE_VERSION_MAJOR})
218 set(KDE_VERSION_MINOR ${KDE_VERSION_MINOR})
219 set(KDE_VERSION_RELEASE ${KDE_VERSION_RELEASE})
220 set(KDE_VERSION \"${KDE_VERSION}\")
221 set(KDE_VERSION_STRING \"${KDE_VERSION_STRING}\")
224 # write the installdirs
227 file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/KDELibsDependencies.cmake
228 "if (NOT KDE4_INSTALL_DIR)
229 set(KDE4_INSTALL_DIR \"${CMAKE_INSTALL_PREFIX}\")
230 endif (NOT KDE4_INSTALL_DIR)
231 set(KDE4_LIB_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/lib\")
232 set(KDE4_LIBEXEC_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/bin\")
233 set(KDE4_INCLUDE_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/include\")
234 set(KDE4_BIN_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/bin\")
235 set(KDE4_SBIN_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/sbin\")
236 set(KDE4_DATA_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/apps\")
237 set(KDE4_HTML_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/doc/HTML\")
238 set(KDE4_CONFIG_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/config\")
239 set(KDE4_ICON_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/icons\")
240 set(KDE4_KCFG_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/config.kcfg\")
241 set(KDE4_LOCALE_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/locale\")
242 set(KDE4_MIME_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/mimelnk\")
243 set(KDE4_SOUND_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/sounds\")
244 set(KDE4_TEMPLATES_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/templates\")
245 set(KDE4_WALLPAPER_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/wallpapers\")
246 set(KDE4_KCONF_UPDATE_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/apps/kconf_update\")
247 set(KDE4_AUTOSTART_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/autostart\")
248 set(KDE4_XDG_APPS_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/applications/kde4\")
249 set(KDE4_XDG_DIRECTORY_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/desktop-directories\")
250 set(KDE4_SYSCONF_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/etc\")
251 set(KDE4_MAN_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/man\")
252 set(KDE4_INFO_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/info\")
254 # splitted, otherwise cmake crashes with a memory exhausted error
255 file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/KDELibsDependencies.cmake
256 "set(KDE4_DBUS_INTERFACES_DIR \"\${KDE4_INSTALL_DIR}/share/dbus-1/interfaces\")
257 set(KDE4_DBUS_SERVICES_DIR \"\${KDE4_INSTALL_DIR}/share/dbus-1/services\")
258 set(KDE4_SERVICES_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/kde4/services\")
259 set(KDE4_SERVICETYPES_INSTALL_DIR \"\${KDE4_INSTALL_DIR}/share/kde4/servicetypes\")
262 # we need the absolute directories where stuff will be installed too
263 # but since the variables which contain the destinations can be relative
264 # or absolute paths, we need this macro to make them all absoulte, Alex
265 macro(MAKE_INSTALL_PATH_ABSOLUTE out in)
267 if ("${in}" MATCHES "^/.*")
269 else ("${in}" MATCHES "^/.*")
270 set(${out} ${CMAKE_INSTALL_PREFIX}/${in})
271 endif ("${in}" MATCHES "^/.*")
273 if ("${in}" MATCHES "^[a-zA-Z]:.*")
275 else ("${in}" MATCHES "^[a-zA-Z]:.*")
276 set(${out} ${CMAKE_INSTALL_PREFIX}/${in})
277 endif ("${in}" MATCHES "^[a-zA-Z]:.*")
279 endmacro(MAKE_INSTALL_PATH_ABSOLUTE out in)
281 make_install_path_absolute(KDE4_INSTALL_DIR ${CMAKE_INSTALL_PREFIX})
282 make_install_path_absolute(KDE4_LIB_INSTALL_DIR ${LIB_INSTALL_DIR})
283 make_install_path_absolute(KDE4_LIBEXEC_INSTALL_DIR ${LIBEXEC_INSTALL_DIR})
284 make_install_path_absolute(KDE4_INCLUDE_INSTALL_DIR ${INCLUDE_INSTALL_DIR})
285 make_install_path_absolute(KDE4_BIN_INSTALL_DIR ${BIN_INSTALL_DIR})
286 make_install_path_absolute(KDE4_SBIN_INSTALL_DIR ${SBIN_INSTALL_DIR})
287 make_install_path_absolute(KDE4_DATA_INSTALL_DIR ${DATA_INSTALL_DIR})
288 make_install_path_absolute(KDE4_HTML_INSTALL_DIR ${HTML_INSTALL_DIR})
289 make_install_path_absolute(KDE4_CONFIG_INSTALL_DIR ${CONFIG_INSTALL_DIR})
290 make_install_path_absolute(KDE4_ICON_INSTALL_DIR ${ICON_INSTALL_DIR})
291 make_install_path_absolute(KDE4_KCFG_INSTALL_DIR ${KCFG_INSTALL_DIR})
292 make_install_path_absolute(KDE4_LOCALE_INSTALL_DIR ${LOCALE_INSTALL_DIR})
293 make_install_path_absolute(KDE4_MIME_INSTALL_DIR ${MIME_INSTALL_DIR})
294 make_install_path_absolute(KDE4_SOUND_INSTALL_DIR ${SOUND_INSTALL_DIR})
295 make_install_path_absolute(KDE4_TEMPLATES_INSTALL_DIR ${TEMPLATES_INSTALL_DIR})
296 make_install_path_absolute(KDE4_WALLPAPER_INSTALL_DIR ${WALLPAPER_INSTALL_DIR})
297 make_install_path_absolute(KDE4_KCONF_UPDATE_INSTALL_DIR ${KCONF_UPDATE_INSTALL_DIR})
298 make_install_path_absolute(KDE4_AUTOSTART_INSTALL_DIR ${AUTOSTART_INSTALL_DIR})
299 make_install_path_absolute(KDE4_XDG_APPS_INSTALL_DIR ${XDG_APPS_INSTALL_DIR})
300 make_install_path_absolute(KDE4_XDG_DIRECTORY_INSTALL_DIR ${XDG_DIRECTORY_INSTALL_DIR})
301 make_install_path_absolute(KDE4_SYSCONF_INSTALL_DIR ${SYSCONF_INSTALL_DIR})
302 make_install_path_absolute(KDE4_MAN_INSTALL_DIR ${MAN_INSTALL_DIR})
303 make_install_path_absolute(KDE4_INFO_INSTALL_DIR ${INFO_INSTALL_DIR})
304 make_install_path_absolute(KDE4_DBUS_INTERFACES_DIR ${DBUS_INTERFACES_INSTALL_DIR})
305 make_install_path_absolute(KDE4_DBUS_SERVICES_DIR ${DBUS_SERVICES_INSTALL_DIR})
306 make_install_path_absolute(KDE4_SERVICES_INSTALL_DIR ${SERVICES_INSTALL_DIR})
307 make_install_path_absolute(KDE4_SERVICETYPES_INSTALL_DIR ${SERVICETYPES_INSTALL_DIR})
309 file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/KDELibsDependencies.cmake
310 "set(KDE4_INSTALL_DIR \"${KDE4_INSTALL_DIR}\")
311 set(KDE4_LIB_INSTALL_DIR \"${KDE4_LIB_INSTALL_DIR}\")
312 set(KDE4_LIBEXEC_INSTALL_DIR \"${KDE4_LIBEXEC_INSTALL_DIR}\")
313 set(KDE4_INCLUDE_INSTALL_DIR \"${KDE4_INCLUDE_INSTALL_DIR}\")
314 set(KDE4_BIN_INSTALL_DIR \"${KDE4_BIN_INSTALL_DIR}\")
315 set(KDE4_SBIN_INSTALL_DIR \"${KDE4_SBIN_INSTALL_DIR}\")
316 set(KDE4_DATA_INSTALL_DIR \"${KDE4_DATA_INSTALL_DIR}\")
317 set(KDE4_HTML_INSTALL_DIR \"${KDE4_HTML_INSTALL_DIR}\")
318 set(KDE4_CONFIG_INSTALL_DIR \"${KDE4_CONFIG_INSTALL_DIR}\")
319 set(KDE4_ICON_INSTALL_DIR \"${KDE4_ICON_INSTALL_DIR}\")
320 set(KDE4_KCFG_INSTALL_DIR \"${KDE4_KCFG_INSTALL_DIR}\")
321 set(KDE4_LOCALE_INSTALL_DIR \"${KDE4_LOCALE_INSTALL_DIR}\")
322 set(KDE4_MIME_INSTALL_DIR \"${KDE4_MIME_INSTALL_DIR}\")
323 set(KDE4_SOUND_INSTALL_DIR \"${KDE4_SOUND_INSTALL_DIR}\")
324 set(KDE4_TEMPLATES_INSTALL_DIR \"${KDE4_TEMPLATES_INSTALL_DIR}\")
325 set(KDE4_WALLPAPER_INSTALL_DIR \"${KDE4_WALLPAPER_INSTALL_DIR}\")
326 set(KDE4_KCONF_UPDATE_INSTALL_DIR \"${KDE4_KCONF_UPDATE_INSTALL_DIR}\")
327 set(KDE4_AUTOSTART_INSTALL_DIR \"${KDE4_AUTOSTART_INSTALL_DIR}\")
328 set(KDE4_XDG_APPS_INSTALL_DIR \"${KDE4_XDG_APPS_INSTALL_DIR}\")
329 set(KDE4_XDG_DIRECTORY_INSTALL_DIR \"${KDE4_XDG_DIRECTORY_INSTALL_DIR}\")
330 set(KDE4_SYSCONF_INSTALL_DIR \"${KDE4_SYSCONF_INSTALL_DIR}\")
331 set(KDE4_MAN_INSTALL_DIR \"${KDE4_MAN_INSTALL_DIR}\")
332 set(KDE4_INFO_INSTALL_DIR \"${KDE4_INFO_INSTALL_DIR}\")
333 set(KDE4_DBUS_INTERFACES_DIR \"${KDE4_DBUS_INTERFACES_DIR}\")
334 set(KDE4_DBUS_SERVICES_DIR \"${KDE4_DBUS_SERVICES_DIR}\")
335 set(KDE4_SERVICES_INSTALL_DIR \"${KDE4_SERVICES_INSTALL_DIR}\")
336 set(KDE4_SERVICETYPES_INSTALL_DIR \"${KDE4_SERVICETYPES_INSTALL_DIR}\")
340 # write the library dependencies
343 file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/KDELibsDependencies.cmake
344 "if (NOT QT_INSTALL_DIR)
345 set (QT_INSTALL_DIR \"${QT_INSTALL_DIR}\")
346 endif (NOT QT_INSTALL_DIR)
348 # replace hard codes pathes by variables
349 # !!! the following stuff does not work because export_library_dependencies
350 # !!! does not wait until the file is written completly
351 if (export_library_dependencies_is_fixed)
352 export_library_dependencies(${CMAKE_BINARY_DIR}/tmpdeps.cmake)
353 file(READ ${CMAKE_BINARY_DIR}/tmpdeps.cmake _deps)
354 string(REPLACE "${QT_INSTALL_DIR}" "\${QT_INSTALL_DIR}" __deps "${_deps}")
355 file (APPEND ${CMAKE_BINARY_DIR}/KDELibsDependencies.cmake "${__deps}")
356 else (export_library_dependencies_is_fixed)
357 export_library_dependencies(${CMAKE_CURRENT_BINARY_DIR}/KDELibsDependencies.cmake APPEND)
358 endif (export_library_dependencies_is_fixed)
360 export_library_dependencies(${CMAKE_CURRENT_BINARY_DIR}/KDELibsDependencies.cmake APPEND)
363 ########### install files ###############
365 install( FILES ${CMAKE_CURRENT_BINARY_DIR}/kdemacros.h DESTINATION ${INCLUDE_INSTALL_DIR} )
366 install( FILES ${CMAKE_CURRENT_BINARY_DIR}/KDELibsDependencies.cmake DESTINATION ${DATA_INSTALL_DIR}/cmake/modules)
367 install( FILES ${CMAKE_CURRENT_BINARY_DIR}/KDELibsDependencies.cmake DESTINATION ${PLUGIN_INSTALL_DIR}/cmake RENAME KDE4Config.cmake)
370 macro_display_feature_log()