<table><tr><td style="">mwolff requested changes to this revision.<br />mwolff added inline comments.<br />This revision now requires changes to proceed.
</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/D11136">View Revision</a></tr></table><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/D11136#inline-54085">View Inline</a><span style="color: #4b4d51; font-weight: bold;">custombuildsystemplugin.cpp:201</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 class="n">KConfigGroup</span> <span class="n">g</span> <span style="color: #aa2211">=</span> <span class="n">configuration</span><span class="p">(</span> <span class="n">item</span><span style="color: #aa2211">-></span><span class="n">project</span><span class="p">()</span> <span class="p">);</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">    <span style="color: #aa4000">const</span> <span class="n">QString</span> <span class="n">subgrpname</span> <span style="color: #aa2211">=</span> <span class="n">ConfigConstants</span><span style="color: #aa2211">::</span><span class="n">toolGroupPrefix</span><span class="p">()</span> <span style="color: #aa2211">+</span> <span class="n">QLatin1String</span><span class="p">(</span><span style="color: #766510">"Build"</span><span class="p">);</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">    <span class="n">KConfigGroup</span> <span class="n">grp</span> <span style="color: #aa2211">=</span> <span class="n">g</span><span class="p">.</span><span class="n">group</span><span class="p">(</span> <span class="n">subgrpname</span> <span class="p">);</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">this is wrong, you'll have to introduce another key for this, building could e.g. be "make" and not the compiler itself</p>

<p style="padding: 0; margin: 8px;">feel free to leave this not-implemented and return nothing for now, and then get some sane default in the IADM</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/D11136#inline-54084">View Inline</a><span style="color: #4b4d51; font-weight: bold;">compilerfactories.h:35</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 style="color: #004012">name</span><span class="p">()</span> <span style="color: #aa4000">const</span> <span class="n">override</span><span class="p">;</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">    <span style="color: #aa4000">bool</span> <span style="color: #004012">isSupported</span><span class="p">(</span><span style="color: #aa4000">const</span> <span class="n">KDevelop</span><span style="color: #aa2211">::</span><span class="n">Path</span> <span style="color: #aa2211">&</span> <span class="n">path</span><span class="p">)</span> <span style="color: #aa4000">const</span> <span class="n">override</span><span class="p">;</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">here and below: style: space before &</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/D11136#inline-54086">View Inline</a><span style="color: #4b4d51; font-weight: bold;">compilerprovider.cpp:155</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: #aa4000">auto</span> <span class="n">path</span> <span style="color: #aa2211">=</span> <span class="n">p</span><span style="color: #aa2211">-></span><span class="n">buildSystemManager</span><span class="p">()</span><span style="color: #aa2211">-></span><span class="n">compiler</span><span class="p">(</span><span class="n">target</span><span class="p">);</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">            <span class="n">qCDebug</span><span class="p">(</span><span class="n">DEFINESANDINCLUDES</span><span class="p">)</span> <span style="color: #aa2211"><<</span> <span style="color: #766510">"found compiler"</span> <span style="color: #aa2211"><<</span> <span class="n">path</span><span class="p">;</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">I find it odd that this is the only place where this new API is being used, no? shouldn't it also be used elswhere? like, when we don't really use runtimes at all?</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/D11136#inline-54087">View Inline</a><span style="color: #4b4d51; font-weight: bold;">compilerprovider.cpp:157</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 class="n">qCDebug</span><span class="p">(</span><span class="n">DEFINESANDINCLUDES</span><span class="p">)</span> <span style="color: #aa2211"><<</span> <span style="color: #766510">"found compiler"</span> <span style="color: #aa2211"><<</span> <span class="n">path</span><span class="p">;</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">            <span style="color: #aa4000">if</span> <span class="p">(</span><span style="color: #aa2211">!</span><span class="n">path</span><span class="p">.</span><span class="n">isEmpty</span><span class="p">())</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">                <span style="color: #aa4000">continue</span><span class="p">;</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">the ! is wrong, no? otherwise you only run the code below when the path is empty, which sounds odd</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/D11136#inline-54083">View Inline</a><span style="color: #4b4d51; font-weight: bold;">compilerprovider.cpp:168</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: #aa4000">continue</span><span class="p">;</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">            <span class="p">}</span> <span style="color: #aa4000">else</span>  <span class="p">{</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">                <span style="color: #74777d">//we need to search, sdk compiler names are weird: arm-linux-androideabi-g++</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">no need for the else + indentation, you continue above</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/D11136#inline-54081">View Inline</a><span style="color: #4b4d51; font-weight: bold;">custommakemanager.cpp:329</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 class="p">{</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">    <span style="color: #aa4000">return</span> <span class="n">KDevelop</span><span style="color: #aa2211">::</span><span class="n">Path</span><span class="p">(</span><span class="n">QFile</span><span style="color: #aa2211">::</span><span class="n">encodeName</span><span class="p">(</span><span class="n">qgetenv</span><span class="p">(</span><span style="color: #766510">"CXX"</span><span class="p">)));</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"><span class="p">}</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">this should not return anything and let the IADM figure out a sane default</p>

<p style="padding: 0; margin: 8px;">and we should probably add a TODO to expand the custom make manager to allow setting the compiler for a given target</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/D11136#inline-54079">View Inline</a><span style="color: #4b4d51; font-weight: bold;">qmakemanager.cpp:519</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 class="p">{</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">    <span style="color: #aa4000">return</span> <span class="n">KDevelop</span><span style="color: #aa2211">::</span><span class="n">Path</span><span class="p">(</span><span class="n">QFile</span><span style="color: #aa2211">::</span><span class="n">encodeName</span><span class="p">(</span><span class="n">qgetenv</span><span class="p">(</span><span style="color: #766510">"CXX"</span><span class="p">)));</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"><span class="p">}</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">this is wrong, it should query the item's cache for the QMAKE_CXX variable</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/D11136#inline-54080">View Inline</a><span style="color: #4b4d51; font-weight: bold;">qmakemanager.h:86</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 class="n">KDevelop</span><span style="color: #aa2211">::</span><span class="n">Path</span> <span class="n">compiler</span><span class="p">(</span><span class="n">KDevelop</span><span style="color: #aa2211">::</span><span class="n">ProjectTargetItem</span> <span style="color: #aa2211">*</span> <span class="n">p</span><span class="p">)</span> <span style="color: #aa4000">const</span> <span class="n">override</span><span class="p">;</span>
</div><div style="padding: 0 8px; margin: 0 4px; ">    <span style="color: #74777d">//END IBuildSystemManager</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">style: space before *</p></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/D11136">https://phabricator.kde.org/D11136</a></div></div><br /><div><strong>To: </strong>apol, KDevelop, mwolff<br /><strong>Cc: </strong>mwolff, kdevelop-devel<br /></div>