<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Jun 10, 2014 at 5:30 PM, gettimothy <span dir="ltr"><<a href="mailto:gettimothy@zoho.com" target="_blank">gettimothy@zoho.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <br><u></u><div><div style="font-size:10pt;font-family:Verdana,Arial,Helvetica,sans-serif"><div>Hi Eliot.<br></div><div>
<br></div><div><br><blockquote style="border-left:1px solid #0000ff;padding-left:6px;margin:0 0 0 5px"> <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>Hi All,<div><br> in the below, everything looks sane except configH. This looks like an awful mistake. It appears to be capturing the output of an autoconf or CMake run, determining things like USE_X11 USE_X11_GLX USE_QUARTZ USE_QUARTZ_CGL USE_RFB HAVE_LIBX11 HAVE_LIBXEXT HAVE_LIBDL HAVE_DYLD HAVE_LIBFFI etc that should be determined at VM configure time, on the host system, immediately before compile, /not/ at source generation time. What's going on here?</div>
</div></blockquote> <br><div><br></div></div></blockquote></div><div><br></div><div>I don't know yet. That is pharo code.Let me explain my modus-operandi.</div></div></div></blockquote><div><br></div><div>Yes, and my question was aimed at the Pharo VM folks. This part of the build process, choosing the right configuration for the host OS, is key, so it's alarming to see it presented wrongly here. I'm confident you'll take the right approach. But I was anxious to raise the issue with Igor, Esteban and anyone else who can shine a light on this. Hopefully we can fix it easily.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-size:10pt;font-family:Verdana,Arial,Helvetica,sans-serif"><div><br></div><div>First pass in the CMakeVMMakerSqueak was scripts that set up the build environment.</div>
<div><br></div><div>Second pass was getting the Pharo code/builds/configurations to work on Squeak. That is done, and I have thrown that work away.(actually, it is banished to the island of misfit toys category...)</div>
<div><br></div><div><br></div><div>Third pass is Squeak-ifying the tool to match the squeak build configs of [OS][WordSize][Processor]/[Language][VM][MemoryManager]/[assert|assert.itimerheartbeat| debug....etc] (i.e. build.linux32x86/squeak.cog.spur/assert)</div>
<div>(I also spent significant time on expanding the Builder's functionality with an eye towards automating builds and easing use.)</div><div><br></div><div>Third pass involves some very significant refactoring with each [OS][WordSize][Processor] category having a base configuration with dedicated [Language][VM][MemoryManager] configurations under that which can configure themselves for [assert|assert.itimerheartbeat| debug....etc]</div>
<div><br></div><div>My first goal in Pass 3 is to recreate Pass 2 for the builds that worked. <----I AM HERE</div><div><br></div><div>After that, I am going to look at your mvm's on the GNU side and attempt to precisely match what you have. At that point, I will address what the pharo code is actually doing at the configuration step.</div>
<div><br></div><div>Then, I will be in rote-coding mode to implement that.</div><div><br></div><div>However, looking at your email, I see what you mean. Those should be set up earlier as in the first line below.</div><div>
<br></div><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><br></div><div>test -f config.h || ../../../platforms/unix/config/configure --without-npsqueak \<br> CC="gcc -m32" \<br> CXX="g++ -m32" \<br> CFLAGS="$OPT -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DCOGMTVM=0" \<br>
LIBS="-lpthread -luuid" \<br> LDFLAGS=-Wl,-z,now<br>../../../scripts/nukeversion<br>rm -rf ../../../products/$INSTALLDIR<br># prefer make install prefix=`readlink -f \`pwd\`/../../../products/$INSTALLDIR`<br>
# but older linux readlinks lack the -f flag<br>make install prefix=`(cd ../../../;pwd)`/products/$INSTALLDIR 2>&1 | tee LOG<br></div></div></blockquote> <br><div>I will be back on this in the morning. Remember, I just want to recreate Pass 2 so that I am getting CMakeLists.txt files and source code when created. Then, I will fine tune each Language][VM][MemoryManager]/[assert|assert.itimerheartbeat| debug....etc] in the Linux32 tree.</div>
<div>At that point, we should all have a good feel for this beast and it should be a decent tool.</div><div><br></div><div>cheers.</div><div><br></div><div>tty </div><div><br></div><div><br></div><div><br></div><br></div>
</div><br></blockquote></div><br><br clear="all"><div><br></div>-- <br>best,<div>Eliot</div>
</div></div>