<table><tr><td style="">kossebau added a comment.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D14731">View Revision</a></tr></table><br /><div><div><p>Yay for more unit test fixes :)</p>
<p>Though... why does this change fix the unit test exactly? Without knowing more details, I am surprised that one cannot use the normal "make". "gmake" does not occur elsewhere as string, so why is this needed here, and why not elsewhere as well (not sure if there are other direct calls of the "make" tool).</p>
<p>Does the call rely on some GNU make features? If so, that should be added at least as comment in the code, so it is clear why plain "make" does not work.<br />
Also, is "gmake" part of the normal FreeBSD system? Or would we need to check first this exists in the runtime?</p></div></div><br /><div><strong>INLINE COMMENTS</strong><div><div style="margin: 6px 0 12px 0;"><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D14731#inline-77878">View Inline</a><span style="color: #4b4d51; font-weight: bold;">makefileresolver.cpp:98</span></div>
<div style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; white-space: pre-wrap; clear: both; padding: 4px 0; margin: 0;"><div style="padding: 0 8px; margin: 0 4px; "> <span class="n">QString</span> <span class="n">relativeFile</span> <span style="color: #aa2211">=</span> <span class="n">Path</span><span class="p">(</span><span class="n">workingDirectory</span><span class="p">).</span><span class="n">relativePath</span><span class="p">(</span><span class="n">Path</span><span class="p">(</span><span class="n">absoluteFile</span><span class="p">));</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(251, 175, 175, .7);"> <span class="bright"></span><span style="color: #aa4000"><span class="bright">return</span></span><span class="bright"> </span><span style="color: #766510"><span class="bright">"make -k --no-print-directory -W </span></span><span class="bright"></span><span style="color: #bb6622"><span class="bright">\'</span></span><span class="bright"></span><span style="color: #766510"><span class="bright">"</span></span><span class="bright"> </span><span style="color: #aa2211"><span class="bright">+</span></span><span class="bright"> </span><span class="n"><span class="bright">absoluteFile</span></span><span class="bright"> </span><span style="color: #aa2211"><span class="bright">+</span></span><span class="bright"> </span><span style="color: #766510"><span class="bright">"</span></span><span class="bright"></span><span style="color: #bb6622"><span class="bright">\'</span></span><span class="bright"></span><span style="color: #766510"><span class="bright"> -W </span></span><span class="bright"></span><span style="color: #bb6622"><span class="bright">\'</span></span><span class="bright"></span><span style="color: #766510"><span class="bright">"</span></span><span class="bright"> </span><span style="color: #aa2211"><span class="bright">+</span></span><span class="bright"> </span><span class="n"><span class="bright">relativeFile</span></span><span class="bright"> </span><span style="color: #aa2211"><span class="bright">+</span></span><span class="bright"> </span><span style="color: #766510"><span class="bright">"</span></span><span class="bright"></span><span style="color: #bb6622"><span class="bright">\'</span></span><span class="bright"></span><span style="color: #766510"><span class="bright"> -n "</span></span><span class="bright"> </span><span style="color: #aa2211"><span class="bright">+</span></span><span class="bright"> </span><span class="n"><span class="bright">makeParameters</span></span><span class="p">;</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"> <span class="bright"></span><span class="n"><span class="bright">QString</span></span><span class="bright"> </span><span class="n"><span class="bright">make</span></span><span class="bright"> </span><span style="color: #aa2211"><span class="bright">=</span></span><span class="bright"> </span><span class="n"><span class="bright">QLatin1String</span></span><span class="bright"></span><span class="p"><span class="bright">(</span></span><span class="bright"></span><span style="color: #766510"><span class="bright">"make"</span></span><span class="bright"></span><span class="p"><span class="bright">)</span>;</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"><span style="color: #304a96">#ifdef Q_OS_FREEBSD</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">Type of <tt style="background: #ebebeb; font-size: 13px;">make</tt> could be QLatin1String as well, given below in the concatenation QStringBuilder happily deals with QLatin1Strings, saves us one conversion/malloc at runtime.</p></div></div><br /><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D14731#inline-77879">View Inline</a><span style="color: #4b4d51; font-weight: bold;">makefileresolver.cpp:100</span></div>
<div style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; white-space: pre-wrap; clear: both; padding: 4px 0; margin: 0;"><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"><span style="color: #304a96">#ifdef Q_OS_FREEBSD</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"> <span class="n">make</span> <span style="color: #aa2211">=</span> <span class="n">QLatin1String</span><span class="p">(</span><span style="color: #766510">"gmake"</span><span class="p">);</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"><span style="color: #304a96">#endif</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">The reassignment looks strange, IMHO would be better to do</p>
<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">#ifdef Q_OS_FREEBSD
// on FreeBSD gmake is needed because foobar
const QLatin1String makeExe("gmake");
#else
const QLatin1String makeExec("make");
#endif</pre></div></div></div></div></div></div><br /><div><strong>REPOSITORY</strong><div><div>R32 KDevelop</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D14731">https://phabricator.kde.org/D14731</a></div></div><br /><div><strong>To: </strong>arrowd, KDevelop<br /><strong>Cc: </strong>kossebau, kdevelop-devel, antismap, iodelay, vbspam, geetamc, Pilzschaf, akshaydeo, surgenight, arrowd<br /></div>