[Vm-dev] VM Maker: CMakeVMMakerSqueak-tty.95.mcz

commits at source.squeak.org commits at source.squeak.org
Sun Nov 30 19:48:43 UTC 2014


Timothy M uploaded a new version of CMakeVMMakerSqueak to project VM Maker:
http://source.squeak.org/VMMaker/CMakeVMMakerSqueak-tty.95.mcz

==================== Summary ====================

Name: CMakeVMMakerSqueak-tty.95
Author: tty
Time: 30 November 2014, 2:48:56.869 pm
UUID: 6d4fe3dc-fab6-4d9f-abaf-9db022684145
Ancestors: CMakeVMMakerSqueak-tty.94

Modified tests that where (mostly all) broken due to changes between CMakeVMMakerSqueak-tty.88 and CMakeVMMakerSqueak-tty.89.

All tests are green.

=============== Diff against CMakeVMMakerSqueak-tty.94 ===============

Item was changed:
  ----- Method: CMakeVMGeneratorForSqueak>>generateByTemplate (in category 'code generation') -----
  generateByTemplate
  	"attempt to move way from string based writing to  template based. Think Seaside renderOn composition"
  	| extPlugins intPlugins |
  	self flag: 'tty'. "refactor so that the cascade reflects CMake terminilogy"
  	output := String new writeStream.
  	config templates: OrderedCollection new. 
- 	self break.
  	config 
  		setGlobalOptions: self;    
  		cmakePrefixPath;
  		cmakeIncludePath;
  		cmakeLibraryPath;
  		cmakeIncludeModules;          
  		cmakeCFlags;          
  		cmakeAddDefinitions;
  		cmakeWriteDirectoriesDotCmake:  self;
  		cmakeIncludeDirectories:  self;   "<---"
  		preferredIncludes;                      "<---why 3  of em?"
  		standardIncludes;                       "<---"
  		setGlobalOptionsAfterDetermineSystem: self;    
  		extraVMSettings: self;                "<--catch-all method. os/platform specific"
  		setCoreSources: self;
  		setPlatformSources: self;
  		setCrossSources: self;
  		setExtraSources;
  		cmakeSetSourceFilesProperties;
  		cmakeListAppend:'LINKLIBS' elements: (config externalLibs);
  		cmakeAddExecutableNameOptionSource: self;
  	      setExecutableOutputPath;
  		addVMPlugins: self.
  	config templates do: [:each | self puts: each content].
  	extPlugins := self generatePluginConfigs: config internalPlugins internal: true.
  	 intPlugins := self generatePluginConfigs: config externalPlugins internal: false.
  	self processThirdpartyLibraries.
  	self processPlugins:  intPlugins, extPlugins.
  	self cmd: 'target_link_libraries'
  		params: self moduleName , ' ${LINKLIBS}'.
  	config postBuildActions: self..
  	self saveFile.
  	self generateBuildScript!

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testAvailableBuildTypes (in category 'as yet unclassified') -----
  testAvailableBuildTypes
  	"each concrete configuration must report what buildTypes it supports  "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
+ 				allSubclassesDo:[:configuration | | config |
+ 					config:= configuration basicNew.
+ 					(config excludeFromBuild not)                               ""
+ 						ifTrue:[  self assert:(config  availableBuildTypes isKindOf: Collection)]]]
- 				allSubclassesDo:[:configuration | | o |
- 					o:= configuration new.
- 					(o excludeFromBuild not)                               ""
- 						ifTrue:[self assert:(o  availableBuildTypes isKindOf: Collection)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testBuildDir (in category 'as yet unclassified') -----
  testBuildDir
  	"for each builder, make sure all its configurations provides availbale build directories "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							o excludeFromBuild not
  								ifTrue:[self assert:(o  buildDir isKindOf: FileDirectory)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testBuildDirName (in category 'as yet unclassified') -----
  testBuildDirName
  	"for each builder, make sure all its configurations provide a build directory name "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							(o excludeFromBuild not)                               ""
  								ifTrue:[
  									self assert:(o  buildDirName isString).
  									self assert:(o  buildDirName size > 0)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testBuildScript (in category 'as yet unclassified') -----
  testBuildScript
  	"for each builder, make sure all its configurations provide a build directory name "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							(o excludeFromBuild not)                               ""
  								ifTrue:[
  									self assert:(o  buildScript isString).
  									self assert:(o  buildScript size > 0)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testCogitClass (in category 'as yet unclassified') -----
  testCogitClass
  	"for each builder that does not exclude itself from builds, make sure it returns cogitClass "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							o excludeFromBuild not                                                     
  							 	ifTrue:[self assert:(o  cogitClass inheritsFrom: Cogit)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testCommonCompilerFlags (in category 'as yet unclassified') -----
  testCommonCompilerFlags
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
  					configuration isAbstractBaseClass   "*"
+ 					ifFalse:[	o:= configuration basicNew. 
- 					ifFalse:[	o:= configuration new. 
  							self assert:(o commonCompilerFlags isKindOf: Collection)]]].
  
  "*
  SqueakWin32x86Config browse
  the return array embeds 'self executableName' which does not exist in an AbstractBaseClass
  "
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testCrossSources (in category 'as yet unclassified') -----
  testCrossSources
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
  					configuration isAbstractBaseClass not
  						ifTrue:[
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							(o excludeFromBuild not)
  								ifTrue:[	self assert:(o  crossSources isArray)]]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testDirBuildPlatform (in category 'as yet unclassified') -----
  testDirBuildPlatform
  	"for each builder, make sure all its configurations provide a dirSource "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 									o:= configuration basicNew.
- 									o:= configuration new.
  									self assert:(o  dirBuildPlatform isString)]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testDirSource (in category 'as yet unclassified') -----
  testDirSource
  	"for each builder, make sure all its configurations provide a dirSource "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
  					configuration isAbstractBaseClass not
+ 						ifTrue:[	o:= configuration basicNew.
- 						ifTrue:[	o:= configuration new.
  								o excludeFromBuild not
  									ifTrue:[self assert:(o  dirSource isString)]]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testExcludeFromBuild (in category 'as yet unclassified') -----
  testExcludeFromBuild
  	"for each builder, make sure all its includes or excludes itself from a build "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							self assert:((o excludeFromBuild  basicType) = #Boolean)]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testExectuableName (in category 'as yet unclassified') -----
  testExectuableName
  	"for each builder, make sure all its configurations provide an executableName "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							(o excludeFromBuild not)
  								ifTrue:[self assert:(o  executableName isString)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testExecutableType (in category 'as yet unclassified') -----
  testExecutableType
  	"for each builder, make sure all its configurations provide an executableName "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							(o excludeFromBuild not)
  								ifTrue:[self assert:(o  executableType isString)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testExternalsModuleDir (in category 'as yet unclassified') -----
  testExternalsModuleDir
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							o excludeFromBuild not                                                     
  								ifTrue:[self assert:(o  externalModulesDir isString)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testExtraSources (in category 'as yet unclassified') -----
  testExtraSources
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							(o excludeFromBuild not)
  								ifTrue:[self assert:(o  extraSources isString)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testInterpreterClass (in category 'as yet unclassified') -----
  testInterpreterClass
  	"for each builder that does not exclude itself from builds, make sure it returns an InterpreterClass "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							o excludeFromBuild not                                                     
  							 	ifTrue:[
  										self assert:(o  interpreterClass inheritsFrom: InterpreterPrimitives).
  										self assert:(o  interpreterClassBuild inheritsFrom: InterpreterPrimitives).
  										self assert:(o  interpreterClassBuildAssert inheritsFrom: InterpreterPrimitives).
  										self assert:(o  interpreterClassBuildAssertITimerHeartbeat inheritsFrom: InterpreterPrimitives).
  										self assert:(o  interpreterClassBuildDebug inheritsFrom: InterpreterPrimitives).
  										self assert:(o  interpreterClassBuildDebugITImerHeartbeat inheritsFrom: InterpreterPrimitives).
  										self assert:(o  interpreterClassBuildITimerHeartbeat inheritsFrom: InterpreterPrimitives).
  										self assert:(o  interpreterClassBuildITimerMultiThreaded inheritsFrom: InterpreterPrimitives).
  										self assert:(o  interpreterClassBuildITimerMultiThreadedAssert inheritsFrom: InterpreterPrimitives).
  										self assert:(o  interpreterClassBuildITimerMultiThreadedDebug inheritsFrom: InterpreterPrimitives)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testOutputDir (in category 'as yet unclassified') -----
  testOutputDir
  	"for each builder, make sure all its configurations provide an outputDir "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							(o excludeFromBuild not)
  								ifTrue:[self assert:(o  outputDir isKindOf: FileDirectory)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testOutputDirName (in category 'as yet unclassified') -----
  testOutputDirName
  	"for each builder, make sure all its configurations provide a build directory name "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							(o excludeFromBuild not)                               ""
  								ifTrue:[
  									self assert:(o  outputDirName isString).
  									self assert:(o  outputDirName size > 0)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testPlatformSources (in category 'as yet unclassified') -----
  testPlatformSources
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) | (configuration isAbstractBaseClass)
  						ifTrue:[self assert:(o  platformSources isArray)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testSrcDir (in category 'as yet unclassified') -----
  testSrcDir
  	"for each builder, make sure all its configurations provide a srcDir "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) | (configuration isAbstractBaseClass)
  						ifTrue:[self assert:(o  srcDir isKindOf: FileDirectory)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testTopDir (in category 'as yet unclassified') -----
  testTopDir
  	"for each builder, make sure all its configurations provide a topDir "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) | (configuration isAbstractBaseClass)
  						ifTrue:[self assert:(o  topDir isKindOf: FileDirectory)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testVersion (in category 'as yet unclassified') -----
  testVersion
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) | (configuration isAbstractBaseClass)
  						ifTrue:[self assert:(o  version isString)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testdirBuildLanguageVMMM (in category 'as yet unclassified') -----
  testdirBuildLanguageVMMM
  	"for each builder that does not exclude itself from builds, make sure it returns dirBUildLanguageVMMM "
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							o excludeFromBuild not                                                     
  							 	ifTrue:[self assert:(o  dirBuildLanguageVMMM isString)]]]
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakMacintoshConfigTest>>testExecutableType (in category 'as yet unclassified') -----
  testExecutableType
  	#(#SqueakMacintoshConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) | (configuration isAbstractBaseClass)
  					ifTrue:[self assert:(o  executableType = 'MACOSX_BUNDLE')]]]
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakMacintoshConfigTest>>testPlatformName (in category 'as yet unclassified') -----
  testPlatformName
  	#(#SqueakMacintoshConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							(o excludeFromBuild not) | (configuration isAbstractBaseClass)
  								ifTrue:[self assert:(o  platformName = 'Mac OS' )]]]
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakMacintoshConfigTest>>testResourcesDir (in category 'as yet unclassified') -----
  testResourcesDir
  	self flag:'tty'. "I modified resourcesDir to 'assureExistence' from 'fullname'. if this causes problems, look into that"
  	#(#SqueakMacintoshConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) | (configuration isAbstractBaseClass)
  								ifTrue:[ self assert:(o  resourcesDir isKindOf: FileDirectory)]]]
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakMacintoshConfigTest>>testResourcesDirName (in category 'as yet unclassified') -----
  testResourcesDirName
  	#(#SqueakMacintoshConfig) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							(o excludeFromBuild not) | (configuration isAbstractBaseClass)
  								ifTrue:[self assert:(o  resourcesDirName isString)]]]
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsTest>>testCommonCompilerFlags (in category 'as yet unclassified') -----
  testCommonCompilerFlags
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								self assert:(o  commonCompilerFlags isArray)]]]].
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsTest>>testCompilerFlags (in category 'as yet unclassified') -----
  testCompilerFlags
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								self assert:(o  compilerFlags isKindOf: Collection).
  								self assert:(o  compilerFlags size > 0)]]]].
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsTest>>testCoreSources (in category 'as yet unclassified') -----
  testCoreSources
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								self assert:(o  coreSources isKindOf:Collection).
+ 								self assert:((o  coreSources size) > 0)]]]].
- 								self assert:(o  coreSources size > 0)]]]].
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsTest>>testExternalLibs (in category 'as yet unclassified') -----
  testExternalLibs
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								self assert:(o  externalLibs isKindOf: Collection).
  								]]]].
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsTest>>testExternalPlugins (in category 'as yet unclassified') -----
  testExternalPlugins
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								self assert:(o  externalPlugins isArray).
  								]]]].
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsTest>>testFrameworks (in category 'as yet unclassified') -----
  testFrameworks
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								self assert:(o  frameworks isKindOf: Collection)]]]].
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsTest>>testInternalPlugins (in category 'as yet unclassified') -----
  testInternalPlugins
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								self assert:(o  externalPlugins isArray).
  								]]]].
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsTest>>testLinkFlags (in category 'as yet unclassified') -----
  testLinkFlags
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								self assert:(o  linkFlags isString)]]]].!

Item was removed:
- ----- Method: CMakeVMMakerSqueakRedirectMethodsTest>>testPreferredIncludes (in category 'as yet unclassified') -----
- testPreferredIncludes
- 	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
- 		do:[:each | 
- 			(Smalltalk at:each) 
- 				allSubclassesDo:[:configuration | | o buildTypes|
- 					o:= configuration new.
- 					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
- 						ifTrue:[
- 							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
- 							buildTypes do:[:buildType |
- 								o configureForBuildType: buildType.
- 								self assert:(o  preferredIncludes isKindOf: Collection)]]]].
- !

Item was removed:
- ----- Method: CMakeVMMakerSqueakRedirectMethodsTest>>testStandardIncludes (in category 'as yet unclassified') -----
- testStandardIncludes
- 	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
- 		do:[:each | 
- 			(Smalltalk at:each) 
- 				allSubclassesDo:[:configuration | | o buildTypes|
- 					o:= configuration new.
- 					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
- 						ifTrue:[
- 							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
- 							buildTypes do:[:buildType |
- 								o configureForBuildType: buildType.
- 								self assert:(o  standardIncludes isKindOf: Collection)]]]].
- !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsTest>>testThirdPartyLibs (in category 'as yet unclassified') -----
  testThirdPartyLibs
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								self assert:(o  thirdpartyLibs isKindOf: Collection).
  								]]]].
  
  
  
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsWithArgTest>>testExtraPluginSettings (in category 'as yet unclassified') -----
  testExtraPluginSettings
  	self flag:'tty'. "Is the self shouldnt sufficient?"
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes vmGenerator pluginGenerator|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								vmGenerator:=CMakeVMGeneratorForSqueak new.
  								vmGenerator config: o.
  								vmGenerator output:(String new writeStream).
  								pluginGenerator := CMakePluginGeneratorForSqueak new.
  								pluginGenerator vmGenerator: vmGenerator.
  								pluginGenerator isInternal: false.
  								pluginGenerator output:(String new writeStream).
  								self shouldnt: [o extraPluginSettings: pluginGenerator] raise: Error]]]].
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsWithArgTest>>testExtraVMSettings (in category 'as yet unclassified') -----
  testExtraVMSettings
  	self flag:'tty'. "Is the self shouldnt sufficient?"
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes vmGenerator|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
+ 								o enabledebugmessages:true.
+ 								o templates: OrderedCollection new. 
  								vmGenerator:=CMakeVMGeneratorForSqueak new.
  								vmGenerator config: o.
  								vmGenerator output:(String new writeStream).
+ 								o extraVMSettings: vmGenerator.
  								self shouldnt: [o extraVMSettings: vmGenerator] raise: Error]]]].
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsWithArgTest>>testSetExtraTargetProperties (in category 'as yet unclassified') -----
  testSetExtraTargetProperties
  	self flag:'tty'. "Is the self shouldnt sufficient?"
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes vmGenerator|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								vmGenerator:=CMakeVMGeneratorForSqueak new.
  								vmGenerator config: o.
  								vmGenerator output:(String new writeStream).
  								self shouldnt: [o setExtraTargetProperties: vmGenerator] raise: Error]]]].
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsWithArgTest>>testSetGlobalOptions (in category 'as yet unclassified') -----
  testSetGlobalOptions
  	self flag:'tty'. "Is the self shouldnt sufficient?"
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes vmGenerator|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
+ 								o enabledebugmessages:true.
+ 								o templates: OrderedCollection new. 
  								vmGenerator:=CMakeVMGeneratorForSqueak new.
  								vmGenerator output:(String new writeStream).
  								self shouldnt: [o setGlobalOptions: vmGenerator] raise: Error]]]].
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsWithArgTest>>testSetGlobalOptionsAfterDetermineSystem (in category 'as yet unclassified') -----
  testSetGlobalOptionsAfterDetermineSystem
  	self flag:'tty'. "Is the self shouldnt sufficient?"
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes vmGenerator|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
+ 								o enabledebugmessages:true.
+ 								o templates: OrderedCollection new. 
  								vmGenerator:=CMakeVMGeneratorForSqueak new.
  								vmGenerator output:(String new writeStream).
  								self shouldnt: [o setGlobalOptionsAfterDetermineSystem: vmGenerator] raise: Error]]]].
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakRedirectMethodsWithArgTest>>testSetPostBuildActions (in category 'as yet unclassified') -----
  testSetPostBuildActions
  	self flag:'tty'. "Is the self shouldnt sufficient?"
  	#(#SqueakMacintoshConfig #SqueakUnixConfig #SqueakWindowsConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes vmGenerator|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								vmGenerator:=CMakeVMGeneratorForSqueak new.
  								vmGenerator config: o.
  								vmGenerator output:(String new writeStream).
  								self shouldnt: [o postBuildActions: vmGenerator] raise: Error]]]].
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakUnixConfigTest>>testAddVMDrivers (in category 'as yet unclassified') -----
  testAddVMDrivers
  	self flag:'tty'. "Is the self shouldnt sufficient?"
  	#( #SqueakUnixConfig ) 
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes vmGenerator|
+ 					o:= configuration basicNew.
+ 					o enabledebugmessages:true.
+ 					o templates: OrderedCollection new. 
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
+ 								o initialize.
  								vmGenerator:=CMakeVMGeneratorForSqueak new.
  								vmGenerator config: o.
  								vmGenerator output:(String new writeStream).
  								self shouldnt: [o addVMPlugins: vmGenerator] raise: Error]]]].
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakUnixConfigTest>>testCompilerFlags (in category 'as yet unclassified') -----
  testCompilerFlags
  	#( #SqueakUnixConfig)
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								self assert:(o  compilerFlags isKindOf: Collection)]]]].
  
  
  
  
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakUnixConfigTest>>testExecutableType (in category 'as yet unclassified') -----
  testExecutableType
  	#( SqueakUnixConfig)
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 					o:= configuration basicNew.
+ 					o configureForBuildType: #build.
- 							o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  								ifTrue:[
+ 
- 							o:= configuration new.
  							self assert:(o  executableType = '').]]]    "hello code smell"
  !

Item was changed:
  ----- Method: CMakeVMMakerSqueakUnixConfigTest>>testGenerateVmConfigCmake (in category 'as yet unclassified') -----
  testGenerateVmConfigCmake
  	"config.cmake returns a string"
  	#( #SqueakUnixConfig)
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o buildTypes|
+ 					o:= configuration basicNew.
- 					o:= configuration new.
  					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
  						ifTrue:[
  							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
  							buildTypes do:[:buildType |
  								o configureForBuildType: buildType.
  								self shouldnt: [o  generateVmConfigCmake] raise: Error]]]].
  
  
  
  
  
  
  !

Item was removed:
- ----- Method: CMakeVMMakerSqueakUnixConfigTest>>testLDFlags (in category 'as yet unclassified') -----
- testLDFlags
- 	#( #SqueakUnixConfig)
- 		do:[:each | 
- 			(Smalltalk at:each) 
- 				allSubclassesDo:[:configuration | | o buildTypes|
- 					o:= configuration new.
- 					(o excludeFromBuild not) & (configuration isAbstractBaseClass not)
- 						ifTrue:[
- 							buildTypes:=o availableBuildTypes copyWithoutAll:#(#buildNone).
- 							buildTypes do:[:buildType |
- 								o configureForBuildType: buildType.
- 								self assert:(o  lDFlags isArray)]]]].
- 
- 
- 
- 
- !

Item was changed:
  ----- Method: CMakeVMMakerSqueakUnixConfigTest>>testPlatformName (in category 'as yet unclassified') -----
  testPlatformName
  		self flag:'tty'. "todo: fix code smell in hard coded string"
  	#( SqueakUnixConfig)
  		do:[:each | 
  			(Smalltalk at:each) 
  				allSubclassesDo:[:configuration | | o |
+ 							o:= configuration basicNew.
- 							o:= configuration new.
  							(o excludeFromBuild not)  |(configuration isAbstractBaseClass not)  
  								ifTrue:[
- 							o:= configuration new.
  							(o excludeFromBuild not)
  								ifTrue:[self assert:(o  platformName = 'unix' )]]]]
  
  !

Item was changed:
  Object subclass: #CMakeVMakerConfigurationInfo
+ 	instanceVariableNames: 'availableBuildTypes dirBuildPlatform dirSource excludeFromBuild isAbstractBaseClass'
- 	instanceVariableNames: 'availableBuildTypes dirBuildPlatform dirSource excludeFromBuild'
  	classVariableNames: ''
  	poolDictionaries: ''
  	category: 'CMakeVMMakerSqueak-Builder'!
  
  !CMakeVMakerConfigurationInfo commentStamp: 'tty 6/8/2014 11:37' prior: 0!
  I am a lowly data bucket.
  
  Think of me as a database dataset. 
  
  A CMakeVMMaker-Builder can request information from its configurations passing an instance of me as a storage container. 
  
  They stick their info in me; the builder then extracts it and prints it out for the user.
  
  The Builder then reports the data that I have.
  
  !

Item was changed:
  ----- Method: CMakeVMakerConfigurationInfo>>visit: (in category 'visiting') -----
  visit: aVisitor
  	|v|
  	"I am being visited by a CMakeVMMakerSqueak configuration class. Extract its information and store it in myself"
  	self flag:'tty'. "why am I not storing the instances itself?does this visit stuff really make sense? I am thinking its 'lightweight'. hmmm"
+ 	v:= aVisitor basicNew.
- 	v:= aVisitor new.
  	availableBuildTypes := v availableBuildTypes.
  	dirBuildPlatform := v dirBuildPlatform.
  	dirSource  := v dirSource.
  	excludeFromBuild := v excludeFromBuild.
+ 	isAbstractBaseClass := (v class) isAbstractBaseClass.
  
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>addVMPluginsBuildAssert: (in category 'cmake buildType redirects') -----
  addVMPluginsBuildAssert: aMaker
+ 	"override if you need custom vm-plugins for this build type"
+ 	^self addVMPluginsBuild: aMaker!
- 	self subclassResponsibility.!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>addVMPluginsBuildAssertITimerHeartbeat: (in category 'cmake buildType redirects') -----
  addVMPluginsBuildAssertITimerHeartbeat: aMaker
+ 	"override if you need custom vm-plugins for this build type"
+ 	^self addVMPluginsBuild: aMaker!
- 	self subclassResponsibility.!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>addVMPluginsBuildDebug: (in category 'cmake buildType redirects') -----
  addVMPluginsBuildDebug: aMaker
+ 	"override if you need custom vm-plugins for this build type"
+ 	^self addVMPluginsBuild: aMaker!
- 	self subclassResponsibility.!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>addVMPluginsBuildDebugITimerHeartbeat: (in category 'cmake buildType redirects') -----
  addVMPluginsBuildDebugITimerHeartbeat: aMaker
+ 	"override if you need custom vm-plugins for this build type"
+ 	^self addVMPluginsBuild: aMaker!
- 	"SqueakUnixConfig browse"
- 	self subclassResponsibility.!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>addVMPluginsBuildITimerHeartbeat: (in category 'cmake buildType redirects') -----
  addVMPluginsBuildITimerHeartbeat: aMaker
+ 	"override if you need custom vm-plugins for this build type"
+ 	^self addVMPluginsBuild: aMaker!
- 	self subclassResponsibility.!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>addVMPluginsBuildMultiThreaded: (in category 'cmake buildType redirects') -----
  addVMPluginsBuildMultiThreaded: aMaker
+ 	"override if you need custom vm-plugins for this build type"
+ 	^self addVMPluginsBuild: aMaker!
- 	self subclassResponsibility.!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>addVMPluginsBuildMultiThreadedAssert: (in category 'cmake buildType redirects') -----
  addVMPluginsBuildMultiThreadedAssert: aMaker
+ 	"override if you need custom vm-plugins for this build type"
+ 	^self addVMPluginsBuild: aMaker!
- 	self subclassResponsibility.!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>addVMPluginsBuildMultiThreadedDebug: (in category 'cmake buildType redirects') -----
  addVMPluginsBuildMultiThreadedDebug: aMaker
+ 	"override if you need custom vm-plugins for this build type"
+ 	^self addVMPluginsBuild: aMaker!
- 	self subclassResponsibility.!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>compilerFlags (in category 'compiling') -----
  compilerFlags
+ 	self flag:'tty'. "This goes away if we agree to fork the  project. "
+ 	self deprecated:' this catchall method has been split into dedicated methods: cmakePrefixPath cmakeIncludePath 	cmakeLibraryPath	cmakeIncludeModules;    cmakeCFlags;       '. "see method ''generate'' in CMakeVMGeneratorForSqueak browse      for old call.  "
+ 	self	 cmakeCFlags.
+ 
+ 
+ "The old CMakeVMMaker loaded all kinds of stuff in compilerflags that where really pre-processor definitions etc. 
+ I have factored them out in the interest of clarity and simplicity.
+ "!
- 	"-g -O1 -m32...define these in your concrete CPlatformConfigForSqueak and feed them to cmakeCFlags"
- 	self	subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>coreSourcesBuild (in category 'cmake buildType redirects') -----
  coreSourcesBuild
+ 	^self subclassResponsibility!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>coreSourcesBuildAssert (in category 'cmake buildType redirects') -----
  coreSourcesBuildAssert
+ 	"override if your configuration's core sources change based on build type. (doubtful)"
+ 	^self coreSourcesBuild!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>coreSourcesBuildAssertITimerHeartbeat (in category 'cmake buildType redirects') -----
  coreSourcesBuildAssertITimerHeartbeat
+ 	"override if your configuration's core sources change based on build type. (doubtful)"
+ 	^self coreSourcesBuild!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>coreSourcesBuildDebug (in category 'cmake buildType redirects') -----
  coreSourcesBuildDebug
+ 	"override if your configuration's core sources change based on build type. (doubtful)"
+ 	^self coreSourcesBuild!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>coreSourcesBuildDebugITimerHeartbeat (in category 'cmake buildType redirects') -----
  coreSourcesBuildDebugITimerHeartbeat
+ 	"override if your configuration's core sources change based on build type. (doubtful)"
+ 	^self coreSourcesBuild!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>coreSourcesBuildITimerHeartbeat (in category 'cmake buildType redirects') -----
  coreSourcesBuildITimerHeartbeat
+ 	"override if your configuration's core sources change based on build type. (doubtful)"
+ 	^self coreSourcesBuild!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>coreSourcesBuildMultiThreaded (in category 'cmake buildType redirects') -----
  coreSourcesBuildMultiThreaded
+ 	^self subclassResponsibility!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>coreSourcesBuildMultiThreadedAssert (in category 'cmake buildType redirects') -----
  coreSourcesBuildMultiThreadedAssert
+ 	"override if your configuration's core sources change based on build type. (doubtful)"
+ 	^self coreSourcesBuildMultiThreaded!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>coreSourcesBuildMultiThreadedDebug (in category 'cmake buildType redirects') -----
  coreSourcesBuildMultiThreadedDebug
+ 	"override if your configuration's core sources change based on build type. (doubtful)"
+ 	^self coreSourcesBuildMultiThreaded!
- 	self subclassResponsibility!

Item was added:
+ ----- Method: CPlatformConfigForSqueak>>customizeVMPlugins (in category 'plugins') -----
+ customizeVMPlugins
+ 	self flag:'tty'. "is this needed on all platforms? consider moving down"
+ 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalLibsBuildAssert (in category 'cmake buildType redirects') -----
  externalLibsBuildAssert
+ 	 "override this if you need to customize for this build type"
+ 	^self externalLibsBuild!
- 	 ""
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalLibsBuildAssertITimerHeartbeat (in category 'cmake buildType redirects') -----
  externalLibsBuildAssertITimerHeartbeat
+ 	 "override this if you need to customize for this build type"
+ 	^self externalLibsBuild!
- 	 ""
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalLibsBuildDebug (in category 'cmake buildType redirects') -----
  externalLibsBuildDebug
+ 	 "override this if you need to customize for this build type"
+ 	^self externalLibsBuild!
- 	 ""
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalLibsBuildDebugITimerHeartbeat (in category 'cmake buildType redirects') -----
  externalLibsBuildDebugITimerHeartbeat
+ 	 "override this if you need to customize for this build type"
+ 	^self externalLibsBuild!
- 	 ""
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalLibsBuildITimerHeartbeat (in category 'cmake buildType redirects') -----
  externalLibsBuildITimerHeartbeat
+ 	 "override this if you need to customize for this build type"
+ 	^self externalLibsBuild!
- 	 ""
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalLibsBuildMultiThreaded (in category 'cmake buildType redirects') -----
  externalLibsBuildMultiThreaded
+ 	 "override this if you need to customize for this build type"
+ 	^self externalLibsBuild!
- 	 ""
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalLibsBuildMultiThreadedAssert (in category 'cmake buildType redirects') -----
  externalLibsBuildMultiThreadedAssert
+ 	 "override this if you need to customize for this build type"
+ 	^self externalLibsBuild!
- 	 ""
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalLibsBuildMultiThreadedDebug (in category 'cmake buildType redirects') -----
  externalLibsBuildMultiThreadedDebug
+ 	 "override this if you need to customize for this build type"
+ 	^self externalLibsBuild!
- 	 ""
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalPluginsBuildAssert (in category 'cmake buildType redirects') -----
  externalPluginsBuildAssert 
+ 	"convenience method to customize plugins for this build. "
+ 	^self externalPluginsBuild
+ 
- 	"convenience method to customize plugins for this build. 
- 	^self externalPlugins"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalPluginsBuildAssertITimerHeartbeat (in category 'cmake buildType redirects') -----
  externalPluginsBuildAssertITimerHeartbeat 
+ 	"convenience method to customize plugins for this build.  default is self  externalPluins"
+ 	^self externalPluginsBuild
+ 
- 	"convenience method to customize plugins for this build.  default is self  externalPluins
- 	^self externalPlugins"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalPluginsBuildDebug (in category 'cmake buildType redirects') -----
  externalPluginsBuildDebug 
+ 	"convenience method to customize plugins for this build.  default is self  externalPluins"
+ 	^self externalPluginsBuild!
- 	"convenience method to customize plugins for this build.  default is self  externalPluins
- 	^self externalPlugins"
- 	self subclassResponsibility
- !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalPluginsBuildDebugITimerHeartbeat (in category 'cmake buildType redirects') -----
  externalPluginsBuildDebugITimerHeartbeat 
+ 	"convenience method to customize plugins for this build.  default is self  externalPluins"
+ 	^self externalPluginsBuild!
- 	"convenience method to customize plugins for this build.  default is self  externalPluins
- 	^self externalPlugins"
- 	self subclassResponsibility
- !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalPluginsBuildITimerHeartbeat (in category 'cmake buildType redirects') -----
  externalPluginsBuildITimerHeartbeat 
+ 	"convenience method to customize plugins for this build.  default is self  externalPluins"
+ 	^self externalPluginsBuild!
- 	"convenience method to customize plugins for this build.  default is self  externalPluins
- 	^self externalPlugins"
- 	self subclassResponsibility
- !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalPluginsBuildMultiThreaded (in category 'cmake buildType redirects') -----
  externalPluginsBuildMultiThreaded 
+ 	"convenience method to customize plugins for this build.  default is self  externalPluins"
+ 	^self externalPluginsBuild!
- 	"convenience method to customize plugins for this build.  default is self  externalPluins
- 	^self externalPlugins"
- 	self subclassResponsibility
- !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalPluginsBuildMultiThreadedAssert (in category 'cmake buildType redirects') -----
  externalPluginsBuildMultiThreadedAssert
+ 	"convenience method to customize plugins for this build.  default is self  externalPluins"
+ 	^self externalPluginsBuild
- 	"convenience method to customize plugins for this build.  default is 
- 	^self externalPlugins"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>externalPluginsBuildMultiThreadedDebug (in category 'cmake buildType redirects') -----
  externalPluginsBuildMultiThreadedDebug 
+ 	"convenience method to customize plugins for this build.  default is self  externalPluins"
+ 	^self externalPluginsBuild!
- 	"convenience method to customize plugins for this build.  default is self  externalPluins
- 	^self externalPlugins"
- 	self subclassResponsibility
- !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildAssert: (in category 'cmake buildType redirects') -----
  extraPluginSettingsBuildAssert: aMaker
+ 	"convenience method for customizing per build type. Overrride if you need it"
+ 	^self extraPluginSettingsBuild: aMaker
- 	"^self extraPluginSettingsBuild: aMaker'"
- 	self subclassResponsibility
  
+ 
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildAssertITimerHeartbeat: (in category 'cmake buildType redirects') -----
  extraPluginSettingsBuildAssertITimerHeartbeat: aMaker
+ 	"convenience method for customizing per build type. Overrride if you need it"
+ 	^self extraPluginSettingsBuild: aMaker
- 	"^self extraPluginSettingsBuild: aMaker'"	
- 	self subclassResponsibility
  
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildDebug: (in category 'cmake buildType redirects') -----
  extraPluginSettingsBuildDebug: aMaker
+ 	"convenience method for customizing per build type. Overrride if you need it"
+ 	^self extraPluginSettingsBuild: aMaker
- 	"^self extraPluginSettingsBuild: aMaker'"	
- 	self subclassResponsibility
  
+ 
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildDebugITimerHeartbeat: (in category 'cmake buildType redirects') -----
  extraPluginSettingsBuildDebugITimerHeartbeat: aMaker
+ 	"convenience method for customizing per build type. Overrride if you need it"
+ 	^self extraPluginSettingsBuild: aMaker
- 	"^self extraPluginSettingsBuild: aMaker'"	
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildITimerHeartbeat: (in category 'cmake buildType redirects') -----
  extraPluginSettingsBuildITimerHeartbeat: aMaker
+ 	"convenience method for customizing per build type. Overrride if you need it"
+ 	^self extraPluginSettingsBuild: aMaker
- 	"^self extraPluginSettingsBuild: aMaker'"	
- 	self subclassResponsibility
- 
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildMultiThreaded: (in category 'cmake buildType redirects') -----
  extraPluginSettingsBuildMultiThreaded: aMaker
+ 	"convenience method for customizing per build type. Overrride if you need it"
+ 	^self extraPluginSettingsBuild: aMaker
- 	"^self extraPluginSettingsBuild: aMaker'"	
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildMultiThreadedAssert: (in category 'cmake buildType redirects') -----
  extraPluginSettingsBuildMultiThreadedAssert: aMaker
+ 	"convenience method for customizing per build type. Overrride if you need it"
+ 	^self extraPluginSettingsBuild: aMaker
- 	"^self extraPluginSettingsBuild: aMaker'"	
- 	self subclassResponsibility
  
+ 
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildMultiThreadedDebug: (in category 'cmake buildType redirects') -----
  extraPluginSettingsBuildMultiThreadedDebug: aMaker
+ 	"convenience method for customizing per build type. Overrride if you need it"
+ 	^self extraPluginSettingsBuild: aMaker
+ 
- 	"^self extraPluginSettingsBuild: aMaker'"	
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraVMSettings: (in category 'cmake buildType redirects') -----
  extraVMSettings: aMaker
  	"Route this message send to the message appropriate for my buildType "
  	|d |
  	d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
  	d 
  		at: #build put: [self extraVMSettingsBuild: aMaker];
  		at: #buildAssert  put: [self extraVMSettingsBuildAssert: aMaker];
  		at: #buildAssertITimerHeartbeat  put: [self extraVMSettingsBuildAssertITimerHeartbeat: aMaker];
              at:#buildDebug  put: [self extraVMSettingsBuildDebug: aMaker];   
  		at: #buildDebugITimerHeartbeat  put: [self extraVMSettingsBuildDebugITimerHeartbeat: aMaker ];
  		at: #buildITimerHeartbeat  put: [self extraVMSettingsBuildITimerHeartbeat: aMaker];
  		at: #buildMultiThreaded  put: [self extraVMSettingsBuildMultiThreaded: aMaker ];
  		at: #buildMultiThreadedAssert  put: [self extraVMSettingsBuildMultiThreadedAssert: aMaker];
  		at: #buildMultiThreadedDebug   put: [self extraVMSettingsBuildMultiThreadedDebug: aMaker ];
  		at: #buildNone put:[self extraVMSettingsNoBuildType:  aMaker].
  	^(d at: buildType) value
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuild: (in category 'cmake buildType redirects') -----
  extraVMSettingsBuild: maker
  	"convenience method to customize plugin settings for this buildType. 
  	on unix writes out version.c custom command.
  	on mac/windows, I don't know.
  	SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
  	"
+ 
+ 	^self subclassResponsibility!
- 	self flag:'tty'. "move self setResourceProperties: aMaker. from extraVMSettingsBuild?"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildAssert: (in category 'cmake buildType redirects') -----
+ extraVMSettingsBuildAssert: aMaker
- extraVMSettingsBuildAssert: maker
  	"convenience method to customize plugin settings for this buildType. 
  	Most configurations do nothing.
  	SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
  	"
  
+ 	^self extraVMSettingsBuild: aMaker!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildAssertITimerHeartbeat: (in category 'cmake buildType redirects') -----
+ extraVMSettingsBuildAssertITimerHeartbeat: aMaker
- extraVMSettingsBuildAssertITimerHeartbeat: maker
  	"convenience method to customize plugin settings for this buildType. 
  	Most configurations do nothing.
  	SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
  	"
+ 	^self extraVMSettingsBuild: aMaker!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildDebug: (in category 'cmake buildType redirects') -----
+ extraVMSettingsBuildDebug: aMaker
- extraVMSettingsBuildDebug: maker
  	"convenience method to customize plugin settings for this buildType. 
  	Most configurations do nothing.
  	SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
  	"
+ 	^self extraVMSettingsBuild: aMaker!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildDebugITimerHeartbeat: (in category 'cmake buildType redirects') -----
+ extraVMSettingsBuildDebugITimerHeartbeat: aMaker
- extraVMSettingsBuildDebugITimerHeartbeat: maker
  	"convenience method to customize plugin settings for this buildType. 
  	Most configurations do nothing.
  	SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
  	"
+ 	^self extraVMSettingsBuild: aMaker!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildITimerHeartbeat: (in category 'cmake buildType redirects') -----
+ extraVMSettingsBuildITimerHeartbeat: aMaker
- extraVMSettingsBuildITimerHeartbeat: maker
  	"convenience method to customize plugin settings for this buildType. 
  	Most configurations do nothing.
  	SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
  	"
+ 	^self extraVMSettingsBuild: aMaker!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildMultiThreaded: (in category 'cmake buildType redirects') -----
+ extraVMSettingsBuildMultiThreaded: aMaker
- extraVMSettingsBuildMultiThreaded: maker
  	"convenience method to customize plugin settings for this buildType. 
  	Most configurations do nothing.
  	SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
  	"
+ 	^self extraVMSettingsBuild: aMaker!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildMultiThreadedAssert: (in category 'cmake buildType redirects') -----
+ extraVMSettingsBuildMultiThreadedAssert: aMaker
- extraVMSettingsBuildMultiThreadedAssert: maker
  	"convenience method to customize plugin settings for this buildType. 
  	Most configurations do nothing.
  	SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
  	"
+ 	^self extraVMSettingsBuild: aMaker!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildMultiThreadedDebug: (in category 'cmake buildType redirects') -----
+ extraVMSettingsBuildMultiThreadedDebug: aMaker
- extraVMSettingsBuildMultiThreadedDebug: maker
  	"convenience method to customize plugin settings for this buildType. 
  	Most configurations do nothing.
  	SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
  	"
+ 	^self extraVMSettingsBuild: aMaker!
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>frameworksBuildAssert (in category 'cmake buildType redirects') -----
  frameworksBuildAssert 
+ 	"convenience method to customize plugins for this build default to internalPluins"
+ 	^self frameworksBuild
+ 
- 	"convenience method to customize plugins for this build default to internalPluins
- 	^self internalPlugins"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>frameworksBuildAssertITimerHeartbeat (in category 'cmake buildType redirects') -----
  frameworksBuildAssertITimerHeartbeat 
+ 	"convenience method to customize plugins for this build default to internalPluins"
+ 	^self frameworksBuild
- 	"convenience method to customize plugins for this build default to internalPluins
- 	^self internalPlugins"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>frameworksBuildDebug (in category 'cmake buildType redirects') -----
  frameworksBuildDebug 
+ 	"convenience method to customize plugins for this build default to internalPluins"
+ 	^self frameworksBuild
- 	"convenience method to customize plugins for this build.  default is self  internalPluins
- 	^self internalPlugins"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>frameworksBuildDebugITimerHeartbeat (in category 'cmake buildType redirects') -----
  frameworksBuildDebugITimerHeartbeat 
+ 	"convenience method to customize plugins for this build default to internalPluins"
+ 	^self frameworksBuild
+ 
- 	"convenience method to customize plugins for this build.  default is self  internalPluins
- 	^self internalPlugins"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>frameworksBuildITimerHeartbeat (in category 'cmake buildType redirects') -----
  frameworksBuildITimerHeartbeat 
+ 	"convenience method to customize plugins for this build default to internalPluins"
+ 	^self frameworksBuild
- 	"convenience method to customize plugins for this build.  default is self  internalPluins
- 	^self internalPlugins"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>frameworksBuildMultiThreaded (in category 'cmake buildType redirects') -----
  frameworksBuildMultiThreaded 
+ 	"convenience method to customize plugins for this build default to internalPluins"
+ 	^self frameworksBuild
+ 
- 	"convenience method to customize plugins for this build.  default is self  internalPluins
- 	^self internalPlugins"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>frameworksBuildMultiThreadedAssert (in category 'cmake buildType redirects') -----
  frameworksBuildMultiThreadedAssert
+ 	"convenience method to customize plugins for this build default to internalPluins"
+ 	^self frameworksBuild
- 	"convenience method to customize plugins for this build.  default is self  internalPluins
- 	^self internalPlugins"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>frameworksBuildMultiThreadedDebug (in category 'cmake buildType redirects') -----
  frameworksBuildMultiThreadedDebug 
+ 	"convenience method to customize plugins for this build default to internalPluins"
+ 	^self frameworksBuild
+ 
- 	"convenience method to customize plugins for this build.  default is self  internalPluins
- 	^self internalPlugins"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>linkFlagsBuildAssert (in category 'cmake buildType redirects') -----
  linkFlagsBuildAssert
+ 	 "override this if you need to customize for this build type"
+ 	^ self linkFlagsBuild!
- 	"SystemNavigation default browseMethodsWhoseNamesContain: 'linkFlagsBuildAssert'
- 
- 	^ { 
- 		'-lpthread'
-            . '-luuid'
- 	   }
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>linkFlagsBuildAssertITimerHeartbeat (in category 'cmake buildType redirects') -----
  linkFlagsBuildAssertITimerHeartbeat
+ 	 "override this if you need to customize for this build type"
+ 	^ self linkFlagsBuild!
- 	"SystemNavigation default browseMethodsWhoseNamesContain: 'linkFlagsBuildAssertITimerHeartbeat'
- 
- 	^ { 
- 		'-lpthread'
-            . '-luuid'
- 	   }
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>linkFlagsBuildDebug (in category 'cmake buildType redirects') -----
  linkFlagsBuildDebug
+ 	 "override this if you need to customize for this build type"
+ 	^ self linkFlagsBuild!
- 	"SystemNavigation default browseMethodsWhoseNamesContain: 'linkFlagsBuildDebug'
- 
- 	^ { 
- 		'-lpthread'
-            . '-luuid'
- 	   }
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>linkFlagsBuildDebugITimerHeartbeat (in category 'cmake buildType redirects') -----
  linkFlagsBuildDebugITimerHeartbeat
+ 	 "override this if you need to customize for this build type"
+ 	^ self linkFlagsBuild!
- 	"SystemNavigation default browseMethodsWhoseNamesContain: 'linkFlagsBuildDebugITimerHeartbeat'
- 
- 	^ { 
- 		'-lpthread'
-            . '-luuid'
- 	   }
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>linkFlagsBuildITimerHeartbeat (in category 'cmake buildType redirects') -----
  linkFlagsBuildITimerHeartbeat
+ 	 "override this if you need to customize for this build type"
+ 	^ self linkFlagsBuild!
- 	"SystemNavigation default browseMethodsWhoseNamesContain: 'linkFlagsBuildITimerHeartbeat'
- 
- 	^ { 
- 		'-lpthread'
-            . '-luuid'
- 	   }
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>linkFlagsBuildMultiThreaded (in category 'cmake buildType redirects') -----
  linkFlagsBuildMultiThreaded
+ 	 "override this if you need to customize for this build type"
+ 	^ self linkFlagsBuild!
- 	"SystemNavigation default browseMethodsWhoseNamesContain: 'linkFlagsBuildMultiThreaded'
- 
- 	^ { 
- 		'-lpthread'
-            . '-luuid'
- 	   }
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>linkFlagsBuildMultiThreadedAssert (in category 'cmake buildType redirects') -----
  linkFlagsBuildMultiThreadedAssert
+ 	 "override this if you need to customize for this build type"
+ 	^ self linkFlagsBuild!
- 	"SystemNavigation default browseMethodsWhoseNamesContain: 'linkFlagsBuildMultiThreadedAssert'
- 
- 	^ { 
- 		'-lpthread'
-            . '-luuid'
- 	   }
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>linkFlagsBuildMultiThreadedDebug (in category 'cmake buildType redirects') -----
  linkFlagsBuildMultiThreadedDebug
+ 	 "override this if you need to customize for this build type"
+ 	^ self linkFlagsBuild!
- 	"SystemNavigation default browseMethodsWhoseNamesContain: 'linkFlagsBuildMultiThreadedDebug'
- 
- 	^ { 
- 		'-lpthread'
-            . '-luuid'
- 	   }
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildAssert: (in category 'cmake buildType redirects') -----
  postBuildActionsBuildAssert: aMaker
  	"
+ 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'"
- 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
  
+ 	^self postBuildActionsBuild: aMaker
+ !
- 	^self postBuildActionsBuild:: aMaker
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildAssertITimerHeartbeat: (in category 'cmake buildType redirects') -----
  postBuildActionsBuildAssertITimerHeartbeat: aMaker
  	"
+ 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'"
- 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
  
+ 	^self postBuildActionsBuild: aMaker
+ !
- 	^self postBuildActionsBuild:: aMaker
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildDebug: (in category 'cmake buildType redirects') -----
  postBuildActionsBuildDebug: aMaker
  	"
+ 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'"
- 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
  
+ 	^self postBuildActionsBuild: aMaker
+ !
- 	^self postBuildActionsBuild:: aMaker
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildDebugITimerHeartbeat: (in category 'cmake buildType redirects') -----
  postBuildActionsBuildDebugITimerHeartbeat: aMaker
  	"
+ 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'"
- 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
  
+ 	^self postBuildActionsBuild: aMaker
+ !
- 	^self postBuildActionsBuild:: aMaker
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildITimerHeartbeat: (in category 'cmake buildType redirects') -----
  postBuildActionsBuildITimerHeartbeat: aMaker
  	"
+ 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'"
- 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
  
+ 	^self postBuildActionsBuild: aMaker
+ !
- 	^self postBuildActionsBuild:: aMaker
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildMultiThreaded: (in category 'cmake buildType redirects') -----
  postBuildActionsBuildMultiThreaded: aMaker
  	"
+ 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'"
- 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
  
+ 	^self postBuildActionsBuild: aMaker
+ !
- 	^self postBuildActionsBuild:: aMaker
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildMultiThreadedAssert: (in category 'cmake buildType redirects') -----
  postBuildActionsBuildMultiThreadedAssert: aMaker
  	"
+ 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'"
- 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
  
+ 	^self postBuildActionsBuild: aMaker
+ !
- 	^self postBuildActionsBuild:: aMaker
- 	"
- 	self subclassResponsibility!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildMultiThreadedDebug: (in category 'cmake buildType redirects') -----
  postBuildActionsBuildMultiThreadedDebug: aMaker
  	"
+ 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'"
- 	SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
  
+ 	^self postBuildActionsBuild: aMaker
+ !
- 	^self postBuildActionsBuild:: aMaker
- 	"
- 	self subclassResponsibility!

Item was added:
+ ----- Method: CPlatformConfigForSqueak>>setGlobalOptionsAfterDetermineSystemBuildMultiThreadedAssert: (in category 'cmake buildType redirects') -----
+ setGlobalOptionsAfterDetermineSystemBuildMultiThreadedAssert: aMaker
+ 	"convenience method to customize for this build type. "
+ 		^self setGlobalOptionsAfterDetermineSystemBuild: aMaker!

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildAssert (in category 'cmake buildType redirects') -----
  thirdpartyLibsBuildAssert 
  	"convenience method to customize third party libs for this buildType.  
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'	
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+ "
+ 	^ self thirdpartyLibsBuild
- 
- 	^self thirdpartyLibs"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildAssertITimerHeartbeat (in category 'cmake buildType redirects') -----
  thirdpartyLibsBuildAssertITimerHeartbeat 
  	"convenience method to customize third party libs for this buildType.  
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'	
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+ "
+ 	^ self thirdpartyLibsBuild!
- 
- 	^self thirdpartyLibs"
- 	self subclassResponsibility
- !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildDebug (in category 'cmake buildType redirects') -----
  thirdpartyLibsBuildDebug 
  	"convenience method to customize third party libs for this buildType.  
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'	
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+ "
+ 	^ self thirdpartyLibsBuild!
- 
- 	^self thirdpartyLibs"
- 	self subclassResponsibility
- !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildDebugITimerHeartbeat (in category 'cmake buildType redirects') -----
  thirdpartyLibsBuildDebugITimerHeartbeat 
  	"convenience method to customize third party libs for this buildType.  
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'	
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+ "
+ 	^ self thirdpartyLibsBuild
- 
- 	^self thirdpartyLibs"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildITimerHeartbeat (in category 'cmake buildType redirects') -----
  thirdpartyLibsBuildITimerHeartbeat 
  	"convenience method to customize third party libs for this buildType.  
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'	
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+ "
+ 	^ self thirdpartyLibsBuild
- 
- 	^self thirdpartyLibs"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildMultiThreaded (in category 'cmake buildType redirects') -----
  thirdpartyLibsBuildMultiThreaded 
  	"convenience method to customize third party libs for this buildType.  
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'	
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+ "
+ 	^ self thirdpartyLibsBuild!
- 
- 	^self thirdpartyLibs"
- 	self subclassResponsibility
- !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildMultiThreadedAssert (in category 'cmake buildType redirects') -----
  thirdpartyLibsBuildMultiThreadedAssert
  	"convenience method to customize third party libs for this buildType.  
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'	
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+ "
+ 	^ self thirdpartyLibsBuild
- 
- 	^self thirdpartyLibs"
- 	self subclassResponsibility
  !

Item was changed:
  ----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildMultiThreadedDebug (in category 'cmake buildType redirects') -----
  thirdpartyLibsBuildMultiThreadedDebug 
  	"convenience method to customize third party libs for this buildType.  
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'	
  
  	SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+ "
+ 	^ self thirdpartyLibsBuild!
- 
- 	^self thirdpartyLibs"
- 	self subclassResponsibility
- !

Item was added:
+ ----- Method: Linux32ARMv6Config>>customizeVMPlugins (in category 'plugins') -----
+ customizeVMPlugins
+ 	|mysubset iwantonly|
+ 	"trim the vmdrivers ordered collection of CMakeVMDriver subclasses to only those I want. then customize them for use on this OS/platform"
+ "	iwantonly :=	 #(#CMakeVMDisplayNull  #CMakeVMDisplayX11  #CMakeVMSoundALSA  #CMakeVMSoundNull ).
+ 	mysubset := vmplugins select: [:vmd | 0 < (iwantonly occurrencesOf: (vmd class name) asSymbol)]. 
+ 	vmplugins := mysubset.
+ 	self 
+ 		customizeCMakeVMDisplayNull;
+ 		customizeCMakeVMDisplayX11;
+ 		customizeCMakeVMSoundALSA;
+ 		customizeCMakeVMSoundNull."!

Item was added:
+ ----- Method: Linux32x86Config>>customizeVMPlugins (in category 'plugins') -----
+ customizeVMPlugins
+ 	|mysubset iwantonly|
+ 	"trim the vmdrivers ordered collection of CMakeVMDriver subclasses to only those I want. then customize them for use on this OS/platform"
+ "	iwantonly :=	 #(#CMakeVMDisplayNull  #CMakeVMDisplayX11  #CMakeVMSoundALSA  #CMakeVMSoundNull ).
+ 	mysubset := vmplugins select: [:vmd | 0 < (iwantonly occurrencesOf: (vmd class name) asSymbol)]. 
+ 	vmplugins := mysubset.
+ 	self 
+ 		customizeCMakeVMDisplayNull;
+ 		customizeCMakeVMDisplayX11;
+ 		customizeCMakeVMSoundALSA;
+ 		customizeCMakeVMSoundNull."!

Item was added:
+ ----- Method: Linux64Config>>customizeVMPlugins (in category 'plugins') -----
+ customizeVMPlugins
+ 	|mysubset iwantonly|
+ 	"trim the vmdrivers ordered collection of CMakeVMDriver subclasses to only those I want. then customize them for use on this OS/platform"
+ "	iwantonly :=	 #(#CMakeVMDisplayNull  #CMakeVMDisplayX11  #CMakeVMSoundALSA  #CMakeVMSoundNull ).
+ 	mysubset := vmplugins select: [:vmd | 0 < (iwantonly occurrencesOf: (vmd class name) asSymbol)]. 
+ 	vmplugins := mysubset.
+ 	self 
+ 		customizeCMakeVMDisplayNull;
+ 		customizeCMakeVMDisplayX11;
+ 		customizeCMakeVMSoundALSA;
+ 		customizeCMakeVMSoundNull."!

Item was changed:
  ----- Method: Linux64x86w32BitConfig>>coreSourcesBuild (in category 'cmake buildType redirects') -----
  coreSourcesBuild
  	"files to include from src/vm dir"
  	^ #(
  		'cogit.c'
  		'gcc3x-cointerp.c'
  		)!

Item was added:
+ ----- Method: SqueakAndroidStackEvtConfig>>customizeVMPlugins (in category 'plugins') -----
+ customizeVMPlugins
+ 	"do nothing"!

Item was added:
+ ----- Method: SqueakBSDConfig>>customizeVMPlugins (in category 'plugins') -----
+ customizeVMPlugins
+ 	|mysubset iwantonly|
+ 	"trim the vmdrivers ordered collection of CMakeVMDriver subclasses to only those I want. then customize them for use on this OS/platform"
+ "	iwantonly :=	 #(#CMakeVMDisplayNull  #CMakeVMDisplayX11  #CMakeVMSoundALSA  #CMakeVMSoundNull ).
+ 	mysubset := vmplugins select: [:vmd | 0 < (iwantonly occurrencesOf: (vmd class name) asSymbol)]. 
+ 	vmplugins := mysubset.
+ 	self 
+ 		customizeCMakeVMDisplayNull;
+ 		customizeCMakeVMDisplayX11;
+ 		customizeCMakeVMSoundALSA;
+ 		customizeCMakeVMSoundNull."!

Item was changed:
  ----- Method: SqueakCMakeVMMakerAbstractBuilder>>configurationDictionary: (in category 'queries') -----
  configurationDictionary: aCategoryName
  	| result info|
  	"return a Dictionary of CMakeMakerSqueak-XYZ platform configurations and their associated CMakeVMakerConfigurationInfo "
  	result := Dictionary new.
  	Smalltalk globals 
  		allClassesDo:[:c | (c class category asString withoutQuoting = aCategoryName)  "is there a faster lookup method?"
  			ifTrue: [ 
- 					(c isAbstractBaseClass)
- 						ifFalse:[
  							info := CMakeVMakerConfigurationInfo new.
  							info visit: c.
+ 							result at: (c name) put:info]].
- 							result at: (c name) put:info]]].
  	^result
  
  !

Item was added:
+ ----- Method: SqueakIA32BochsConfig>>customizeVMPlugins (in category 'plugins') -----
+ customizeVMPlugins
+ 	"do nothing,. only used on linux?"!

Item was added:
+ ----- Method: SqueakMacintoshConfig>>customizeVMPlugins (in category 'plugins') -----
+ customizeVMPlugins
+ 	"do nothing,. only used on linux?"!

Item was added:
+ ----- Method: SqueakSunOS32x86Config>>customizeVMPlugins (in category 'plugins') -----
+ customizeVMPlugins
+ 	|mysubset iwantonly|
+ 	"trim the vmdrivers ordered collection of CMakeVMDriver subclasses to only those I want. then customize them for use on this OS/platform"
+ "	iwantonly :=	 #(#CMakeVMDisplayNull  #CMakeVMDisplayX11  #CMakeVMSoundALSA  #CMakeVMSoundNull ).
+ 	mysubset := vmplugins select: [:vmd | 0 < (iwantonly occurrencesOf: (vmd class name) asSymbol)]. 
+ 	vmplugins := mysubset.
+ 	self 
+ 		customizeCMakeVMDisplayNull;
+ 		customizeCMakeVMDisplayX11;
+ 		customizeCMakeVMSoundALSA;
+ 		customizeCMakeVMSoundNull."!

Item was changed:
  ----- Method: SqueakUnixConfig>>extraVMSettingsBuild: (in category 'cmake buildType redirects') -----
  extraVMSettingsBuild: aMaker
  	"add a generated version.c"
- 	self flag: 'tty'. "Figure out how other's generated version info"
  	(enabledebugmessages)
  		ifTrue:[	templates 
  		addLast:((CMakeMessage new) message: (self class name) , 'extraVMSettingsBuild: aMaker')
  	] .
  	templates
  		addLast:((CMakeAddCustomCommandOutput new) 
  						output:(OrderedCollection with: 'version.c')
  						commandsandargs: (OrderedCollection with: 'COMMAND ${platformsDir}/unix/config/verstamp version.c gcc' )
  						comment: 'Generating version.c').
  
+ 
+ 
  !

Item was added:
+ ----- Method: SqueakWindowsConfig>>customizeVMPlugins (in category 'plugins') -----
+ customizeVMPlugins
+ 	"do nothing,. only used on linux?"!



More information about the Vm-dev mailing list