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