<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="https://git.reviewboard.kde.org/r/114885/">https://git.reviewboard.kde.org/r/114885/</a>
     </td>
    </tr>
   </table>
   <br />



 <p>Ship it!</p>



 <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Nice, this also fixes some inconsistencies between compilers.

I tested in a pure qt5+cmake test (no ECM) that:
* RelWithDebInfo already sets -DQT_NO_DEBUG -O2 -g -DNDEBUG. So this was indeed unnecessary by now.
* Release sets -DQT_NO_DEBUG -O3 -DNDEBUG, which is even better (-O3 vs -O2) than what ECM was doing.
* Debug sets -g. No -O2, which isn't expected in debug mode. 
</pre>
 <br />









<p>- David Faure</p>


<br />
<p>On January 7th, 2014, 4:30 p.m. UTC, Alex Merry wrote:</p>








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

<div>Review request for Build System, KDE Frameworks, David Faure, Kevin Ottens, and Stephen Kelly.</div>
<div>By Alex Merry.</div>


<p style="color: grey;"><i>Updated Jan. 7, 2014, 4:30 p.m.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
extra-cmake-modules
</div>


<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 is a cleaned-up version of https://git.reviewboard.kde.org/r/113805/ , with documentation fixes.  The discussion there appeared to end up being largely in favour of this move.

Obviously, this can only go in once TP1 is done.



Remove custom build types

KDECompilerSettings.cmake no longer alters CMake's built-in build types
or adds its own.  The "debug" build type therefore simply sets -g with
no additional flags (rather than -O2 and, depending on the compiler,
some no-inline/no-reorder flags as previously), the "release" build
types no longer set -DQT_NO_DEBUG and the "debugfull", "profile" and
"coverage" build types no longer exist.

QT_NO_DEBUG is set by Qt's CMake scripts depending on the build type of
Qt itself.  "debugfull" mostly set -g3, allowing macro expansion when
debugging; users can set this flag using environment variables if they
wish.  "RelWithDebugInfo" should be used instead of "profile" (according
to dfaure); -fprofile-arcs and -ftest-coverage are easy enough to add to
$CXX_FLAGS if they are required (formerly set by "profile" and
"coverage").</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;">Built kcoreaddons on linux with gcc.  -DCMAKE_BUILD_TYPE=debugfull works, but does not set -g.  -DCMAKE_BUILD_TYPE=debug does set -g.</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>kde-modules/KDECompilerSettings.cmake <span style="color: grey">(72824e166d03dcc2d089814dc121f08ba998974a)</span></li>

</ul>

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







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








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