<html>
    <head>
      <base href="https://bugs.webkit.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [CMake][Windows] WebKitGUID.lib should be built with the release CRT"
   href="https://bugs.webkit.org/show_bug.cgi?id=170593">170593</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>[CMake][Windows] WebKitGUID.lib should be built with the release CRT
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>WebKit
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>WebKit Nightly Build
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Unspecified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Unspecified
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>Normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P2
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>WebKit Misc.
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>webkit-unassigned&#64;lists.webkit.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>Hironori.Fujii&#64;sony.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>achristensen&#64;apple.com, bfulgham&#64;webkit.org, pvollan&#64;apple.com
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Source/cmake/OptionsWin.cmake has a following trick to force using /MT.

<span class="quote">&gt;  foreach (flag_var
&gt;      CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE
&gt;      CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO)
&gt;      # Use the multithreaded static runtime library instead of the default DLL runtime.
&gt;      string(REGEX REPLACE &quot;/MD&quot; &quot;/MT&quot; ${flag_var} &quot;${${flag_var}}&quot;)</span >
&gt;
<span class="quote">&gt;      # No debug runtime, even in debug builds.
&gt;      if (NOT DEBUG_SUFFIX)
&gt;          string(REGEX REPLACE &quot;/MTd&quot; &quot;/MT&quot; ${flag_var} &quot;${${flag_var}}&quot;)
&gt;          string(REGEX REPLACE &quot;/D_DEBUG&quot; &quot;&quot; ${flag_var} &quot;${${flag_var}}&quot;)
&gt;      endif ()
&gt;  endforeach ()</span >

But, this trick affect only to C++, but C.
As the result, WebKitGUID.lib is build with debug CRT because it has C source files.

The below warning messages are reported by this issue.

<span class="quote">&gt; LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library</span ></pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>