<div dir="ltr">Hi All,<div><br></div><div>    at today's board meeting we discussed the issue of packaging 32-bit and 64-bit linux VMs in the same directory hierarchy.  </div><div><br></div><div>Right now a hierarchy looks like</div><div><br></div><div><div>Sisyphus.image$ ls -R ../products/sqcogspurlinux</div><div>bin<span class="gmail-Apple-tab-span" style="white-space:pre">      </span>lib<span class="gmail-Apple-tab-span" style="white-space:pre">   </span>squeak</div><div><br></div><div>../products/sqcogspurlinux/bin:</div><div>squeak</div><div><br></div><div>../products/sqcogspurlinux/lib:</div><div>squeak</div><div><br></div><div>../products/sqcogspurlinux/lib/squeak:</div><div>5.0-201705031421</div><div><br></div><div>../products/sqcogspurlinux/lib/squeak/5.0-201705031421:</div><div>B3DAcceleratorPlugin<span class="gmail-Apple-tab-span" style="white-space:pre"> </span>UnicodePlugin<span class="gmail-Apple-tab-span" style="white-space:pre">         </span>vm-display-null</div><div>ImmX11Plugin<span class="gmail-Apple-tab-span" style="white-space:pre">            </span>UnixOSProcessPlugin<span class="gmail-Apple-tab-span" style="white-space:pre">   </span>vm-sound-ALSA</div><div>LocalePlugin<span class="gmail-Apple-tab-span" style="white-space:pre">              </span>XDisplayControlPlugin<span class="gmail-Apple-tab-span" style="white-space:pre"> </span>vm-sound-OSS</div><div>SqueakFFIPrims<span class="gmail-Apple-tab-span" style="white-space:pre">             </span>squeak<span class="gmail-Apple-tab-span" style="white-space:pre">                        </span>vm-sound-null</div><div>SqueakSSL<span class="gmail-Apple-tab-span" style="white-space:pre">         </span>vm-display-X11<span class="gmail-Apple-tab-span" style="white-space:pre">                </span>vm-sound-pulse</div><div>UUIDPlugin<span class="gmail-Apple-tab-span" style="white-space:pre">               </span>vm-display-fbdev</div><div><br></div><div>What we need is either the 32-bit VMs to use lib32 or the 64-bit VMs to use lib64, and then change the two squeak scripts to parse the command line to locate the image and then check the image format to launch the right VM.</div><div><br></div><div>I'd do it but I have other things on my plate right now. If anyone feels like volunteering I'm attaching some scripts.  sviver uses hexdump to print the image version number, and so something like</div><div><br></div><div>IMVER=`hexdump -n 4 -e '"%u\n"' "$IMAGE"`</div><div><br></div><div>can be used to set IMVER to 68021 for the 64-bit Spur image, 6251 for the 32-bit Spur image, etc.</div><div><br></div><div>spurcfvm launches the relevant VM depending on its name (spurcfvm is hard linked to spurcdvm spurcavm spur64cfvm et al to select a different VM).  It parses the command line to locate the image.</div><div><br></div><div>And I'm including svihdr that prints info from the image header on both 64-bit and 32-bit Spur images in case anyone finds it useful.</div><div><br></div><div><div class="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div>
</div></div></div>