Hi Herbert.
Thanks, you have prodded me into realizing that I need to
write Help on how to do a manual setup. I will do that now and
get back to you.
I have a bash shell script that will download and
completely configure an image for both VMMaker code generation
and CMakeVMMakerSqueak cmake generation. However, when I tried
to run it in cygwin on my dos partition, it did not work.
For Windows, there is additional platform work to be done.
I was going to do it after the *nix release is up and on
auto-pilot.
If you have the time and energy and would like to
contribute, I can walk you through the steps on setting up
what I call a "Platform Configuration" which is basically a
superclass that sets up "platform specific global information'
In *nix this has been done. On Mac and Windows, what is in
place is a port of what exists in pharo's CMakeVMMaker package
to Squeak and it has not been tested.
What follows is a longer explanation of what I mean.
CMakeVMaker(Squeak) stores CMake files in
"Configurations".
There are several layers to them.
CPlatformConfigForSqueak
<--1.
GLOBAL superclass for CMakeVMakerSqueak configurations.
SqueakUnixConfig SqueakMacintoshConfig
SqueakWindowsConfig <--2. Provide OS
Specific CMake output.
Linux32ARMv6Config SqueakWin32x86Config
SqueakWin32x86Config <--3. Platform specific
Configurations
SqueakBSD32x86Config
<--3.a
Platform specific Configuration
SqueakSunOS32x86Config
<--3.b
Platform specific Configuration
......
<--3...... Platform specific Configuration
Linux32x86Config
<--3.z Platform specific Configuration
Linux32x86SqueakCogV3Config
<--4 Platorm
Specific [Language]. [VM] [Memory Model] Configuration this
is what generates CMake to build Squeak Cog V3 on this
platform
The *Nix platform is just a matter of building out the
level 4 Configurations.
The Mac and Windows platforms need building out and testing
at level 3.
What that means is "CMake Drives The Process" and whatever
Windows specific template is correct CMake needs to be
encapsulated in the corresponding level 3 Configuration.
On the *Nix platforms, the CMake Template is basically Ian
Piumarta's work from the Standard Interpreter with only some
cosmetic differences.
level 4. Configurations just specify build time
stuff--where the source is, what compiler flags, linker flags,
pre-processor flags, definitions--they are basically the
equivalent of Eliot's MVM files in the
Cog/build.xyz/lang.vm.mm/buildtype/mvm tree.
On the Windows and Mac platforms, I do not know if Ian's
work is what we need or if something better can be done that
is Windows specific and utilizes the Windows based build
suite. (fwiw, I think it would be really cool to see people
stepping through VM code using Visual Studio...)
So, to summarize.
On the Windows and Mac platforms are NOT at a level 4 stage
like Linux is. If you would are interested, I can walk you
through the dev process--its quite easy--its the equivalent of
generating Seaside Components to build a web-page. You figure
out what you want the web-page to look like and then generate
the components you want to get the output you want. It is
work, however and I don't know if you want to spend time on
it.
cheers.
tty.