[JSC] Optimize padding of UnlinkedCodeBlock to shrink
[WebKit-https.git] / Source / WebCore / PlatformWin.cmake
1 add_definitions(/bigobj -D__STDC_CONSTANT_MACROS)
2
3 list(APPEND WebCore_INCLUDE_DIRECTORIES
4     "${DERIVED_SOURCES_DIR}/ForwardingHeaders"
5     "${CMAKE_BINARY_DIR}/../include/private"
6     "${CMAKE_BINARY_DIR}/../include/private/JavaScriptCore"
7     "${WEBCORE_DIR}/accessibility/win"
8     "${WEBCORE_DIR}/page/win"
9     "${WEBCORE_DIR}/platform/graphics/egl"
10     "${WEBCORE_DIR}/platform/graphics/opengl"
11     "${WEBCORE_DIR}/platform/graphics/opentype"
12     "${WEBCORE_DIR}/platform/graphics/win"
13     "${WEBCORE_DIR}/platform/network/win"
14     "${WEBCORE_DIR}/platform/win"
15     "${THIRDPARTY_DIR}/ANGLE/include"
16     "${THIRDPARTY_DIR}/ANGLE/include/egl"
17     "${DERIVED_SOURCES_PAL_DIR}"
18 )
19
20 list(APPEND WebCore_SOURCES
21     accessibility/win/AXObjectCacheWin.cpp
22     accessibility/win/AccessibilityObjectWin.cpp
23     accessibility/win/AccessibilityObjectWrapperWin.cpp
24
25     editing/SmartReplaceCF.cpp
26     editing/win/EditorWin.cpp
27
28     html/HTMLSelectElementWin.cpp
29
30     page/win/DragControllerWin.cpp
31     page/win/EventHandlerWin.cpp
32     page/win/FrameWin.cpp
33
34     platform/Cursor.cpp
35     platform/LocalizedStrings.cpp
36     platform/StaticPasteboard.cpp
37
38     platform/audio/PlatformMediaSessionManager.cpp
39
40     platform/graphics/GraphicsContext3DPrivate.cpp
41
42     platform/graphics/egl/GLContextEGL.cpp
43
44     platform/graphics/opengl/Extensions3DOpenGLCommon.cpp
45     platform/graphics/opengl/Extensions3DOpenGLES.cpp
46     platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp
47     platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp
48     platform/graphics/opengl/TemporaryOpenGLSetting.cpp
49
50     platform/graphics/opentype/OpenTypeUtilities.cpp
51
52     platform/graphics/win/ColorDirect2D.cpp
53     platform/graphics/win/ComplexTextControllerDirectWrite.cpp
54     platform/graphics/win/DIBPixelData.cpp
55     platform/graphics/win/FloatPointDirect2D.cpp
56     platform/graphics/win/FloatRectDirect2D.cpp
57     platform/graphics/win/FloatSizeDirect2D.cpp
58     platform/graphics/win/FontCacheWin.cpp
59     platform/graphics/win/FontPlatformDataWin.cpp
60     platform/graphics/win/FontWin.cpp
61     platform/graphics/win/FullScreenController.cpp
62     platform/graphics/win/GraphicsContextWin.cpp
63     platform/graphics/win/IconWin.cpp
64     platform/graphics/win/ImageWin.cpp
65     platform/graphics/win/IntPointWin.cpp
66     platform/graphics/win/IntRectWin.cpp
67     platform/graphics/win/IntSizeWin.cpp
68     platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp
69     platform/graphics/win/SimpleFontDataWin.cpp
70     platform/graphics/win/TransformationMatrixDirect2D.cpp
71     platform/graphics/win/TransformationMatrixWin.cpp
72     platform/graphics/win/UniscribeController.cpp
73
74     platform/mediastream/libwebrtc/LibWebRTCProviderWin.cpp
75
76     platform/network/win/DownloadBundleWin.cpp
77     platform/network/win/NetworkStateNotifierWin.cpp
78
79     platform/text/LocaleNone.cpp
80
81     platform/win/BString.cpp
82     platform/win/BitmapInfo.cpp
83     platform/win/ClipboardUtilitiesWin.cpp
84     platform/win/CursorWin.cpp
85     platform/win/DefWndProcWindowClass.cpp
86     platform/win/DragDataWin.cpp
87     platform/win/DragImageWin.cpp
88     platform/win/EventLoopWin.cpp
89     platform/win/FileSystemWin.cpp
90     platform/win/GDIObjectCounter.cpp
91     platform/win/GDIUtilities.cpp
92     platform/win/KeyEventWin.cpp
93     platform/win/LocalizedStringsWin.cpp
94     platform/win/LoggingWin.cpp
95     platform/win/MIMETypeRegistryWin.cpp
96     platform/win/MainThreadSharedTimerWin.cpp
97     platform/win/PasteboardWin.cpp
98     platform/win/PathWalker.cpp
99     platform/win/PlatformMouseEventWin.cpp
100     platform/win/PlatformScreenWin.cpp
101     platform/win/PopupMenuWin.cpp
102     platform/win/SSLKeyGeneratorWin.cpp
103     platform/win/ScrollbarThemeWin.cpp
104     platform/win/SearchPopupMenuWin.cpp
105     platform/win/SharedBufferWin.cpp
106     platform/win/StructuredExceptionHandlerSuppressor.cpp
107     platform/win/SystemInfo.cpp
108     platform/win/UserAgentWin.cpp
109     platform/win/WCDataObject.cpp
110     platform/win/WebCoreBundleWin.cpp
111     platform/win/WebCoreInstanceHandle.cpp
112     platform/win/WebCoreTextRenderer.cpp
113     platform/win/WheelEventWin.cpp
114     platform/win/WidgetWin.cpp
115     platform/win/WindowMessageBroadcaster.cpp
116
117     rendering/RenderThemeWin.cpp
118 )
119
120 list(APPEND WebCore_USER_AGENT_STYLE_SHEETS
121     ${WEBCORE_DIR}/css/themeWin.css
122     ${WEBCORE_DIR}/css/themeWinQuirks.css
123 )
124
125 set(WebCore_FORWARDING_HEADERS_DIRECTORIES
126     .
127     accessibility
128     animation
129     bindings
130     bridge
131     contentextensions
132     crypto
133     css
134     dom
135     editing
136     fileapi
137     history
138     html
139     inspector
140     loader
141     page
142     platform
143     plugins
144     rendering
145     replay
146     storage
147     style
148     svg
149     websockets
150     workers
151     xml
152
153     Modules/cache
154     Modules/fetch
155     Modules/geolocation
156     Modules/indexeddb
157     Modules/mediastream
158     Modules/websockets
159
160     Modules/indexeddb/client
161     Modules/indexeddb/legacy
162     Modules/indexeddb/server
163     Modules/indexeddb/shared
164     Modules/notifications
165     Modules/webdatabase
166
167     accessibility/win
168
169     bindings/js
170
171     bridge/c
172     bridge/jsc
173
174     css/parser
175
176     html/canvas
177     html/forms
178     html/parser
179     html/shadow
180     html/track
181
182     loader/appcache
183     loader/archive
184     loader/cache
185     loader/icon
186
187
188     page/animation
189     page/csp
190     page/scrolling
191     page/win
192
193     platform/animation
194     platform/audio
195     platform/graphics
196     platform/mock
197     platform/network
198     platform/sql
199     platform/text
200     platform/win
201
202     platform/graphics/filters
203     platform/graphics/opengl
204     platform/graphics/opentype
205     platform/graphics/texmap
206     platform/graphics/transforms
207     platform/graphics/win
208
209     platform/mediastream/libwebrtc
210
211     platform/text/transcoder
212
213     rendering/line
214     rendering/shapes
215     rendering/style
216     rendering/svg
217
218     svg/animation
219     svg/graphics
220     svg/properties
221
222     svg/graphics/filters
223
224     workers/service
225 )
226
227 if (ENABLE_WEBKIT)
228     list(APPEND WebCore_FORWARDING_HEADERS_DIRECTORIES
229         Modules/applicationmanifest
230
231         dom/messageports
232
233         inspector/agents
234
235         platform/mediastream
236
237         workers/service/context
238         workers/service/server
239     )
240 endif ()
241
242 if (USE_CF)
243     list(APPEND WebCore_INCLUDE_DIRECTORIES
244         "${WEBCORE_DIR}/platform/cf"
245         "${WEBCORE_DIR}/platform/cf/win"
246     )
247
248     list(APPEND WebCore_SOURCES
249         loader/archive/cf/LegacyWebArchive.cpp
250
251         platform/cf/CFURLExtras.cpp
252         platform/cf/FileSystemCF.cpp
253         platform/cf/KeyedDecoderCF.cpp
254         platform/cf/KeyedEncoderCF.cpp
255         platform/cf/SharedBufferCF.cpp
256         platform/cf/URLCF.cpp
257
258         platform/cf/win/CertificateCFWin.cpp
259
260         platform/text/cf/HyphenationCF.cpp
261     )
262
263     list(APPEND WebCore_FORWARDING_HEADERS_DIRECTORIES
264         history/cf
265
266         loader/archive/cf
267
268         platform/cf
269
270         platform/cf/win
271     )
272 endif ()
273
274 if (CMAKE_SIZEOF_VOID_P EQUAL 4)
275     list(APPEND WebCore_SOURCES ${DERIVED_SOURCES_WEBCORE_DIR}/makesafeseh.obj)
276     add_custom_command(
277         OUTPUT ${DERIVED_SOURCES_WEBCORE_DIR}/makesafeseh.obj
278         DEPENDS ${WEBCORE_DIR}/platform/win/makesafeseh.asm
279         COMMAND ml /safeseh /c /Fo ${DERIVED_SOURCES_WEBCORE_DIR}/makesafeseh.obj ${WEBCORE_DIR}/platform/win/makesafeseh.asm
280         VERBATIM)
281 endif ()
282
283 if (${WTF_PLATFORM_WIN_CAIRO})
284     include(PlatformWinCairo.cmake)
285 else ()
286     include(PlatformAppleWin.cmake)
287 endif ()
288
289 make_directory(${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/WebKit.resources/en.lproj)
290 file(COPY
291     "${WEBCORE_DIR}/English.lproj/Localizable.strings"
292     "${WEBCORE_DIR}/English.lproj/mediaControlsLocalizedStrings.js"
293     DESTINATION
294     ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/WebKit.resources/en.lproj
295 )
296 file(COPY
297     "${WEBCORE_DIR}/Modules/mediacontrols/mediaControlsApple.css"
298     "${WEBCORE_DIR}/Modules/mediacontrols/mediaControlsApple.js"
299     DESTINATION
300     ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/WebKit.resources
301 )
302 if (WTF_PLATFORM_WIN_CAIRO AND EXISTS ${WEBKIT_LIBRARIES_DIR}/etc/ssl/cert.pem)
303     make_directory(${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/WebKit.resources/certificates)
304     file(COPY
305         ${WEBKIT_LIBRARIES_DIR}/etc/ssl/cert.pem
306         DESTINATION
307         ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/WebKit.resources/certificates
308     )
309     file(RENAME
310         ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/WebKit.resources/certificates/cert.pem
311         ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/WebKit.resources/certificates/cacert.pem
312     )
313 endif ()
314
315 WEBKIT_MAKE_FORWARDING_HEADERS(WebCore
316     DIRECTORIES ${WebCore_FORWARDING_HEADERS_DIRECTORIES}
317     DERIVED_SOURCE_DIRECTORIES ${DERIVED_SOURCES_WEBCORE_DIR} ${DERIVED_SOURCES_PAL_DIR}
318     FLATTENED
319 )
320
321 set(WebCore_OUTPUT_NAME
322     WebCore${DEBUG_SUFFIX}
323 )
324
325 list(APPEND WebCore_LIBRARIES WTF${DEBUG_SUFFIX})
326 if (TARGET libEGL)
327     list(APPEND WebCore_LIBRARIES libEGL)
328 endif ()
329 list(APPEND WebCoreTestSupport_LIBRARIES WTF${DEBUG_SUFFIX})