<!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>[215156] 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/215156">215156</a></dd>
<dt>Author</dt> <dd>commit-queue@webkit.org</dd>
<dt>Date</dt> <dd>2017-04-08 17:50:32 -0700 (Sat, 08 Apr 2017)</dd>
</dl>

<h3>Log Message</h3>
<pre>Elftoolchain ar doesn't support response files
https://bugs.webkit.org/show_bug.cgi?id=170105

Patch by Ting-Wei Lan &lt;lantw44@gmail.com&gt; on 2017-04-08
Reviewed by Michael Catanzaro.

WebKit enables the use of response files when cmake and ninja is used.
However, the default implementation of ar command used in FreeBSD, which
is part of elftoolchain project, doesn't support reading arguments from
response files. To avoid causing undefined reference error on FreeBSD,
we disable the use of response files when elftoolchain ar is detected.

* Source/cmake/OptionsCommon.cmake:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkChangeLog">trunk/ChangeLog</a></li>
<li><a href="#trunkSourcecmakeOptionsCommoncmake">trunk/Source/cmake/OptionsCommon.cmake</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/ChangeLog (215155 => 215156)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/ChangeLog        2017-04-09 00:21:11 UTC (rev 215155)
+++ trunk/ChangeLog        2017-04-09 00:50:32 UTC (rev 215156)
</span><span class="lines">@@ -1,3 +1,18 @@
</span><ins>+2017-04-08  Ting-Wei Lan  &lt;lantw44@gmail.com&gt;
+
+        Elftoolchain ar doesn't support response files
+        https://bugs.webkit.org/show_bug.cgi?id=170105
+
+        Reviewed by Michael Catanzaro.
+
+        WebKit enables the use of response files when cmake and ninja is used.
+        However, the default implementation of ar command used in FreeBSD, which
+        is part of elftoolchain project, doesn't support reading arguments from
+        response files. To avoid causing undefined reference error on FreeBSD,
+        we disable the use of response files when elftoolchain ar is detected.
+
+        * Source/cmake/OptionsCommon.cmake:
+
</ins><span class="cx"> 2017-04-08  Michael Catanzaro  &lt;mcatanzaro@igalia.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Unreviewed, rolling out r215150.
</span></span></pre></div>
<a id="trunkSourcecmakeOptionsCommoncmake"></a>
<div class="modfile"><h4>Modified: trunk/Source/cmake/OptionsCommon.cmake (215155 => 215156)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/cmake/OptionsCommon.cmake        2017-04-09 00:21:11 UTC (rev 215155)
+++ trunk/Source/cmake/OptionsCommon.cmake        2017-04-09 00:50:32 UTC (rev 215156)
</span><span class="lines">@@ -215,8 +215,11 @@
</span><span class="cx"> if (NOT APPLE)
</span><span class="cx">    # If using Ninja with cmake &gt;= 3.6.0 and icecream, then the build is broken
</span><span class="cx">    # if enable the response files. See https://bugs.webkit.org/show_bug.cgi?id=168770
</span><del>-   if (NOT ((((${CMAKE_CXX_COMPILER} MATCHES &quot;.*ccache.*&quot;) AND ($ENV{CCACHE_PREFIX} MATCHES &quot;.*icecc.*&quot;)) OR (${CMAKE_CXX_COMPILER} MATCHES &quot;.*icecc.*&quot;)) AND (CMAKE_GENERATOR STREQUAL &quot;Ninja&quot;) AND (${CMAKE_VERSION} VERSION_GREATER 3.5)))
-       set(CMAKE_NINJA_FORCE_RESPONSE_FILE 1)
</del><ins>+   if (NOT ((((${CMAKE_CXX_COMPILER} MATCHES &quot;.*ccache.*&quot;) AND ($ENV{CCACHE_PREFIX} MATCHES &quot;.*icecc.*&quot;))
+        OR (${CMAKE_CXX_COMPILER} MATCHES &quot;.*icecc.*&quot;)
+        OR (${AR_VERSION} MATCHES &quot;^BSD ar [^ ]* - libarchive&quot;))
+       AND (CMAKE_GENERATOR STREQUAL &quot;Ninja&quot;) AND (${CMAKE_VERSION} VERSION_GREATER 3.5)))
+      set(CMAKE_NINJA_FORCE_RESPONSE_FILE 1)
</ins><span class="cx">    endif ()
</span><span class="cx"> endif ()
</span><span class="cx"> 
</span></span></pre>
</div>
</div>

</body>
</html>