OSDN Git Service

static analyzer warnings fixes
[kde/Katie.git] / CMakeLists.txt
1 # Editors notes:
2 #
3 # * To find all FIXME/TODO related to the CMake build system (and those
4 #   inherited from the QMake build system) execute the following in the
5 #   top-level directory of the source tree:
6 #
7 #     find -name '*.cmake' -exec grep -E 'TODO|FIXME' {} +
8 #     find -name CMakeLists.txt -exec grep -E 'TODO|FIXME' {} +
9
10 cmake_minimum_required(VERSION 3.3 FATAL_ERROR)
11
12 if(CMAKE_CROSSCOMPILING AND NOT CMAKE_CROSSCOMPILING_EMULATOR)
13     message(FATAL_ERROR "Cross-compiling requires CMAKE_CROSSCOMPILING_EMULATOR to be set to QEMU executable, e.g. qemu-arm-static")
14 endif()
15
16 project(Katie C CXX)
17
18 if(NOT CMAKE_BUILD_TYPE)
19     set(CMAKE_BUILD_TYPE RelWithDebInfo)
20 endif()
21
22 set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules")
23 set(CMAKE_AUTOMOC FALSE)
24 set(CMAKE_AUTOUIC FALSE)
25 set(CMAKE_AUTORCC FALSE)
26 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin")
27 set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib")
28 set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/staticlib")
29 set(CMAKE_C_VISIBILITY_PRESET "hidden")
30 set(CMAKE_CXX_VISIBILITY_PRESET "hidden")
31 set(CMAKE_VISIBILITY_INLINES_HIDDEN ON)
32 set(CMAKE_INCLUDE_DIRECTORIES_BEFORE ON)
33 set(CMAKE_UNITY_BUILD_BATCH_SIZE 300)
34
35 # enable symbols visibility preset for all targets
36 cmake_policy(SET CMP0063 NEW)
37
38 # LLVM linker does not have a default library search path, add some directories known to contain
39 # system wide libraries. the headers search path is also incomplete
40 if(CMAKE_SYSTEM_NAME MATCHES "BSD")
41     include_directories(/usr/X11R7/include /usr/pkg/include /usr/local/include /usr/include)
42     link_directories(/usr/X11R7/lib /usr/pkg/lib /usr/local/lib /usr/lib /lib)
43 endif()
44
45 include(CheckCXXCompilerFlag)
46 include(GNUInstallDirs)
47 include(CheckIncludeFileCXX)
48 include(CheckTypeSize)
49 include(CMakePushCheckState)
50 include(CheckStructHasMember)
51 include(CheckCXXSourceRuns)
52 include(FeatureSummary)
53 include(KatieBuildMacros)
54 include(mkspecs/mkspecs.cmake)
55
56 # mostly relevant to the build process, also stored in the version file for CMake and in qconfig.h.cmake
57 set(KATIE_MAJOR "4")
58 set(KATIE_MINOR "9")
59 set(KATIE_MICRO "2")
60 set(KATIE_HEX "0x040902")
61 set(KATIE_VERSION "${KATIE_MAJOR}.${KATIE_MINOR}.${KATIE_MICRO}")
62
63 set(KATIE_NO_WARNINGS
64     # placement new used in private QVariant functions
65     -Wno-placement-new
66     # QVector does not always use new/delete
67     -Wno-class-memaccess
68     # hot attribute used in function prototypes
69     -Wno-attributes
70     # deprecated X11, CUPS and OpenSSL API used
71     -Wno-deprecated -Wno-deprecated-declarations
72 )
73 foreach(nowarning ${KATIE_NO_WARNINGS})
74     string(REPLACE "-W" "" normalizednowarning "${nowarning}")
75     check_cxx_compiler_flag(${nowarning} CXX_${normalizednowarning})
76     if(CXX_${normalizednowarning})
77         set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${nowarning}")
78     endif()
79 endforeach()
80
81 # only for the build process
82 if(CMAKE_SYSTEM_PROCESSOR)
83     string(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" KATIE_PROCESSOR)
84 elseif(CMAKE_HOST_SYSTEM_PROCESSOR)
85     string(TOLOWER "${CMAKE_HOST_SYSTEM_PROCESSOR}" KATIE_PROCESSOR)
86 endif()
87
88 # used in katie_optimize_headers()
89 find_program(KATIE_UNIFDEF NAMES unifdef)
90 if(NOT KATIE_UNIFDEF)
91     message(WARNING "Could not find unifdef, headers will not be optimized")
92 endif()
93
94 # used as shebang for profile, exec, dbus, xvfb and dbg scripts
95 find_program(KATIE_SHELL NAMES sh dash mksh ksh ash)
96 if(NOT KATIE_SHELL)
97     message(FATAL_ERROR "Could not detect shell, supported are: sh, dash, mksh, ksh and ash")
98 endif()
99
100 # should be either STATIC or SHARED
101 set(KATIE_TYPE SHARED CACHE STRING "Build type")
102
103 # components and tools that will be build, changed depending on the requirements availability
104 # NOTE: excluding DesignerComponents as it was never used as public component, currently only
105 # used by the the designer tool. if it is ever needed for something it can just be added here,
106 # Q_DESIGNER_COMPONENTS_EXPORT must be introduced and genmap.py adjusted - the rest of the
107 # build system has everything in place.
108 set(KATIE_COMPONENTS "Core Gui Declarative Designer Network Sql Svg Xml Script ScriptTools Test UiTools")
109 set(KATIE_TOOLS "moc uic rcc designer qscript qtconfig")
110
111 set(KATIE_HEADERS_PATH "${CMAKE_INSTALL_FULL_INCLUDEDIR}/katie" CACHE PATH "Headers installation path")
112 set(KATIE_LIBRARIES_PATH "${CMAKE_INSTALL_FULL_LIBDIR}" CACHE PATH "Libraries installation path")
113 set(KATIE_BINARIES_PATH "${CMAKE_INSTALL_FULL_BINDIR}" CACHE PATH "Binaries installation path")
114 set(KATIE_PLUGINS_PATH "${KATIE_LIBRARIES_PATH}/katie/plugins" CACHE PATH "Plugins installation path")
115 set(KATIE_IMPORTS_PATH "${KATIE_LIBRARIES_PATH}/katie/imports" CACHE PATH "Declarative imports installation path")
116 set(KATIE_TRANSLATIONS_PATH "${CMAKE_INSTALL_FULL_LOCALEDIR}" CACHE PATH "Translations installation path")
117 set(KATIE_CMAKE_PATH "${KATIE_LIBRARIES_PATH}/cmake/Katie" CACHE PATH "CMake aware modules installation path")
118 set(KATIE_LDCONF_PATH "${CMAKE_INSTALL_FULL_SYSCONFDIR}/ld.so.conf.d" CACHE PATH "Run-time linker/loader configs installation path")
119 set(KATIE_PROFILE_PATH "${CMAKE_INSTALL_FULL_SYSCONFDIR}/profile.d" CACHE PATH "Shell profile scripts installation path")
120 set(KATIE_MAN_PATH "${CMAKE_INSTALL_FULL_MANDIR}" CACHE PATH "Manual pages installation path")
121 set(KATIE_APPLICATIONS_PATH "${CMAKE_INSTALL_FULL_DATADIR}/applications" CACHE PATH "Desktop applications register installation path")
122 set(KATIE_PIXMAPS_PATH "${CMAKE_INSTALL_FULL_DATADIR}/pixmaps" CACHE PATH "Desktop applications icon installation path")
123 set(KATIE_PKGCONFIG_PATH "${KATIE_LIBRARIES_PATH}/pkgconfig" CACHE PATH "pkg-config installation path")
124 set(KATIE_TOOLS_SUFFIX "" CACHE STRING "Tools (moc, uic, rcc, etc.) suffix")
125
126 # optional package
127 option(WITH_CUPS "Build CUPS support" ON)
128 add_feature_info(cups WITH_CUPS "build CUPS support")
129
130 option(WITH_JPEG "Build JPEG support" ON)
131 add_feature_info(jpeg WITH_JPEG "build JPEG support")
132
133 option(WITH_TIFF "Build TIFF support" ON)
134 add_feature_info(tiff WITH_TIFF "build TIFF support")
135
136 option(WITH_DBUS "Build D-Bus support" ON)
137 add_feature_info(dbus WITH_DBUS "build D-Bus support")
138
139 option(WITH_FONTCONFIG "Build Fontconfig support" ON)
140 add_feature_info(fontconfig WITH_FONTCONFIG "build Fontconfig support")
141
142 option(WITH_ODBC "Build ODBC database plugin" ON)
143 add_feature_info(odbc WITH_ODBC "build ODBC support")
144
145 option(WITH_POSTGRESQL "Build PostgreSQL database plugin" ON)
146 add_feature_info(postgresql WITH_POSTGRESQL "build PostgreSQL support")
147
148 option(WITH_MYSQL "Build MySQL database plugin" ON)
149 add_feature_info(mysql WITH_MYSQL "build MySQL support")
150
151 option(WITH_INTL "Build Intl support" ON)
152 add_feature_info(intl WITH_INTL "build Intl support")
153
154 option(WITH_EXECINFO "Build ExecInfo support" OFF)
155 add_feature_info(execinfo WITH_EXECINFO "build ExecInfo support")
156
157 # optional features
158 option(KATIE_TESTS "Build automatic tests" OFF)
159 add_feature_info(tests KATIE_TESTS "build automatic tests")
160
161 option(KATIE_BENCHMARKS "Build automatic benchmarks" OFF)
162 add_feature_info(benchmarks KATIE_BENCHMARKS "build automatic benchmarks")
163
164 option(KATIE_UTILS "Build maintainance utilities" OFF)
165 add_feature_info(utils KATIE_UTILS "build maintainance utilities")
166
167 option(KATIE_PCH "Build components with pre-compiled header" OFF)
168 add_feature_info(pch KATIE_PCH "build components with pre-compiled header")
169
170 option(WITH_ACCESSIBILITY "Build accessibility support" ON)
171 add_feature_info(accessibility WITH_ACCESSIBILITY "build accessibility support")
172
173 # v1.2.0+ required for compressBound()
174 find_package(ZLIB 1.2.0)
175 set_package_properties(ZLIB PROPERTIES
176     PURPOSE "Required for compression support"
177     DESCRIPTION "A Massively Spiffy Yet Delicately Unobtrusive Compression Library"
178     URL "https://zlib.net"
179     TYPE REQUIRED
180 )
181
182 # v4.6+ required for unorm2_getDecomposition()
183 find_package(ICU 4.6)
184 set_package_properties(ICU PROPERTIES
185     PURPOSE "Required for locales support"
186     DESCRIPTION "Mature, widely used libraries providing Unicode and Globalization support"
187     URL "http://site.icu-project.org/"
188     TYPE REQUIRED
189 )
190
191 # v1.1.3+ required for exported ZSTD_getErrorString() and ZSTD_getErrorCode()
192 find_package(ZSTD 1.1.3)
193 set_package_properties(ZSTD PROPERTIES
194     PURPOSE "Required for compression support"
195     DESCRIPTION "Fast real-time compression algorithm"
196     URL "https://github.com/facebook/zstd"
197     TYPE REQUIRED
198 )
199
200 # v0.9.8+ required for SHA-224...SHA-512 support
201 find_package(OpenSSL 0.9.8)
202 set_package_properties(OpenSSL PROPERTIES
203     PURPOSE "Required for HTTPS support"
204     DESCRIPTION "Robust, commercial-grade, and full-featured toolkit for SSL and TLS"
205     URL "https://openssl.org"
206     TYPE REQUIRED
207 )
208
209 # v7.7+ required for JavaScript compatibility
210 find_package(PCRE 7.7)
211 set_package_properties(PCRE PROPERTIES
212     PURPOSE "Required for regexp support in script component"
213     DESCRIPTION "Perl Compatible Regular Expressions"
214     URL "https://www.pcre.org/"
215     TYPE REQUIRED
216 )
217
218 find_package(X11)
219 set_package_properties(X11 PROPERTIES
220     PURPOSE "Required for X11/X.Org integration support"
221     DESCRIPTION "Open source implementation of the X Window System"
222     URL "https://www.x.org"
223     TYPE REQUIRED
224 )
225
226 # v2.1.10+ required for FT_GlyphSlot_Embolden()
227 find_package(Freetype 2.1.10)
228 set_package_properties(Freetype PROPERTIES
229     PURPOSE "Required for fonts configuration support"
230     DESCRIPTION "Freely available software library to render fonts"
231     URL "https://www.freetype.org"
232     TYPE REQUIRED
233 )
234
235 set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
236 find_package(Threads)
237 set_package_properties(Threads PROPERTIES
238     PURPOSE "Required for threads support"
239     DESCRIPTION "Platform dependent threads implementation"
240     URL ""
241     TYPE REQUIRED
242 )
243
244 # v1.5.4+ required for png_longjmp_ptr() without noreturn attribute
245 find_package(PNG 1.5.4)
246 set_package_properties(PNG PROPERTIES
247     PURPOSE "PNG format handler"
248     DESCRIPTION "A collection of routines used to create PNG format graphics files"
249     URL "http://www.libpng.org/pub/png/libpng.html"
250     TYPE REQUIRED
251 )
252
253 # v3.5.0+ required for sqlite3_open_v2()
254 find_package(Sqlite 3.5.0)
255 set_package_properties(Sqlite PROPERTIES
256     PURPOSE "Required for SQLite database support"
257     DESCRIPTION "Software library that implements SQL database engine"
258     URL "https://www.sqlite.org/"
259     TYPE REQUIRED
260 )
261
262 find_package(JPEG)
263 set_package_properties(JPEG PROPERTIES
264     PURPOSE "JPEG format handler"
265     DESCRIPTION "JPEG image codec with accelerated baseline compression and decompression"
266     URL "https://libjpeg-turbo.virtualgl.org/"
267     TYPE RECOMMENDED
268 )
269
270 # v3.6.0+ required for TIFFReadRGBAImageOriented()
271 find_package(TIFF 3.6.0)
272 set_package_properties(TIFF PROPERTIES
273     PURPOSE "TIFF format handler"
274     DESCRIPTION "Library for manipulation of TIFF images"
275     URL "http://www.libtiff.org/"
276     TYPE RECOMMENDED
277 )
278
279 find_package(Cups)
280 set_package_properties(Cups PROPERTIES
281     PURPOSE "Required for printing support"
282     DESCRIPTION "CUPS is the standards-based, open source printing system"
283     URL "https://www.cups.org"
284     TYPE RECOMMENDED
285 )
286
287 # v2.4.2+ required for Freetype integration
288 find_package(Fontconfig 2.4.2)
289 set_package_properties(Fontconfig PROPERTIES
290     PURPOSE "Required for fonts configuration support"
291     DESCRIPTION "Library for configuring and customizing font access"
292     URL "https://www.freedesktop.org/wiki/Software/fontconfig/"
293     TYPE RECOMMENDED
294 )
295
296 # v1.5.12+ required for DBusBasicValue type
297 find_package(DBus 1.5.12)
298 set_package_properties(DBus PROPERTIES
299     PURPOSE "Required for D-Bus support"
300     DESCRIPTION "Message bus system, a simple way for applications to talk to one another"
301     URL "https://www.freedesktop.org/wiki/Software/dbus"
302     TYPE RECOMMENDED
303 )
304
305 # v3.0+ required for SQLSetEnvAttr() and many other but unixODBC versioning is different
306 find_package(ODBC)
307 set_package_properties(ODBC PROPERTIES
308     PURPOSE "Required for ODBC database support"
309     DESCRIPTION "The definitive standard for ODBC on non MS Windows platforms"
310     URL "http://www.unixodbc.org"
311     TYPE RECOMMENDED
312 )
313
314 # v7.4+ required for PQresultErrorField()
315 find_package(PostgreSQL 7.4)
316 set_package_properties(PostgreSQL PROPERTIES
317     PURPOSE "Required for PostgreSQL database support"
318     DESCRIPTION "The world's most advanced open source database"
319     URL "https://www.postgresql.org/"
320     TYPE RECOMMENDED
321 )
322
323 # v4.1.13+ required for multiple statements query and UTF-8 support
324 find_package(MySQL 4.1.13)
325 set_package_properties(MySQL PROPERTIES
326     PURPOSE "Required for MySQL database support"
327     DESCRIPTION "The world's most popular open source database"
328     URL "https://www.mysql.com/"
329     TYPE RECOMMENDED
330 )
331
332 find_package(Intl)
333 set_package_properties(Intl PROPERTIES
334     PURPOSE "Required for translations support"
335     DESCRIPTION "GNU gettext runtime library"
336     URL "https://www.gnu.org/software/gettext/gettext.html"
337     TYPE RECOMMENDED
338 )
339
340 find_package(ExecInfo)
341 set_package_properties(ExecInfo PROPERTIES
342     PURPOSE "Required for stack traces on assert and crash"
343     DESCRIPTION "Standard C library specific execinfo implementation"
344     URL ""
345     TYPE RECOMMENDED
346 )
347
348 # stored in qconfig.h.cmake
349 check_type_size(size_t QT_POINTER_SIZE)
350
351 # used in components, tests and JavaScriptCore
352 katie_check_header("cxxabi.h")
353 katie_check_header("semaphore.h")
354 katie_check_function(getpwnam_r "pwd.h")
355 katie_check_function(getpwuid_r "pwd.h")
356 katie_check_function(getgrgid_r "grp.h")
357 katie_check_function(nl_langinfo "langinfo.h")
358 katie_check_function(getaddrinfo "netdb.h")
359 katie_check_function(clock_gettime "time.h")
360 katie_check_function(vsnprintf "stdio.h")
361 katie_check_function(posix_memalign "stdlib.h")
362 katie_check_function(strerror_r "string.h")
363 katie_check_function(localtime_r "time.h")
364 katie_check_function(gmtime_r "time.h")
365 katie_check_function(fcvt "stdlib.h")
366 katie_check_function(ecvt "stdlib.h")
367 katie_check_function(getprogname "stdlib.h")
368 katie_check_function(arc4random "stdlib.h")
369 katie_check_function(get_current_dir_name "unistd.h")
370 katie_check_function(prctl "sys/prctl.h")
371 katie_check_function(fegetenv "fenv.h")
372 katie_check_function(fesetenv "fenv.h")
373 katie_check_function(feclearexcept "fenv.h")
374 katie_check_function(feenableexcept "fenv.h")
375 katie_check_function(madvise "sys/mman.h")
376 katie_check_function(getifaddrs "ifaddrs.h")
377 katie_check_function(timegm "time.h")
378 katie_check_function(inotify_init1 "sys/inotify.h")
379 katie_check_function(kevent "sys/event.h")
380 katie_check_function(pipe2 "unistd.h")
381 katie_check_function(accept4 "sys/socket.h")
382 katie_check_function(paccept "sys/socket.h")
383 katie_check_function(getdomainname "unistd.h")
384 katie_check_struct(tm tm_gmtoff "time.h")
385 katie_check_struct(tm tm_zone "time.h")
386 katie_check_struct(sockaddr_ll sll_addr "netpacket/packet.h")
387 katie_check_struct(sockaddr_dl sdl_index "net/if_dl.h")
388 katie_check_struct(dirent d_type "dirent.h")
389
390 cmake_reset_check_state()
391 set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_THREAD_LIBS_INIT})
392 katie_check_function(pthread_attr_setstacksize "pthread.h")
393 katie_check_function(pthread_setname_np "pthread.h")
394 cmake_reset_check_state()
395
396 # 64-bit offset alternatives, if any of the functions is not found it will set
397 # QT_LARGEFILE_SUPPORT to FALSE. QT_LARGEFILE_SUPPORT is used in qconfig.h
398 set(QT_LARGEFILE_SUPPORT TRUE)
399 katie_check_function64(stat64 "sys/stat.h")
400 katie_check_function64(lstat64 "sys/stat.h")
401 katie_check_function64(fstat64 "sys/stat.h")
402 katie_check_function64(open64 "fcntl.h")
403 katie_check_function64(creat64 "fcntl.h")
404 katie_check_function64(lseek64 "unistd.h")
405 katie_check_function64(truncate64 "unistd.h")
406 katie_check_function64(ftruncate64 "unistd.h")
407 katie_check_function64(fopen64 "stdio.h")
408 katie_check_function64(fseeko64 "stdio.h")
409 katie_check_function64(ftello64 "stdio.h")
410 katie_check_function64(fgetpos64 "stdio.h")
411 katie_check_function64(fsetpos64 "stdio.h")
412 katie_check_function64(mmap64 "sys/mman.h")
413 katie_check_function64(readdir64 "dirent.h")
414 katie_check_function64(readdir64_r "dirent.h")
415
416 katie_check_proc(exe)
417 katie_check_proc(cmdline)
418
419 configure_file(
420     ${CMAKE_SOURCE_DIR}/src/core/global/qconfig.h.cmake
421     ${CMAKE_BINARY_DIR}/include/QtCore/qconfig.h
422 )
423 configure_file(
424     ${CMAKE_SOURCE_DIR}/src/core/global/qconfig.cpp.cmake
425     ${CMAKE_BINARY_DIR}/include/qconfig.cpp
426 )
427
428 if(KATIE_TESTS OR KATIE_BENCHMARKS)
429     message(WARNING "Deploying tests/benchmarks build is a bad idea")
430     enable_testing()
431     add_definitions(-DQT_BUILD_INTERNAL)
432 endif()
433
434 foreach(script exec dbus xvfb dbg)
435     configure_file(
436         ${CMAKE_SOURCE_DIR}/cmake/${script}.sh.cmake
437         ${CMAKE_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/${script}.sh
438         @ONLY
439     )
440     file(
441         COPY ${CMAKE_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/${script}.sh
442         DESTINATION ${CMAKE_BINARY_DIR}
443         FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
444     )
445 endforeach()
446
447 # optional packages
448 if(NOT WITH_FONTCONFIG OR NOT FONTCONFIG_FOUND)
449     katie_definition(-DQT_NO_FONTCONFIG)
450 endif()
451
452 if(NOT WITH_DBUS OR NOT DBUS_FOUND)
453     katie_definition(-DQT_NO_DBUS)
454 else()
455     set(KATIE_COMPONENTS "${KATIE_COMPONENTS} DBus")
456     set(KATIE_TOOLS "${KATIE_TOOLS} qdbus qdbusxml2cpp qdbuscpp2xml qdbusviewer")
457 endif()
458
459 if(NOT WITH_CUPS OR NOT CUPS_FOUND)
460     katie_definition(-DQT_NO_CUPS)
461 endif()
462
463 if(NOT WITH_JPEG OR NOT JPEG_FOUND)
464     katie_definition(-DQT_NO_IMAGEFORMAT_JPEG)
465 endif()
466
467 if(NOT WITH_TIFF OR NOT TIFF_FOUND)
468     katie_definition(-DQT_NO_IMAGEFORMAT_TIFF)
469 endif()
470
471 if(NOT WITH_INTL OR NOT INTL_FOUND)
472     katie_definition(-DQT_NO_TRANSLATION)
473 endif()
474
475 if(NOT WITH_EXECINFO OR NOT EXECINFO_FOUND)
476     katie_definition(-DQT_NO_EXECINFO)
477 endif()
478
479 # conditional features
480 if(NOT WITH_ACCESSIBILITY)
481     katie_definition(-DQT_NO_ACCESSIBILITY)
482 endif()
483
484 add_library(pic_test ${KATIE_TYPE}  EXCLUDE_FROM_ALL "${CMAKE_SOURCE_DIR}/cmake/pic.cpp")
485 get_target_property(HAVE_pic pic_test POSITION_INDEPENDENT_CODE)
486 if(NOT HAVE_pic)
487     katie_definition(-DQ_NO_DATA_RELOCATION)
488 endif()
489
490 # keep in sync with the gui component CMake file, only definitions setup is needed here
491 foreach(x11ext Xshape Xinerama Xrandr Xrender Xfixes Xcursor)
492     if(NOT X11_${x11ext}_FOUND)
493         message(WARNING "The X11 ${x11ext} extension was not found")
494         string(TOUPPER "${x11ext}" upperext)
495         katie_definition(-DQT_NO_${upperext})
496     endif()
497 endforeach()
498 if(NOT X11_Xext_FOUND)
499     message(WARNING "The X11 Xext extension was not found")
500     katie_definition(-DQT_NO_XSYNC -DQT_NO_XSHAPE)
501 endif()
502 if(NOT X11_SM_FOUND OR NOT X11_ICE_FOUND)
503     message(WARNING "X11 SM/ICE was not found thus disabling session manager support")
504     katie_definition(-DQT_NO_SESSIONMANAGER)
505 endif()
506
507 add_subdirectory(src/shared)
508
509 add_subdirectory(src/core)
510 add_subdirectory(src/xml)
511 if(WITH_DBUS AND DBUS_FOUND)
512     add_subdirectory(src/dbus)
513 endif()
514 add_subdirectory(src/declarative)
515 add_subdirectory(src/designer)
516 add_subdirectory(src/gui)
517 add_subdirectory(src/imports)
518 add_subdirectory(src/network)
519 add_subdirectory(src/plugins)
520 add_subdirectory(src/script)
521 add_subdirectory(src/scripttools)
522 add_subdirectory(src/sql)
523 add_subdirectory(src/svg)
524 add_subdirectory(src/test)
525 add_subdirectory(src/uitools)
526
527 add_subdirectory(src/tools)
528
529 if(WITH_INTL AND INTL_FOUND)
530     add_subdirectory(translations)
531 endif()
532
533 if(KATIE_TESTS OR KATIE_BENCHMARKS)
534     add_subdirectory(tests)
535 endif()
536
537 if(KATIE_UTILS)
538     add_subdirectory(util)
539 endif()
540
541 # the macro calls bellow are generated via the incfsck script
542 katie_generate_obsolete(QAbstractExtensionFactory QtDesigner extension.h)
543 katie_generate_obsolete(QAbstractExtensionManager QtDesigner extension.h)
544 katie_generate_obsolete(QAbstractFileEngineIterator QtCore qabstractfileengine.h)
545 katie_generate_obsolete(QAbstractFormBuilder QtDesigner abstractformbuilder.h)
546 katie_generate_obsolete(QAbstractGraphicsShapeItem QtGui qgraphicsitem.h)
547 katie_generate_obsolete(QAbstractListModel QtCore qabstractitemmodel.h)
548 katie_generate_obsolete(QAbstractTableModel QtCore qabstractitemmodel.h)
549 katie_generate_obsolete(QAbstractUndoItem QtGui qtextdocument.h)
550 katie_generate_obsolete(QAccessible2Interface QtGui qaccessible2.h)
551 katie_generate_obsolete(QAccessibleActionInterface QtGui qaccessible2.h)
552 katie_generate_obsolete(QAccessibleApplication QtGui qaccessibleobject.h)
553 katie_generate_obsolete(QAccessibleBridgeFactoryInterface QtGui qaccessiblebridge.h)
554 katie_generate_obsolete(QAccessibleBridgePlugin QtGui qaccessiblebridge.h)
555 katie_generate_obsolete(QAccessibleEditableTextInterface QtGui qaccessible2.h)
556 katie_generate_obsolete(QAccessibleEvent QtGui qaccessible.h)
557 katie_generate_obsolete(QAccessibleFactoryInterface QtGui qaccessibleplugin.h)
558 katie_generate_obsolete(QAccessibleImageInterface QtGui qaccessible2.h)
559 katie_generate_obsolete(QAccessibleInterfaceEx QtGui qaccessible.h)
560 katie_generate_obsolete(QAccessibleInterface QtGui qaccessible.h)
561 katie_generate_obsolete(QAccessibleObjectEx QtGui qaccessibleobject.h)
562 katie_generate_obsolete(QAccessibleSimpleEditableTextInterface QtGui qaccessible2.h)
563 katie_generate_obsolete(QAccessibleTable2CellInterface QtGui qaccessible2.h)
564 katie_generate_obsolete(QAccessibleTable2Interface QtGui qaccessible2.h)
565 katie_generate_obsolete(QAccessibleTableInterface QtGui qaccessible2.h)
566 katie_generate_obsolete(QAccessibleTextInterface QtGui qaccessible2.h)
567 katie_generate_obsolete(QAccessibleValueInterface QtGui qaccessible2.h)
568 katie_generate_obsolete(QAccessibleWidgetEx QtGui qaccessiblewidget.h)
569 katie_generate_obsolete(QActionEvent QtGui qevent.h)
570 katie_generate_obsolete(QAnimationDriver QtGui qabstractanimation.h)
571 katie_generate_obsolete(QArgument QtCore qobjectdefs.h)
572 katie_generate_obsolete(QAtomicInt QtCore qatomic.h)
573 katie_generate_obsolete(QAtomicPointer QtCore qatomic.h)
574 katie_generate_obsolete(QBasicAtomicInt QtCore qbasicatomic.h)
575 katie_generate_obsolete(QBitRef QtCore qbitarray.h)
576 katie_generate_obsolete(QBrushData QtGui qbrush.h)
577 katie_generate_obsolete(QByteRef QtCore qbytearray.h)
578 katie_generate_obsolete(QCharRef QtCore qstring.h)
579 katie_generate_obsolete(QChildEvent QtCore qcoreevent.h)
580 katie_generate_obsolete(QClipboardEvent QtGui qevent.h)
581 katie_generate_obsolete(QCloseEvent QtGui qevent.h)
582 katie_generate_obsolete(QConicalGradient QtGui qbrush.h)
583 katie_generate_obsolete(QContextMenuEvent QtGui qevent.h)
584 katie_generate_obsolete(QContiguousCacheData QtCore qcontiguouscache.h)
585 katie_generate_obsolete(QContiguousCacheTypedData QtCore qcontiguouscache.h)
586 katie_generate_obsolete(QDateEdit QtGui qdatetimeedit.h)
587 katie_generate_obsolete(QDate QtCore qdatetime.h)
588 katie_generate_obsolete(QDBusAbstractInterfaceBase QtDBus qdbusabstractinterface.h)
589 katie_generate_obsolete(QDBusObjectPath QtDBus qdbusextratypes.h)
590 katie_generate_obsolete(QDBusPendingCallWatcher QtDBus qdbuspendingcall.h)
591 katie_generate_obsolete(QDBusPendingReplyData QtDBus qdbuspendingreply.h)
592 katie_generate_obsolete(QDBusSignature QtDBus qdbusextratypes.h)
593 katie_generate_obsolete(QDBusVariant QtDBus qdbusextratypes.h)
594 katie_generate_obsolete(QDeclarativeAttachedPropertiesFunc QtDeclarative qdeclarativeprivate.h)
595 katie_generate_obsolete(QDeclarativeListProperty QtDeclarative qdeclarativelist.h)
596 katie_generate_obsolete(QDeclarativeListReference QtDeclarative qdeclarativelist.h)
597 katie_generate_obsolete(QDeclarativeProperties QtDeclarative qdeclarativeproperty.h)
598 katie_generate_obsolete(QDeclarativeTypeInfo QtDeclarative qdeclarativeprivate.h)
599 katie_generate_obsolete(QDesignerActionEditorInterface QtDesigner abstractactioneditor.h)
600 katie_generate_obsolete(QDesignerBrushManagerInterface QtDesigner abstractbrushmanager.h)
601 katie_generate_obsolete(QDesignerComponents QtDesigner qdesigner_components.h)
602 katie_generate_obsolete(QDesignerContainerExtension QtDesigner container.h)
603 katie_generate_obsolete(QDesignerCustomWidgetCollectionInterface QtDesigner customwidget.h)
604 katie_generate_obsolete(QDesignerCustomWidgetInterface QtDesigner customwidget.h)
605 katie_generate_obsolete(QDesignerDnDItemInterface QtDesigner abstractdnditem.h)
606 katie_generate_obsolete(QDesignerDynamicPropertySheetExtension QtDesigner dynamicpropertysheet.h)
607 katie_generate_obsolete(QDesignerExtraInfoExtension QtDesigner extrainfo.h)
608 katie_generate_obsolete(QDesignerFormEditorInterface QtDesigner abstractformeditor.h)
609 katie_generate_obsolete(QDesignerFormEditorPluginInterface QtDesigner abstractformeditorplugin.h)
610 katie_generate_obsolete(QDesignerFormWindowCursorInterface QtDesigner abstractformwindowcursor.h)
611 katie_generate_obsolete(QDesignerFormWindowInterface QtDesigner abstractformwindow.h)
612 katie_generate_obsolete(QDesignerFormWindowManagerInterface QtDesigner abstractformwindowmanager.h)
613 katie_generate_obsolete(QDesignerFormWindowToolInterface QtDesigner abstractformwindowtool.h)
614 katie_generate_obsolete(QDesignerIconCacheInterface QtDesigner abstracticoncache.h)
615 katie_generate_obsolete(QDesignerIntegrationInterface QtDesigner abstractintegration.h)
616 katie_generate_obsolete(QDesignerLanguageExtension QtDesigner abstractlanguage.h)
617 katie_generate_obsolete(QDesignerLayoutDecorationExtension QtDesigner layoutdecoration.h)
618 katie_generate_obsolete(QDesignerMemberSheetExtension QtDesigner membersheet.h)
619 katie_generate_obsolete(QDesignerMetaDataBaseInterface QtDesigner abstractmetadatabase.h)
620 katie_generate_obsolete(QDesignerMetaDataBaseItemInterface QtDesigner abstractmetadatabase.h)
621 katie_generate_obsolete(QDesignerObjectInspectorInterface QtDesigner abstractobjectinspector.h)
622 katie_generate_obsolete(QDesignerPromotionInterface QtDesigner abstractpromotioninterface.h)
623 katie_generate_obsolete(QDesignerPropertyEditorInterface QtDesigner abstractpropertyeditor.h)
624 katie_generate_obsolete(QDesignerPropertySheetExtension QtDesigner propertysheet.h)
625 katie_generate_obsolete(QDesignerResourceBrowserInterface QtDesigner abstractresourcebrowser.h)
626 katie_generate_obsolete(QDesignerTaskMenuExtension QtDesigner taskmenu.h)
627 katie_generate_obsolete(QDesignerWidgetBoxInterface QtDesigner abstractwidgetbox.h)
628 katie_generate_obsolete(QDesignerWidgetDataBaseInterface QtDesigner abstractwidgetdatabase.h)
629 katie_generate_obsolete(QDesignerWidgetDataBaseItemInterface QtDesigner abstractwidgetdatabase.h)
630 katie_generate_obsolete(QDesignerWidgetFactoryInterface QtDesigner abstractwidgetfactory.h)
631 katie_generate_obsolete(QDomAttr QtXml qdom.h)
632 katie_generate_obsolete(QDomCDATASection QtXml qdom.h)
633 katie_generate_obsolete(QDomCharacterData QtXml qdom.h)
634 katie_generate_obsolete(QDomComment QtXml qdom.h)
635 katie_generate_obsolete(QDomDocumentFragment QtXml qdom.h)
636 katie_generate_obsolete(QDomDocument QtXml qdom.h)
637 katie_generate_obsolete(QDomDocumentType QtXml qdom.h)
638 katie_generate_obsolete(QDomElement QtXml qdom.h)
639 katie_generate_obsolete(QDomEntity QtXml qdom.h)
640 katie_generate_obsolete(QDomEntityReference QtXml qdom.h)
641 katie_generate_obsolete(QDomImplementation QtXml qdom.h)
642 katie_generate_obsolete(QDomNamedNodeMap QtXml qdom.h)
643 katie_generate_obsolete(QDomNodeList QtXml qdom.h)
644 katie_generate_obsolete(QDomNode QtXml qdom.h)
645 katie_generate_obsolete(QDomNotation QtXml qdom.h)
646 katie_generate_obsolete(QDomProcessingInstruction QtXml qdom.h)
647 katie_generate_obsolete(QDomText QtXml qdom.h)
648 katie_generate_obsolete(QDoubleSpinBox QtGui qspinbox.h)
649 katie_generate_obsolete(QDoubleValidator QtGui qvalidator.h)
650 katie_generate_obsolete(QDragEnterEvent QtGui qevent.h)
651 katie_generate_obsolete(QDragLeaveEvent QtGui qevent.h)
652 katie_generate_obsolete(QDragMoveEvent QtGui qevent.h)
653 katie_generate_obsolete(QDropEvent QtGui qevent.h)
654 katie_generate_obsolete(QDynamicPropertyChangeEvent QtCore qcoreevent.h)
655 katie_generate_obsolete(QEvent QtCore qcoreevent.h)
656 katie_generate_obsolete(QEventSizeOfChecker QtTest qtestspontaneevent.h)
657 katie_generate_obsolete(QExplicitlySharedDataPointer QtCore qsharedpointer.h)
658 katie_generate_obsolete(QExtensionFactory QtDesigner default_extensionfactory.h)
659 katie_generate_obsolete(QFileInfoList QtCore qfileinfo.h)
660 katie_generate_obsolete(QFlag QtCore qglobal.h)
661 katie_generate_obsolete(QFlags QtCore qglobal.h)
662 katie_generate_obsolete(QFocusEvent QtGui qevent.h)
663 katie_generate_obsolete(QFontMetricsF QtGui qfontmetrics.h)
664 katie_generate_obsolete(QFormBuilder QtDesigner formbuilder.h)
665 katie_generate_obsolete(QFutureInterfaceBase QtCore qfutureinterface.h)
666 katie_generate_obsolete(QFutureIterator QtCore qfuture.h)
667 katie_generate_obsolete(QFutureWatcherBase QtCore qfuturewatcher.h)
668 katie_generate_obsolete(QGenericArgument QtCore qobjectdefs.h)
669 katie_generate_obsolete(QGenericReturnArgument QtCore qobjectdefs.h)
670 katie_generate_obsolete(QGestureEvent QtGui qevent.h)
671 katie_generate_obsolete(QGlobalStaticDeleter QtCore qglobal.h)
672 katie_generate_obsolete(QGlobalStatic QtCore qglobal.h)
673 katie_generate_obsolete(QGradient QtGui qbrush.h)
674 katie_generate_obsolete(QGradientStop QtGui qbrush.h)
675 katie_generate_obsolete(QGradientStops QtGui qbrush.h)
676 katie_generate_obsolete(QGraphicsAnchor QtGui qgraphicsanchorlayout.h)
677 katie_generate_obsolete(QGraphicsBlurEffect QtGui qgraphicseffect.h)
678 katie_generate_obsolete(QGraphicsColorizeEffect QtGui qgraphicseffect.h)
679 katie_generate_obsolete(QGraphicsDropShadowEffect QtGui qgraphicseffect.h)
680 katie_generate_obsolete(QGraphicsEllipseItem QtGui qgraphicsitem.h)
681 katie_generate_obsolete(QGraphicsItemGroup QtGui qgraphicsitem.h)
682 katie_generate_obsolete(QGraphicsLineItem QtGui qgraphicsitem.h)
683 katie_generate_obsolete(QGraphicsObject QtGui qgraphicsitem.h)
684 katie_generate_obsolete(QGraphicsOpacityEffect QtGui qgraphicseffect.h)
685 katie_generate_obsolete(QGraphicsPathItem QtGui qgraphicsitem.h)
686 katie_generate_obsolete(QGraphicsPixmapItem QtGui qgraphicsitem.h)
687 katie_generate_obsolete(QGraphicsPolygonItem QtGui qgraphicsitem.h)
688 katie_generate_obsolete(QGraphicsRectItem QtGui qgraphicsitem.h)
689 katie_generate_obsolete(QGraphicsRotation QtGui qgraphicstransform.h)
690 katie_generate_obsolete(QGraphicsScale QtGui qgraphicstransform.h)
691 katie_generate_obsolete(QGraphicsSceneContextMenuEvent QtGui qgraphicssceneevent.h)
692 katie_generate_obsolete(QGraphicsSceneDragDropEvent QtGui qgraphicssceneevent.h)
693 katie_generate_obsolete(QGraphicsSceneHelpEvent QtGui qgraphicssceneevent.h)
694 katie_generate_obsolete(QGraphicsSceneHoverEvent QtGui qgraphicssceneevent.h)
695 katie_generate_obsolete(QGraphicsSceneMouseEvent QtGui qgraphicssceneevent.h)
696 katie_generate_obsolete(QGraphicsSceneMoveEvent QtGui qgraphicssceneevent.h)
697 katie_generate_obsolete(QGraphicsSceneResizeEvent QtGui qgraphicssceneevent.h)
698 katie_generate_obsolete(QGraphicsSceneWheelEvent QtGui qgraphicssceneevent.h)
699 katie_generate_obsolete(QGraphicsSimpleTextItem QtGui qgraphicsitem.h)
700 katie_generate_obsolete(QGraphicsTextItem QtGui qgraphicsitem.h)
701 katie_generate_obsolete(QHashData QtCore qhash.h)
702 katie_generate_obsolete(QHashIterator QtCore qhash.h)
703 katie_generate_obsolete(QHashNode QtCore qhash.h)
704 katie_generate_obsolete(QHBoxLayout QtGui qboxlayout.h)
705 katie_generate_obsolete(QHelpEvent QtGui qevent.h)
706 katie_generate_obsolete(QHideEvent QtGui qevent.h)
707 katie_generate_obsolete(QHoverEvent QtGui qevent.h)
708 katie_generate_obsolete(QHttpHeader QtNetwork qhttp.h)
709 katie_generate_obsolete(QHttpPart QtNetwork qhttpmultipart.h)
710 katie_generate_obsolete(QHttpRequestHeader QtNetwork qhttp.h)
711 katie_generate_obsolete(QHttpResponseHeader QtNetwork qhttp.h)
712 katie_generate_obsolete(QIconEngineFactoryInterface QtGui qiconengineplugin.h)
713 katie_generate_obsolete(QIconEngineFactoryInterfaceV2 QtGui qiconengineplugin.h)
714 katie_generate_obsolete(QIconEnginePluginV2 QtGui qiconengineplugin.h)
715 katie_generate_obsolete(QIconEngineV2 QtGui qiconengine.h)
716 katie_generate_obsolete(QImageIOHandlerFactoryInterface QtGui qimageiohandler.h)
717 katie_generate_obsolete(QImageIOPlugin QtGui qimageiohandler.h)
718 katie_generate_obsolete(QIncompatibleFlag QtCore qglobal.h)
719 katie_generate_obsolete(QInputContextFactoryInterface QtGui qinputcontextplugin.h)
720 katie_generate_obsolete(QInputEvent QtGui qevent.h)
721 katie_generate_obsolete(QInputMethodEvent QtGui qevent.h)
722 katie_generate_obsolete(QInternal QtCore qnamespace.h)
723 katie_generate_obsolete(QIntValidator QtGui qvalidator.h)
724 katie_generate_obsolete(QIPv6Address QtNetwork qhostaddress.h)
725 katie_generate_obsolete(Q_IPV6ADDR QtNetwork qhostaddress.h)
726 katie_generate_obsolete(QItemEditorCreatorBase QtGui qitemeditorfactory.h)
727 katie_generate_obsolete(QItemEditorCreator QtGui qitemeditorfactory.h)
728 katie_generate_obsolete(QItemSelection QtGui qitemselectionmodel.h)
729 katie_generate_obsolete(QItemSelectionRange QtGui qitemselectionmodel.h)
730 katie_generate_obsolete(QJsonParseError QtCore qjsondocument.h)
731 katie_generate_obsolete(QKeyEvent QtGui qevent.h)
732 katie_generate_obsolete(QLatin1Char QtCore qchar.h)
733 katie_generate_obsolete(QLatin1String QtCore qstring.h)
734 katie_generate_obsolete(QLinearGradient QtGui qbrush.h)
735 katie_generate_obsolete(QLineF QtCore qline.h)
736 katie_generate_obsolete(QLinkedListData QtCore qlinkedlist.h)
737 katie_generate_obsolete(QLinkedListIterator QtCore qlinkedlist.h)
738 katie_generate_obsolete(QLinkedListNode QtCore qlinkedlist.h)
739 katie_generate_obsolete(QListData QtCore qlist.h)
740 katie_generate_obsolete(QListIterator QtCore qlist.h)
741 katie_generate_obsolete(QListWidgetItem QtGui qlistwidget.h)
742 katie_generate_obsolete(QMapData QtCore qmap.h)
743 katie_generate_obsolete(QMapIterator QtCore qmap.h)
744 katie_generate_obsolete(QMapNode QtCore qmap.h)
745 katie_generate_obsolete(QMapPayloadNode QtCore qmap.h)
746 katie_generate_obsolete(QMatrix2x2 QtGui qgenericmatrix.h)
747 katie_generate_obsolete(QMatrix2x3 QtGui qgenericmatrix.h)
748 katie_generate_obsolete(QMatrix2x4 QtGui qgenericmatrix.h)
749 katie_generate_obsolete(QMatrix3x2 QtGui qgenericmatrix.h)
750 katie_generate_obsolete(QMatrix3x3 QtGui qgenericmatrix.h)
751 katie_generate_obsolete(QMatrix3x4 QtGui qgenericmatrix.h)
752 katie_generate_obsolete(QMatrix4x2 QtGui qgenericmatrix.h)
753 katie_generate_obsolete(QMatrix4x3 QtGui qgenericmatrix.h)
754 katie_generate_obsolete(QMetaClassInfo QtCore qmetaobject.h)
755 katie_generate_obsolete(QMetaEnum QtCore qmetaobject.h)
756 katie_generate_obsolete(QMetaMethod QtCore qmetaobject.h)
757 katie_generate_obsolete(QMetaObjectAccessor QtCore qobjectdefs.h)
758 katie_generate_obsolete(QMetaProperty QtCore qmetaobject.h)
759 katie_generate_obsolete(QMetaTypeId2 QtCore qmetatype.h)
760 katie_generate_obsolete(QMetaTypeId QtCore qmetatype.h)
761 katie_generate_obsolete(QModelIndexList QtCore qabstractitemmodel.h)
762 katie_generate_obsolete(QModelIndex QtCore qabstractitemmodel.h)
763 katie_generate_obsolete(QMouseEvent QtGui qevent.h)
764 katie_generate_obsolete(QMoveEvent QtGui qevent.h)
765 katie_generate_obsolete(QMultiHash QtCore qhash.h)
766 katie_generate_obsolete(QMultiMap QtCore qmap.h)
767 katie_generate_obsolete(QMutableFutureIterator QtCore qfuture.h)
768 katie_generate_obsolete(QMutableHashIterator QtCore qhash.h)
769 katie_generate_obsolete(QMutableLinkedListIterator QtCore qlist.h)
770 katie_generate_obsolete(QMutableListIterator QtCore qlist.h)
771 katie_generate_obsolete(QMutableMapIterator QtCore qmap.h)
772 katie_generate_obsolete(QMutableSetIterator QtCore qset.h)
773 katie_generate_obsolete(QMutableStringListIterator QtCore qstringlist.h)
774 katie_generate_obsolete(QMutableVectorIterator QtCore qvector.h)
775 katie_generate_obsolete(QMutexLocker QtCore qmutex.h)
776 katie_generate_obsolete(QNetworkAddressEntry QtNetwork qnetworkinterface.h)
777 katie_generate_obsolete(QNetworkCacheMetaData QtNetwork qabstractnetworkcache.h)
778 katie_generate_obsolete(QNetworkConfigurationManager QtNetwork qnetworkconfigmanager.h)
779 katie_generate_obsolete(QNetworkProxyFactory QtNetwork qnetworkproxy.h)
780 katie_generate_obsolete(QNetworkProxyQuery QtNetwork qnetworkproxy.h)
781 katie_generate_obsolete(QNoDebug QtCore qdebug.h)
782 katie_generate_obsolete(QObjectData QtCore qobject.h)
783 katie_generate_obsolete(QObjectList QtCore qobject.h)
784 katie_generate_obsolete(QPaintEngineState QtGui qpaintengine.h)
785 katie_generate_obsolete(QPainterPathPrivate QtGui qpainterpath.h)
786 katie_generate_obsolete(QPainterPathStroker QtGui qpainterpath.h)
787 katie_generate_obsolete(QPaintEvent QtGui qevent.h)
788 katie_generate_obsolete(QPanGesture QtGui qgesture.h)
789 katie_generate_obsolete(QPersistentModelIndex QtCore qabstractitemmodel.h)
790 katie_generate_obsolete(Q_PID QtCore qprocess.h)
791 katie_generate_obsolete(QPinchGesture QtGui qgesture.h)
792 katie_generate_obsolete(QPlainTextDocumentLayout QtGui qplaintextedit.h)
793 katie_generate_obsolete(QPointF QtCore qpoint.h)
794 katie_generate_obsolete(QPolygonF QtGui qpolygon.h)
795 katie_generate_obsolete(QProcessEnvironment QtCore qprocess.h)
796 katie_generate_obsolete(QRadialGradient QtGui qbrush.h)
797 katie_generate_obsolete(QReadLocker QtCore qreadwritelock.h)
798 katie_generate_obsolete(QRectF QtCore qrect.h)
799 katie_generate_obsolete(QRegExpValidator QtGui qvalidator.h)
800 katie_generate_obsolete(QResizeEvent QtGui qevent.h)
801 katie_generate_obsolete(QReturnArgument QtCore qobjectdefs.h)
802 katie_generate_obsolete(QScopedArrayPointer QtCore qscopedpointer.h)
803 katie_generate_obsolete(QScopedPointerArrayDeleter QtCore qscopedpointer.h)
804 katie_generate_obsolete(QScopedPointerPodDeleter QtCore qscopedpointer.h)
805 katie_generate_obsolete(QSetIterator QtCore qset.h)
806 katie_generate_obsolete(QSharedDataPointer QtCore qshareddata.h)
807 katie_generate_obsolete(QShortcutEvent QtGui qevent.h)
808 katie_generate_obsolete(QShowEvent QtGui qevent.h)
809 katie_generate_obsolete(QSizeF QtCore qsize.h)
810 katie_generate_obsolete(QSpacerItem QtGui qlayoutitem.h)
811 katie_generate_obsolete(QSplitterHandle QtGui qsplitter.h)
812 katie_generate_obsolete(QSpontaneKeyEvent QtTest qtestspontaneevent.h)
813 katie_generate_obsolete(QSqlDriverFactoryInterface QtSql qsqldriverplugin.h)
814 katie_generate_obsolete(QSqlRelation QtSql qsqlrelationaltablemodel.h)
815 katie_generate_obsolete(QStandardItemEditorCreator QtGui qitemeditorfactory.h)
816 katie_generate_obsolete(QStandardItem QtGui qstandarditemmodel.h)
817 katie_generate_obsolete(QStatusTipEvent QtGui qevent.h)
818 katie_generate_obsolete(QStdWString QtCore qstring.h)
819 katie_generate_obsolete(QStringListIterator QtCore qstringlist.h)
820 katie_generate_obsolete(QStringRef QtCore qstring.h)
821 katie_generate_obsolete(QStyleFactoryInterface QtGui qstyleplugin.h)
822 katie_generate_obsolete(QStyleHintReturnMask QtGui qstyleoption.h)
823 katie_generate_obsolete(QStyleHintReturn QtGui qstyleoption.h)
824 katie_generate_obsolete(QStyleHintReturnVariant QtGui qstyleoption.h)
825 katie_generate_obsolete(QStyleOptionButton QtGui qstyleoption.h)
826 katie_generate_obsolete(QStyleOptionComboBox QtGui qstyleoption.h)
827 katie_generate_obsolete(QStyleOptionComplex QtGui qstyleoption.h)
828 katie_generate_obsolete(QStyleOptionDockWidget QtGui qstyleoption.h)
829 katie_generate_obsolete(QStyleOptionDockWidgetV2 QtGui qstyleoption.h)
830 katie_generate_obsolete(QStyleOptionFocusRect QtGui qstyleoption.h)
831 katie_generate_obsolete(QStyleOptionFrame QtGui qstyleoption.h)
832 katie_generate_obsolete(QStyleOptionFrameV2 QtGui qstyleoption.h)
833 katie_generate_obsolete(QStyleOptionFrameV3 QtGui qstyleoption.h)
834 katie_generate_obsolete(QStyleOptionGraphicsItem QtGui qstyleoption.h)
835 katie_generate_obsolete(QStyleOptionGroupBox QtGui qstyleoption.h)
836 katie_generate_obsolete(QStyleOptionHeader QtGui qstyleoption.h)
837 katie_generate_obsolete(QStyleOptionMenuItem QtGui qstyleoption.h)
838 katie_generate_obsolete(QStyleOptionProgressBar QtGui qstyleoption.h)
839 katie_generate_obsolete(QStyleOptionProgressBarV2 QtGui qstyleoption.h)
840 katie_generate_obsolete(QStyleOptionRubberBand QtGui qstyleoption.h)
841 katie_generate_obsolete(QStyleOptionSizeGrip QtGui qstyleoption.h)
842 katie_generate_obsolete(QStyleOptionSlider QtGui qstyleoption.h)
843 katie_generate_obsolete(QStyleOptionSpinBox QtGui qstyleoption.h)
844 katie_generate_obsolete(QStyleOptionTabBarBase QtGui qstyleoption.h)
845 katie_generate_obsolete(QStyleOptionTabBarBaseV2 QtGui qstyleoption.h)
846 katie_generate_obsolete(QStyleOptionTab QtGui qstyleoption.h)
847 katie_generate_obsolete(QStyleOptionTabV2 QtGui qstyleoption.h)
848 katie_generate_obsolete(QStyleOptionTabV3 QtGui qstyleoption.h)
849 katie_generate_obsolete(QStyleOptionTabWidgetFrame QtGui qstyleoption.h)
850 katie_generate_obsolete(QStyleOptionTabWidgetFrameV2 QtGui qstyleoption.h)
851 katie_generate_obsolete(QStyleOptionTitleBar QtGui qstyleoption.h)
852 katie_generate_obsolete(QStyleOptionToolBar QtGui qstyleoption.h)
853 katie_generate_obsolete(QStyleOptionToolBox QtGui qstyleoption.h)
854 katie_generate_obsolete(QStyleOptionToolBoxV2 QtGui qstyleoption.h)
855 katie_generate_obsolete(QStyleOptionToolButton QtGui qstyleoption.h)
856 katie_generate_obsolete(QStyleOptionViewItem QtGui qstyleoption.h)
857 katie_generate_obsolete(QStyleOptionViewItemV2 QtGui qstyleoption.h)
858 katie_generate_obsolete(QStyleOptionViewItemV3 QtGui qstyleoption.h)
859 katie_generate_obsolete(QStyleOptionViewItemV4 QtGui qstyleoption.h)
860 katie_generate_obsolete(QSwipeGesture QtGui qgesture.h)
861 katie_generate_obsolete(QSysInfo QtCore qglobal.h)
862 katie_generate_obsolete(QSystemLocale QtCore qlocale.h)
863 katie_generate_obsolete(QTableWidgetItem QtGui qtablewidget.h)
864 katie_generate_obsolete(QTableWidgetSelectionRange QtGui qtablewidget.h)
865 katie_generate_obsolete(QtAlgorithms QtCore qalgorithms.h)
866 katie_generate_obsolete(QTapAndHoldGesture QtGui qgesture.h)
867 katie_generate_obsolete(QTapGesture QtGui qgesture.h)
868 katie_generate_obsolete(QtCleanUpFunction QtCore qcoreapplication.h)
869 katie_generate_obsolete(QtConfig QtCore qconfig.h)
870 katie_generate_obsolete(QtContainerFwd QtCore qcontainerfwd.h)
871 katie_generate_obsolete(QtDebug QtCore qdebug.h)
872 katie_generate_obsolete(QtEndian QtCore qendian.h)
873 katie_generate_obsolete(QTestAccessibilityEvent QtTest qtestaccessible.h)
874 katie_generate_obsolete(QTestAccessibility QtTest qtestaccessible.h)
875 katie_generate_obsolete(QTestDelayEvent QtTest qtestevent.h)
876 katie_generate_obsolete(QTestEventList QtTest qtestevent.h)
877 katie_generate_obsolete(QTestKeyClicksEvent QtTest qtestevent.h)
878 katie_generate_obsolete(QTestKeyEvent QtTest qtestevent.h)
879 katie_generate_obsolete(QTestMouseEvent QtTest qtestevent.h)
880 katie_generate_obsolete(QtEvents QtGui qevent.h)
881 katie_generate_obsolete(QTextBlockFormat QtGui qtextformat.h)
882 katie_generate_obsolete(QTextBlockGroup QtGui qtextobject.h)
883 katie_generate_obsolete(QTextBlock QtGui qtextobject.h)
884 katie_generate_obsolete(QTextBlockUserData QtGui qtextobject.h)
885 katie_generate_obsolete(QTextCharFormat QtGui qtextformat.h)
886 katie_generate_obsolete(QTextCodecFactoryInterface QtCore qtextcodecplugin.h)
887 katie_generate_obsolete(QTextDecoder QtCore qtextcodec.h)
888 katie_generate_obsolete(QTextEncoder QtCore qtextcodec.h)
889 katie_generate_obsolete(QTextFragment QtGui qtextobject.h)
890 katie_generate_obsolete(QTextFrameFormat QtGui qtextformat.h)
891 katie_generate_obsolete(QTextFrameLayoutData QtGui qtextobject.h)
892 katie_generate_obsolete(QTextFrame QtGui qtextobject.h)
893 katie_generate_obsolete(QTextImageFormat QtGui qtextformat.h)
894 katie_generate_obsolete(QTextInlineObject QtGui qtextlayout.h)
895 katie_generate_obsolete(QTextItem QtGui qpaintengine.h)
896 katie_generate_obsolete(QTextLength QtGui qtextformat.h)
897 katie_generate_obsolete(QTextLine QtGui qtextlayout.h)
898 katie_generate_obsolete(QTextListFormat QtGui qtextformat.h)
899 katie_generate_obsolete(QTextObjectInterface QtGui qabstracttextdocumentlayout.h)
900 katie_generate_obsolete(QTextStreamFunction QtCore qtextstream.h)
901 katie_generate_obsolete(QTextStreamManipulator QtCore qtextstream.h)
902 katie_generate_obsolete(QTextTableCellFormat QtGui qtextformat.h)
903 katie_generate_obsolete(QTextTableCell QtGui qtexttable.h)
904 katie_generate_obsolete(QTextTableFormat QtGui qtextformat.h)
905 katie_generate_obsolete(QtGlobal QtCore qglobal.h)
906 katie_generate_obsolete(QTileRules QtGui qdrawutil.h)
907 katie_generate_obsolete(QTimeEdit QtGui qdatetimeedit.h)
908 katie_generate_obsolete(QTime QtCore qdatetime.h)
909 katie_generate_obsolete(QTimerEvent QtCore qcoreevent.h)
910 katie_generate_obsolete(QtMsgHandler QtCore qglobal.h)
911 katie_generate_obsolete(QTouchEvent QtGui qevent.h)
912 katie_generate_obsolete(QtPluginInstanceFunction QtCore qplugin.h)
913 katie_generate_obsolete(QtPlugin QtCore qplugin.h)
914 katie_generate_obsolete(Qt QtCore qnamespace.h)
915 katie_generate_obsolete(QTreeWidgetItem QtGui qtreewidget.h)
916 katie_generate_obsolete(QtTestGui QtTest qtest_gui.h)
917 katie_generate_obsolete(QTypeInfo QtCore qglobal.h)
918 katie_generate_obsolete(QUndoCommand QtGui qundostack.h)
919 katie_generate_obsolete(QUnixPrintWidget QtGui qprintdialog.h)
920 katie_generate_obsolete(QUpdateLaterEvent QtGui qevent.h)
921 katie_generate_obsolete(QVariantHash QtCore qvariant.h)
922 katie_generate_obsolete(QVariantList QtCore qvariant.h)
923 katie_generate_obsolete(QVariantMap QtCore qvariant.h)
924 katie_generate_obsolete(QVBoxLayout QtGui qboxlayout.h)
925 katie_generate_obsolete(QVectorData QtCore qvector.h)
926 katie_generate_obsolete(QVectorIterator QtCore qvector.h)
927 katie_generate_obsolete(QVectorTypedData QtCore qvector.h)
928 katie_generate_obsolete(QWeakPointer QtCore qsharedpointer.h)
929 katie_generate_obsolete(QWhatsThisClickedEvent QtGui qevent.h)
930 katie_generate_obsolete(QWheelEvent QtGui qevent.h)
931 katie_generate_obsolete(QWidgetData QtGui qwidget.h)
932 katie_generate_obsolete(QWidgetItem QtGui qlayoutitem.h)
933 katie_generate_obsolete(QWidgetItemV2 QtGui qlayoutitem.h)
934 katie_generate_obsolete(QWidgetList QtGui qwindowdefs.h)
935 katie_generate_obsolete(QWidgetMapper QtGui qwindowdefs.h)
936 katie_generate_obsolete(QWidgetSet QtGui qwindowdefs.h)
937 katie_generate_obsolete(QWindowStateChangeEvent QtGui qevent.h)
938 katie_generate_obsolete(QWizardPage QtGui qwizard.h)
939 katie_generate_obsolete(QWriteLocker QtCore qreadwritelock.h)
940 katie_generate_obsolete(QX11EmbedContainer QtGui qx11embed_x11.h)
941 katie_generate_obsolete(QX11EmbedWidget QtGui qx11embed_x11.h)
942 katie_generate_obsolete(QX11Info QtGui qx11info_x11.h)
943 katie_generate_obsolete(QXmlAttributes QtXml qxml.h)
944 katie_generate_obsolete(QXmlContentHandler QtXml qxml.h)
945 katie_generate_obsolete(QXmlDeclHandler QtXml qxml.h)
946 katie_generate_obsolete(QXmlDefaultHandler QtXml qxml.h)
947 katie_generate_obsolete(QXmlDTDHandler QtXml qxml.h)
948 katie_generate_obsolete(QXmlEntityResolver QtXml qxml.h)
949 katie_generate_obsolete(QXmlErrorHandler QtXml qxml.h)
950 katie_generate_obsolete(QXmlInputSource QtXml qxml.h)
951 katie_generate_obsolete(QXmlLexicalHandler QtXml qxml.h)
952 katie_generate_obsolete(QXmlLocator QtXml qxml.h)
953 katie_generate_obsolete(QXmlNamespaceSupport QtXml qxml.h)
954 katie_generate_obsolete(QXmlParseException QtXml qxml.h)
955 katie_generate_obsolete(QXmlReader QtXml qxml.h)
956 katie_generate_obsolete(QXmlSimpleReader QtXml qxml.h)
957 katie_generate_obsolete(QXmlStreamAttribute QtXml qxmlstream.h)
958 katie_generate_obsolete(QXmlStreamAttributes QtXml qxmlstream.h)
959 katie_generate_obsolete(QXmlStreamEntityDeclaration QtXml qxmlstream.h)
960 katie_generate_obsolete(QXmlStreamEntityDeclarations QtXml qxmlstream.h)
961 katie_generate_obsolete(QXmlStreamEntityResolver QtXml qxmlstream.h)
962 katie_generate_obsolete(QXmlStreamNamespaceDeclaration QtXml qxmlstream.h)
963 katie_generate_obsolete(QXmlStreamNamespaceDeclarations QtXml qxmlstream.h)
964 katie_generate_obsolete(QXmlStreamNotationDeclaration QtXml qxmlstream.h)
965 katie_generate_obsolete(QXmlStreamNotationDeclarations QtXml qxmlstream.h)
966 katie_generate_obsolete(QXmlStreamReader QtXml qxmlstream.h)
967 katie_generate_obsolete(QXmlStreamWriter QtXml qxmlstream.h)
968 # those have shuffled from QtDesigner to QtUiTools
969 katie_generate_obsolete(formbuilder.h QtDesigner ../QtUiTools/formbuilder.h)
970 katie_generate_obsolete(customwidget.h QtDesigner ../QtUiTools/customwidget.h)
971 katie_generate_obsolete(qdesignercustomwidgetinterface.h QtDesigner ../QtUiTools/customwidget.h)
972
973 katie_string_wrap("${KATIE_DEFINITIONS}" KATIE_DEFINITIONS)
974
975 configure_file(
976     ${CMAKE_SOURCE_DIR}/cmake/KatieConfig.cmake
977     ${CMAKE_BINARY_DIR}/KatieConfig.cmake
978     @ONLY
979 )
980
981 configure_file(
982     ${CMAKE_SOURCE_DIR}/cmake/KatieConfigVersion.cmake
983     ${CMAKE_BINARY_DIR}/KatieConfigVersion.cmake
984     @ONLY
985 )
986
987 configure_file(
988     ${CMAKE_SOURCE_DIR}/cmake/ld.so.conf.cmake
989     ${CMAKE_BINARY_DIR}/ld.so.conf
990     @ONLY
991 )
992
993 configure_file(
994     ${CMAKE_SOURCE_DIR}/cmake/profile.sh.cmake
995     ${CMAKE_BINARY_DIR}/profile.sh
996     @ONLY
997 )
998
999 install(
1000     DIRECTORY mkspecs
1001     DESTINATION ${KATIE_CMAKE_PATH}
1002     COMPONENT Devel
1003 )
1004
1005 install(
1006     FILES
1007     ${CMAKE_BINARY_DIR}/KatieConfig.cmake
1008     ${CMAKE_BINARY_DIR}/KatieConfigVersion.cmake
1009     ${CMAKE_SOURCE_DIR}/cmake/Qt4UseFile.cmake
1010     DESTINATION ${KATIE_CMAKE_PATH}
1011     COMPONENT Devel
1012 )
1013
1014 install(
1015     EXPORT KatieTargets
1016     NAMESPACE Katie::
1017     DESTINATION ${KATIE_CMAKE_PATH}
1018     FILE KatieTargets.cmake
1019     COMPONENT Devel
1020 )
1021
1022 install(
1023     FILES ${CMAKE_BINARY_DIR}/ld.so.conf
1024     DESTINATION ${KATIE_LDCONF_PATH}
1025     RENAME katie-${KATIE_PROCESSOR}.conf
1026     COMPONENT Runtime
1027 )
1028
1029 install(
1030     FILES ${CMAKE_BINARY_DIR}/profile.sh
1031     DESTINATION ${KATIE_PROFILE_PATH}
1032     RENAME katie-${KATIE_PROCESSOR}.sh
1033     COMPONENT Runtime
1034 )
1035
1036 katie_string_unwrap("${KATIE_COMPONENTS}" KATIE_COMPONENTS "Kt")
1037 katie_string_unwrap("${KATIE_TOOLS}" KATIE_TOOLS)
1038
1039 add_custom_target(install-devel
1040     COMMAND "${CMAKE_COMMAND}" -DCMAKE_INSTALL_COMPONENT=Devel -P cmake_install.cmake
1041     WORKING_DIRECTORY "${CMAKE_BINARY_DIR}"
1042 )
1043
1044 add_custom_target(install-runtime
1045     DEPENDS ${KATIE_COMPONENTS}
1046     COMMAND "${CMAKE_COMMAND}" -DCMAKE_INSTALL_COMPONENT=Runtime -P cmake_install.cmake
1047     WORKING_DIRECTORY "${CMAKE_BINARY_DIR}"
1048 )
1049
1050 add_custom_target(install-tools
1051     DEPENDS ${KATIE_TOOLS}
1052     COMMAND "${CMAKE_COMMAND}" -DCMAKE_INSTALL_COMPONENT=Tools -P cmake_install.cmake
1053     WORKING_DIRECTORY "${CMAKE_BINARY_DIR}"
1054 )
1055
1056 add_custom_target(install-doc
1057     COMMAND "${CMAKE_COMMAND}" -DCMAKE_INSTALL_COMPONENT=Doc -P cmake_install.cmake
1058     WORKING_DIRECTORY "${CMAKE_BINARY_DIR}"
1059 )
1060
1061 feature_summary(
1062     WHAT ALL
1063     FATAL_ON_MISSING_REQUIRED_PACKAGES
1064 )