<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><span>Great work, Steven, and in a very short time! It works for me as well and I've just pushed it.</span></div><div>About the "-mstackrealign" patches on SMOKE, I asked Richard to push them and he agreed but they are still not there. I'll try now to check on IRC what's going on.<br><span></span></div><div><br></div>  <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div dir="ltr"> <font size="2" face="Arial"> <hr size="1">  <b><span style="font-weight:bold;">From:</span></b> Steven Boswell II <ulatekh@yahoo.com><br> <b><span style="font-weight: bold;">To:</span></b> KDE bindings for other programming languages <kde-bindings@kde.org> <br> <b><span style="font-weight: bold;">Sent:</span></b>
 Saturday, May 26, 2012 7:51 PM<br> <b><span style="font-weight: bold;">Subject:</span></b> Re: [Kde-bindings] assemblygen-based Qyoto now working under MS Windows and Linux!<br> </font> </div> <br>
<div id="yiv1750107529"><div><div style="color:#000;background-color:#fff;font-family:times new roman, new york, times, serif;font-size:12pt;"><div><span>Here's one more patch for assemblygen...while building it on a different Linux machine, I encountered a problem I hadn't seen before.  I traced it to a missing dependency declaration.  The enclosed patch fixes it.</span></div><div><span><br></span></div><div><span>Steven Boswell</span></div><div><br></div>  <div style="font-size:12pt;font-family:times, serif;"> <div style="font-size:12pt;font-family:times, serif;"> <div dir="ltr"> <font size="2" face="Arial"> <hr size="1">  <b><span style="font-weight:bold;">From:</span></b> Steven Boswell II <ulatekh@yahoo.com><br> <b><span style="font-weight:bold;">To:</span></b> KDE bindings <kde-bindings@kde.org> <br> <b><span style="font-weight:bold;">Sent:</span></b> Saturday, May 26,
 2012 8:37 AM<br> <b><span style="font-weight:bold;">Subject:</span></b> [Kde-bindings] assemblygen-based Qyoto now working under MS Windows and Linux!<br> </font> </div> <br>
<div id="yiv1750107529"><div><div style="color:rgb(0, 0, 0);background-color:rgb(255, 255, 255);font-size:12pt;font-family:times, serif;"><div id="yiv1750107529"><div><div style="color:rgb(0, 0, 0);background-color:rgb(255, 255, 255);font-size:12pt;font-family:times, serif;"><div id="yiv1750107529yui_3_2_0_20_133804617346548"><span id="yiv1750107529yui_3_2_0_20_1338046173465208"></span></div><div>For those of you playing along at home, Dimitar and I had an offline discussion about building Qyoto.  The end result was, he wasn't making a Release build when he thought he was, and although smokegen and smokeqt worked when built as Release, assemblygen didn't.</div><div><br></div><div>Usually, when something works as a debug build, but not as release, the compiler warns about the issues.  I decided to add "-Wall" to my compiler command line, and found two cases where control reached the end of non-void
 functions.  The
 enclosed patch fixes both issues.</div><div><br></div><div>And now...release builds of Qyoto are working for me, under both Windows and Linux!</div><div><br></div><div>Could someone with write access to smokegen and smokeqt please apply the patches I sent to the list on May 22, at 7:08pm my time?  We finally have a version of the assemblygen-based Qyoto that builds and works under MS Windows and Linux.</div><div><br></div><div>Steven Boswell</div><div><br></div>  <div style="font-size:12pt;font-family:times, serif;" id="yiv1750107529yui_3_2_0_20_133804617346556" class="yiv1750107529yui_3_2_0_20_133804617346554"> <div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_133804617346561"> <div dir="ltr"> <font size="2" face="Arial"> <hr size="1">  <b><span style="font-weight:bold;">From:</span></b> Dimitar Dobrev <dpldobrev@yahoo.com><br> <b><span style="font-weight:bold;">To:</span></b> Steven Boswell II
 <ulatekh@yahoo.com>; KDE bindings <kde-bindings@kde.org> <br> <b><span style="font-weight:bold;">Sent:</span></b> Friday, May 25, 2012 9:48 AM<br> <b><span style="font-weight:bold;">Subject:</span></b> Re: HccQt: all libs release<br> </font> </div> <br>
<div id="yiv1750107529"><div><div style="color:rgb(0, 0, 0);background-color:rgb(255, 255, 255);font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_133804617346569"><div><span>Yes, this is exactly what I mean, I'm porting an existing project to Qt.</span></div><div><span>I really do not have the time for comments but I can give you a basic outline for Qyoto (contained in the qtcore Qyoto module) as follows:</span></div><div><span>1. <a rel="nofollow" target="_blank" href="http://SmokeInvocation.cs">SmokeInvocation.cs</a> - contains the methods that invoke the corresponding invokers in the native Qyoto which in turn call the SMOKE methods;</span></div><div><span>2. <a rel="nofollow" target="_blank" href="http://SmokeMarshallers.cs">SmokeMarshallers.cs</a> - these are the managed methods called by native code;<br></span></div><div><span>2. methodcall.cpp, virtualcall.cpp - these are
 self-explanatory;</span></div><div><span>3. handlers.cpp - these are the type marshallers;
 each type you pass to and each type you get from unmanaged code passes its appropriate marshaller; you'll see the </span>Qyoto_handlers field which indicated which
 marshaller (a function pointer) is used for a certain type; for example, marshall_basetype is used for classes;<br></div><div>4. callbacks.cpp - these set pointers pointing to the managed methods (defined in 2.,<span> SmokeMarshallers.cs</span>) to call from unmanaged code.</div><div>This is basically it, and as these are the most used methods, the bug is most likely there. Let me know if you need more assistance.<br></div><div><br></div>  <div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_133804617346589"> <div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_133804617346591"> <div dir="ltr"> <font size="2" face="Arial"> <hr size="1">  <b><span style="font-weight:bold;">From:</span></b> Steven Boswell II <ulatekh@yahoo.com><br> <b><span style="font-weight:bold;">To:</span></b> Dimitar Dobrev
 <dpldobrev@yahoo.com> <br> <b><span style="font-weight:bold;">Sent:</span></b> Friday, May 25, 2012 5:11 PM<br> <b><span style="font-weight:bold;">Subject:</span></b> Re: HccQt: all libs release<br> </font> </div> <br>
<div id="yiv1750107529"><div><div style="color:rgb(0, 0, 0);background-color:rgb(255, 255, 255);font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_133804617346599"><div><span>Porting what?  Are you talking about porting an existing project to use Qyoto and Qt?</span></div><div><br><span></span></div><div><span>I'll have to learn the source code to Qyoto to have any luck debugging it.  I don't suppose you'll have time to add source-code comments to Qyoto to reflect what you've learned about it in the last several months?</span></div><div><br><span></span></div><div><span>Also, I've never been able to get any version of the assemblygen-based Qyoto to work under Linux, not even a debug build.  It crashes in the first call to QObject.Connect().<br></span></div><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465111"><div style="font-size:12pt;
font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465113"><div id="yiv1750107529"><div><div style="color:rgb(0, 0, 0);background-color:rgb(255, 255, 255);font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465119"><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465121"><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465123"><div id="yiv1750107529"><div><div style="color:rgb(0, 0, 0);background-color:rgb(255, 255, 255);font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465129"><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465131"><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465133"><div id="yiv1750107529"><div><div style="color:rgb(0, 0, 0);background-color:rgb(255, 255,
 255);font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465139"><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465141"><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465143"><div id="yiv1750107529"><div><div style="color:rgb(0, 0, 0);background-color:rgb(255, 255, 255);font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465149"><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465151"><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465153"><div id="yiv1750107529"><div><div style="color:rgb(0, 0, 0);background-color:rgb(255, 255, 255);font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465159"><div style="font-size:12pt;font-family:times, serif;"
 class="yiv1750107529yui_3_2_0_20_1338046173465161"><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465163"><div id="yiv1750107529"><div><div style="color:rgb(0, 0, 0);background-color:rgb(255, 255, 255);font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465169"><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465171"><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465173"><div id="yiv1750107529"><div><div style="color:rgb(0, 0, 0);background-color:rgb(255, 255, 255);font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465179"><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465181"><div style="font-size:12pt;font-family:times, serif;" class="yiv1750107529yui_3_2_0_20_1338046173465183"><br> </div>
 </div> 
 </div></div></div><br><br> </div> </div>  </div></div></div><br><br> </div> </div>  </div></div></div><br><br> </div> </div>  </div></div></div><br><br> </div> </div>  </div></div></div><br><br> </div> </div>  </div></div></div><br><br> </div> </div>  </div></div></div><br><br> </div> </div>  </div></div></div><br><br> </div> </div>  </div></div></div><br><br> </div> </div>  </div></div></div></div></div></div><br>_______________________________________________<br>Kde-bindings mailing list<br><a rel="nofollow" ymailto="mailto:Kde-bindings@kde.org" target="_blank" href="mailto:Kde-bindings@kde.org">Kde-bindings@kde.org</a><br><a rel="nofollow" target="_blank" href="https://mail.kde.org/mailman/listinfo/kde-bindings">https://mail.kde.org/mailman/listinfo/kde-bindings</a><br><br><br> </div> </div>  </div></div></div><br>_______________________________________________<br>Kde-bindings mailing list<br><a ymailto="mailto:Kde-bindings@kde.org"
 href="mailto:Kde-bindings@kde.org">Kde-bindings@kde.org</a><br><a href="https://mail.kde.org/mailman/listinfo/kde-bindings" target="_blank">https://mail.kde.org/mailman/listinfo/kde-bindings</a><br><br><br> </div> </div>  </div></body></html>