1list(INSERT WebCore_INCLUDE_DIRECTORIES 0
2    "${BLACKBERRY_THIRD_PARTY_DIR}" # For <unicode.h>, which is included from <sys/keycodes.h>.
3)
4
5list(REMOVE_ITEM WebCore_SOURCES
6    html/shadow/MediaControlsApple.cpp
7)
8
9list(APPEND WebCore_INCLUDE_DIRECTORIES
10    "${WEBCORE_DIR}/platform/blackberry/CookieDatabaseBackingStore"
11    "${WEBCORE_DIR}/platform/graphics/harfbuzz"
12    "${WEBCORE_DIR}/platform/graphics/opentype/"
13    "${WEBCORE_DIR}/platform/network/blackberry"
14    "${WEBCORE_DIR}/platform/network/blackberry/rss"
15)
16
17# Other sources
18list(APPEND WebCore_SOURCES
19    platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.cpp
20    platform/blackberry/AuthenticationChallengeManager.cpp
21    platform/blackberry/CookieManager.cpp
22    platform/blackberry/CookieMap.cpp
23    platform/blackberry/CookieParser.cpp
24    platform/blackberry/FileSystemBlackBerry.cpp
25    platform/blackberry/ParsedCookie.cpp
26    platform/graphics/WOFFFileFormat.cpp
27    platform/graphics/opentype/OpenTypeSanitizer.cpp
28    platform/image-encoders/JPEGImageEncoder.cpp
29    platform/posix/FileSystemPOSIX.cpp
30    platform/posix/SharedBufferPOSIX.cpp
31    platform/text/LocaleNone.cpp
32    platform/text/blackberry/TextBreakIteratorInternalICUBlackBerry.cpp
33)
34
35# Networking sources
36list(APPEND WebCore_SOURCES
37    platform/network/MIMESniffing.cpp
38    platform/network/NetworkStorageSessionStub.cpp
39    platform/network/ProxyServer.cpp
40    platform/network/blackberry/AutofillBackingStore.cpp
41    platform/network/blackberry/BlobStream.cpp
42    platform/network/blackberry/CookieJarBlackBerry.cpp
43    platform/network/blackberry/DNSBlackBerry.cpp
44    platform/network/blackberry/DeferredData.cpp
45    platform/network/blackberry/NetworkJob.cpp
46    platform/network/blackberry/NetworkManager.cpp
47    platform/network/blackberry/NetworkStateNotifierBlackBerry.cpp
48    platform/network/blackberry/ProxyServerBlackBerry.cpp
49    platform/network/blackberry/ResourceErrorBlackBerry.cpp
50    platform/network/blackberry/ResourceHandleBlackBerry.cpp
51    platform/network/blackberry/ResourceRequestBlackBerry.cpp
52    platform/network/blackberry/ResourceResponseBlackBerry.cpp
53    platform/network/blackberry/SocketStreamHandleBlackBerry.cpp
54    platform/network/blackberry/rss/RSSAtomParser.cpp
55    platform/network/blackberry/rss/RSS10Parser.cpp
56    platform/network/blackberry/rss/RSS20Parser.cpp
57    platform/network/blackberry/rss/RSSFilterStream.cpp
58    platform/network/blackberry/rss/RSSGenerator.cpp
59    platform/network/blackberry/rss/RSSParserBase.cpp
60)
61
62list(APPEND WebCore_USER_AGENT_STYLE_SHEETS
63    ${WEBCORE_DIR}/css/mediaControlsBlackBerry.css
64    ${WEBCORE_DIR}/css/mediaControlsBlackBerryFullscreen.css
65    ${WEBCORE_DIR}/css/themeBlackBerry.css
66)
67
68list(APPEND WebCore_INCLUDE_DIRECTORIES
69    "${WEBCORE_DIR}/bridge/blackberry"
70    "${WEBCORE_DIR}/history/blackberry"
71    "${WEBCORE_DIR}/page/blackberry"
72    "${WEBCORE_DIR}/page/scrolling/blackberry"
73    "${WEBCORE_DIR}/platform/blackberry"
74    "${WEBCORE_DIR}/platform/graphics/blackberry"
75    "${WEBCORE_DIR}/platform/image-decoders/bmp"
76    "${WEBCORE_DIR}/platform/image-decoders/gif"
77    "${WEBCORE_DIR}/platform/image-decoders/ico"
78    "${WEBCORE_DIR}/platform/image-decoders/jpeg"
79    "${WEBCORE_DIR}/platform/image-decoders/png"
80    "${WEBCORE_DIR}/platform/image-encoders"
81    "${WEBCORE_DIR}/platform/network/blackberry"
82    "${WEBCORE_DIR}/platform/text/blackberry"
83    "${WEBKIT_DIR}/blackberry/Api"
84    "${WEBKIT_DIR}/blackberry/WebCoreSupport"
85    "${WEBKIT_DIR}/blackberry/WebKitSupport"
86)
87
88# BlackBerry sources
89list(APPEND WebCore_SOURCES
90    editing/blackberry/SmartReplaceBlackBerry.cpp
91    html/shadow/MediaControlsBlackBerry.cpp
92    page/blackberry/AccessibilityObjectBlackBerry.cpp
93    page/blackberry/DragControllerBlackBerry.cpp
94    page/blackberry/EventHandlerBlackBerry.cpp
95    page/blackberry/SettingsBlackBerry.cpp
96    platform/blackberry/CursorBlackBerry.cpp
97    platform/blackberry/DragDataBlackBerry.cpp
98    platform/blackberry/DragImageBlackBerry.cpp
99    platform/blackberry/EventLoopBlackBerry.cpp
100    platform/blackberry/LocalizedStringsBlackBerry.cpp
101    platform/blackberry/LoggingBlackBerry.cpp
102    platform/blackberry/MIMETypeRegistryBlackBerry.cpp
103    platform/blackberry/PasteboardBlackBerry.cpp
104    platform/blackberry/PlatformKeyboardEventBlackBerry.cpp
105    platform/blackberry/PlatformMouseEventBlackBerry.cpp
106    platform/blackberry/PlatformScreenBlackBerry.cpp
107    platform/blackberry/PlatformTouchEventBlackBerry.cpp
108    platform/blackberry/PlatformTouchPointBlackBerry.cpp
109    platform/blackberry/PopupMenuBlackBerry.cpp
110    platform/blackberry/RenderThemeBlackBerry.cpp
111    platform/blackberry/RunLoopBlackBerry.cpp
112    platform/blackberry/SSLKeyGeneratorBlackBerry.cpp
113    platform/blackberry/ScrollbarThemeBlackBerry.cpp
114    platform/blackberry/SearchPopupMenuBlackBerry.cpp
115    platform/blackberry/SharedTimerBlackBerry.cpp
116    platform/blackberry/SoundBlackBerry.cpp
117    platform/blackberry/TemporaryLinkStubs.cpp
118    platform/blackberry/WidgetBlackBerry.cpp
119    platform/graphics/blackberry/FloatPointBlackBerry.cpp
120    platform/graphics/blackberry/FloatRectBlackBerry.cpp
121    platform/graphics/blackberry/FloatSizeBlackBerry.cpp
122    platform/graphics/blackberry/IconBlackBerry.cpp
123    platform/graphics/blackberry/ImageBlackBerry.cpp
124    platform/graphics/blackberry/IntPointBlackBerry.cpp
125    platform/graphics/blackberry/IntRectBlackBerry.cpp
126    platform/graphics/blackberry/IntSizeBlackBerry.cpp
127    platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp
128    platform/text/blackberry/StringBlackBerry.cpp
129)
130
131# Credential Persistence sources
132list(APPEND WebCore_SOURCES
133    platform/network/blackberry/CredentialBackingStore.cpp
134    platform/network/blackberry/CredentialStorageBlackBerry.cpp
135)
136
137# File System support
138if (ENABLE_FILE_SYSTEM)
139    list(APPEND WebCore_SOURCES
140        platform/blackberry/AsyncFileSystemBlackBerry.cpp
141    )
142endif ()
143
144if (ENABLE_SMOOTH_SCROLLING)
145    list(APPEND WebCore_SOURCES
146        platform/blackberry/ScrollAnimatorBlackBerry.cpp
147    )
148endif ()
149
150if (ENABLE_REQUEST_ANIMATION_FRAME)
151    list(APPEND WebCore_SOURCES
152        platform/graphics/blackberry/DisplayRefreshMonitorBlackBerry.cpp
153        platform/graphics/DisplayRefreshMonitor.cpp
154    )
155endif ()
156
157if (ENABLE_WEBGL)
158    add_definitions(-DWTF_USE_OPENGL_ES_2=1)
159    list(APPEND WebCore_INCLUDE_DIRECTORIES
160        "${WEBCORE_DIR}/platform/graphics/gpu"
161        "${WEBCORE_DIR}/platform/graphics/opengl"
162    )
163    list(APPEND WebCore_SOURCES
164        platform/graphics/blackberry/DrawingBufferBlackBerry.cpp
165        platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp
166        platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp
167        platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp
168        platform/graphics/opengl/Extensions3DOpenGLCommon.cpp
169        platform/graphics/opengl/Extensions3DOpenGLES.cpp
170        platform/graphics/gpu/SharedGraphicsContext3D.cpp
171    )
172endif ()
173
174if (ENABLE_MEDIA_STREAM)
175    list(APPEND WebCore_SOURCES
176        platform/mediastream/blackberry/MediaStreamCenterBlackBerry.cpp
177    )
178endif ()
179
180if (ENABLE_NETSCAPE_PLUGIN_API)
181    list(APPEND WebCore_SOURCES
182        plugins/blackberry/NPCallbacksBlackBerry.cpp
183        plugins/blackberry/PluginPackageBlackBerry.cpp
184        plugins/blackberry/PluginViewBlackBerry.cpp
185        plugins/blackberry/PluginViewPrivateBlackBerry.cpp
186    )
187else ()
188    list(APPEND WebCore_SOURCES
189        plugins/PluginDataNone.cpp
190    )
191endif ()
192
193if (ENABLE_TEXT_AUTOSIZING)
194    list(APPEND WebCore_SOURCES
195        ${WEBCORE_DIR}/rendering/TextAutosizer.cpp
196    )
197endif ()
198
199# To speed up linking when working on accel comp, you can move this whole chunk
200# to Source/WebKit/blackberry/CMakeListsBlackBerry.txt.
201# Append to WebKit_SOURCES instead of WebCore_SOURCES.
202if (WTF_USE_ACCELERATED_COMPOSITING)
203    list(APPEND WebCore_SOURCES
204        ${WEBCORE_DIR}/platform/graphics/GraphicsLayer.cpp
205        ${WEBCORE_DIR}/platform/graphics/GraphicsLayerUpdater.cpp
206        ${WEBCORE_DIR}/platform/graphics/blackberry/CanvasLayerWebKitThread.cpp
207        ${WEBCORE_DIR}/platform/graphics/blackberry/EGLImageLayerWebKitThread.cpp
208        ${WEBCORE_DIR}/platform/graphics/blackberry/EGLImageLayerCompositingThreadClient.cpp
209        ${WEBCORE_DIR}/platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp
210        ${WEBCORE_DIR}/platform/graphics/blackberry/LayerAnimation.cpp
211        ${WEBCORE_DIR}/platform/graphics/blackberry/LayerCompositingThread.cpp
212        ${WEBCORE_DIR}/platform/graphics/blackberry/LayerFilterRenderer.cpp
213        ${WEBCORE_DIR}/platform/graphics/blackberry/LayerRenderer.cpp
214        ${WEBCORE_DIR}/platform/graphics/blackberry/LayerRendererSurface.cpp
215        ${WEBCORE_DIR}/platform/graphics/blackberry/LayerTexture.cpp
216        ${WEBCORE_DIR}/platform/graphics/blackberry/LayerTile.cpp
217        ${WEBCORE_DIR}/platform/graphics/blackberry/LayerTiler.cpp
218        ${WEBCORE_DIR}/platform/graphics/blackberry/LayerWebKitThread.cpp
219        ${WEBCORE_DIR}/platform/graphics/blackberry/PluginLayerWebKitThread.cpp
220        ${WEBCORE_DIR}/platform/graphics/blackberry/TextureCacheCompositingThread.cpp
221        ${WEBCORE_DIR}/platform/graphics/blackberry/WebGLLayerWebKitThread.cpp
222        ${WEBCORE_DIR}/rendering/RenderLayerBacking.cpp
223        ${WEBCORE_DIR}/rendering/RenderLayerCompositor.cpp
224    )
225endif ()
226
227set(ENV{WEBKITDIR} ${CMAKE_SOURCE_DIR}/Source)
228set(ENV{PLATFORMNAME} ${CMAKE_SYSTEM_NAME})
229execute_process(
230    COMMAND hostname
231    OUTPUT_VARIABLE host
232)
233string(REPLACE "\n" "" host1 "${host}")
234set(ENV{COMPUTERNAME} ${host1})
235
236if ($ENV{PUBLIC_BUILD})
237    add_definitions(-DPUBLIC_BUILD=$ENV{PUBLIC_BUILD})
238endif ()
239
240# Generate contents for PopupPicker.cpp
241set(WebCore_POPUP_CSS_AND_JS
242    ${WEBCORE_DIR}/Resources/blackberry/popupControlBlackBerry.css
243    ${WEBCORE_DIR}/Resources/blackberry/selectControlBlackBerry.css
244    ${WEBCORE_DIR}/Resources/blackberry/selectControlBlackBerry.js
245)
246
247add_custom_command(
248    OUTPUT ${DERIVED_SOURCES_WEBCORE_DIR}/PopupPicker.h ${DERIVED_SOURCES_WEBCORE_DIR}/PopupPicker.cpp
249    MAIN_DEPENDENCY ${WEBCORE_DIR}/make-file-arrays.py
250    DEPENDS ${WebCore_POPUP_CSS_AND_JS}
251    COMMAND ${PYTHON_EXECUTABLE} ${WEBCORE_DIR}/make-file-arrays.py --out-h=${DERIVED_SOURCES_WEBCORE_DIR}/PopupPicker.h --out-cpp=${DERIVED_SOURCES_WEBCORE_DIR}/PopupPicker.cpp ${WebCore_POPUP_CSS_AND_JS}
252)
253list(APPEND WebCore_SOURCES ${DERIVED_SOURCES_WEBCORE_DIR}/PopupPicker.cpp)
254
255set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> <LINK_FLAGS> cruT <TARGET> <OBJECTS>")
256set(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> <LINK_FLAGS> ruT <TARGET> <OBJECTS>")
257set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> <LINK_FLAGS> cruT <TARGET> <OBJECTS>")
258set(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> <LINK_FLAGS> ruT <TARGET> <OBJECTS>")
259