[Vm-dev] CMakeVMMaker what is repository for latest? and how to????????sync with source.squeak.org?

David T. Lewis lewis at mail.msen.com
Fri May 16 02:55:42 UTC 2014


On Thu, May 15, 2014 at 04:40:11PM -0700, gettimothy wrote:
>  
> Estaban, 
> 
> Thank you.
> 
> Eliot, David, Tim....
> 
> How should this be handled in regard to source.squeak.org?
> 

I do not have a clue.

What I would say is:

1) The upstream trunk sources for the platforms sources are in Subversion.

2) The upstream trunk sources for the Smalltalk VM (aka "VMMaker") are at source.squeak.org.

3) The entire raison d'etre for CMake is to be platform independent. The notion
of generating different versions of CMake for various operating systems, and then
further compounding it with different versions for the various flavors of Squeak
and Pharo (and Cuis and ...) images seems to be missing the point.

There are good and valid reasons to do things differently in the various downstream
projects, and where possible we all hope that those various projects will contribute
changes back to the trunk. Be that as it may, the upstream sources are in Subversion
for the platform sources, and at source.squeak.org for the Smalltalk VM sources.

There is a reason why Ian Piumarta (who created both the CMake build for Squeak,
as well as the earlier libtool build system from which the Cog build is derived)
organized the CMake scripts the way that he did. Any necessary CMake customizations
related to specific modules, such as a plugin, are defined in small "config.cmake"
and "build.cmake" files that are located in the same directories as their source code
files. If you need to make some change to the build process for a specific module, you
will know where to look. Changes are versioned in the same source control system
as their respective module source files.

Extending Ian's CMake build process to support Cog may not be a trivial undertaking,
but it certainly can be done. Accomplishing this would make it significantly easier
to support Cog, Spur, and interpreter VM development in the future, and I have to
think that this is largely what Tim had in mind when he challenged us to come up
with a unified build process that would prove satisfactory to the key stakeholders
(Ian, Eliot, Tim).

Don't get me wrong, there is great stuff in CMakeVMMaker, most importantly that it
consolidates the knowledge of how to apply CMake across a range of OS platforms.
It is also really nice to be able to browse the configurations directly from
your Squeak/Pharo image. But from the point of view of maintaining the actual
build system, the design that Ian came up with, along with the policy of maintaining
CMake configurations close to their associated module source files, seems to me
to be the right way to approach the problem.

Dave

> ---- On Thu, 15 May 2014 16:31:30 -0700 Esteban Lorenzano<estebanlm at gmail.com> wrote ---- 
> 
>  pharo sources are stored in filetree format along with the other sources in github. Also, if you do not want to use it, there is a mirror here: 
> 
> http://smalltalkhub.com/#!/~Pharo/PharoVM
> 
> cheers, 
> Esteban
> 
> 
> On 16 May 2014, at 01:28, gettimothy <gettimothy at zoho.com> wrote:
> 
> Howdy folks.
> 
> I just now realized that Pharo LoadVMMaker.st script loads CMakeVMMaker-jeanbaptistearnaud.282 whereas I have been using source.squeak.org's CMakeVMMaker-EstebanLorenzano.213 that is auto-loaded in Squeak with the BuildSqueak45Image.st
> 
> Does anybody know where to find CMakeVMMaker-jeanbaptistearnaud.282? Its not on source.squeak.org.
> 
> I have tried tracking it down, but I cannot find it.
> 
> thx.
> 
> tty
> 


More information about the Vm-dev mailing list