Thanks. I commited:<br><br>Name: CMakeVMMaker-MarianoMartinezPeck.90<br>Author: MarianoMartinezPeck<br>Time: 19 April 2011, 1:22:12 pm<br>UUID: 196e7bb1-3afa-4a3c-a517-f2e327379999<br>Ancestors: CMakeVMMaker-MarianoMartinezPeck.89<br>
<br><br>Just added some comments to explain why we used 'Cross' for VMMaker, and why all plugins were put as external<br><br><div class="gmail_quote">On Sun, Apr 17, 2011 at 12:48 AM, Igor Stasenko <span dir="ltr"><<a href="mailto:siguctua@gmail.com">siguctua@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="im"><br>
On 17 April 2011 00:42, Mariano Martinez Peck <<a href="mailto:marianopeck@gmail.com">marianopeck@gmail.com</a>> wrote:<br>
><br>
><br>
><br>
> On Sun, Apr 17, 2011 at 12:34 AM, Igor Stasenko <<a href="mailto:siguctua@gmail.com">siguctua@gmail.com</a>> wrote:<br>
>><br>
>> On 17 April 2011 00:16, Mariano Martinez Peck <<a href="mailto:marianopeck@gmail.com">marianopeck@gmail.com</a>> wrote:<br>
>> ><br>
>> > Hi Igor. I was debugging a little the CMake generation and there are 2 things I don't understand:<br>
>> ><br>
>> > 1) Why you always use a "Cross" VMMaker instead of the specific OS ? I mean, in #prepareVMMaker you do:<br>
>> > maker := VMMaker forPlatform: 'Cross'.<br>
>> > Shouldn't you put the correct OS ? what are the differences doing so ? was the functionality of those special classes like Win32VMMaker, UnixVMMaker, etc.. moved the CMakeVMMaker confs ?<br>
>> ><br>
>><br>
>> Thanks to Eliot, generated sources are not differ from one to another<br>
>> platform, therefore Cross is ok. :)<br>
>><br>
><br>
> Ok, I will add such comment to the code.<br>
><br>
>><br>
>> > 2) Why you see all plugins as external to VMMaker ? In #prepareVMMaker you do:<br>
>> ><br>
>> > allPlugins := self internalPlugins , self externalPlugins.<br>
>> ><br>
>> > maker externalModules addAll: allPlugins.<br>
>> ><br>
>><br>
>> This is to specify which plugins sources to generate.<br>
>> The sources output are not different whether plugin will be external<br>
>> or not, therefore i just adding them to single list.<br>
>><br>
><br>
> But since when it is not different? Again, thanks to Eliot ?<br>
> I mean, there should be a reason why there were 2 instVar, one for internal and anotehr one for external. In fact, when I used VMMakerTool you need to define for each plugin how to compile it.<br>
> This is why I don't understand why you now say it is the same.<br>
> I do understand that the sources generation is the same, wether they are internal or external. BUT, why VMMaker needed to know whether they were internal or external then ? and why we don't need it anymore ?<br>
><br>
<br>
</div>AFAIK, they are used to generate <a href="http://plugins.int" target="_blank">plugins.int</a> and plugins.ext files,<br>
but CMake controls this directly (by generating corresponding<br>
configuration(s)) so these files are nothing else but just leftovers<br>
and not used anymore.<br>
<br>
Also, since with CMakeVMMaker we can control various linking/compiling<br>
options per plugin basis, there is also no longer need to manually<br>
write MakeFile(s) per plugin.<br>
<div class="im"><br>
<br>
>> ><br>
>> > I think this deserves a comment because it sounds pretty weird from a newbie sight.<br>
>> ><br>
>><br>
>> I think a CodeGenerator deserves a bit of cleanup to reflect the<br>
>> changes described above.<br>
>> And since Cog VMs are not using GUI for generating sources, things<br>
>> like VMMakerTool can rest in peace.<br>
>> Personally i found it much simpler to control internal/external<br>
>> plugins using CMakeVMMaker classes,<br>
>> comparing to old ways, when you had to manually add all plugins using GUI tool.<br>
>> Especially, when some plugins are fit only for specific target (like<br>
>> ThreadedFFIPlugin),<br>
>> or only for specific OS, like MacMenuBarPlugin.<br>
><br>
> Yes, exactly. +100. If you read my blog post, that's exactly my opinion.<br>
><br>
>><br>
>> > Thanks in advance,<br>
>> ><br>
>> > --<br>
>> > Mariano<br>
>> > <a href="http://marianopeck.wordpress.com" target="_blank">http://marianopeck.wordpress.com</a><br>
>> ><br>
>><br>
>> --<br>
>> Best regards,<br>
>> Igor Stasenko AKA sig.<br>
><br>
><br>
><br>
> --<br>
> Mariano<br>
> <a href="http://marianopeck.wordpress.com" target="_blank">http://marianopeck.wordpress.com</a><br>
><br>
><br>
><br>
<br>
<br>
<br>
</div>--<br>
<div><div></div><div class="h5">Best regards,<br>
Igor Stasenko AKA sig.<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Mariano<br><a href="http://marianopeck.wordpress.com" target="_blank">http://marianopeck.wordpress.com</a><br><br>