Notes for Solaris VM source generation and building 2014.04.13 Preface In my opinion the configuration classes need massive refactoring. I have created a new package 'CMakeVMMaker-Solaris' with CogSolarisConfig (inherits from CogUnixConfig) and subclasses CogMTSolarisConfig and StackSolarisConfig. But it's hard to insert these into the chain for generation (see PharoVMBuilder>>buildUnix32). I have also created PharoVMBuilder >>buildSolaris32 and PharoVMBuilder class>>buildSolaris32 but atm that is just a copy of >>buildUnix32. As a quick hack for Solaris source code generation I changed the existing Unix configuration classes that are in fact not for source code generation of Unix sources but Linux sources. 1. Solaris needs two more external libraries (nsl and socket). So I added the necessary things in CogSolarisConfig>>setExtraTargetProperties and copied this to CogFamilyUnixConfig>>setExtraTargetProperties I also added 'lsocket' to CogFamilyUnixConfig>>linksFlags But I am not sure whether this is needed. Alas both changes weren't successful such that appropriate entries list(APPEND LINKLIBS nsl) list(APPEND LINKLIBS socket) have been generated into CMakeLists.txt. So I did that manually after generation. 2. Solaris does not have ALSA sound but Sun sound; So CogSolarisConfig>>addVMDrivers: had to be adopted (also CogFamilyUnixConfig) such that vm-sound-ALSA had been replaced by vm-sound-Sun and sqUnixSoundALSA by sqUnixSoundSun. 3. PharoVMBuilder>>buildUnix32 has a new call to addThirdpartyLibraries: with #('libssh2' 'libgit2'). This creates a problem at build time so I have removed this temporarily. 4. I had to add a 3rd parameter to the call of ctime_r() in platforms/unix/vm/sqUnixMain.c (lines 918 and 945): sizeof(ctimebuf). Of course this needs an appropriate #ifdef later. (Note: I managed to compile this file unchanged with my first try in March; I just don't know anymore what I did then to make it work...)