[Vm-dev] OSProcess fork issue with Debian built VM
Max Leske
maxleske at gmail.com
Fri May 19 14:45:09 UTC 2017
> On 19 May 2017, at 03:36, vm-dev-request at lists.squeakfoundation.org wrote:
>
> On Fri, May 19, 2017 at 2:58 AM, Eliot Miranda <eliot.miranda at gmail.com <mailto:eliot.miranda at gmail.com>>
> wrote:
>>
>> BTW, for all people installing and building their own please note this:
>>
>> On Tue, May 16, 2017 at 5:57 AM, Max Leske <maxleske at gmail.com <mailto:maxleske at gmail.com>> wrote:
>> [snip]
>>>
>>> /usr/local/lib/phcogspurlinux/lib/pharo/5.0-/pharo
>>> Pharo VM version: 5.0-$URL$ Tue May 16 12:22:16 UTC 2017 gcc 4.9.2
> [Production Spur ITHB VM]
>>> Built from: CoInterpreter VMMaker.oscog-eem.2207 uuid:
> 8da5de9b-33d7-478b-9081-58591f7da69a May 16 2017
>>> With: StackToRegisterMappingCogit VMMaker.oscog-eem.2208 uuid:
> 4877be7d-941d-4e15-b6df-4f1b8c7072a8 May 16 2017
>>> Revision: VM: $URL$ $Date$ Date: $Rev$ Plugins: $Rev$
>>> Build host: Linux nuc 4.10.0-20-generic #22-Ubuntu SMP Thu Apr 20
> 09:22:42 UTC 2017 i686 GNU/Linux
>>> plugin path: /usr/local/lib/phcogspurlinux/lib/pharo/5.0-/ [default:
> /usr/local/lib/phcogspurlinux/lib/pharo/5.0-/]
>>
>>
>> The way to get rid of the " Revision: VM: $URL$ $Date$ Date: $Rev$
> Plugins: $Rev$" nonsense in the version report is to make sure to run
>> scripts/updateSCCSVersions
>
> Even though I know this, I usually forget for the first run on a new
> machine.
> Is there some reason this can't be run as part of make?
>
>
>> exactly once before you build. From then on the checkin script
>> scrips/gitci
>> makes sure that this is up-to-date. You'll get something more useful
> such as
>>
>> VM: 201705161708 eliot at Sisyphus:oscogvm $ Date: Tue May 16 10:08:12 2017
> -0700 $
>>
>> which allows me to identify this VM as one I build myself on my Mac Mini
> Sisyphus in directory oscogvm, which contrasts with the official binary VMs.
>>
>> Ideally the script would be run automatically after the repository was
> cloned. Do git mavens know if a post-clone hook is available to make this
> happen? If so, can someone make it so?
>
> The blocker to this is that clone does not install the hooks.
> Maybe the hooks be installed by make?
> Of course, everyone should look at the README, but unfortunate human nature
> its a bit TL;DR.
> The alternative could be a SETUP or QUICKSTART file in the root directory,
> to make it more obvious it should be run.
>
>
> btw, could someone actually explain how this works...
> git config --local include.path ../.gitconfig
tell git to respect a specific .gitconfig file
> git stash -q || true
stash all changes, i.e. don't throw them away but make the repository clean
> echo "//" >> platforms/Cross/vm/sqSCCSVersion.h
> echo "//" >> platforms/Cross/plugins/sqPluginsSCCSVersion.h
this appends a comment to both files, don't know why though, it doesn't seem to have any effect other than making those versions dirty
> git checkout HEAD -- platforms/Cross/vm/sqSCCSVersion.h
> git checkout HEAD -- platforms/Cross/plugins/sqPluginsSCCSVersion.h
replace those two files just modified with the versions from HEAD (makes sense if the repository hasn't been pulled, but I don't see why that would be the case...)
> git stash pop -q || true
again, clean the repository be without throwing away the changes (so all the modifications we made before are now gone... wtf...)
> I can't grok its magic.
+1 :)
> Hopefully that highlights why its the same script for each of
> post-checkout, post-commit & post-merge
>
>
> Also, at https://github.com/OpenSmalltalk/opensmalltalk-vm <https://github.com/OpenSmalltalk/opensmalltalk-vm>
> if you click on the green <Clone or download> button and then on "Download
> ZIP"
> I found (from memory) that running mvm seems to successfully build a VM on
> a Mac
> (but I didn't validate the version info). However on Linux the build fails
> in a way that seems similar to when
> updateSCCSVersions hasn't been run. But that script depends on git,
> whereas
> I presume it would be good to be able to build from the ZIP download
> without git - particularly
> for Linux distributions that source compile their packages.
> Indeed, I think Alistair bumped into this packing the VM for nixos.
>
> So I notice that this file...
> https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/platforms/Cross/vm/sqSCCSVersion.h <https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/platforms/Cross/vm/sqSCCSVersion.h>
> is dated 16 Dec 2016. Why isn't this file kept synchronised to identify
> the checked in build?
> So that compiling from the ZIP download would have correct version info?
>
> cheers -ben
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20170519/630e9319/attachment-0001.html>
More information about the Vm-dev
mailing list