<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta content="text/html;charset=UTF-8" http-equiv="Content-Type"></head><body ><div style='font-size:10pt;font-family:Verdana,Arial,Helvetica,sans-serif;'><div>Hi Eliot.<br></div><div><br></div><div><br></div><div><div dir="ltr"><br><blockquote style="border-top-color: rgb(204, 204, 204); border-left-color: rgb(204, 204, 204); border-right-color: rgb(204, 204, 204); border-bottom-color: rgb(204, 204, 204); border-top-width: 1px; border-left-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-top-style: solid; border-left-style: solid; border-right-style: solid; border-bottom-style: solid; padding-top: 7px; padding-right: 7px; padding-bottom: 7px; padding-left: 7px; background-color: rgb(245, 245, 245);"><div><div><div dir="ltr">Hi Tty,<div><br></div><div>&nbsp; &nbsp; just to confirm form my POV, echoing Tim's point. &nbsp;It is a hard and fast requirement that one be able to check out&nbsp;<a href="http://www.squeakvm.org/svn/squeak/branches/Cog" target="_blank">http://www.squeakvm.org/svn/squeak/branches/Cog</a><span style="font-size:13px;color:rgb(0,0,0);font-family:verdana,arial,helvetica,sans-serif;background-color:rgb(245,245,245)">&nbsp; and build *without* invoking VMMaker. &nbsp;VMMaker shoudl be invoked to create new versions of the generated source in&nbsp;</span><a href="http://www.squeakvm.org/svn/squeak/branches/Cog" target="_blank">http://www.squeakvm.org/svn/squeak/branches/Cog</a><span style="font-size:13px;color:rgb(0,0,0);font-family:verdana,arial,helvetica,sans-serif;background-color:rgb(245,245,245)">&nbsp;(e.g. src/vm/gcc3x-cointerp.c et al) but must *not* be a prerequisite for a build.</span></div></div></div>&nbsp;</div></blockquote><br></div></div><div><br></div><div>Thanks for clarifying. </div><div><br></div><div>There is a bit of a chicken and egg problem here. Namely, how are the CMakeLists.text and associated files going to get there in the first place?</div><div><br></div><div>What about the existing GNU auto-tools infrastructure? </div><div><br></div><div>I don't think it makes sense to have both GNU and CMAKE on the same source tree; am I wrong?</div><div><br></div><div>Assuming I am not, here is the approach.</div><div><br></div><div>1 get the existing source tree.</div><div>2. strip out the existing GNU stuff.</div><div>3. generate the new CMake stuff in place of the GNU stuff. (the tool currently invokes VMMaker as well--I can put something together that does not)</div><div>4. cmake. make.</div><div><br></div><div>The Pharo stuff that I am emulating does invoke VMMaker, however, I am sure I can &nbsp;bypass that and just put in the CMake stuff without re-generating code.</div><div><br></div><div>However, Tim mentioned that sometimes launching and image to generate the CMake files is not possible. How then, to they get into the SVN tree so that the process becomes</div><div><br></div><div>1. svn co http://source.squeak.org/cmake_foo</div><div>2. cd Cog</div><div>3. cmake. make</div><div><br></div><div>?</div><div><br></div><div>That's what I am confused over.&nbsp;</div><div><br></div><div><br></div><div><br></div><div>cordially,</div><div><br></div><div>tty</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div id="1"><br>---- On Fri, 16 May 2014 16:17:39 -0700 <b>Eliot Miranda&lt;eliot.miranda@gmail.com&gt;</b> wrote ---- <br></div><br><blockquote style="border-left: 1px solid #0000FF; padding-left: 6px; margin:0 0 0 5px"> <div dir="ltr">Hi Tty,<div><br></div><div>&nbsp; &nbsp; just to confirm form my POV, echoing Tim's point. &nbsp;It is a hard and fast requirement that one be able to check out&nbsp;<a href="http://www.squeakvm.org/svn/squeak/branches/Cog" target="_blank">http://www.squeakvm.org/svn/squeak/branches/Cog</a><span style="font-size:13px;color:rgb(0,0,0);font-family:verdana,arial,helvetica,sans-serif;background-color:rgb(245,245,245)">&nbsp; and build *without* invoking VMMaker. &nbsp;VMMaker shoudl be invoked to create new versions of the generated source in&nbsp;</span><a href="http://www.squeakvm.org/svn/squeak/branches/Cog" target="_blank">http://www.squeakvm.org/svn/squeak/branches/Cog</a><span style="font-size:13px;color:rgb(0,0,0);font-family:verdana,arial,helvetica,sans-serif;background-color:rgb(245,245,245)">&nbsp;(e.g. src/vm/gcc3x-cointerp.c et al) but must *not* be a prerequisite for a build.</span></div> </div><div><br><br><div>On Fri, May 16, 2014 at 10:33 AM, gettimothy <span dir="ltr">&lt;<a href="mailto:gettimothy@zoho.com" target="_blank" mailid="gettimothy%40zoho.com" subj="">gettimothy@zoho.com</a>&gt;</span> wrote:<br> <blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">&nbsp;<br><div><div style="font-size:10pt;font-family:verdana,arial,helvetica,sans-serif">Hi Tim.<br><blockquote style="border-top-color:rgb(204,204,204);border-left-color:rgb(204,204,204);border-right-color:rgb(204,204,204);border-bottom-color:rgb(204,204,204);border-top-width:1px;border-left-width:1px;border-right-width:1px;border-bottom-width:1px;border-top-style:solid;border-left-style:solid;border-right-style:solid;border-bottom-style:solid;padding-top:7px;padding-right:7px;padding-bottom:7px;padding-left:7px;background-color:rgb(245,245,245)"> <div>&nbsp;&gt; Here is what I have in place so far: <br>&gt;  <br>&gt; 1. Get the latest Cog tree from  svn co <a href="http://www.squeakvm.org/svn/squeak/branches/Cog" target="_blank">http://www.squeakvm.org/svn/squeak/branches/Cog</a> <br> &gt; 2. cd Cog/image/ and run script to build an image which:  <br>&gt;  2.a builds image with tools per current process. <br>&gt;  2.b (additionally loads FT2Plus Toxic bypass) <br>&gt;  2.c additionally load the CMakeVMMaker package from <a href="http://source.squeak.org" target="_blank">source.squeak.org</a> (now loading from SmalltalkHub) <br> &gt;  2.d Recursively copies the parent Cog source code to image_directory/oscogvm/* <br>&gt;  3.e Cleans the source tree to just source by finding and deleting all GNU-Build artefacts (Makefiles, autotool stuff) <br>&gt; 3. User launches new image with the pristine source tree underneath it. <br> &gt; 4. Run process SqueakVMBuilder buildXYZ (same as pharo process, but squeak names) to generate the source code and  CMake stuff in the clean source tree. <br>&gt; 5. Run generated 'build.sh' script which invokes CMake and make. <br>  <br> <br>It’s those last two parts that imply something is going a bit off-track here. <br> <br>Now don’t forget I’m a fan of VMMaker, after all I invented it 14 years ago (actually so far as I can tell pretty much *exactly* ) but the convenience of being able to do an svn co, hit the OS-appropriate buttons and autoconfigure/build is considerable. Yes, I suppose one could have multiple svn branches for the (many, many) different versions of *nix but making use of the already existing CMake capability strikes me as more sensible. </div> </blockquote><br><br><div>Existing functionality is unchanged. </div><div>There is only 1 SVN branch. </div><div>VMaker is unchanged</div><div>My additions are non-intrusive.<br></div><div><br></div><div>Regarding existing CMake capability, I am leveraging what the pharo team has already done. &nbsp;It appears Ian's work is hand coded CMakeLists.txt in trunk/platforms/unix and a configure script that generates the plugin CMake files.&nbsp;</div> <div><br></div><div>Regarding your ability to just svn co and run cmake, I agree that will be nice and it can be done. However until the tool is mature we need something that will work with what we have without getting in the way. I believe this approach will accomplish that.</div> <div><br></div><div>Hopefully I will have something in place tomorrow that you can test-drive.</div><div><br></div><div>cordially,</div><div><br></div><div><br></div><div>tty.</div><div><br></div><div><br></div></div></div> <br></blockquote></div><br><br clear="all"><div><br></div>-- <br>best,<div>Eliot</div> </div> </blockquote><br></div></body></html>