<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[188239] trunk</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/188239">188239</a></dd>
<dt>Author</dt> <dd>achristensen@apple.com</dd>
<dt>Date</dt> <dd>2015-08-10 17:09:07 -0700 (Mon, 10 Aug 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>Build TestWebKitAPI with CMake on Windows
https://bugs.webkit.org/show_bug.cgi?id=147851

Reviewed by Chris Dumez.

.:

* Source/cmake/OptionsWindows.cmake:
Enable api tests and set USE_SYSTEM_MALLOC to avoid warnings when redefining it.

Source/ThirdParty:

* gtest/CMakeLists.txt:
Include DerivedSources to find WTF/WTFHeaderDetection.h.

Source/WebCore:

* PlatformWin.cmake:
Remove RenderThemeWin.cpp which is included in RenderingAllInOne.cpp.
* WebCorePrefix.h:
Include cmakeconfig.h before wtf/Platform.h like we do in JavaScriptCore's config.h to avoid warnings and redefining ENABLE_*  macros.

Source/WebKit:

* PlatformWin.cmake:
WinCairo libraries conflict with LIBCMT.lib, AppleWin libraries conflict with MSVCRT.lib,
so different /NODEFAULTLIB is needed to link WebKit.dll successfully.

Tools:

* CMakeLists.txt:
* TestWebKitAPI/CMakeLists.txt:
Removed TestJavaScriptCore because JavaScriptCore's API tests are elsewhere and this was just making an empty binary.
Surrounded WebKit2-specific features with ENABLE_WEBKIT2 checks.
Include directories after the Platform*.cmake is included because HostWindow.h needs to be found in Tools/TestWebKitAPI/win 
before we look in Source/WebCore/platform, where another file named HostWindow.h exists.
* TestWebKitAPI/PlatformEfl.cmake:
* TestWebKitAPI/PlatformGTK.cmake:
Windows needs all the binaries to be in the same directory to find gtest.dll and the other dlls.
I did this without changing the directory structure of the existing EFL and GTK builds.
* TestWebKitAPI/PlatformWin.cmake: Added.
* TestWebKitAPI/win/main.cpp:
(main):
(dllLauncherEntryPoint):
Added so we can launch TestWebKitAPI executables after finding the AAS directory.
* WinLauncher/CMakeLists.txt:
AppleWin port needs /NODEFAULTLIB:MSVCRT.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkChangeLog">trunk/ChangeLog</a></li>
<li><a href="#trunkSourceThirdPartyChangeLog">trunk/Source/ThirdParty/ChangeLog</a></li>
<li><a href="#trunkSourceThirdPartygtestCMakeListstxt">trunk/Source/ThirdParty/gtest/CMakeLists.txt</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorePlatformWincmake">trunk/Source/WebCore/PlatformWin.cmake</a></li>
<li><a href="#trunkSourceWebCoreWebCorePrefixh">trunk/Source/WebCore/WebCorePrefix.h</a></li>
<li><a href="#trunkSourceWebKitChangeLog">trunk/Source/WebKit/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitPlatformWincmake">trunk/Source/WebKit/PlatformWin.cmake</a></li>
<li><a href="#trunkSourcecmakeOptionsWindowscmake">trunk/Source/cmake/OptionsWindows.cmake</a></li>
<li><a href="#trunkToolsCMakeListstxt">trunk/Tools/CMakeLists.txt</a></li>
<li><a href="#trunkToolsChangeLog">trunk/Tools/ChangeLog</a></li>
<li><a href="#trunkToolsTestWebKitAPICMakeListstxt">trunk/Tools/TestWebKitAPI/CMakeLists.txt</a></li>
<li><a href="#trunkToolsTestWebKitAPIPlatformEflcmake">trunk/Tools/TestWebKitAPI/PlatformEfl.cmake</a></li>
<li><a href="#trunkToolsTestWebKitAPIPlatformGTKcmake">trunk/Tools/TestWebKitAPI/PlatformGTK.cmake</a></li>
<li><a href="#trunkToolsTestWebKitAPIwinmaincpp">trunk/Tools/TestWebKitAPI/win/main.cpp</a></li>
<li><a href="#trunkToolsWinLauncherCMakeListstxt">trunk/Tools/WinLauncher/CMakeLists.txt</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkToolsTestWebKitAPIPlatformWincmake">trunk/Tools/TestWebKitAPI/PlatformWin.cmake</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/ChangeLog (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/ChangeLog        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/ChangeLog        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -1,3 +1,13 @@
</span><ins>+2015-08-10  Alex Christensen  &lt;achristensen@webkit.org&gt;
+
+        Build TestWebKitAPI with CMake on Windows
+        https://bugs.webkit.org/show_bug.cgi?id=147851
+
+        Reviewed by Chris Dumez.
+
+        * Source/cmake/OptionsWindows.cmake:
+        Enable api tests and set USE_SYSTEM_MALLOC to avoid warnings when redefining it.
+
</ins><span class="cx"> 2015-08-06  Alex Christensen  &lt;achristensen@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         [Win] CMake build fix after r188098.
</span></span></pre></div>
<a id="trunkSourceThirdPartyChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/ChangeLog (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/ChangeLog        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Source/ThirdParty/ChangeLog        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -1,3 +1,13 @@
</span><ins>+2015-08-10  Alex Christensen  &lt;achristensen@webkit.org&gt;
+
+        Build TestWebKitAPI with CMake on Windows
+        https://bugs.webkit.org/show_bug.cgi?id=147851
+
+        Reviewed by Chris Dumez.
+
+        * gtest/CMakeLists.txt:
+        Include DerivedSources to find WTF/WTFHeaderDetection.h.
+
</ins><span class="cx"> 2015-05-26  Dan Bernstein  &lt;mitz@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         &lt;rdar://problem/21104551&gt; Update build settings
</span></span></pre></div>
<a id="trunkSourceThirdPartygtestCMakeListstxt"></a>
<div class="modfile"><h4>Modified: trunk/Source/ThirdParty/gtest/CMakeLists.txt (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/ThirdParty/gtest/CMakeLists.txt        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Source/ThirdParty/gtest/CMakeLists.txt        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -9,6 +9,7 @@
</span><span class="cx">     &quot;${GTEST_DIR}&quot;
</span><span class="cx">     &quot;${GTEST_DIR}/include&quot;
</span><span class="cx">     &quot;${JAVASCRIPTCORE_DIR}&quot;
</span><ins>+    &quot;${DERIVED_SOURCES_DIR}&quot;
</ins><span class="cx">     &quot;${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}&quot;
</span><span class="cx">     &quot;${WTF_DIR}&quot;
</span><span class="cx"> )
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Source/WebCore/ChangeLog        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -1,3 +1,15 @@
</span><ins>+2015-08-10  Alex Christensen  &lt;achristensen@webkit.org&gt;
+
+        Build TestWebKitAPI with CMake on Windows
+        https://bugs.webkit.org/show_bug.cgi?id=147851
+
+        Reviewed by Chris Dumez.
+
+        * PlatformWin.cmake:
+        Remove RenderThemeWin.cpp which is included in RenderingAllInOne.cpp.
+        * WebCorePrefix.h:
+        Include cmakeconfig.h before wtf/Platform.h like we do in JavaScriptCore's config.h to avoid warnings and redefining ENABLE_*  macros.
+
</ins><span class="cx"> 2015-08-10  Matthew Daiter  &lt;mdaiter@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         HTMLMediaElement needs way to find MediaDeviceInfo
</span></span></pre></div>
<a id="trunkSourceWebCorePlatformWincmake"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/PlatformWin.cmake (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/PlatformWin.cmake        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Source/WebCore/PlatformWin.cmake        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -120,8 +120,6 @@
</span><span class="cx">     platform/win/WheelEventWin.cpp
</span><span class="cx">     platform/win/WidgetWin.cpp
</span><span class="cx">     platform/win/WindowMessageBroadcaster.cpp
</span><del>-
-    rendering/RenderThemeWin.cpp
</del><span class="cx"> )
</span><span class="cx"> 
</span><span class="cx"> list(APPEND WebCore_USER_AGENT_STYLE_SHEETS
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorePrefixh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCorePrefix.h (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCorePrefix.h        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Source/WebCore/WebCorePrefix.h        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -27,6 +27,10 @@
</span><span class="cx"> 
</span><span class="cx"> /* Things that need to be defined globally should go into &quot;config.h&quot;. */
</span><span class="cx"> 
</span><ins>+#if defined(HAVE_CONFIG_H) &amp;&amp; HAVE_CONFIG_H &amp;&amp; defined(BUILDING_WITH_CMAKE)
+#include &quot;cmakeconfig.h&quot;
+#endif
+
</ins><span class="cx"> #include &lt;wtf/Platform.h&gt;
</span><span class="cx"> 
</span><span class="cx"> #if defined(__APPLE__)
</span></span></pre></div>
<a id="trunkSourceWebKitChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/ChangeLog (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/ChangeLog        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Source/WebKit/ChangeLog        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -1,3 +1,14 @@
</span><ins>+2015-08-10  Alex Christensen  &lt;achristensen@webkit.org&gt;
+
+        Build TestWebKitAPI with CMake on Windows
+        https://bugs.webkit.org/show_bug.cgi?id=147851
+
+        Reviewed by Chris Dumez.
+
+        * PlatformWin.cmake:
+        WinCairo libraries conflict with LIBCMT.lib, AppleWin libraries conflict with MSVCRT.lib,
+        so different /NODEFAULTLIB is needed to link WebKit.dll successfully.
+
</ins><span class="cx"> 2015-08-06  Alex Christensen  &lt;achristensen@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         [Win] Enable all Windows features in CMake
</span></span></pre></div>
<a id="trunkSourceWebKitPlatformWincmake"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/PlatformWin.cmake (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/PlatformWin.cmake        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Source/WebKit/PlatformWin.cmake        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -444,7 +444,11 @@
</span><span class="cx"> list(APPEND WebKit_LIBRARIES ${CXX_LIBS})
</span><span class="cx"> set(CMAKE_CXX_STANDARD_LIBRARIES &quot;&quot;)
</span><span class="cx"> 
</span><del>-set(CMAKE_SHARED_LINKER_FLAGS &quot;${CMAKE_SHARED_LINKER_FLAGS} /NODEFAULTLIB:LIBCMT&quot;)
</del><ins>+if (${WTF_PLATFORM_WIN_CAIRO})
+    set(CMAKE_SHARED_LINKER_FLAGS &quot;${CMAKE_SHARED_LINKER_FLAGS} /NODEFAULTLIB:LIBCMT&quot;)
+else ()
+    set(CMAKE_SHARED_LINKER_FLAGS &quot;${CMAKE_SHARED_LINKER_FLAGS} /NODEFAULTLIB:MSVCRT&quot;)
+endif ()
</ins><span class="cx"> 
</span><span class="cx"> # If this directory isn't created before midl runs and attempts to output WebKit.tlb,
</span><span class="cx"> # It fails with an unusual error - midl failed - failed to save all changes
</span></span></pre></div>
<a id="trunkSourcecmakeOptionsWindowscmake"></a>
<div class="modfile"><h4>Modified: trunk/Source/cmake/OptionsWindows.cmake (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/cmake/OptionsWindows.cmake        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Source/cmake/OptionsWindows.cmake        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -5,6 +5,7 @@
</span><span class="cx"> WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_ACCELERATED_2D_CANVAS PUBLIC OFF)
</span><span class="cx"> WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_ACCELERATED_OVERFLOW_SCROLLING PUBLIC OFF)
</span><span class="cx"> WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_ALLINONE_BUILD PUBLIC ON)
</span><ins>+WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_API_TESTS PUBLIC ON)
</ins><span class="cx"> WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_ATTACHMENT_ELEMENT PUBLIC ON)
</span><span class="cx"> WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CANVAS_PATH PUBLIC ON)
</span><span class="cx"> WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CANVAS_PROXY PUBLIC OFF)
</span><span class="lines">@@ -94,6 +95,8 @@
</span><span class="cx"> WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_XHR_TIMEOUT PUBLIC ON)
</span><span class="cx"> WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_XSLT PUBLIC ON)
</span><span class="cx"> 
</span><ins>+WEBKIT_OPTION_DEFAULT_PORT_VALUE(USE_SYSTEM_MALLOC PRIVATE ON)
+
</ins><span class="cx"> if (${WTF_PLATFORM_WIN_CAIRO})
</span><span class="cx">     WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_ENCRYPTED_MEDIA_V2 PUBLIC OFF)
</span><span class="cx">     WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEBGL PUBLIC ON)
</span></span></pre></div>
<a id="trunkToolsCMakeListstxt"></a>
<div class="modfile"><h4>Modified: trunk/Tools/CMakeLists.txt (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/CMakeLists.txt        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Tools/CMakeLists.txt        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -29,6 +29,7 @@
</span><span class="cx"> 
</span><span class="cx"> if (WIN32)
</span><span class="cx">     add_subdirectory(DumpRenderTree)
</span><ins>+    add_subdirectory(TestWebKitAPI)
</ins><span class="cx">     add_subdirectory(WinLauncher)
</span><span class="cx"> endif ()
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkToolsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Tools/ChangeLog (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/ChangeLog        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Tools/ChangeLog        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -1,3 +1,28 @@
</span><ins>+2015-08-10  Alex Christensen  &lt;achristensen@webkit.org&gt;
+
+        Build TestWebKitAPI with CMake on Windows
+        https://bugs.webkit.org/show_bug.cgi?id=147851
+
+        Reviewed by Chris Dumez.
+
+        * CMakeLists.txt:
+        * TestWebKitAPI/CMakeLists.txt:
+        Removed TestJavaScriptCore because JavaScriptCore's API tests are elsewhere and this was just making an empty binary.
+        Surrounded WebKit2-specific features with ENABLE_WEBKIT2 checks.
+        Include directories after the Platform*.cmake is included because HostWindow.h needs to be found in Tools/TestWebKitAPI/win 
+        before we look in Source/WebCore/platform, where another file named HostWindow.h exists.
+        * TestWebKitAPI/PlatformEfl.cmake:
+        * TestWebKitAPI/PlatformGTK.cmake:
+        Windows needs all the binaries to be in the same directory to find gtest.dll and the other dlls.
+        I did this without changing the directory structure of the existing EFL and GTK builds.
+        * TestWebKitAPI/PlatformWin.cmake: Added.
+        * TestWebKitAPI/win/main.cpp:
+        (main):
+        (dllLauncherEntryPoint):
+        Added so we can launch TestWebKitAPI executables after finding the AAS directory.
+        * WinLauncher/CMakeLists.txt:
+        AppleWin port needs /NODEFAULTLIB:MSVCRT.
+
</ins><span class="cx"> 2015-08-10  Dewei Zhu  &lt;dewei_zhu@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Make cleanup more robust and minor code cleaning in run benchmark script.
</span></span></pre></div>
<a id="trunkToolsTestWebKitAPICMakeListstxt"></a>
<div class="modfile"><h4>Modified: trunk/Tools/TestWebKitAPI/CMakeLists.txt (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/TestWebKitAPI/CMakeLists.txt        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Tools/TestWebKitAPI/CMakeLists.txt        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -1,38 +1,4 @@
</span><span class="cx"> set(TESTWEBKITAPI_DIR &quot;${TOOLS_DIR}/TestWebKitAPI&quot;)
</span><del>-set(TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY &quot;${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/TestWebKitAPI&quot;)
-
-include_directories(${CMAKE_BINARY_DIR}
-    ${TESTWEBKITAPI_DIR}
-    ${CMAKE_SOURCE_DIR}/Source
-    ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}
-    ${DERIVED_SOURCES_WEBCORE_DIR}
-    ${JAVASCRIPTCORE_DIR}
-    ${JAVASCRIPTCORE_DIR}/API
-    ${JAVASCRIPTCORE_DIR}/ForwardingHeaders
-    ${THIRDPARTY_DIR}/gtest/include
-    ${WEBCORE_DIR}/css
-    ${WEBCORE_DIR}/dom
-    ${WEBCORE_DIR}/editing
-    ${WEBCORE_DIR}/loader/cache
-    ${WEBCORE_DIR}/platform
-    ${WEBCORE_DIR}/platform/animation
-    ${WEBCORE_DIR}/platform/graphics
-    ${WEBCORE_DIR}/platform/text
-    ${WEBCORE_DIR}/platform/network
-    ${WEBCORE_DIR}/platform/network/soup
-    ${WEBCORE_DIR}/rendering/style
-    ${WEBKIT2_DIR}/Platform/IPC
-    ${WEBKIT2_DIR}/Shared
-    ${WEBKIT2_DIR}/Shared/API
-    ${WEBKIT2_DIR}/Shared/API/c
-    ${WEBKIT2_DIR}/Shared/Plugins
-    ${WEBKIT2_DIR}/UIProcess
-    ${WEBKIT2_DIR}/UIProcess/API
-    ${WEBKIT2_DIR}/WebProcess/InjectedBundle
-    ${WEBKIT2_DIR}/WebProcess/InjectedBundle/API/c
-    ${WTF_DIR}
-)
-
</del><span class="cx"> set(test_wtf_LIBRARIES
</span><span class="cx">     WTF
</span><span class="cx">     gtest
</span><span class="lines">@@ -44,19 +10,28 @@
</span><span class="cx">     gtest
</span><span class="cx"> )
</span><span class="cx"> 
</span><del>-set(test_webkit2_api_LIBRARIES
-    JavaScriptCore
-    TestWebKitAPIBase
-    WTF
-    WebKit2
-    gtest
-)
-
</del><span class="cx"> set(TestWebKitAPI_LIBRARIES
</span><span class="cx">     WTF
</span><del>-    WebKit2
</del><span class="cx"> )
</span><span class="cx"> 
</span><ins>+if (ENABLE_WEBKIT2)
+    set(test_webkit2_api_LIBRARIES
+        JavaScriptCore
+        TestWebKitAPIBase
+        WTF
+        WebKit2
+        gtest
+    )
+    list(APPEND TestWebKitAPI_LIBRARIES
+        WebKit2
+    )
+else ()
+    list(APPEND TestWebKitAPI_LIBRARIES
+        WebKit
+    )
+endif ()
+
+
</ins><span class="cx"> set(TestJavaScriptCore_LIBRARIES
</span><span class="cx">     JavaScriptCore
</span><span class="cx">     gtest
</span><span class="lines">@@ -99,41 +74,76 @@
</span><span class="cx"> 
</span><span class="cx"> WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS()
</span><span class="cx"> 
</span><del>-add_library(TestWebKitAPIInjectedBundle SHARED
-    ${bundle_harness_SOURCES}
-    ${TESTWEBKITAPI_DIR}/InjectedBundleController.cpp
-    ${TESTWEBKITAPI_DIR}/InjectedBundleMain.cpp
-    ${TESTWEBKITAPI_DIR}/PlatformUtilities.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/CanHandleRequest_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/DidAssociateFormControls_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/DOMWindowExtensionBasic_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/DOMWindowExtensionNoCache_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/DocumentStartUserScriptAlertCrash_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/GetInjectedBundleInitializationUserDataCallback_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/HitTestResultNodeHandle_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/InjectedBundleBasic_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/InjectedBundleFrameHitTest_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/InjectedBundleInitializationUserDataCallbackWins_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/LoadCanceledNoServerRedirectCallback_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/MouseMoveAfterCrash_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFails_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutForImages_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFrames_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/NewFirstVisuallyNonEmptyLayout_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/ParentFrame_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/ResponsivenessTimerDoesntFireEarly_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/ShouldGoToBackForwardListItem_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/TextFieldDidBeginAndEndEditing_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/UserMessage_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/WillLoad_Bundle.cpp
-    ${TESTWEBKITAPI_DIR}/Tests/WebKit2/WillSendSubmitEvent_Bundle.cpp
</del><ins>+include_directories(
+    ${TESTWEBKITAPI_DIR}
+    ${CMAKE_BINARY_DIR}
+    ${CMAKE_SOURCE_DIR}/Source
+    ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}
+    ${DERIVED_SOURCES_WEBCORE_DIR}
+    ${JAVASCRIPTCORE_DIR}
+    ${JAVASCRIPTCORE_DIR}/API
+    ${JAVASCRIPTCORE_DIR}/ForwardingHeaders
+    ${THIRDPARTY_DIR}/gtest/include
+    ${WEBCORE_DIR}/css
+    ${WEBCORE_DIR}/dom
+    ${WEBCORE_DIR}/editing
+    ${WEBCORE_DIR}/loader/cache
+    ${WEBCORE_DIR}/platform
+    ${WEBCORE_DIR}/platform/animation
+    ${WEBCORE_DIR}/platform/graphics
+    ${WEBCORE_DIR}/platform/text
+    ${WEBCORE_DIR}/platform/network
+    ${WEBCORE_DIR}/platform/network/soup
+    ${WEBCORE_DIR}/rendering/style
+    ${WEBKIT2_DIR}/Platform/IPC
+    ${WEBKIT2_DIR}/Shared
+    ${WEBKIT2_DIR}/Shared/API
+    ${WEBKIT2_DIR}/Shared/API/c
+    ${WEBKIT2_DIR}/Shared/Plugins
+    ${WEBKIT2_DIR}/UIProcess
+    ${WEBKIT2_DIR}/UIProcess/API
+    ${WEBKIT2_DIR}/WebProcess/InjectedBundle
+    ${WEBKIT2_DIR}/WebProcess/InjectedBundle/API/c
+    ${WTF_DIR}
</ins><span class="cx"> )
</span><span class="cx"> 
</span><del>-target_link_libraries(TestWebKitAPIInjectedBundle ${TestWebKitAPI_LIBRARIES})
-add_dependencies(TestWebKitAPIInjectedBundle ${ForwardingHeadersForTestWebKitAPI_NAME})
</del><ins>+if (ENABLE_WEBKIT2)
+    add_library(TestWebKitAPIInjectedBundle SHARED
+        ${bundle_harness_SOURCES}
+        ${TESTWEBKITAPI_DIR}/InjectedBundleController.cpp
+        ${TESTWEBKITAPI_DIR}/InjectedBundleMain.cpp
+        ${TESTWEBKITAPI_DIR}/PlatformUtilities.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/CanHandleRequest_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/DidAssociateFormControls_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/DOMWindowExtensionBasic_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/DOMWindowExtensionNoCache_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/DocumentStartUserScriptAlertCrash_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/GetInjectedBundleInitializationUserDataCallback_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/HitTestResultNodeHandle_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/InjectedBundleBasic_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/InjectedBundleFrameHitTest_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/InjectedBundleInitializationUserDataCallbackWins_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/LoadCanceledNoServerRedirectCallback_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/MouseMoveAfterCrash_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFails_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutForImages_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFrames_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/NewFirstVisuallyNonEmptyLayout_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/ParentFrame_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/ResponsivenessTimerDoesntFireEarly_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/ShouldGoToBackForwardListItem_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/TextFieldDidBeginAndEndEditing_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/UserMessage_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/WillLoad_Bundle.cpp
+        ${TESTWEBKITAPI_DIR}/Tests/WebKit2/WillSendSubmitEvent_Bundle.cpp
+    )
</ins><span class="cx"> 
</span><del>-get_property(TestWebKitAPIInjectedBundle_PATH TARGET TestWebKitAPIInjectedBundle PROPERTY LOCATION)
</del><ins>+    target_link_libraries(TestWebKitAPIInjectedBundle ${TestWebKitAPI_LIBRARIES})
+    add_dependencies(TestWebKitAPIInjectedBundle ${ForwardingHeadersForTestWebKitAPI_NAME})
</ins><span class="cx"> 
</span><ins>+    get_property(TestWebKitAPIInjectedBundle_PATH TARGET TestWebKitAPIInjectedBundle PROPERTY LOCATION)
+endif ()
+
</ins><span class="cx"> add_definitions(-DGTEST_LINKED_AS_SHARED_LIBRARY=1 -DGTEST_HAS_RTTI=0
</span><span class="cx">     -DTEST_WEBKIT2_RESOURCES_DIR=\&quot;${TESTWEBKITAPI_DIR}/Tests/WebKit2\&quot;
</span><span class="cx">     -DTEST_INJECTED_BUNDLE_PATH=\&quot;${TestWebKitAPIInjectedBundle_PATH}\&quot;
</span><span class="lines">@@ -151,27 +161,14 @@
</span><span class="cx"> )
</span><span class="cx"> 
</span><span class="cx"> target_link_libraries(TestWTF ${test_wtf_LIBRARIES})
</span><del>-add_dependencies(TestWTF ${ForwardingHeadersForTestWebKitAPI_NAME} ${ForwardingNetworkHeadersForTestWebKitAPI_NAME})
-add_test(TestWTF ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/WTF/TestWTF)
</del><ins>+add_dependencies(TestWTF WTF ${ForwardingHeadersForTestWebKitAPI_NAME} ${ForwardingNetworkHeadersForTestWebKitAPI_NAME})
+add_test(TestWTF ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY_WTF}/TestWTF)
</ins><span class="cx"> set_tests_properties(TestWTF PROPERTIES TIMEOUT 60)
</span><del>-    set_target_properties(TestWTF PROPERTIES
-        RUNTIME_OUTPUT_DIRECTORY ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/WTF
-    )
-
-
-add_executable(TestJavaScriptCore
-    ${test_main_SOURCES}
-    ${TESTWEBKITAPI_DIR}/TestsController.cpp
</del><ins>+set_target_properties(TestWTF PROPERTIES
+    RUNTIME_OUTPUT_DIRECTORY ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY_WTF}
</ins><span class="cx"> )
</span><span class="cx"> 
</span><del>-target_link_libraries(TestJavaScriptCore ${TestJavaScriptCore_LIBRARIES})
-add_dependencies(TestJavaScriptCore ${ForwardingHeadersForTestWebKitAPI_NAME})
-
-add_test(TestJavaScriptCore ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/JavaScriptCore/TestJavaScriptCore)
-set_tests_properties(TestJavaScriptCore PROPERTIES TIMEOUT 60)
-set_target_properties(TestJavaScriptCore PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/JavaScriptCore)
-add_dependencies(TestJavaScriptCore JavaScriptCore ${ForwardingHeadersForTestWebKitAPI_NAME} ${ForwardingNetworkHeadersForTestWebKitAPI_NAME})
-
</del><ins>+# FIXME: EFL is the only port that separates the WebCore binaries. Each port ought to do closer to the same thing.
</ins><span class="cx"> foreach (testName ${test_webcore_BINARIES})
</span><span class="cx">     add_executable(${testName} ${test_main_SOURCES} ${TESTWEBKITAPI_DIR}/TestsController.cpp ${TESTWEBKITAPI_DIR}/Tests/WebCore/${testName}.cpp)
</span><span class="cx">     add_test(${testName} ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/WebCore/${testName})
</span><span class="lines">@@ -182,34 +179,36 @@
</span><span class="cx">     )
</span><span class="cx"> endforeach ()
</span><span class="cx"> 
</span><del>-add_library(TestWebKitAPIBase
-    ${test_main_SOURCES}
-    ${webkit2_api_harness_SOURCES}
-    ${TESTWEBKITAPI_DIR}/JavaScriptTest.cpp
-    ${TESTWEBKITAPI_DIR}/PlatformUtilities.cpp
-    ${TESTWEBKITAPI_DIR}/TestsController.cpp
-)
</del><ins>+if (ENABLE_WEBKIT2)
+    add_library(TestWebKitAPIBase
+        ${test_main_SOURCES}
+        ${webkit2_api_harness_SOURCES}
+        ${TESTWEBKITAPI_DIR}/JavaScriptTest.cpp
+        ${TESTWEBKITAPI_DIR}/PlatformUtilities.cpp
+        ${TESTWEBKITAPI_DIR}/TestsController.cpp
+    )
</ins><span class="cx"> 
</span><del>-add_dependencies(TestWebKitAPIBase WebKit2 ${ForwardingHeadersForTestWebKitAPI_NAME} ${ForwardingNetworkHeadersForTestWebKitAPI_NAME})
</del><ins>+    add_dependencies(TestWebKitAPIBase WebKit2 ${ForwardingHeadersForTestWebKitAPI_NAME} ${ForwardingNetworkHeadersForTestWebKitAPI_NAME})
</ins><span class="cx"> 
</span><del>-foreach (testName ${test_webkit2_api_BINARIES})
-    get_filename_component(testBaseName ${testName} NAME)
-    add_executable(${testBaseName} ${TESTWEBKITAPI_DIR}/Tests/WebKit2/${testName}.cpp)
-    add_test(${testBaseName} ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/WebKit2/${testBaseName})
-    set_tests_properties(${testBaseName} PROPERTIES TIMEOUT 60)
-    target_link_libraries(${testBaseName} ${test_webkit2_api_LIBRARIES})
-    set_target_properties(${testBaseName} PROPERTIES
-        RUNTIME_OUTPUT_DIRECTORY ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/WebKit2
-    )
-endforeach ()
</del><ins>+    foreach (testName ${test_webkit2_api_BINARIES})
+        get_filename_component(testBaseName ${testName} NAME)
+        add_executable(${testBaseName} ${TESTWEBKITAPI_DIR}/Tests/WebKit2/${testName}.cpp)
+        add_test(${testBaseName} ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/WebKit2/${testBaseName})
+        set_tests_properties(${testBaseName} PROPERTIES TIMEOUT 60)
+        target_link_libraries(${testBaseName} ${test_webkit2_api_LIBRARIES})
+        set_target_properties(${testBaseName} PROPERTIES
+            RUNTIME_OUTPUT_DIRECTORY ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/WebKit2
+        )
+    endforeach ()
</ins><span class="cx"> 
</span><del>-# We don't run tests that are expected to fail. We could use the WILL_FAIL
-# property, but it reports failure when the test crashes or timeouts and would
-# make the bot red.
-foreach (testName ${test_webkit2_api_fail_BINARIES})
-    add_executable(${testName} ${TESTWEBKITAPI_DIR}/Tests/WebKit2/${testName}.cpp)
-    target_link_libraries(${testName} ${test_webkit2_api_LIBRARIES})
-    set_target_properties(${testName} PROPERTIES
-        RUNTIME_OUTPUT_DIRECTORY ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/WebKit2/failure
-    )
-endforeach ()
</del><ins>+    # We don't run tests that are expected to fail. We could use the WILL_FAIL
+    # property, but it reports failure when the test crashes or timeouts and would
+    # make the bot red.
+    foreach (testName ${test_webkit2_api_fail_BINARIES})
+        add_executable(${testName} ${TESTWEBKITAPI_DIR}/Tests/WebKit2/${testName}.cpp)
+        target_link_libraries(${testName} ${test_webkit2_api_LIBRARIES})
+        set_target_properties(${testName} PROPERTIES
+            RUNTIME_OUTPUT_DIRECTORY ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/WebKit2/failure
+        )
+    endforeach ()
+endif ()
</ins></span></pre></div>
<a id="trunkToolsTestWebKitAPIPlatformEflcmake"></a>
<div class="modfile"><h4>Modified: trunk/Tools/TestWebKitAPI/PlatformEfl.cmake (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/TestWebKitAPI/PlatformEfl.cmake        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Tools/TestWebKitAPI/PlatformEfl.cmake        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -1,3 +1,6 @@
</span><ins>+set(TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY &quot;${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/TestWebKitAPI&quot;)
+set(TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY_WTF &quot;${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/WTF&quot;)
+
</ins><span class="cx"> add_custom_target(forwarding-headersEflForTestWebKitAPI
</span><span class="cx">     COMMAND ${PERL_EXECUTABLE} ${WEBKIT2_DIR}/Scripts/generate-forwarding-headers.pl --include-path ${TESTWEBKITAPI_DIR} --output ${DERIVED_SOURCES_WEBKIT2_DIR}/include --platform efl --platform CoordinatedGraphics --platform soup
</span><span class="cx">     DEPENDS forwarding-headersEflForWebKit2
</span></span></pre></div>
<a id="trunkToolsTestWebKitAPIPlatformGTKcmake"></a>
<div class="modfile"><h4>Modified: trunk/Tools/TestWebKitAPI/PlatformGTK.cmake (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/TestWebKitAPI/PlatformGTK.cmake        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Tools/TestWebKitAPI/PlatformGTK.cmake        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -1,3 +1,6 @@
</span><ins>+set(TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY &quot;${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/TestWebKitAPI&quot;)
+set(TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY_WTF &quot;${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/WTF&quot;)
+
</ins><span class="cx"> # This is necessary because it is possible to build TestWebKitAPI with WebKit2
</span><span class="cx"> # disabled and this triggers the inclusion of the WebKit2 headers.
</span><span class="cx"> add_definitions(-DBUILDING_WEBKIT2__)
</span></span></pre></div>
<a id="trunkToolsTestWebKitAPIPlatformWincmake"></a>
<div class="addfile"><h4>Added: trunk/Tools/TestWebKitAPI/PlatformWin.cmake (0 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/TestWebKitAPI/PlatformWin.cmake                                (rev 0)
+++ trunk/Tools/TestWebKitAPI/PlatformWin.cmake        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -0,0 +1,96 @@
</span><ins>+set(TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY &quot;${CMAKE_RUNTIME_OUTPUT_DIRECTORY}&quot;)
+set(TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY_WTF &quot;${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}&quot;)
+add_definitions(-DUSE_CONSOLE_ENTRY_POINT)
+
+set(test_main_SOURCES
+    ${TESTWEBKITAPI_DIR}/win/main.cpp
+)
+
+include_directories(
+    ${DERIVED_SOURCES_DIR}
+    ${DERIVED_SOURCES_DIR}/ForwardingHeaders
+    ${TESTWEBKITAPI_DIR}/win
+)
+
+add_definitions(-DWEBCORE_EXPORT=)
+
+set(test_webcore_LIBRARIES
+    Crypt32
+    Iphlpapi
+    Shlwapi
+    Usp10
+    WebCore
+    WebKit
+    gtest
+)
+
+if (${WTF_PLATFORM_WIN_CAIRO})
+    list(APPEND test_webcore_LIBRARIES
+        cairo
+        curl
+    )
+else ()
+    list(APPEND test_webcore_LIBRARIES
+        CFNetwork
+        CoreMedia
+        WebKitSystemInterface
+    )
+endif ()
+
+add_library(TestWTFLib SHARED
+    ${test_main_SOURCES}
+    ${TestWTF_SOURCES}
+)
+set_target_properties(TestWTFLib PROPERTIES OUTPUT_NAME &quot;TestWTF&quot;)
+target_link_libraries(TestWTFLib ${test_wtf_LIBRARIES})
+
+set(test_wtf_LIBRARIES
+    shlwapi
+)
+set(TestWTF_SOURCES
+)
+
+add_library(TestWebCoreLib SHARED
+    ${test_main_SOURCES}
+    ${TESTWEBKITAPI_DIR}/TestsController.cpp
+    ${TESTWEBKITAPI_DIR}/Tests/WebCore/win/BitmapImage.cpp
+    ${TESTWEBKITAPI_DIR}/Tests/WebCore/CalculationValue.cpp
+    ${TESTWEBKITAPI_DIR}/Tests/WebCore/CSSParser.cpp
+    ${TESTWEBKITAPI_DIR}/Tests/WebCore/LayoutUnit.cpp
+    ${TESTWEBKITAPI_DIR}/Tests/WebCore/TimeRanges.cpp
+    ${TESTWEBKITAPI_DIR}/Tests/WebCore/URL.cpp
+)
+
+target_link_libraries(TestWebCoreLib ${test_webcore_LIBRARIES})
+set_target_properties(TestWebCoreLib PROPERTIES OUTPUT_NAME &quot;TestWebCore&quot;)
+
+add_executable(TestWebCore
+    ${TOOLS_DIR}/win/DLLLauncher/DLLLauncherMain.cpp
+)
+target_link_libraries(TestWebCore shlwapi)
+
+
+add_test(TestWebCore ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/TestWebCore)
+set_tests_properties(TestWebCore PROPERTIES TIMEOUT 60)
+
+add_library(TestWebKitLib SHARED
+    ${test_main_SOURCES}
+    ${TESTWEBKITAPI_DIR}/TestsController.cpp
+    ${TESTWEBKITAPI_DIR}/Tests/WebKit/win/WebViewDestruction.cpp
+    ${TESTWEBKITAPI_DIR}/win/HostWindow.cpp
+)
+
+target_link_libraries(TestWebKitLib ${test_webcore_LIBRARIES})
+set_target_properties(TestWebKitLib PROPERTIES OUTPUT_NAME &quot;TestWebKit&quot;)
+
+add_executable(TestWebKit
+    ${TOOLS_DIR}/win/DLLLauncher/DLLLauncherMain.cpp
+)
+target_link_libraries(TestWebKit shlwapi)
+
+add_test(TestWebKit ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/TestWebKit)
+set_tests_properties(TestWebKit PROPERTIES TIMEOUT 60)
+
+set(test_main_SOURCES
+    ${TOOLS_DIR}/win/DLLLauncher/DLLLauncherMain.cpp
+)
</ins></span></pre></div>
<a id="trunkToolsTestWebKitAPIwinmaincpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/TestWebKitAPI/win/main.cpp (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/TestWebKitAPI/win/main.cpp        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Tools/TestWebKitAPI/win/main.cpp        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -63,3 +63,8 @@
</span><span class="cx"> 
</span><span class="cx">     return passed ? EXIT_SUCCESS : EXIT_FAILURE;
</span><span class="cx"> }
</span><ins>+
+extern &quot;C&quot; __declspec(dllexport) int WINAPI dllLauncherEntryPoint(int argc, char** argv)
+{
+    return main(argc, argv);
+}
</ins></span></pre></div>
<a id="trunkToolsWinLauncherCMakeListstxt"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/CMakeLists.txt (188238 => 188239)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/CMakeLists.txt        2015-08-10 23:56:51 UTC (rev 188238)
+++ trunk/Tools/WinLauncher/CMakeLists.txt        2015-08-11 00:09:07 UTC (rev 188239)
</span><span class="lines">@@ -40,6 +40,7 @@
</span><span class="cx">         CFLite
</span><span class="cx">     )
</span><span class="cx"> else ()
</span><ins>+    set(CMAKE_SHARED_LINKER_FLAGS &quot;${CMAKE_SHARED_LINKER_FLAGS} /NODEFAULTLIB:MSVCRT&quot;)
</ins><span class="cx">     list(APPEND WinLauncher_LIBRARIES
</span><span class="cx">         CoreFoundation
</span><span class="cx">     )
</span></span></pre>
</div>
</div>

</body>
</html>