<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="http://git.reviewboard.kde.org/r/105308/">http://git.reviewboard.kde.org/r/105308/</a>
     </td>
    </tr>
   </table>
   <br />





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On July 1st, 2012, 10:34 p.m., <b>Aleix Pol Gonzalez</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Hi
In general I like the idea of the patch. Improving consistency between build directories configurations is something good.

On the other hand, first if you could update your version to the current master it would be great, the patch appears malformed here. Also I'd like you to try what happens if you modify the cache outside of KDevelop and reconfigure.

Here we should figure out which arguments to use, no? Your solution would go back to the first values for the build directory, but maybe it should synchronize to the last value found?</pre>
 </blockquote>




 <p>On July 2nd, 2012, 12:15 a.m., <b>Ivan Shapovalov</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Ok - except extra arguments; there is no simple way to tell if the corresponding cache entries have been modified or even if the extra arguments were taken into account at all.</pre>
 </blockquote>





 <p>On July 2nd, 2012, 7:18 a.m., <b>Andreas Pakulat</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">We cannot figure out which of the cache-entries where modified outside or how their values got there initially. So we don't know which of the parameters that are set to be used for calling cmake influences which cmake variables. Hence it does not make sense in my opinion to require to have manually-edited entries in the cache persist across a  re-configure run. We just need to make it clear to the user that a re-configure means the same as running cmake with all the -D-Arguments he provided and that is clearly visible in the output window IIRC.</pre>
 </blockquote>








</blockquote>

<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">That's just what has been done. Three specific options (build type, install prefix and cmake executable path) are re-loaded from the cache upon project load and configure; the rest (extra arguments) aren't touched in any way.

There is another question regarding these settings, but I'll post it to the mailing list.</pre>
<br />








<p>- Ivan</p>


<br />
<p>On July 2nd, 2012, 12:13 a.m., Ivan Shapovalov wrote:</p>






<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.org/media/rb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for KDevelop and Aleix Pol Gonzalez.</div>
<div>By Ivan Shapovalov.</div>


<p style="color: grey;"><i>Updated July 2, 2012, 12:13 a.m.</i></p>






<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">This addresses the TODO at the beginning of cmakepreferences.cpp, making
CMake build system settings saved in the project configuration file
separately for each configured build directory.
This is now done by using sub-groups per each configured build directory (as suggested by Andreas).
Specifically, 5 places have been changed:
* cmakeconfig.kcfg: dropped.
* cmakeutils.{h,cpp}: functions changed to use multiple groups.
* cmakepreferences.{h,cpp}: functions changed to use primitives from cmakeutils.{h,cpp} + commented out
the save() call on build directory creation since it is somewhat annoying.
* cmakejob.cpp: cmakeArguments() had been changed to make it use
temporary variables instead of calling each fetch function twice.
* cmakemanager.cpp: on project load there is attempt to migrate the configuration file to new format.

URLs are saved to via KUrl::url().</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Used two build directories on a project, one configured to build with MinGW via -DCMAKE_TOOLCHAIN_FILE.
Ensured the settings are saved and applied correctly across build directory switch and KDevelop multiple restart.
Existing projects' configurations are picked up correctly.

All unit-tests are also passed.</pre>
  </td>
 </tr>
</table>




<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>projectbuilders/cmakebuilder/cmakejob.cpp <span style="color: grey">(af05577)</span></li>

 <li>projectmanagers/cmake/CMakeLists.txt <span style="color: grey">(dc013f4)</span></li>

 <li>projectmanagers/cmake/cmakeconfig.kcfg <span style="color: grey">(5ca623e)</span></li>

 <li>projectmanagers/cmake/cmakeconfig.kcfgc <span style="color: grey">(d580702)</span></li>

 <li>projectmanagers/cmake/cmakemanager.cpp <span style="color: grey">(ad496e7)</span></li>

 <li>projectmanagers/cmake/cmakeutils.h <span style="color: grey">(5586d4d)</span></li>

 <li>projectmanagers/cmake/cmakeutils.cpp <span style="color: grey">(3c9b736)</span></li>

 <li>projectmanagers/cmake/settings/cmakepreferences.h <span style="color: grey">(4195948)</span></li>

 <li>projectmanagers/cmake/settings/cmakepreferences.cpp <span style="color: grey">(5be668b)</span></li>

</ul>

<p><a href="http://git.reviewboard.kde.org/r/105308/diff/" style="margin-left: 3em;">View Diff</a></p>




  </td>
 </tr>
</table>








  </div>
 </body>
</html>