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










<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On January 19th, 2015, 12:10 p.m. CET, <b>Friedrich W. H. Kossebau</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  


<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
 <thead>
  <tr>
   <th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
    <a href="https://git.reviewboard.kde.org/r/122115/diff/1/?file=342473#file342473line38" style="color: black; font-weight: bold; text-decoration: underline;">krita/ui/opengl/kis_opengl_canvas2_p.h</a>
    <span style="font-weight: normal;">

     (Diff revision 1)

    </span>
   </th>
  </tr>
 </thead>



 
 

 <tbody>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
    <th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">38</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="tb">   </span><span class="k">typedef</span> <span class="kt">void</span><span class="o">*</span> <span class="n">GLsync</span><span class="p">;</span></pre></td>
  </tr>

 </tbody>

</table>

  <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;">"// RJVB" is not a perfect comment ;) Please add here a comment why this is done.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">In the RR you say:
"typedef void* GLsync: in order not to impose a required dependency on GLEW."
How exactly does that work? Because for me it breaks compilation on a system wher GLEW is not installed. Can we please fix this?</p></pre>
 </blockquote>



 <p>On January 19th, 2015, 11:04 p.m. CET, <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;">What are your symptoms on a system without GLEW?</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Problems is I cannot currently allocate the resources to do a full Krita build (I lost my build tree), so experimenting will have to wait.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">The way this worked for me before I installed MacPorts glew is that it provides a type normally defined in gltypes.h and that is expected to be available even if you don't have glew.
Or at least that was the case a couple months back when I introduced this change, but it still seems to be true (cf. line 316 in the same header file).</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">What I can propose (and what you can commit if you're in a hurry) is to do this:</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;"><div class="codehilite" style="background: #f8f8f8"><pre style="line-height: 125%"><span style="color: #BC7A00">#if defined(Q_OS_MAC) && !defined(HAVE_GLEW)</span>
    <span style="color: #408080; font-style: italic">// provide the GLsync type even if GLEW is not available</span>
    <span style="color: #008000; font-weight: bold">typedef</span> <span style="color: #B00040">void</span><span style="color: #666666">*</span> GLsync;
<span style="color: #BC7A00">#endif</span>
</pre></div>
</p></pre>
 </blockquote>





 <p>On January 20th, 2015, 7:55 p.m. CET, <b>Friedrich W. H. Kossebau</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;">Symptom is this:</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;"><div class="codehilite" style="background: #f8f8f8"><pre style="line-height: 125%">[ <span style="color: #666666">50%</span>] Building CXX object krita<span style="color: #666666">/</span>ui<span style="color: #666666">/</span>CMakeFiles<span style="color: #666666">/</span>kritaui.dir<span style="color: #666666">/</span>opengl<span style="color: #666666">/</span>kis_opengl_canvas2.cpp.o
In file included from <span style="color: #666666">/</span>home<span style="color: #666666">/</span>kossebau<span style="color: #666666">/</span>Daten<span style="color: #666666">/</span>Projekte<span style="color: #666666">/</span>Calligra<span style="color: #666666">/</span>calligra.master<span style="color: #666666">/</span>krita<span style="color: #666666">/</span>ui<span style="color: #666666">/</span>opengl<span style="color: #666666">/</span>kis_opengl_canvas2.cpp<span style="color: #666666">:59:0:</span>
<span style="color: #666666">/</span>home<span style="color: #666666">/</span>kossebau<span style="color: #666666">/</span>Daten<span style="color: #666666">/</span>Projekte<span style="color: #666666">/</span>Calligra<span style="color: #666666">/</span>calligra.master<span style="color: #666666">/</span>krita<span style="color: #666666">/</span>ui<span style="color: #666666">/</span>opengl<span style="color: #666666">/</span>kis_opengl_canvas2_p.h<span style="color: #666666">:38:16:</span> error<span style="color: #666666">:</span> conflicting declaration <span style="border: 1px solid #FF0000">‘</span><span style="color: #008000; font-weight: bold">typedef</span> <span style="color: #B00040">void</span><span style="color: #666666">*</span> GLsync<span style="border: 1px solid #FF0000">’</span>
  <span style="color: #008000; font-weight: bold">typedef</span> <span style="color: #B00040">void</span><span style="color: #666666">*</span> GLsync;
                <span style="color: #666666">^</span>
In file included from <span style="color: #666666">/</span>usr<span style="color: #666666">/</span>include<span style="color: #666666">/</span>GL<span style="color: #666666">/</span>gl.h<span style="color: #666666">:2055:0</span>,
                 from <span style="color: #666666">/</span>usr<span style="color: #666666">/</span>include<span style="color: #666666">/</span>GL<span style="color: #666666">/</span>glu.h<span style="color: #666666">:38</span>,
                 from <span style="color: #666666">/</span>home<span style="color: #666666">/</span>kossebau<span style="color: #666666">/</span>Daten<span style="color: #666666">/</span>Projekte<span style="color: #666666">/</span>Calligra<span style="color: #666666">/</span>calligra.master<span style="color: #666666">/</span>krita<span style="color: #666666">/</span>ui<span style="color: #666666">/</span>opengl<span style="color: #666666">/</span>kis_opengl.h<span style="color: #666666">:41</span>,
                 from <span style="color: #666666">/</span>home<span style="color: #666666">/</span>kossebau<span style="color: #666666">/</span>Daten<span style="color: #666666">/</span>Projekte<span style="color: #666666">/</span>Calligra<span style="color: #666666">/</span>calligra.master<span style="color: #666666">/</span>krita<span style="color: #666666">/</span>ui<span style="color: #666666">/</span>opengl<span style="color: #666666">/</span>kis_opengl_canvas2.h<span style="color: #666666">:22</span>,
                 from <span style="color: #666666">/</span>home<span style="color: #666666">/</span>kossebau<span style="color: #666666">/</span>Daten<span style="color: #666666">/</span>Projekte<span style="color: #666666">/</span>Calligra<span style="color: #666666">/</span>calligra.master<span style="color: #666666">/</span>krita<span style="color: #666666">/</span>ui<span style="color: #666666">/</span>opengl<span style="color: #666666">/</span>kis_opengl_canvas2.cpp<span style="color: #666666">:21:</span>
<span style="color: #666666">/</span>usr<span style="color: #666666">/</span>include<span style="color: #666666">/</span>GL<span style="color: #666666">/</span>glext.h<span style="color: #666666">:1369:26:</span> error<span style="color: #666666">:</span> <span style="border: 1px solid #FF0000">‘</span>GLsync<span style="border: 1px solid #FF0000">’</span> has a previous declaration as <span style="border: 1px solid #FF0000">‘</span><span style="color: #008000; font-weight: bold">typedef</span> <span style="color: #008000; font-weight: bold">struct</span> __GLsync<span style="color: #666666">*</span> GLsync<span style="border: 1px solid #FF0000">’</span>
 <span style="color: #008000; font-weight: bold">typedef</span> <span style="color: #008000; font-weight: bold">struct</span> __GLsync <span style="color: #666666">*</span>GLsync;
                          <span style="color: #666666">^</span>
krita<span style="color: #666666">/</span>ui<span style="color: #666666">/</span>CMakeFiles<span style="color: #666666">/</span>kritaui.dir<span style="color: #666666">/</span>build.make<span style="color: #666666">:3072:</span> recipe <span style="color: #008000; font-weight: bold">for</span> target <span style="border: 1px solid #FF0000">'</span>krita<span style="color: #666666">/</span>ui<span style="color: #666666">/</span>CMakeFiles<span style="color: #666666">/</span>kritaui.dir<span style="color: #666666">/</span>opengl<span style="color: #666666">/</span>kis_opengl_canvas2.cpp.o<span style="border: 1px solid #FF0000">'</span> failed
</pre></div>
</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">where <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">/usr/include/GL/glext.h</code> is from <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">Mesa-libGL-devel | GL/GLX development files of the OpenGL API</code> here on my OpenSUSE.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">No clue about OpenGL and all the different packages, so cannot yet derive any proposal/idea from that.</p></pre>
 </blockquote>







</blockquote>
<pre style="margin-left: 1em; 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;">Ah, for once the X11-based build has been bitten by an assumption based on an OS X build :)</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I wasn't aware that GLsync is also defined in a non-GLEW headerfile like glext.h ... and I cannot even affirm at the moment that that file isn't going to be included on OS X. Will have to check that when I redo my build without support for GLEW. And then see if I still run into issues with the GLsync type.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Meanwhile, do feel free to reverse this particular change, or to apply the additional check suggested above.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Really annoying C/C++ never provided a means to test for the existence of a type!</p></pre>
<br />




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


<br />
<p>On January 18th, 2015, 5:09 p.m. CET, 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 Calligra and KDE Software on Mac OS X.</div>
<div>By René J.V. Bertin.</div>


<p style="color: grey;"><i>Updated Jan. 18, 2015, 5:09 p.m.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
calligra
</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;">This patch is a companion to the build system adaptations from RR 122114(https://git.reviewboard.kde.org/r/122114/), and includes a number of adaptations to OS X peculiarities.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">In order of appearance in the patch file:
- OS X has a so-called <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">application menu</code> which has a number of standard <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">menu items</code> (actions in Qt speak): About, Preferences and Quit. Qt tries to guess which actions are to be assigned to these menu items, in a 1st come, 1st served fashion and using text-based heuristics on the action text. This works reliably enough for Quit, but not so for the About and Preferences items which both tend to have multiple matches in KDE menus. For this reason it is good practice to <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">setMenuRole</code> on the relevant actions when they are created.
- <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">typedef void* GLsync</code>: in order not to impose a required dependency on GLEW.
- KDE applications commonly use the <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">.so</code> extension for shared modules and plugins, and the build system creates them that way.</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;">On OS X 10.9.5 with kdelibs 4.14.4 and Qt 4.8.6, on a mid 2011 13" Macbook Pro (2.7Ghz dual-core i7, Intel HD3000 graphics)</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>flow/part/FlowView.cpp <span style="color: grey">(5ce755f)</span></li>

 <li>karbon/ui/KarbonView.cpp <span style="color: grey">(db71464)</span></li>

 <li>krita/ui/opengl/kis_opengl_canvas2_p.h <span style="color: grey">(16ba118)</span></li>

 <li>libs/db/drivers/sqlite/sqliteconnection.cpp <span style="color: grey">(23a6eca)</span></li>

 <li>libs/kopageapp/KoPAView.cpp <span style="color: grey">(fa0e381)</span></li>

 <li>words/part/KWView.cpp <span style="color: grey">(9f2f230)</span></li>

</ul>

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






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








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