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





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On October 9th, 2014, 2:14 p.m. CEST, <b>Milian Wolff</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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Hello Rene.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I appreciate your work here, but this really is something that should not be done in the KDE4 based KDevelop code branches. There will be no future release of KDevelop 4 and adding new code there means you'll have to forward port these patches to frameworks manually.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">"Simple" bug fixes in KDevelop 4 for your personal use are OK, but bigger things (which seem to be required to get GDB properly integrated) should go to frameworks.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">That said, your time would also be better spent in getting LLDB integrated with KDevelop - again something that would need to be done for frameworks.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">bye</p></pre>
 </blockquote>




 <p>On October 9th, 2014, 2:33 p.m. CEST, <b>René J.V. Bertin</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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Hi Milian,</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I know the future of KDevelop 4, just as well as you know, I hope, the current state of KF5 on OS X. We're MONTHS away of being able to use KF5 there, so while 1 (ONE) person works on basic KF5 support the others on the KDE-Mac team concentrate on improving KDE4 on OS X. We do aim to do that in a forward-looking way, so anything we do ought to benefit KF5 too.
So these are not simple bugfixes for my own personal use, but for the use of anyone who wants to use KDE on OS X (as well as possibly the legions of Linux users with distros that stick to KDE SC 4 until they judge KF5 ready ... which AFAIK is still the case for the brunt of them).</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I presume that the changes I present here will carry over rather directly to git/HEAD. </p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">You're right though about lldb, and I was about to ask on #kdevelop if there were any plans to support that debugger outside of OS X (because I simply don't have the resources to do that alone). I just had a peak at Qt Creator: it uses Python bridges to talk with the 2 browsers, maybe an idea?</p></pre>
 </blockquote>





 <p>On October 9th, 2014, 2:47 p.m. CEST, <b>Milian Wolff</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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Sorry Rene, but adding support for GDB or LLDB in KDevelop is not just a bugfix. I will not accept that for our feature-frozen KDevelop 4 codebase. I'll happily review and integrate other bug fixes into KDevelop 4, but nothing that big. If you do not want to work on Frameworks, then please concentrate on the smaller things and ignore the bigger issues (such as this one).</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Regarding LLDB: reusing code from QtCreator might make sense indeed. And you are right that will will also help us on Linux and probably other platforms eventually. If you don't have the time for that, I can understand that perfectly fine. But please don't spent time on trying to get GDB on Mac running - it's (imo) a waste of time - especially on KDevelop 4.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">bye</p></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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">? There is already support for GDB in KDevelop, all I had to do to get it to work on OS X is make a few small changes to the code. Since the support was already there, I consider it a bugfix (following Albert's guidelines on that ;) ). Whether you include it is up to you, but I <em style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">would</em> appreciate constructive feedback if any can be given. Patches stand more chance of being discussed and corrected on here than on a MacPorts-specific site, even if their fate is to remain limited to that "distro".</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">As to not wanting to work on KF5: that's only because I don't have the resources to work on a parallel KF5 install without messing up my production environment.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">In any event, it seems that GDB support on OS X is about as feature-complete as it'll get as far as KDevelop goes. The future of this endeavour will depend on GDB itself.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">How much change has there been to the debugger layer in KDevelop 5? In KDevelop 4 it's almost all concentrated in a single directory, if there are not (too many) ABI changes any work done re: lldb in the one version should benefit the other version. Again, KDE-Mac is stuck with KDevelop 4 for the foreseeable future ... and it seems self-evident that having a working debugger in KDE's native IDE cannot but help development, be it on KF5 or KDE4 (or more exactly, <em style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">on</em> KF5 <em style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">under</em> KDE4 ;) )</p></pre>
<br />










<p>- René J.V.</p>


<br />
<p>On October 9th, 2014, 12:03 a.m. CEST, René J.V. Bertin wrote:</p>









<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: 1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
 <tr>
  <td>

<div>Review request for KDE Software on Mac OS X and KDevelop.</div>
<div>By René J.V. Bertin.</div>


<p style="color: grey;"><i>Updated Oct. 9, 2014, 12:03 a.m.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
kdevelop
</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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">The conditions are united under OS X / Macports to build kdevelop's debugger component: the changes to the CMake files take this into account.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Getting the debugger to function is a work still in progress for which I hope to get feedback/guidance via this RR.
I have made the required changes in stty.cpp to obtain a pty with r/w permissions - on OS X this is done in a way that shares most code with the SGI code. In order not to duplicate more code than necessary I changed the logic of <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">ptyfd</code>'s initial value slightly, allowing to distinguish between uninitialised and error return values.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">One has to install an uptodate gdb version (e.g. through MacPorts) and follow the instructions to give it the required permissions to function. Once that's done, the debugger component starts correctly, and appears to communicate with the gdb ("ggdb") slave process up to the point where the GUI is loaded and seemingly ready to go.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">That's as far as I've gotten: even the "Interrupt" menu has no effect, the traceback panel shows no information either. Using the "stop all" button leads to a gdb crash; I have yet to determine what this is due to.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Feedback/guidance on how to procede will be appreciated.</p></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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">OS X 10.6.8 with kdelibs 4.14.1 and kdesdk git/kde4-legacy . Gdb 7.7.1 from MacPorts, compiled with python 2.7 support.</p></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>debuggers/gdb/gdb.h <span style="color: grey">(6f99a60)</span></li>

 <li>debuggers/gdb/gdb.cpp <span style="color: grey">(68e1768)</span></li>

 <li>debuggers/gdb/stty.cpp <span style="color: grey">(736fff4)</span></li>

 <li>debuggers/CMakeLists.txt <span style="color: grey">(8fe222c)</span></li>

 <li>debuggers/gdb/CMakeLists.txt <span style="color: grey">(3d1125c)</span></li>

</ul>

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






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








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