On 06 Apr 2015, at 09:58, Andreas Wacknitz <a.wacknitz@gmx.de> wrote:
Am 06.04.15 09:51, schrieb Esteban Lorenzano:
On 06 Apr 2015, at 09:41, Andreas Wacknitz <A.Wacknitz@gmx.de> wrote:
Am 06.04.15 09:01, schrieb Esteban Lorenzano:
Hi,
there is no real rationale :(
the reason why they are there now and not in their corresponding #defaultInternalPlugins or #defaultExternalPlugins is historic, configurations growth organically (we would need a refactor there).
I fear not so many people could do that. I am scratching my head quite often while reading the code.
BTW: PharoS is being used for Stack vm's so you should either find another abbreviation for Spur or choose the full name (that's what I would prefer).
Otherwise it will get even harder in the future�
we plan to drop support for plain cog vm and replace it for spur� so Pharo and PharoS will be both spur VMs� no need to complicate things here.
Ah, OK. So probably I should wait until this happened and everythings settled down.
One more question regarding the future: I guess there will be Spur32 and Spur64 vm's, right?
If so, what are the plans regarding NativeBoost? Will there be a 64 bit version, too? (Ok, that's more than one question :))
I�m working on a replacement that takes same syntax but uses regular FFI implementation instead ASM. This will re-orientate our efforts into a common FFI strategy in all platforms and joint with Eliot work. In that direction, there is some important work to speed up (with a new bytecode set and functions to FFI, Ronie and Eliot were working on it), plus a threaded ffi implementation, plus 64bits, plus ARM. So, no need on reinvent the wheel here. NB was important and a very good idea, but sadly we cannot maintain it as-is.
ah, in case it was not clear: the replacement will be backward-compatible so no need to be scared here :)
Esteban
Regards
Andreas
at least: FT2Plugin and SqueakSSLPlugin should be in defaults (and in the future SDL2 too).
for starting your build I suggest you to exclude all the additions (plugins and external libraries).
then add them one by one.
I already have a running version from almost one year ago. This time I will try to get further (eg. NativeBoost) and want to enhance my documentation.
But it is time consuming and I would like to spend my time with more interesting things (using Pharo :))
:)
Cheers,
Andreas
cheers,
Esteban
On 06 Apr 2015, at 08:49, Andreas Wacknitz <A.Wacknitz@gmx.de> wrote:
Am 03.04.15 17:31, schrieb Esteban Lorenzano:
I have more questions but I am reluctant to disturb you further as you must be quite busy atm.
ask, I will answer when I can :)
Hi Esteban,
I am trying to understand the rationale behind PharoVMBuilder>>buildUnix32 (and similar methods like >>buildMacOSX32, >>buildFreeBSD32).
How to determine which plugins and libraries to use?
Linux makes use of
PharoUnixConfig new
"generateForDebug;"
addExternalPlugins: #( FT2Plugin SqueakSSLPlugin SDL2DisplayPlugin );
addThirdpartyLibraries: #(
'libssh2'
'libgit2'
'libsdl2');
For FreeBSD it looks like this:
PharoFreeBSDConfig new
"generateForDebug;"
addExternalPlugins: #( SqueakSSLPlugin );
addInternalPlugins: #( UnixOSProcessPlugin );
addThirdpartyLibraries: #(
'libssh2'
'libgit2' );
Mac OSX:
PharoOSXConfig new
"generateForDebug;"
addExternalPlugins: #( FT2Plugin SDL2DisplayPlugin );
addInternalPlugins: #( UnixOSProcessPlugin );
addThirdpartyLibraries: #(
'cairo'
'libgit2'
'libssh2'
'libsdl2');
Windows:
PharoWindowsConfig new
addExternalPlugins: #( FT2Plugin SqueakSSLPlugin );
addInternalPlugins: #( SDL2DisplayPlugin );
addThirdpartyLibraries: #(
'cairo'
'libssh2'
'libgit2'
'libsdl2');
I assume that FreeBSD's configuration is not up-to-date (sdl2 and cairo not yet available?).
Should I try to configure cairo, libssh2, libgit2 and libsdl2 libraries for openindiana, like it is done for Windows and MacOSX?
Furthermore, should I try to configure SqueakSSLPlugin, FT2Plugin and SDL2DisplayPlugin as external plugins and UnixOSProcessPlugin as internal plugin?
Regards
Andreas