<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-15">
<META content="MSHTML 6.00.6000.16587" name=GENERATOR></HEAD>
<BODY style="MARGIN: 4px 4px 1px; FONT: 10pt Tahoma">
<DIV>Jay:</DIV>
<DIV> </DIV>
<DIV>Reactor uses quake to invoke procedures that do the build, link, ship, edit, start browser, etc. The user can customize these quake procedures, if needed.</DIV>
<DIV> </DIV>
<DIV>The default procedures all cd to the package root. The package should contain a "src" folder and optionally, one or more target folders, e.g. "NT386". So, after cd to the package root, "cm3" is invoked to do the build/clean/ship type work with the package root as the "current dir".</DIV>
<DIV> </DIV>
<DIV>A writer is set up to capture the output of the quake calls and the output of this writer is fed back into the browser window so the user can see the progress of the compile/ship/clean/etc.</DIV>
<DIV> </DIV>
<DIV>As for "&&" vs. "|", I am not a quake guru, but the pipe symbol has worked in all versions of reactor on all platforms up to this point as a command separator in the built-in quake exec() function call.</DIV>
<DIV> </DIV>
<DIV>As for my cm3.cfg, it is the one that came from your MIN distribution that I used to get started, with one exception. There is a place early in the file where INSTALL_ROOT = "c:\\cm3" is commented out. If I run reactor with cm3.cfg this way, it gets a runtime exception "array subscript out of range" in module M3Path.m3 at line 410. So, I un-commented this line and reactor runs without the error, but alas it is having the other aforementioned problems.</DIV>
<DIV> </DIV>
<DIV>I have attached the cm3.cfg file that I use in the v5.2.6 tests as cm3.cfg.526</DIV>
<DIV>I have attached the cm3.cfg file that I use in the vd5.5.1 tests as cm3.cfg.d551</DIV>
<DIV> </DIV>
<DIV>You should note that Reactor was written by Critical Mass for v4.1 and they had a deep understanding of the system. If the underlying system changes in a way that breaks some deep understanding reliance on the v4.1 architecture, reactor will most likely misbehave.</DIV>
<DIV> </DIV>
<DIV>At this point I don't think I am at liberty to give you the source code to look at. My agreement with the Critical Mass license holders is that I had to make certain changes before releasing the code. </DIV>
<DIV> </DIV>
<DIV>As for the cm3.cfg at m3-sys\cminstall\src\config\nt386, I took a look at it. It seems to include a NT386.common file. I have not tried this variant yet. If I need to try it, let me know. And, do I have to copy NT386 to cm3\bin as cm3.cfg and then also copy the NT386.common file to cm3\bin?</DIV>
<DIV> </DIV>
<DIV>There seems to be a lot of stuff going on under the covers that I don't understand about finding locations for things. I see code in reactor where it tries to locate certain things. It seems the cm3.exe is doing similar stuff. I always thought that the cm3.cfg that was in the INSTALL_ROOT bin folder is the one that rules. Let me know if this is not the case.</DIV>
<DIV> </DIV>
<DIV>Regards,</DIV>
<DIV>Randy</DIV>
<DIV><BR>>>> Jay <jayk123@hotmail.com> 1/23/2008 7:37 AM >>><BR>Oops good point Olaf.<BR>Yes && works with cmd.<BR>If the first command succeeds, the second is run.<BR>Succeeds as in exit code is 0.<BR> <BR>I assume "pkg" contained "enough content to make it work", but if indeed it is a directory, no go.<BR>I wasn't really reading the content oops sorry.<BR> <BR>But yet Randy said it worked with 5.2.6.<BR> <BR>Randy, you reminded me of a good point though.<BR>Upgrade.py plays a new game with config files, one which I like so far, but <EM>maybe </EM>isn't so great.<BR>I don't remember if I updated upgrade.cmd to this new model.<BR>In either case, to remove variables, to remove changes, look at your cm3.cfg.<BR>Read it a bit. Is it a stub that looks for another config file to include?<BR>If so, undo that on your machine. Find the other file, it is cvsroot\m3-sys\cminstall\src\config\nt386, and copy that over \cm3\bin\cm3.cfg, and try again.<BR> <BR>In either case I'm sure this is not a big deal....<BR>Can you make the code available to me somehow?<BR>I do need to get some real work done during the week(s) but the weekend...<BR> <BR> - Jay<BR><BR></DIV>
<DIV>
<HR id=stopSpelling>
</DIV>
<DIV><BR>> Date: Wed, 23 Jan 2008 12:39:37 +0100<BR>> From: wagner@elegosoft.com<BR>> To: m3devel@elegosoft.com<BR>> Subject: Re: [M3devel] new problem on NT386<BR>> <BR>> Quoting Randy Coleburn <rcoleburn@scires.com>:<BR>> <BR>> > OK, scratch what I said in my prior message about the "cd" not <BR>> > working. I ran some more tests and I'm not sure anymore.<BR>> ><BR>> > Jay, what has changed in the way quake, cm3, and cm3.cfg interact <BR>> > since v5.2.6?<BR>> ><BR>> > What I am seeing is that when Reactor is built using the current <BR>> > cm3, the output that should be going to the web browser is instead <BR>> > going to the console log. This is strange. The same exact code <BR>> > compiled under 5.2.6 works correctly (output goes to browser).<BR>> ><BR>> > Also, there are some strange differences in the output and the <BR>> > results are different. Not only are the results different, they are <BR>> > wrong under the new system, while they are correct under 5.2.6. <BR>> > Indeed, the build operation on the new system does not even find the <BR>> > correct package.<BR>> ><BR>> > Reactor is written in Modula-3, but it does use some quake helper <BR>> > functions. Here are the quake sources that Reactor is using for the <BR>> > clean and build procedures:<BR>> ><BR>> > proc clean_package (pkg) is<BR>> > exec ("cd", pkg, "| cm3 -verbose -clean")<BR>> > end<BR>> > proc build_package (pkg, options) is<BR>> > exec ("cd", pkg, "| cm3 -verbose", options)<BR>> > end<BR>> > As you can see, I've turned on the -verbose cm3 option to make the <BR>> > differences clear.<BR>> <BR>> I don't understand these: | is the pipe symbol even for cmd.exe, isn't<BR>> it?<BR>> <BR>> Shouldn't these commands just read `cd pkg && cm3 -verbose ...'?<BR>> <BR>> && should work for /bin/sh as well as for cme.exe, IIRC.<BR>> <BR>> Olaf<BR>> -- <BR>> Olaf Wagner -- elego Software Solutions GmbH<BR>> Gustav-Meyer-Allee 25 / Gebäude 12, 13355 Berlin, Germany<BR>> phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95<BR>> http://www.elegosoft.com | Geschäftsführer: Olaf Wagner | Sitz: Berlin<BR>> Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194<BR>> <BR><BR><BR></DIV>
<DIV>
<HR>
</DIV>
<DIV>Helping your favorite cause is as easy as instant messaging. You IM, we give. <A href="http://im.live.com/Messenger/IM/Home/?source=text_hotmail_join" target=_new>Learn more.</A> </DIV></BODY></HTML>