* Makefile: Build DumpRenderTree too.
[WebKit-https.git] / CMakeLists.txt
1 project (WebKit)
2
3 # Qt support is always enabled!
4 add_definitions (-DBUILDING_QT__=1)
5
6 # Global switch for KDE support
7 OPTION (WEBKIT_USE_KDE_SUPPORT "Compile WebKit with KDE support." ON)
8
9 IF (WEBKIT_USE_KDE_SUPPORT)
10     add_definitions (-DBUILDING_KDE__=1)
11 ENDIF (WEBKIT_USE_KDE_SUPPORT)
12
13 # Global switch for SVG support
14 OPTION (WEBKIT_USE_SVG_SUPPORT "Compile WebKit with SVG support." ON)
15
16 IF (WEBKIT_USE_SVG_SUPPORT)
17     add_definitions (-DSVG_SUPPORT=1)
18 ENDIF (WEBKIT_USE_SVG_SUPPORT)
19
20 # Global switch for XPath support
21 OPTION (WEBKIT_USE_XPATH_SUPPORT "Compile WebKit with XPath support." ON)
22
23 IF (WEBKIT_USE_XPATH_SUPPORT)
24     add_definitions (-DXPATH_SUPPORT=1)
25 ENDIF (WEBKIT_USE_XPATH_SUPPORT)
26
27 # Global switch for XSLT support
28 OPTION (WEBKIT_USE_XSLT_SUPPORT "Compile WebKit with XSLT support." ON)
29
30 IF (WEBKIT_USE_XSLT_SUPPORT)
31     add_definitions (-DXSLT_SUPPORT=1)
32 ENDIF (WEBKIT_USE_XSLT_SUPPORT)
33
34 # Global switch for XBL support
35 OPTION (WEBKIT_USE_XBL_SUPPORT "Compile WebKit with XBL support." OFF)
36
37 IF (WEBKIT_USE_XBL_SUPPORT)
38     add_definitions (-DXBL_SUPPORT=1)
39 ENDIF (WEBKIT_USE_XBL_SUPPORT)
40
41 # search packages used by KDE
42 find_package (KDE4 REQUIRED)
43 include (KDE4Defaults)
44 include (MacroLibrary)
45
46 # Special option for BuildBot, to disable output colorization (must be done after KDE4Defaults is loaded)
47 OPTION (WEBKIT_DO_NOT_USE_COLORFUL_OUTPUT "Do not colorize compilation output." OFF)
48
49 IF (WEBKIT_DO_NOT_USE_COLORFUL_OUTPUT)
50     set(CMAKE_COLOR_MAKEFILE OFF)
51 ENDIF (WEBKIT_DO_NOT_USE_COLORFUL_OUTPUT)
52
53 find_package (LibXml2 REQUIRED)
54 find_package (LibXslt REQUIRED)
55 find_package (JPEG REQUIRED)
56 find_package (PNG REQUIRED)
57
58 find_program (BISON_EXECUTABLE bison)
59 find_program (GPERF_EXECUTABLE gperf)
60
61 # quick check the libicu is available
62 find_path(LIBICU_INCLUDE_DIR unicode/umachine.h )
63
64 if (NOT BISON_EXECUTABLE)
65    message(FATAL_ERROR "Could not find bison")
66 endif (NOT BISON_EXECUTABLE)
67
68 if (NOT GPERF_EXECUTABLE)
69    message(FATAL_ERROR "Could not find gperf")
70 endif (NOT GPERF_EXECUTABLE)
71
72 if (NOT LIBICU_INCLUDE_DIR)
73    message(FATAL_ERROR "libicu not found, cannot create unity without it")
74 endif (NOT LIBICU_INCLUDE_DIR)
75
76 add_definitions (${QT_DEFINITIONS} ${KDE4_DEFINITIONS} -DQT3_SUPPORT -DHAVE_CONFIG_H=1)
77 link_directories (${KDE4_LIB_DIR})
78 include_directories (${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${KDE4_INCLUDES} ${LIBICU_INCLUDE_DIR})
79
80 add_definitions (-fpermissive)
81 add_definitions (-DUSE_SYSTEM_MALLOC=1)
82
83 add_subdirectory (JavaScriptCore)
84 add_subdirectory (WebCore)
85 add_subdirectory (WebKitTools/DumpRenderTree/DumpRenderTree.qtproj)
86
87 add_subdirectory (WebKitQt/QtLauncher)
88
89 IF (WEBKIT_USE_KDE_SUPPORT)
90     add_subdirectory (WebKitQt/WebKitPart)
91 ENDIF (WEBKIT_USE_KDE_SUPPORT)
92
93 include_directories (BEFORE ${CMAKE_CURRENT_BINARY_DIR})