[Vm-dev] VM Maker: CMakeVMMakerSqueak-tty.69.mcz
commits at source.squeak.org
commits at source.squeak.org
Sat Jun 21 15:01:02 UTC 2014
Timothy M uploaded a new version of CMakeVMMakerSqueak to project VM Maker:
http://source.squeak.org/VMMaker/CMakeVMMakerSqueak-tty.69.mcz
==================== Summary ====================
Name: CMakeVMMakerSqueak-tty.69
Author: tty
Time: 21 June 2014, 11:01:14.926 am
UUID: 9065b263-50c5-4331-b043-dd80047b2e5c
Ancestors: CMakeVMMakerSqueak-tty.68
stubbed out buildType redirect abstract methods to match all the configurable methods in CMakeVMMgeneratorSqueak>>generate.
Started cleanup of CFlags and linkFlags to use methods that are clearer to the end-user via intention revealing method names.
Next up: is port each of the abstract methods to the topmost concrete class in each configuration category.
then, tests
Then, write the darned things!
=============== Diff against CMakeVMMakerSqueak-tty.68 ===============
Item was added:
+ CMakeGenerator subclass: #CMakeGeneratorForSqueak
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'CMakeVMMakerSqueak'!
+
+ !CMakeGeneratorForSqueak commentStamp: 'tty 6/20/2014 12:21' prior: 0!
+ A CMakeGeneratorForSqueak extends CMakeGenerator to support some Squeak-isms.
+
+
+ Instance Variables
+ !
Item was added:
+ ----- Method: CMakeGeneratorForSqueak>>cC: (in category 'cmake commands') -----
+ cC: aString
+ "do nothing at the moment.
+ When we start generating config.h, we need to pass it flags as per this line from an mvm
+ CC=''gcc -m32''
+
+ This is supported in compilerFlags on pharo cmake, but for ease-of-use for newbies, its best to make things clear with an intention revealing method name
+
+ CMakeVMGenerator calls self addDefinitions: config compilerFlags.
+ "
+ self flag:'tty'!
Item was added:
+ ----- Method: CMakeGeneratorForSqueak>>cXX: (in category 'cmake commands') -----
+ cXX: aString
+ "do nothing at the moment.
+ When we start generating config.h, we need to pass it flags as per this line from an mvm
+ CXX=''g++ -m32''
+
+ This is supported in compilerFlags on pharo cmake, but for ease-of-use for newbies, its best to make things clear with an intention revealing method name
+
+ CMakeVMGenerator calls self addDefinitions: config compilerFlags.
+ "
+ self flag:'tty'!
Item was added:
+ ----- Method: CMakeGeneratorForSqueak>>configureFlags: (in category 'cmake commands') -----
+ configureFlags: aString
+ "do nothing at the moment.
+ When we start generating config.h, we need to pass it flags as per this line from an mvm
+ test -f config.h || ../../../platforms/unix/config/configure \
+ --with-src=stacksrc --with-plugins=src/plugins --disable-cogit \
+ --without-vm-display-fbdev --without-npsqueak \
+
+
+ if cmake supports a command for doing configs, then
+ ^self cmd: 'the cmake command here' params: aString
+ "
+ self flag:'tty'!
Item was added:
+ ----- Method: CMakeGeneratorForSqueak>>lDFlags: (in category 'cmake commands') -----
+ lDFlags: aString
+ "do nothing at the moment.
+ When we start generating config.h, we need to pass it flags as per this line from an mvm
+ LDFLAGS=-Wl,-z,now
+
+ currently this resides in CPlatformConfig linkFlags. I want to move this to an intention revealing method name
+ "
+ self flag:'tty'!
Item was added:
+ ----- Method: CMakeGeneratorForSqueak>>libs: (in category 'cmake commands') -----
+ libs: aString
+ "do nothing at the moment.
+ When we start generating config.h, we need to pass it flags as per this line from an mvm
+
+ LIBS=''-lpthread -luuid -lSM -lICE -ldl -lGL -lpthread -lm -lnsl -lX11''
+
+ currently this resides in CPlatformConfig linkFlags. I want to move this to an intention revealing method name
+
+ for example, we see it in:
+ extraPluginSettings: maker
+ super extraPluginSettings: maker.
+ maker set: #linkFlags toString: '${linkFlags} -m32'
+
+ "
+ self flag:'tty'!
Item was changed:
+ CMakeGeneratorForSqueak subclass: #CMakePluginGeneratorForSqueak
- CMakePluginGenerator subclass: #CMakePluginGeneratorForSqueak
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'CMakeVMMakerSqueak'!
!CMakePluginGeneratorForSqueak commentStamp: 'tty 5/16/2014 15:52' prior: 0!
A CMakePluginGeneratorForSqueak overides some CMakeVMPluginGenerator methods for squeak compatibility.
Instance Variables
!
Item was changed:
+ CMakeGeneratorForSqueak subclass: #CMakeSourceDistroGeneratorForSqueak
- CMakeVMGenerator subclass: #CMakeSourceDistroGeneratorForSqueak
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'CMakeVMMakerSqueak'!
!CMakeSourceDistroGeneratorForSqueak commentStamp: 'tty 6/18/2014 08:12' prior: 0!
A CMakeSourceDistroGeneratorForSqueak does nothing at the moment. Here is why I am here (2014.06.16 vm-dev list):
Hi Bert
Linux distros never package binaries compiled by someone else (*). What they need is a source tar ball that builds cleanly, and a list of dependencies.
hmmmm....
CMakeVMMaker has a CMakePluginGenerator and CMakeVMGenerator; I have a hunch a CMakeSourceDistroGenerator would fit right in.
The Design of CMakeVMaker is a big-ole Visitor pattern where configurations visit the Generators. We should be able to have them visit a CMakeSourceDistroGenerator and provide it
with the relevant information.
I will put in a stub-class for it as a reminder to look at when release 1 of this puppy is ready.
cheers.
tty
!
Item was changed:
+ CMakeGeneratorForSqueak subclass: #CMakeVMGeneratorForSqueak
+ instanceVariableNames: 'internalPlugins externalPlugins config'
- CMakeVMGenerator subclass: #CMakeVMGeneratorForSqueak
- instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'CMakeVMMakerSqueak'!
!CMakeVMGeneratorForSqueak commentStamp: 'tty 5/16/2014 15:52' prior: 0!
A CMakeVMGeneratorForSqueak overides some CMakeVMGenerator methos for squeak compatibility.
!
Item was added:
+ ----- Method: CMakeVMGeneratorForSqueak>>generate (in category 'as yet unclassified') -----
+ generate
+ "overriding CMakeVMGenerator to provide additional method calls"
+ | intPlugins extPlugins |
+
+ output := String new writeStream.
+ self break.
+ config setGlobalOptions: self.
+
+ self
+ printHeader;
+ project: config executableName.
+
+ config setGlobalOptionsAfterDetermineSystem: self.
+ config setupDirectories: self.
+
+ self message: '${CMAKE_MODULE_PATH}'.
+ self set: 'CMAKE_CONFIGURATION_TYPES' to: 'Release'.
+
+ config preferredIncludes do: [ :each | self includeDirectories: each ].
+ self includeDirectories: self includeDirs.
+ config standardIncludes do: [:each | self includeDirectories: each ].
+
+ "tty.
+ we replace the catchAll compilerFlags with methods that reflect the 'mvm' file used in the gnu-build system
+ i.e. oscogvm/build.linux32x86/squeak.cog.v3/build/mvm
+ My intent is to make setup of a new configuration easier for somebody coming from GNU-land"
+
+ "self addDefinitions: config compilerFlags."
+ config configureFlags do:[:each | self configureFlags: each].
+ config cC do:[:each | self cC: each].
+ config cXX do:[:each | self cXX: each].
+ config lDFlags do:[:each | self lDFlags: each].
+ config libs do:[:each | self libs: each].
+ self flag:'tty'. "This should be replaced with judicious use of above"
+ self addDefinitions: config cFlags. "CFLAGS=$OPT -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DCOGMTVM=0"
+ self flag:'tty'. "end this should be replaced"
+
+ config extraVMSettings: self.
+
+ self puts: 'add_executable(' , config executableName, ' ', config executableType, ' ' , self sources , ')'.
+
+ intPlugins := self generatePluginConfigs: config internalPlugins internal: true.
+ extPlugins := self generatePluginConfigs: config externalPlugins internal: false.
+
+ self processThirdpartyLibraries.
+
+ self processPlugins: intPlugins, extPlugins.
+
+ config setExtraTargetProperties: self.
+
+ self cmd: 'target_link_libraries'
+ params: self moduleName , ' ${LINKLIBS}'.
+
+ config postBuildActions: self.
+
+ self saveFile.
+ self generateBuildScript.!
Item was added:
+ ----- Method: CMakeVMGeneratorForSqueak>>generate: (in category 'as yet unclassified') -----
+ generate: aConfigOrClass
+
+ config := aConfigOrClass isBehavior ifTrue: [ aConfigOrClass new ] ifFalse: [aConfigOrClass].
+ ^ self generate!
Item was added:
+ ----- Method: CMakeVMMakerSqueakBuildersTest>>testAvailableBuildTypes (in category 'as yet unclassified') -----
+ testAvailableBuildTypes
+ SqueakCMakeVMMakerAbstractBuilder
+ subclassesDo:[:c |
+ self assert: (c default availableBuildTypes size > 0).] !
Item was removed:
- ----- Method: CMakeVMMakerSqueakBuildersTest>>testAvailableBuilds (in category 'as yet unclassified') -----
- testAvailableBuilds
- SqueakCMakeVMMakerAbstractBuilder
- subclassesDo:[:c |
- self assert: (c default availableBuilds size > 0).] !
Item was added:
+ ----- Method: CMakeVMMakerSqueakCommonConfigTest>>testLinkFlags (in category 'as yet unclassified') -----
+ testLinkFlags
+ "make sure each enabled Configuration returns from each buildType configuration correctly"
+ |buildTypes|
+ SqueakCMakeVMMakerAbstractBuilder reset.
+ SqueakCMakeVMMakerAbstractBuilder
+ subclassesDo:[:builder |
+ | concreteConfiguration concreteBuilder|
+ concreteBuilder:=(Smalltalk at: (builder name asSymbol)) new.
+ Smalltalk globals
+ allClassesDo:[:configuration | (configuration class category asString withoutQuoting startsWith: (concreteBuilder configurationsCategory))
+ ifTrue:[
+ concreteConfiguration:= configuration new.
+ (concreteConfiguration excludeFromBuild not)
+ ifTrue:[
+ buildTypes := concreteBuilder availableBuildTypesFor: concreteConfiguration class name asSymbol.
+ buildTypes do:[:buildType |
+ builder configureA: (configuration name) forBuildType: buildType.
+ self assert:(concreteConfiguration linkFlags isString)]]]]]
+
+
+
+
+
+
+
+
+
+
+ !
Item was added:
+ ----- Method: CMakeVMMakerSqueakDeveloperHelp class>>availableBuildTypes (in category 'pages') -----
+ availableBuildTypes
+ ^HelpTopic
+ title:'configuring available build types'
+ contents:
+ 'The purpose of this method is to present the end user with the avaiable buildTypes for a configuration category. when they invoke a Builder like so:
+
+ SqueakLinux32X86Builder availableBuildTypesFor: #Linux32x86SqueakStackV3Config
+
+ Since builds are sometimes not available and/or under development a developer may wish to restrict what build types are avaiable for a configurations Builder by modifying the configuration''s "availableBuilds" method.
+
+ The default is all buildTypes:
+ ^SqueakCMakeVMMakerAbstractBuilder default allBuildConfigurations
+
+ You can display no buildTypes with:
+ ^SqueakCMakeVMMakerAbstractBuilder default noBuildConfigurations.
+
+ or you can customize it like so:
+ ^(SqueakCMakeVMMakerAbstractBuilder default allBuildConfigurations
+ copyWithoutAll: #( #assertWithHeartbeatTimer #debugWithHeartbeatTimer debugMultiThreadedFFI.....etc))
+
+
+ '!
Item was removed:
- ----- Method: CMakeVMMakerSqueakDeveloperHelp class>>availableBuilds (in category 'pages') -----
- availableBuilds
- ^HelpTopic
- title:'configuring available build types'
- contents:
- 'The purpose of this method is to present the end user with the avaiable buildTypes for a configuration category. when they invoke a Builder like so:
-
- SqueakLinux32X86Builder availableBuildTypesFor: #Linux32x86SqueakStackV3Config
-
- Since builds are sometimes not available and/or under development a developer may wish to restrict what build types are avaiable for a configurations Builder by modifying the configuration''s "availableBuilds" method.
-
- The default is all buildTypes:
- ^SqueakCMakeVMMakerAbstractBuilder default allBuildConfigurations
-
- You can display no buildTypes with:
- ^SqueakCMakeVMMakerAbstractBuilder default noBuildConfigurations.
-
- or you can customize it like so:
- ^(SqueakCMakeVMMakerAbstractBuilder default allBuildConfigurations
- copyWithoutAll: #( #assertWithHeartbeatTimer #debugWithHeartbeatTimer debugMultiThreadedFFI.....etc))
-
-
- '!
Item was changed:
----- Method: CMakeVMMakerSqueakDeveloperHelp class>>pages (in category 'pages') -----
pages
+ ^#(overview prerequisites igorStasenkoDesign plugins organizationOfBuildersConfigs availableBuildTypes excludeFromBuild executableName extraPluginSettings preferredIncludes setExtraTargetProperties cMakeMacros configH scratch)!
- ^#(overview prerequisites igorStasenkoDesign plugins organizationOfBuildersConfigs availableBuilds excludeFromBuild executableName extraPluginSettings preferredIncludes setExtraTargetProperties cMakeMacros configH scratch)!
Item was changed:
----- Method: CMakeVMMakerSqueakHowToCreateNewConfiguration class>>step4d (in category 'pages') -----
step4d
^HelpTopic
title:'Step 4d. preferredIncludes'
contents:
+ 'This is handy when ''make'' cannot find a header.
- 'TODO: summarize this
+ For example, when compiling
+ I got error:
+ Scanning dependencies of target UnixOSProcessPlugin
+ /..../oscogvm/src/plugins/UnixOSProcessPlugin/UnixOSProcessPlugin.c:48:26: fatal error: SocketPlugin.h: No such file or directory
+
+ From my topDir (oscogvm) I did a search and found SocketPlugin.h exits in ./platforms/Cross/plugins/SocketPlugin/SocketPlugin.h
+
+ in my root config class for my category, I had...
+
+ ''${targetPlatform}/plugins/SocketPlugin''
+
+ I changed it to
+
+ ''${crossDir}/plugins/SocketPlugin''
+
+ deleted my files in my build directory, re-ran the generate and...
+
+
+
+ SystemNavigation default browseMethodsWhoseNamesContain: ''preferredIncludes''
+
+
A Reminder: Consistent Naming Conventions Are Our Friends!!
'!
Item was changed:
----- Method: CMakeVMMakerSqueakMacintoshConfigTest>>testPlatformName (in category 'as yet unclassified') -----
testPlatformName
+ self flag:'tty'. "todo: fix code smell in hard coded string"
#(#SqueakIOSBuilder #SqueakMacOSBuilder #SqueakMacOSPowerPCBuilder #SqueakMacOSX32x86Builder)
do:[:builder | | o |
Smalltalk globals
allClassesDo:[:configuration | (configuration class category asString withoutQuoting startsWith: ((Smalltalk at:builder) configurationsCategory))
ifTrue:[
o:= configuration new.
(o excludeFromBuild not)
ifTrue:[self assert:(o platformName = 'Mac OS' )]]]]
!
Item was removed:
- ServiceProvider subclass: #CMakeVMMakerSqueakServiceProvider
- instanceVariableNames: ''
- classVariableNames: ''
- poolDictionaries: ''
- category: 'CMakeVMMakerSqueak'!
Item was removed:
- ----- Method: CMakeVMMakerSqueakServiceProvider class>>initialize (in category 'initialization') -----
- initialize
- ServiceRegistry buildProvider: self new!
Item was changed:
----- Method: CMakeVMMakerSqueakUnixConfigTest>>testPlatformName (in category 'as yet unclassified') -----
testPlatformName
+ self flag:'tty'. "todo: fix code smell in hard coded string"
#(#SqueakAndroidBuilder #SqueakBSDx86Builder #SqueakLinux32ARMv6Builder #SqueakLinux32x86Builder #SqueakLinux32x86_64Builder #SqueakLinux64x86w32CompatBuilder #SqueakSunOS32x86Builder)
do:[:builder | | o |
Smalltalk globals
allClassesDo:[:configuration | (configuration class category asString withoutQuoting startsWith: ((Smalltalk at:builder) configurationsCategory))
ifTrue:[
o:= configuration new.
(o excludeFromBuild not)
ifTrue:[self assert:(o platformName = 'unix' )]]]]
!
Item was changed:
----- Method: CMakeVMMakerSqueakWindowsConfigTest>>testPlatformName (in category 'as yet unclassified') -----
testPlatformName
+ self flag:'tty'. "todo: fix code smell in hard coded string"
-
#(#SqueakWin32x86Builder)
do:[:builder | | o |
Smalltalk globals
allClassesDo:[:configuration | (configuration class category asString withoutQuoting startsWith: ((Smalltalk at:builder) configurationsCategory))
ifTrue:[
o:= configuration new.
self assert:(o platformName = 'win32'). "hello code smell"
]]]
!
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 new.
+ availableBuildTypes := v availableBuildTypes.
- availableBuildTypes := v availableBuilds.
dirBuildPlatform := v dirBuildPlatform.
dirSource := v dirSource.
excludeFromBuild := v excludeFromBuild.
!
Item was changed:
CPlatformConfig subclass: #CPlatformConfigForSqueak
instanceVariableNames: 'buildType generateBuild generateBuildAssert generateBuildAssertITimerHeartbeat generateBuildDebug generateBuildDebugITimerHeartbeat generateBuildDebugMultiThreaded generateBuildIHeartbeatTimer generateBuildMultiThreaded generateBuildMultiThreadedAssert generateBuildMultiThreadedDebug'
classVariableNames: ''
poolDictionaries: ''
category: 'CMakeVMMakerSqueak'!
+ !CPlatformConfigForSqueak commentStamp: 'tty 6/20/2014 18:23' prior: 0!
- !CPlatformConfigForSqueak commentStamp: 'tty 6/17/2014 17:53' prior: 0!
A CPlatformConfigForSqueak acts as a compatability layer for Squeak and an Abstract Base Class for extended functionality required for the Squeak CMakeVMMaker use-case.
+ I make (very) heavy use of a specific design pattern for configuring myself and remaining compatible with pharo's CMakeVMMaker.
+ The entry point for that pattern is my method 'configureForBuildType: aSymbol' . Each method send in there detects my buildType and routes the send
+ to the approriate method for that buildType.
- I used to be a TCPlatformConfigForSqueak, but if you attempt to load CMakeVMMakerSqueak-tty.63 you will note that massive Traits applied to over a hundred classes load very slowly via Monticello.
+ Subclasses of me 'must' configure themselves for each build type per that pattern.
+ However this can be very easy by just returning the base configuration.
+
+ Tests are written to verify that this support infrastructure is in place.
+
tty.!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>availableBuildTypes (in category 'cmake configuration') -----
+ availableBuildTypes
+ ^SqueakCMakeVMMakerAbstractBuilder default allBuildConfigurations
+
+ " ^SqueakCMakeVMMakerAbstractBuilder default noBuildConfigurations.
+ ^(SqueakCMakeVMMakerAbstractBuilder default allBuildConfigurations
+ copyWithoutAll: #( #assertWithHeartbeatTimer #debugWithHeartbeatTimer debugMultiThreadedFFI.....etc))
+ "!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>availableBuilds (in category 'cmake configuration') -----
- availableBuilds
- ^SqueakCMakeVMMakerAbstractBuilder default allBuildConfigurations
-
- " ^SqueakCMakeVMMakerAbstractBuilder default noBuildConfigurations.
- ^(SqueakCMakeVMMakerAbstractBuilder default allBuildConfigurations
- copyWithoutAll: #( #assertWithHeartbeatTimer #debugWithHeartbeatTimer debugMultiThreadedFFI.....etc))
- "!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cC (in category 'gnu build system mvm file') -----
+ cC
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self cCBuild];
+ at: #buildAssert put: [self cCBuildAssert];
+ at: #buildAssertITimerHeartbeat put: [self cCBuildAssertITimerHeartbeat];
+ at:#buildDebug put: [self cCBuildDebug];
+ at: #buildDebugITimerHeartbeat put: [self cCBuildDebugITimerHeartbeat ];
+ at: #buildITimerHeartbeat put: [self cCBuildITimerHeartbeat];
+ at: #buildMultiThreaded put: [self cCBuildMultiThreaded];
+ at: #buildMultiThreadedAssert put: [self cCBuildMultiThreadedAssert];
+ at: #buildMultiThreadedDebug put: [self cCBuildMultiThreadedDebug ];
+ at: #buildNone put:[self cCNoBuildType].
+ ^(d at: buildType) value!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cCBuild (in category 'cmake config build type ') -----
+ cCBuild
+ "example:
+ ^{ '-m32'}"
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cCBuildAssert (in category 'cmake config build type ') -----
+ cCBuildAssert
+ "examples:
+ ^{ '-m32'}
+ ^self ccBuild"
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cCBuildAssertITimerHeartbeat (in category 'cmake config build type ') -----
+ cCBuildAssertITimerHeartbeat
+ "examples:
+ ^{ '-m32'}
+ ^self ccBuild"
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cCBuildDebug (in category 'cmake config build type ') -----
+ cCBuildDebug
+ "examples:
+ ^{ '-m32'}
+ ^self ccBuild"
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cCBuildDebugITimerHeartbeat (in category 'cmake config build type ') -----
+ cCBuildDebugITimerHeartbeat
+ "examples
+ ^{ '-m32'}
+ ^self ccBuild"
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cCBuildITimerHeartbeat (in category 'cmake config build type ') -----
+ cCBuildITimerHeartbeat
+ "examples
+ ^{ '-m32'}
+ ^self ccBuild"
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cCBuildMultiThreaded (in category 'cmake config build type ') -----
+ cCBuildMultiThreaded
+ "examples
+ ^{ '-m32'}
+ ^self ccBuild"
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cCBuildMultiThreadedAssert (in category 'cmake config build type ') -----
+ cCBuildMultiThreadedAssert
+ "examples
+ ^{ '-m32'}
+ ^self ccBuild"
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cCBuildMultiThreadedDebug (in category 'cmake config build type ') -----
+ cCBuildMultiThreadedDebug
+ "examples
+ ^{ '-m32'}
+ ^self ccBuild"
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cCNoBuildType (in category 'cmake config build type ') -----
+ cCNoBuildType
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+ !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cFlags (in category 'gnu build system mvm file') -----
+ cFlags
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ self flag:'tty'. "this should be replaced by cC cXX lDFlags libs "
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self cFlagsBuild];
+ at: #buildAssert put: [self cFlagsBuildAssert];
+ at: #buildAssertITimerHeartbeat put: [self cFlagsBuildAssertITimerHeartbeat];
+ at:#buildDebug put: [self cFlagsBuildDebug];
+ at: #buildDebugITimerHeartbeat put: [self cFlagsBuildDebugITimerHeartbeat ];
+ at: #buildITimerHeartbeat put: [self cFlagsBuildITimerHeartbeat];
+ at: #buildMultiThreaded put: [self cFlagsBuildMultiThreaded];
+ at: #buildMultiThreadedAssert put: [self cFlagsBuildMultiThreadedAssert];
+ at: #buildMultiThreadedDebug put: [self cFlagsBuildMultiThreadedDebug ];
+ at: #buildNone put:[self cFlagsNoBuildType].
+ ^(d at: buildType) value!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cFlagsBuild (in category 'cmake config build type ') -----
+ cFlagsBuild
+ "This will be going away in place of cC, cXX, lDFlags, libs methods
+ currently, it answers a string like this:
+ ^'-msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DCOGMTVM=0'
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cFlagsBuildAssert (in category 'cmake config build type ') -----
+ cFlagsBuildAssert
+ "This will be going away in place of cC, cXX, lDFlags, libs methods
+ ^self cFlagsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cFlagsBuildAssertITimerHeartbeat (in category 'cmake config build type ') -----
+ cFlagsBuildAssertITimerHeartbeat
+ "This will be going away in place of cC, cXX, lDFlags, libs methods
+ ^self cFlagsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cFlagsBuildDebug (in category 'cmake config build type ') -----
+ cFlagsBuildDebug
+ "This will be going away in place of cC, cXX, lDFlags, libs methods
+ ^self cFlagsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cFlagsBuildDebugITimerHeartbeat (in category 'cmake config build type ') -----
+ cFlagsBuildDebugITimerHeartbeat
+ "This will be going away in place of cC, cXX, lDFlags, libs methods
+ ^self cFlagsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cFlagsBuildITimerHeartbeat (in category 'cmake config build type ') -----
+ cFlagsBuildITimerHeartbeat
+ "This will be going away in place of cC, cXX, lDFlags, libs methods
+ ^self cFlagsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cFlagsBuildMultiThreaded (in category 'cmake config build type ') -----
+ cFlagsBuildMultiThreaded
+ "This will be going away in place of cC, cXX, lDFlags, libs methods
+ ^self cFlagsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cFlagsBuildMultiThreadedAssert (in category 'cmake config build type ') -----
+ cFlagsBuildMultiThreadedAssert
+ "This will be going away in place of cC, cXX, lDFlags, libs methods
+ ^self cFlagsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cFlagsBuildMultiThreadedDebug (in category 'cmake config build type ') -----
+ cFlagsBuildMultiThreadedDebug
+ "This will be going away in place of cC, cXX, lDFlags, libs methods
+ ^self cFlagsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cFlagsNoBuildType (in category 'cmake config build type ') -----
+ cFlagsNoBuildType
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+ !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>cXX (in category 'gnu build system mvm file') -----
+ cXX
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self cXXBuild];
+ at: #buildAssert put: [self cXXBuildAssert];
+ at: #buildAssertITimerHeartbeat put: [self cXXBuildAssertITimerHeartbeat];
+ at:#buildDebug put: [self cXXBuildDebug];
+ at: #buildDebugITimerHeartbeat put: [self cXXBuildDebugITimerHeartbeat ];
+ at: #buildITimerHeartbeat put: [self cXXBuildITimerHeartbeat];
+ at: #buildMultiThreaded put: [self cXXBuildMultiThreaded];
+ at: #buildMultiThreadedAssert put: [self cXXBuildMultiThreadedAssert];
+ at: #buildMultiThreadedDebug put: [self cXXBuildMultiThreadedDebug ];
+ at: #buildNone put:[self cXXNoBuildType].
+ ^(d at: buildType) value
+
+ !
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>configureBuild (in category 'cmake configuration') -----
- configureBuild
- "configure this Configuration for a buildType #build"
- self
- preferredIncludesBuild;
- standardIncludesBuild;
- compilerFlagsBuild;
- internalPluginsBuild;
- externalPluginsBuild;
- thirdpartyLibsBuild
- !
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>configureBuildAssert (in category 'cmake configuration') -----
- configureBuildAssert
- self subclassResponsibility!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>configureBuildAssertITimerHeartbeat (in category 'cmake configuration') -----
- configureBuildAssertITimerHeartbeat
- self subclassResponsibility!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>configureBuildDebug (in category 'cmake configuration') -----
- configureBuildDebug
- self subclassResponsibility!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>configureBuildDebugITimerHeartbeat (in category 'cmake configuration') -----
- configureBuildDebugITimerHeartbeat
- self subclassResponsibility!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>configureBuildDebugMultiThreaded (in category 'cmake configuration') -----
- configureBuildDebugMultiThreaded
- self subclassResponsibility!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>configureBuildIHeartbeatTimer (in category 'cmake configuration') -----
- configureBuildIHeartbeatTimer
- self subclassResponsibility!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>configureBuildMultiThreaded (in category 'cmake configuration') -----
- configureBuildMultiThreaded
- self subclassResponsibility!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>configureBuildMultiThreadedAssert (in category 'cmake configuration') -----
- configureBuildMultiThreadedAssert
- self subclassResponsibility!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>configureBuildMultiThreadedDebug (in category 'cmake configuration') -----
- configureBuildMultiThreadedDebug
- self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>configureFlags (in category 'gnu build system mvm file') -----
+ configureFlags
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self configureFlagsBuild];
+ at: #buildAssert put: [self configureFlagsBuildAssert];
+ at: #buildAssertITimerHeartbeat put: [self configureFlagsBuildAssertITimerHeartbeat];
+ at:#buildDebug put: [self configureFlagsBuildDebug];
+ at: #buildDebugITimerHeartbeat put: [self configureFlagsBuildDebugITimerHeartbeat ];
+ at: #buildITimerHeartbeat put: [self configureFlagsBuildITimerHeartbeat];
+ at: #buildMultiThreaded put: [self configureFlagsBuildMultiThreaded];
+ at: #buildMultiThreadedAssert put: [self configureFlagsBuildMultiThreadedAssert];
+ at: #buildMultiThreadedDebug put: [self configureFlagsBuildMultiThreadedDebug ];
+ at: #buildNone put:[self configureFlagsNoBuildType].
+ ^(d at: buildType) value!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>configureFlagsBuild (in category 'cmake config build type ') -----
+ configureFlagsBuild
+ "flags to feed to a configure command in GNU
+ configure --without-npsqueak --with-src=stacksrc --with-plugins=src/plugins --disable-cogi --without-vm-display-fbdev --x-libraries=/usr/lib --without-gl
+
+ ^{
+ '-without-npsqueak'
+ . '--with-src=stacksrc'
+ . '--with-plugins=src/plugins'
+ . '--disable-cogit'
+ . '--without-vm-display-fbdev'
+ . '--x-libraries=/usr/lib'
+ . '--without-gl'
+ }"
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>configureFlagsBuildAssert (in category 'cmake config build type ') -----
+ configureFlagsBuildAssert
+ "flags to feed to a configure command in GNU
+ configure --without-npsqueak --with-src=stacksrc --with-plugins=src/plugins --disable-cogi --without-vm-display-fbdev --x-libraries=/usr/lib --without-gl
+
+ ^{
+ '-without-npsqueak'
+ . '--with-src=stacksrc'
+ . '--with-plugins=src/plugins'
+ . '--disable-cogit'
+ . '--without-vm-display-fbdev'
+ . '--x-libraries=/usr/lib'
+ . '--without-gl'
+ }
+
+ ^self configureFlagsBuild
+ "
+
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>configureFlagsBuildAssertITimerHeartbeat (in category 'cmake config build type ') -----
+ configureFlagsBuildAssertITimerHeartbeat
+ "flags to feed to a configure command in GNU
+ configure --without-npsqueak --with-src=stacksrc --with-plugins=src/plugins --disable-cogi --without-vm-display-fbdev --x-libraries=/usr/lib --without-gl
+
+ ^{
+ '-without-npsqueak'
+ . '--with-src=stacksrc'
+ . '--with-plugins=src/plugins'
+ . '--disable-cogit'
+ . '--without-vm-display-fbdev'
+ . '--x-libraries=/usr/lib'
+ . '--without-gl'
+ }
+
+ ^self configureFlagsBuild
+ "
+
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>configureFlagsBuildDebug (in category 'cmake config build type ') -----
+ configureFlagsBuildDebug
+ "flags to feed to a configure command in GNU
+ configure --without-npsqueak --with-src=stacksrc --with-plugins=src/plugins --disable-cogi --without-vm-display-fbdev --x-libraries=/usr/lib --without-gl
+
+ ^{
+ '-without-npsqueak'
+ . '--with-src=stacksrc'
+ . '--with-plugins=src/plugins'
+ . '--disable-cogit'
+ . '--without-vm-display-fbdev'
+ . '--x-libraries=/usr/lib'
+ . '--without-gl'
+ }
+
+ ^self configureFlagsBuild
+ "
+
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>configureFlagsBuildDebugITimerHeartbeat (in category 'cmake config build type ') -----
+ configureFlagsBuildDebugITimerHeartbeat
+ "flags to feed to a configure command in GNU
+ configure --without-npsqueak --with-src=stacksrc --with-plugins=src/plugins --disable-cogi --without-vm-display-fbdev --x-libraries=/usr/lib --without-gl
+
+ ^{
+ '-without-npsqueak'
+ . '--with-src=stacksrc'
+ . '--with-plugins=src/plugins'
+ . '--disable-cogit'
+ . '--without-vm-display-fbdev'
+ . '--x-libraries=/usr/lib'
+ . '--without-gl'
+ }
+
+ ^self configureFlagsBuild
+ "
+
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>configureFlagsBuildITimerHeartbeat (in category 'cmake config build type ') -----
+ configureFlagsBuildITimerHeartbeat
+ "flags to feed to a configure command in GNU
+ configure --without-npsqueak --with-src=stacksrc --with-plugins=src/plugins --disable-cogi --without-vm-display-fbdev --x-libraries=/usr/lib --without-gl
+
+ ^{
+ '-without-npsqueak'
+ . '--with-src=stacksrc'
+ . '--with-plugins=src/plugins'
+ . '--disable-cogit'
+ . '--without-vm-display-fbdev'
+ . '--x-libraries=/usr/lib'
+ . '--without-gl'
+ }
+
+ ^self configureFlagsBuild
+ "
+
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>configureFlagsBuildMultiThreaded (in category 'cmake config build type ') -----
+ configureFlagsBuildMultiThreaded
+ "flags to feed to a configure command in GNU
+ configure --without-npsqueak --with-src=stacksrc --with-plugins=src/plugins --disable-cogi --without-vm-display-fbdev --x-libraries=/usr/lib --without-gl
+
+ ^{
+ '-without-npsqueak'
+ . '--with-src=stacksrc'
+ . '--with-plugins=src/plugins'
+ . '--disable-cogit'
+ . '--without-vm-display-fbdev'
+ . '--x-libraries=/usr/lib'
+ . '--without-gl'
+ }
+
+ ^self configureFlagsBuild
+ "
+
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>configureFlagsBuildMultiThreadedAssert (in category 'cmake config build type ') -----
+ configureFlagsBuildMultiThreadedAssert
+ "flags to feed to a configure command in GNU
+ configure --without-npsqueak --with-src=stacksrc --with-plugins=src/plugins --disable-cogi --without-vm-display-fbdev --x-libraries=/usr/lib --without-gl
+
+ ^{
+ '-without-npsqueak'
+ . '--with-src=stacksrc'
+ . '--with-plugins=src/plugins'
+ . '--disable-cogit'
+ . '--without-vm-display-fbdev'
+ . '--x-libraries=/usr/lib'
+ . '--without-gl'
+ }
+
+ ^self configureFlagsBuild
+ "
+
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>configureFlagsBuildMultiThreadedDebug (in category 'cmake config build type ') -----
+ configureFlagsBuildMultiThreadedDebug
+ "flags to feed to a configure command in GNU
+ configure --without-npsqueak --with-src=stacksrc --with-plugins=src/plugins --disable-cogi --without-vm-display-fbdev --x-libraries=/usr/lib --without-gl
+
+ ^{
+ '-without-npsqueak'
+ . '--with-src=stacksrc'
+ . '--with-plugins=src/plugins'
+ . '--disable-cogit'
+ . '--without-vm-display-fbdev'
+ . '--x-libraries=/usr/lib'
+ . '--without-gl'
+ }
+
+ ^self configureFlagsBuild
+ "
+
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>configureFlagsNoBuildType (in category 'cmake config build type ') -----
+ configureFlagsNoBuildType
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+ !
Item was changed:
----- Method: CPlatformConfigForSqueak>>configureForBuildType: (in category 'cmake configuration') -----
configureForBuildType: aSymbol
+ "Set my internal state appropriate for my build type".
- | d |
- "provide a concrete builder with the buildType and configureBuildX method to invoke"
- d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
self configureNoBuildType. "reset all internal flags"
+ buildType:= aSymbol. "error checking was handled previously"
+ self
+ preferredIncludes;
+ standardIncludes;
+ configureFlags; ".configure --without-npsqueak --with-src=stacksrc --with-plugins=src/plugins --disable-cogi --without-vm-display-fbdev --x-libraries=/usr/lib --without-gl "
+ cC; " CC=''gcc -m32 -v''"
+ cXX; "CXX=''g++ -m32'"
+ lDFlags; " LDFLAGS=-Wl,-z,now"
+ libs; " LIBS=''-lpthread -luuid''"
+ internalPlugins;
+ externalPlugins.
- d
- at: #build
- put: [self buildType:#build. self configureBuild];
- at: #buildAssert
- put: [self buildType: #buildAssert. self configureBuildAssert];
+
+ !
- at: #buildAssertITimerHeartbeat
- put: [ self buildType: #buildAssertITimerHeartbeat. self configureBuildAssertITimerHeartbeat];
-
- at:#buildDebug
- put: [self buildType: #buildDebug. self configureBuildDebug];
-
- at: #buildDebugITimerHeartbeat
- put: [self buildType: #buildDebugITimerHeartbeat. self configureBuildDebugITimerHeartbeat];
-
- at: #buildITimerHeartbeat
- put: [self buildType:#buildITimerHeartbeat. self configureBuildIHeartbeatTimer];
-
- at: #buildMultiThreaded
- put: [self buildType:#buildMultiThreaded . self configureBuildMultiThreaded];
-
- at: #buildMultiThreadedAssert
- put: [self buildType: #buildMultiThreadedAssert. self configureBuildMultiThreadedAssert];
-
- at: #buildMultiThreadedDebug
- put: [self buildType: #buildMultiThreadedDebug. self configureBuildMultiThreadedDebug].
-
- ^(d at: aSymbol).!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>externalPlugins (in category 'cmake config build type ') -----
+ externalPlugins
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self externalPluginsBuild];
+ at: #buildAssert put: [self externalPluginsBuildAssert];
+ at: #buildAssertITimerHeartbeat put: [self externalPluginsBuildAssertITimerHeartbeat];
+ at:#buildDebug put: [self externalPluginsBuildDebug];
+ at: #buildDebugITimerHeartbeat put: [self externalPluginsBuildDebugITimerHeartbeat ];
+ at: #buildITimerHeartbeat put: [self externalPluginsBuildITimerHeartbeat];
+ at: #buildMultiThreaded put: [self externalPluginsBuildMultiThreaded];
+ at: #buildMultiThreadedAssert put: [self externalPluginsBuildMultiThreadedAssert];
+ at: #buildMultiThreadedDebug put: [self externalPluginsBuildMultiThreadedDebug ];
+ at: #buildNone put:[self externalPluginsNoBuildType].
+ ^(d at: buildType) value!
Item was changed:
----- Method: CPlatformConfigForSqueak>>externalPluginsBuild (in category 'cmake config build type ') -----
externalPluginsBuild
+ "convenience method to customize plugins for this build.
- "convenience method to customize plugins for this build. default is self externalPluins
^self externalPlugins"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>externalPluginsBuildAssert (in category 'cmake config build type ') -----
externalPluginsBuildAssert
+ "convenience method to customize plugins for this build.
- "convenience method to customize plugins for this build. default is self externalPluins
^self externalPlugins"
self subclassResponsibility
!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>externalPluginsBuildNone (in category 'cmake config build type ') -----
- externalPluginsBuildNone
- "SHOULD NOT GET HERE"
- self shouldNotImplement.
- !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>externalPluginsNoBuildType (in category 'cmake config build type ') -----
+ externalPluginsNoBuildType
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+ !
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuild: (in category 'cmake config build type ') -----
extraPluginSettingsBuild: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraPluginSettings'
+ "
- "convenience method to customize plugins for this build. default is
- super extraPluginSettings: maker. "
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildAssert: (in category 'cmake config build type ') -----
extraPluginSettingsBuildAssert: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraPluginSettings'
+ "
- "convenience method to customize plugins for this build. default is
- super extraPluginSettings: maker. "
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildAssertITimerHeartbeat: (in category 'cmake config build type ') -----
extraPluginSettingsBuildAssertITimerHeartbeat: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraPluginSettings'
+ "
- "convenience method to customize plugins for this build. default is
- super extraPluginSettings: maker. "
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildDebug: (in category 'cmake config build type ') -----
extraPluginSettingsBuildDebug: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraPluginSettings'
+ "
- "convenience method to customize plugins for this build. default is
- super extraPluginSettings: maker. "
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildDebugITimerHeartbeat: (in category 'cmake config build type ') -----
extraPluginSettingsBuildDebugITimerHeartbeat: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraPluginSettings'
+ "
- "convenience method to customize plugins for this build. default is
- super extraPluginSettings: maker. "
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildITimerHeartbeat: (in category 'cmake config build type ') -----
extraPluginSettingsBuildITimerHeartbeat: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraPluginSettings'
+ "
- "convenience method to customize plugins for this build. default is
- super extraPluginSettings: maker. "
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildMultiThreaded: (in category 'cmake config build type ') -----
extraPluginSettingsBuildMultiThreaded: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraPluginSettings'
+ "
- "convenience method to customize plugins for this build. default is
- super extraPluginSettings: maker. "
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildMultiThreadedAssert: (in category 'cmake config build type ') -----
extraPluginSettingsBuildMultiThreadedAssert: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraPluginSettings'
+ "
- "convenience method to customize plugins for this build. default is
- super extraPluginSettings: maker. "
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildMultiThreadedDebug: (in category 'cmake config build type ') -----
extraPluginSettingsBuildMultiThreadedDebug: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraPluginSettings'
+ "
- "convenience method to customize plugins for this build. default is
- super extraPluginSettings: maker. "
self subclassResponsibility
!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>extraPluginSettingsBuildNone: (in category 'cmake config build type ') -----
- extraPluginSettingsBuildNone: maker
- "convenience method to customize plugins for this build. default is
- super extraPluginSettings: maker. "
- self subclassResponsibility
-
- !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>extraPluginSettingsNoBuildType: (in category 'cmake config build type ') -----
+ extraPluginSettingsNoBuildType: maker
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+ !
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraVMSettings: (in category 'cmake config build type ') -----
+ 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
+ !
- extraVMSettings: maker "convenience method to customize plugins for this build. default is
- ^super extraVMSettings: maker"
-
- self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuild: (in category 'cmake config build type ') -----
extraVMSettingsBuild: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
+ "
- "convenience method to customize plugins for this build. default is
- ^self extraVMSettings: maker"
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildAssert: (in category 'cmake config build type ') -----
extraVMSettingsBuildAssert: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
+ "
- "convenience method to customize plugins for this build. default is
- ^self extraVMSettings: maker"
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildAssertITimerHeartbeat: (in category 'cmake config build type ') -----
extraVMSettingsBuildAssertITimerHeartbeat: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
+ "
- "convenience method to customize plugins for this build. default is
- ^self extraVMSettings: maker"
-
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildDebug: (in category 'cmake config build type ') -----
extraVMSettingsBuildDebug: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
+ "
- "convenience method to customize plugins for this build. default is
- ^self extraVMSettings: maker"
-
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildDebugITimerHeartbeat: (in category 'cmake config build type ') -----
extraVMSettingsBuildDebugITimerHeartbeat: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
+ "
- "convenience method to customize plugins for this build. default is
- ^self extraVMSettings: maker"
-
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildITimerHeartbeat: (in category 'cmake config build type ') -----
extraVMSettingsBuildITimerHeartbeat: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
+ "
- "convenience method to customize plugins for this build. default is
- ^self extraVMSettings: maker"
-
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildMultiThreaded: (in category 'cmake config build type ') -----
extraVMSettingsBuildMultiThreaded: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
+ "
- "convenience method to customize plugins for this build. default is
- ^self extraVMSettings: maker"
-
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildMultiThreadedAssert: (in category 'cmake config build type ') -----
extraVMSettingsBuildMultiThreadedAssert: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
+ "
- "convenience method to customize plugins for this build. default is
- ^self extraVMSettings: maker"
-
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildMultiThreadedDebug: (in category 'cmake config build type ') -----
extraVMSettingsBuildMultiThreadedDebug: maker
+ "convenience method to customize plugin settings for this buildType.
+ Most configurations do nothing.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'extraVMSettings'
+ "
- "convenience method to customize plugins for this build. default is
- ^self extraVMSettings: maker"
-
self subclassResponsibility!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>extraVMSettingsBuildNone: (in category 'cmake config build type ') -----
- extraVMSettingsBuildNone: maker
- "convenience method to customize plugins for this build. default is
- ^self extraVMSettings: maker"
- self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>extraVMSettingsNoBuildType: (in category 'cmake config build type ') -----
+ extraVMSettingsNoBuildType: maker
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+ !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>internalPlugins (in category 'cmake config build type ') -----
+ internalPlugins
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self internalPluginsBuild];
+ at: #buildAssert put: [self internalPluginsBuildAssert];
+ at: #buildAssertITimerHeartbeat put: [self internalPluginsBuildAssertITimerHeartbeat];
+ at:#buildDebug put: [self internalPluginsBuildDebug];
+ at: #buildDebugITimerHeartbeat put: [self internalPluginsBuildDebugITimerHeartbeat ];
+ at: #buildITimerHeartbeat put: [self internalPluginsBuildITimerHeartbeat];
+ at: #buildMultiThreaded put: [self internalPluginsBuildMultiThreaded];
+ at: #buildMultiThreadedAssert put: [self internalPluginsBuildMultiThreadedAssert];
+ at: #buildMultiThreadedDebug put: [self internalPluginsBuildMultiThreadedDebug ];
+ at: #buildNone put:[self internalPluginsNoBuildType].
+ ^(d at: buildType) value!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>internalPluginsBuildNone (in category 'cmake config build type ') -----
- internalPluginsBuildNone
- "SHOULD NOT GET HERE"
- self shouldNotImplement.
- !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>internalPluginsNoBuildType (in category 'cmake config build type ') -----
+ internalPluginsNoBuildType
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+ !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>interpreterClassNoBuildType (in category 'cmake config build type ') -----
+ interpreterClassNoBuildType
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+
+
+ !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>lDFlags (in category 'gnu build system mvm file') -----
+ lDFlags
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self lDFlagsBuild];
+ at: #buildAssert put: [self lDFlagsBuildAssert];
+ at: #buildAssertITimerHeartbeat put: [self lDFlagsBuildAssertITimerHeartbeat];
+ at:#buildDebug put: [self lDFlagsBuildDebug];
+ at: #buildDebugITimerHeartbeat put: [self lDFlagsBuildDebugITimerHeartbeat ];
+ at: #buildITimerHeartbeat put: [self lDFlagsBuildITimerHeartbeat];
+ at: #buildMultiThreaded put: [self lDFlagsBuildMultiThreaded];
+ at: #buildMultiThreadedAssert put: [self lDFlagsBuildMultiThreadedAssert];
+ at: #buildMultiThreadedDebug put: [self lDFlagsBuildMultiThreadedDebug ];
+ at: #buildNone put:[self lDFlagsNoBuildType].
+ ^(d at: buildType) value
+ !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>lDFlagsBuild (in category 'cmake config build type ') -----
+ lDFlagsBuild
+ "Answer array of flags like the LDFLAGS=-Wl,-z,now line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+ ^ {
+ '-Wl'
+ . '-z'
+ . 'now'
+ }
+
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>lDFlagsBuildAssert (in category 'cmake config build type ') -----
+ lDFlagsBuildAssert
+ "Answer array of flags like the LDFLAGS=-Wl,-z,now line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+ ^ {
+ '-Wl'
+ . '-z'
+ . 'now'
+ }
+
+ ^self lDFlagsBuild
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>lDFlagsBuildAssertITimerHeartbeat (in category 'cmake config build type ') -----
+ lDFlagsBuildAssertITimerHeartbeat
+ "Answer array of flags like the LDFLAGS=-Wl,-z,now line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+ ^ {
+ '-Wl'
+ . '-z'
+ . 'now'
+ }
+
+ ^self lDFlagsBuild
+ "
+ self subclassResponsibility
+ !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>lDFlagsBuildDebug (in category 'cmake config build type ') -----
+ lDFlagsBuildDebug
+ "Answer array of flags like the LDFLAGS=-Wl,-z,now line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+ ^ {
+ '-Wl'
+ . '-z'
+ . 'now'
+ }
+
+ ^self lDFlagsBuild
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>lDFlagsBuildDebugITimerHeartbeat (in category 'cmake config build type ') -----
+ lDFlagsBuildDebugITimerHeartbeat
+ "Answer array of flags like the LDFLAGS=-Wl,-z,now line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+ ^ {
+ '-Wl'
+ . '-z'
+ . 'now'
+ }
+
+ ^self lDFlagsBuild
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>lDFlagsBuildITimerHeartbeat (in category 'cmake config build type ') -----
+ lDFlagsBuildITimerHeartbeat
+ "Answer array of flags like the LDFLAGS=-Wl,-z,now line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+ ^ {
+ '-Wl'
+ . '-z'
+ . 'now'
+ }
+
+ ^self lDFlagsBuild
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>lDFlagsBuildMultiThreaded (in category 'cmake config build type ') -----
+ lDFlagsBuildMultiThreaded
+ "Answer array of flags like the LDFLAGS=-Wl,-z,now line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+ ^ {
+ '-Wl'
+ . '-z'
+ . 'now'
+ }
+
+ ^self lDFlagsBuild
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>lDFlagsBuildMultiThreadedAssert (in category 'cmake config build type ') -----
+ lDFlagsBuildMultiThreadedAssert
+ "Answer array of flags like the LDFLAGS=-Wl,-z,now line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+ ^ {
+ '-Wl'
+ . '-z'
+ . 'now'
+ }
+
+ ^self lDFlagsBuild
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>lDFlagsBuildMultiThreadedDebug (in category 'cmake config build type ') -----
+ lDFlagsBuildMultiThreadedDebug
+ "Answer array of flags like the LDFLAGS=-Wl,-z,now line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+ ^ {
+ '-Wl'
+ . '-z'
+ . 'now'
+ }
+
+ ^self lDFlagsBuild
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>lDFlagsNoBuildType (in category 'cmake config build type ') -----
+ lDFlagsNoBuildType
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+
+ !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>libs (in category 'gnu build system mvm file') -----
+ libs
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self libsBuild];
+ at: #buildAssert put: [self libsBuildAssert];
+ at: #buildAssertITimerHeartbeat put: [self libsBuildAssertITimerHeartbeat];
+ at:#buildDebug put: [self libsBuildDebug];
+ at: #buildDebugITimerHeartbeat put: [self libsBuildDebugITimerHeartbeat ];
+ at: #buildITimerHeartbeat put: [self libsBuildITimerHeartbeat];
+ at: #buildMultiThreaded put: [self libsBuildMultiThreaded];
+ at: #buildMultiThreadedAssert put: [self libsBuildMultiThreadedAssert];
+ at: #buildMultiThreadedDebug put: [self libsBuildMultiThreadedDebug ];
+ at: #buildNone put:[self libsNoBuildType].
+ ^(d at: buildType) value!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>libsBuild (in category 'cmake config build type ') -----
+ libsBuild
+ "Answer array of flags like the LIBS=''-lpthread -luuid'' line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'libsBuild'
+
+ ^ {
+ '-lpthread'
+ . '-luuid'
+ }
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>libsBuildAssert (in category 'cmake config build type ') -----
+ libsBuildAssert
+ "Answer array of flags like the LIBS=''-lpthread -luuid'' line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'libsBuild'
+
+ ^ {
+ '-lpthread'
+ . '-luuid'
+ }
+
+ ^self libsBuild
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>libsBuildAssertITimerHeartbeat (in category 'cmake config build type ') -----
+ libsBuildAssertITimerHeartbeat
+ "Answer array of flags like the LIBS=''-lpthread -luuid'' line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'libsBuild'
+
+ ^ {
+ '-lpthread'
+ . '-luuid'
+ }
+
+ ^self libsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>libsBuildDebug (in category 'cmake config build type ') -----
+ libsBuildDebug
+ "Answer array of flags like the LIBS=''-lpthread -luuid'' line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'libsBuild'
+
+ ^ {
+ '-lpthread'
+ . '-luuid'
+ }
+
+ ^self libsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>libsBuildDebugITimerHeartbeat (in category 'cmake config build type ') -----
+ libsBuildDebugITimerHeartbeat
+ "Answer array of flags like the LIBS=''-lpthread -luuid'' line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'libsBuild'
+
+ ^ {
+ '-lpthread'
+ . '-luuid'
+ }
+
+ ^self libsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>libsBuildITimerHeartbeat (in category 'cmake config build type ') -----
+ libsBuildITimerHeartbeat
+ "Answer array of flags like the LIBS=''-lpthread -luuid'' line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'libsBuild'
+
+ ^ {
+ '-lpthread'
+ . '-luuid'
+ }
+
+ ^self libsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>libsBuildMultiThreaded (in category 'cmake config build type ') -----
+ libsBuildMultiThreaded
+ "Answer array of flags like the LIBS=''-lpthread -luuid'' line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'libsBuild'
+
+ ^ {
+ '-lpthread'
+ . '-luuid'
+ }
+
+ ^self libsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>libsBuildMultiThreadedAssert (in category 'cmake config build type ') -----
+ libsBuildMultiThreadedAssert
+ "Answer array of flags like the LIBS=''-lpthread -luuid'' line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'libsBuild'
+
+ ^ {
+ '-lpthread'
+ . '-luuid'
+ }
+
+ ^self libsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>libsBuildMultiThreadedDebug (in category 'cmake config build type ') -----
+ libsBuildMultiThreadedDebug
+ "Answer array of flags like the LIBS=''-lpthread -luuid'' line in the GNU system's mvm file
+ cat Cog/build.linux32x86/squeak.cog.v3/build/mvm
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'libsBuild'
+
+ ^ {
+ '-lpthread'
+ . '-luuid'
+ }
+
+ ^self libsBuild
+ "
+
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>libsNoBuildType (in category 'cmake config build type ') -----
+ libsNoBuildType
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+
+ !
Item was changed:
+ ----- Method: CPlatformConfigForSqueak>>linkFlags (in category 'cmake config build type ') -----
- ----- Method: CPlatformConfigForSqueak>>linkFlags (in category 'accessing') -----
linkFlags
+ "Depracated Re-route this to the new libs method"
+ |d |
+ self flag:'tty'. "Get rid of this method as 'libs' is the better method name for what we are doing"
+ self deprecated: ' use ''libs'' method instead'.
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self libsBuild];
+ at: #buildAssert put: [self libsBuildAssert];
+ at: #buildAssertITimerHeartbeat put: [self libsBuildAssertITimerHeartbeat];
+ at:#buildDebug put: [self libsBuildDebug];
+ at: #buildDebugITimerHeartbeat put: [self libsBuildDebugITimerHeartbeat ];
+ at: #buildITimerHeartbeat put: [self libsBuildITimerHeartbeat];
+ at: #buildMultiThreaded put: [self libsBuildMultiThreaded ];
+ at: #buildMultiThreadedAssert put: [self libsBuildMultiThreadedAssert];
+ at: #buildMultiThreadedDebug put: [self libsBuildMultiThreadedDebug ];
+ at: #buildNone put:[self libsNoBuildType].
+ ^(d at: buildType) value
+ !
- self subclassResponsibility
-
- "example:
- ^ super linkFlags , ' -m32'
- "!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>postBuildActions: (in category 'cmake config build type ') -----
+ postBuildActions: aMaker
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self postBuildActionsBuild: aMaker];
+ at: #buildAssert put: [self postBuildActionsBuildAssert: aMaker];
+ at: #buildAssertITimerHeartbeat put: [self postBuildActionsBuildAssertITimerHeartbeat: aMaker];
+ at:#buildDebug put: [self postBuildActionsBuildDebug: aMaker];
+ at: #buildDebugITimerHeartbeat put: [self postBuildActionsBuildDebugITimerHeartbeat: aMaker ];
+ at: #buildITimerHeartbeat put: [self postBuildActionsBuildITimerHeartbeat: aMaker];
+ at: #buildMultiThreaded put: [self postBuildActionsBuildMultiThreaded: aMaker ];
+ at: #buildMultiThreadedAssert put: [self postBuildActionsBuildMultiThreadedAssert: aMaker];
+ at: #buildMultiThreadedDebug put: [self postBuildActionsBuildMultiThreadedDebug: aMaker ];
+ at: #buildNone put:[self postBuildActionsNoBuildType: aMaker].
+ ^(d at: buildType) value
+ !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuild: (in category 'cmake config build type ') -----
+ postBuildActionsBuild: aMaker
+ "
+ SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
+
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildAssert: (in category 'cmake config build type ') -----
+ postBuildActionsBuildAssert: aMaker
+ "
+ SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
+
+ ^self postBuildActionsBuild:: aMaker
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildAssertITimerHeartbeat: (in category 'cmake config build type ') -----
+ postBuildActionsBuildAssertITimerHeartbeat: aMaker
+ "
+ SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
+
+ ^self postBuildActionsBuild:: aMaker
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildDebug: (in category 'cmake config build type ') -----
+ postBuildActionsBuildDebug: aMaker
+ "
+ SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
+
+ ^self postBuildActionsBuild:: aMaker
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildDebugITimerHeartbeat: (in category 'cmake config build type ') -----
+ postBuildActionsBuildDebugITimerHeartbeat: aMaker
+ "
+ SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
+
+ ^self postBuildActionsBuild:: aMaker
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildITimerHeartbeat: (in category 'cmake config build type ') -----
+ postBuildActionsBuildITimerHeartbeat: aMaker
+ "
+ SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
+
+ ^self postBuildActionsBuild:: aMaker
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildMultiThreaded: (in category 'cmake config build type ') -----
+ postBuildActionsBuildMultiThreaded: aMaker
+ "
+ SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
+
+ ^self postBuildActionsBuild:: aMaker
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildMultiThreadedAssert: (in category 'cmake config build type ') -----
+ postBuildActionsBuildMultiThreadedAssert: aMaker
+ "
+ SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
+
+ ^self postBuildActionsBuild:: aMaker
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>postBuildActionsBuildMultiThreadedDebug: (in category 'cmake config build type ') -----
+ postBuildActionsBuildMultiThreadedDebug: aMaker
+ "
+ SystemNavigation default browseMethodsWhoseNamesContain: 'postBuildActions'
+
+ ^self postBuildActionsBuild:: aMaker
+ "
+ self subclassResponsibility!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>postBuildActionsNoBuildType: (in category 'cmake config build type ') -----
+ postBuildActionsNoBuildType: aMaker
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+ !
Item was changed:
+ ----- Method: CPlatformConfigForSqueak>>preferredIncludes (in category 'cmake config build type ') -----
- ----- Method: CPlatformConfigForSqueak>>preferredIncludes (in category 'source files') -----
preferredIncludes
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self preferredIncludesBuild];
+ at: #buildAssert put: [self preferredIncludesBuildAssert];
+ at: #buildAssertITimerHeartbeat put: [self preferredIncludesBuildAssertITimerHeartbeat];
+ at:#buildDebug put: [self preferredIncludesBuildDebug];
+ at: #buildDebugITimerHeartbeat put: [self preferredIncludesBuildDebugITimerHeartbeat ];
+ at: #buildITimerHeartbeat put: [self preferredIncludesBuildITimerHeartbeat];
+ at: #buildMultiThreaded put: [self preferredIncludesBuildMultiThreaded];
+ at: #buildMultiThreadedAssert put: [self preferredIncludesBuildMultiThreadedAssert];
+ at: #buildMultiThreadedDebug put: [self preferredIncludesBuildMultiThreadedDebug ];
+ at: #buildNone put:[self preferredIncludesNoBuildType].
+ ^(d at: buildType) value!
- "^#() SystemNavigation default browseMethodsWhoseNamesContain: 'preferredIncludes'"
-
- self subclassResponsibility
- !
Item was changed:
----- Method: CPlatformConfigForSqueak>>preferredIncludesBuild (in category 'cmake config build type ') -----
preferredIncludesBuild
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'preferredIncludes'
+
- "convencience method to customize for this build. default is self preferredIncludes
^self preferredIncludes"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>preferredIncludesBuildAssert (in category 'cmake config build type ') -----
preferredIncludesBuildAssert
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'preferredIncludes'
+
- "convencience method to customize for this build. default is self preferredIncludes
^self preferredIncludes"
+
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>preferredIncludesBuildAssertITimerHeartbeat (in category 'cmake config build type ') -----
preferredIncludesBuildAssertITimerHeartbeat
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'preferredIncludes'
+
- "convencience method to customize for this build. default is self preferredIncludes
^self preferredIncludes"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>preferredIncludesBuildDebug (in category 'cmake config build type ') -----
preferredIncludesBuildDebug
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'preferredIncludes'
+
- "convencience method to customize for this build. default is self preferredIncludes
^self preferredIncludes"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>preferredIncludesBuildDebugITimerHeartbeat (in category 'cmake config build type ') -----
preferredIncludesBuildDebugITimerHeartbeat
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'preferredIncludes'
+
- "convencience method to customize for this build. default is self preferredIncludes
^self preferredIncludes"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>preferredIncludesBuildITimerHeartbeat (in category 'cmake config build type ') -----
preferredIncludesBuildITimerHeartbeat
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'preferredIncludes'
+
- "convencience method to customize for this build. default is self preferredIncludes
^self preferredIncludes"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>preferredIncludesBuildMultiThreaded (in category 'cmake config build type ') -----
preferredIncludesBuildMultiThreaded
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'preferredIncludes'
+
- "convencience method to customize for this build. default is self preferredIncludes
^self preferredIncludes"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>preferredIncludesBuildMultiThreadedAssert (in category 'cmake config build type ') -----
preferredIncludesBuildMultiThreadedAssert
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'preferredIncludes'
+
- "convencience method to customize for this build. default is self preferredIncludes
^self preferredIncludes"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>preferredIncludesBuildMultiThreadedDebug (in category 'cmake config build type ') -----
preferredIncludesBuildMultiThreadedDebug
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'preferredIncludes'
+
- "convencience method to customize for this build. default is self preferredIncludes
^self preferredIncludes"
self subclassResponsibility
!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>preferredIncludesBuildNone (in category 'cmake config build type ') -----
- preferredIncludesBuildNone
- "SHOULD NOT GET HERE"
- self shouldNotImplement.
- !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>preferredIncludesNoBuildType (in category 'cmake config build type ') -----
+ preferredIncludesNoBuildType
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+ !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>setExtraTargetProperties: (in category 'cmake config build type ') -----
+ setExtraTargetProperties: aMaker
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self setExtraTargetPropertiesBuild: aMaker];
+ at: #buildAssert put: [self setExtraTargetPropertiesBuildAssert: aMaker];
+ at: #buildAssertITimerHeartbeat put: [self setExtraTargetPropertiesBuildAssertITimerHeartbeat: aMaker];
+ at:#buildDebug put: [self setExtraTargetPropertiesBuildDebug: aMaker];
+ at: #buildDebugITimerHeartbeat put: [self setExtraTargetPropertiesBuildDebugITimerHeartbeat: aMaker ];
+ at: #buildITimerHeartbeat put: [self setExtraTargetPropertiesBuildITimerHeartbeat: aMaker];
+ at: #buildMultiThreaded put: [self setExtraTargetPropertiesBuildMultiThreaded: aMaker ];
+ at: #buildMultiThreadedAssert put: [self setExtraTargetPropertiesBuildMultiThreadedAssert: aMaker];
+ at: #buildMultiThreadedDebug put: [self setExtraTargetPropertiesBuildMultiThreadedDebug: aMaker ];
+ at: #buildNone put:[self setExtraTargetPropertiesNoBuildType: aMaker].
+ ^(d at: buildType) value
+
+ !
Item was changed:
----- Method: CPlatformConfigForSqueak>>setExtraTargetPropertiesBuild: (in category 'cmake config build type ') -----
setExtraTargetPropertiesBuild: aMaker
+ "convenience method for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setExtraTargetProperties'
+
+ do nothing is an option"
- "convenience method for this buildType. default is self setExtraTargetProperties
- ^self setExtraTargetProperties"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setExtraTargetPropertiesBuildAssert: (in category 'cmake config build type ') -----
setExtraTargetPropertiesBuildAssert: aMaker
+ "convenience method for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setExtraTargetProperties'
+
+ do nothing is an option"
- "convenience method for this buildType. default is self setExtraTargetProperties
- ^self setExtraTargetProperties"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setExtraTargetPropertiesBuildAssertITimerHeartbeat: (in category 'cmake config build type ') -----
setExtraTargetPropertiesBuildAssertITimerHeartbeat: aMaker
+ "convenience method for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setExtraTargetProperties'
+
+ do nothing is an option"
- "convenience method for this buildType. default is self setExtraTargetProperties
- ^self setExtraTargetProperties"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setExtraTargetPropertiesBuildDebug: (in category 'cmake config build type ') -----
setExtraTargetPropertiesBuildDebug: aMaker
+ "convenience method for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setExtraTargetProperties'
+
+ do nothing is an option"
- "convenience method for this buildType. default is self setExtraTargetProperties
- ^self setExtraTargetProperties"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setExtraTargetPropertiesBuildDebugITimerHeartbeat: (in category 'cmake config build type ') -----
setExtraTargetPropertiesBuildDebugITimerHeartbeat: aMaker
+ "convenience method for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setExtraTargetProperties'
+
+ do nothing is an option"
- "convenience method for this buildType. default is self setExtraTargetProperties
- ^self setExtraTargetProperties"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setExtraTargetPropertiesBuildITimerHeartbeat: (in category 'cmake config build type ') -----
setExtraTargetPropertiesBuildITimerHeartbeat: aMaker
+ "convenience method for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setExtraTargetProperties'
+
+ do nothing is an option"
- "convenience method for this buildType. default is self setExtraTargetProperties
- ^self setExtraTargetProperties"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setExtraTargetPropertiesBuildMultiThreaded: (in category 'cmake config build type ') -----
setExtraTargetPropertiesBuildMultiThreaded: aMaker
+ "convenience method for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setExtraTargetProperties'
+
+ do nothing is an option"
- "convenience method for this buildType. default is self setExtraTargetProperties
- ^self setExtraTargetProperties"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setExtraTargetPropertiesBuildMultiThreadedAssert: (in category 'cmake config build type ') -----
setExtraTargetPropertiesBuildMultiThreadedAssert: aMaker
+ "convenience method for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setExtraTargetProperties'
+
+ do nothing is an option"
- "convenience method for this buildType. default is self setExtraTargetProperties
- ^self setExtraTargetProperties"
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setExtraTargetPropertiesBuildMultiThreadedDebug: (in category 'cmake config build type ') -----
setExtraTargetPropertiesBuildMultiThreadedDebug: aMaker
+ "convenience method for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setExtraTargetProperties'
+
+ do nothing is an option"
- "convenience method for this buildType. default is self setExtraTargetProperties
- ^self setExtraTargetProperties"
self subclassResponsibility
!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>setExtraTargetPropertiesBuildNone: (in category 'cmake config build type ') -----
- setExtraTargetPropertiesBuildNone: aMaker
- "SHOULD NOT GET HERE"
- self shouldNotImplement.
- !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>setExtraTargetPropertiesNoBuildType: (in category 'cmake config build type ') -----
+ setExtraTargetPropertiesNoBuildType: aMaker
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+ !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>setGlobalOptions: (in category 'cmake config build type ') -----
+ setGlobalOptions: aMaker
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self setGlobalOptionsBuild: aMaker];
+ at: #buildAssert put: [self setGlobalOptionsBuildAssert: aMaker];
+ at: #buildAssertITimerHeartbeat put: [self setGlobalOptionsBuildAssertITimerHeartbeat: aMaker];
+ at:#buildDebug put: [self setGlobalOptionsBuildDebug: aMaker];
+ at: #buildDebugITimerHeartbeat put: [self setGlobalOptionsBuildDebugITimerHeartbeat: aMaker ];
+ at: #buildITimerHeartbeat put: [self setGlobalOptionsBuildITimerHeartbeat: aMaker];
+ at: #buildMultiThreaded put: [self setGlobalOptionsBuildMultiThreaded: aMaker ];
+ at: #buildMultiThreadedAssert put: [self setGlobalOptionsBuildMultiThreadedAssert: aMaker];
+ at: #buildMultiThreadedDebug put: [self setGlobalOptionsBuildMultiThreadedDebug: aMaker ];
+ at: #buildNone put:[self setGlobalOptionsNoBuildType: aMaker].
+ ^(d at: buildType) value!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>setGlobalOptionsAfterDetermineSystem: (in category 'cmake config build type ') -----
+ setGlobalOptionsAfterDetermineSystem: aMaker
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self setGlobalOptionsAfterDetermineSystemBuild: aMaker];
+ at: #buildAssert put: [self setGlobalOptionsAfterDetermineSystemBuildAssert: aMaker];
+ at: #buildAssertITimerHeartbeat put: [self setGlobalOptionsAfterDetermineSystemBuildAssertITimerHeartbeat: aMaker];
+ at:#buildDebug put: [self setGlobalOptionsAfterDetermineSystemBuildDebug: aMaker];
+ at: #buildDebugITimerHeartbeat put: [self setGlobalOptionsAfterDetermineSystemBuildDebugITimerHeartbeat: aMaker ];
+ at: #buildITimerHeartbeat put: [self setGlobalOptionsAfterDetermineSystemBuildITimerHeartbeat: aMaker];
+ at: #buildMultiThreaded put: [self setGlobalOptionsAfterDetermineSystemBuildMultiThreaded: aMaker ];
+ at: #buildMultiThreadedAssert put: [self setGlobalOptionsAfterDetermineSystemBuildMultiThreadedAssert: aMaker];
+ at: #buildMultiThreadedDebug put: [self setGlobalOptionsAfterDetermineSystemBuildMultiThreadedDebug: aMaker ];
+ at: #buildNone put:[self setGlobalOptionsAfterDetermineSystemNoBuildType: aMaker].
+ ^(d at: buildType) value!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>setGlobalOptionsAfterDetermineSystem:buildType: (in category 'cmake config build type ') -----
- setGlobalOptionsAfterDetermineSystem: aMaker buildType: aBuildType
- "invoke correct setGlobalOptions for this buildType to allow per-buildType customization'"
-
- |d |
- d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
- d
- at: #build put: [self setGlobalOptionsAfterDetermineSystemBuild: aMaker];
- at: #buildAssert put: [self setGlobalOptionsAfterDetermineSystemBuildAssert: aMaker];
- at: #buildAssertITimerHeartbeat put: [self setGlobalOptionsAfterDetermineSystemBuildAssertITimerHeartbeat: aMaker];
- at:#buildDebug put: [self setGlobalOptionsAfterDetermineSystemBuildDebug: aMaker];
- at: #buildITimerHeartbeat put: [self setGlobalOptionsAfterDetermineSystemBuildITimerHeartbeat: aMaker];
- at: #buildMultiThreaded put: [self setGlobalOptionsAfterDetermineSystemBuildMultiThreaded: aMaker ];
- at: #buildMultiThreadedAssert put: [self setGlobalOptionsAfterDetermineSystemBuildMultiThreadedAssert: aMaker];
- at: #buildMultiThreadedDebug put: [self setGlobalOptionsAfterDetermineSystemBuildMultiThreadedDebug: aMaker ];
- at: #buildNone put:[self setGlobalOptionsBuildNone: aMaker].
-
- ^(d at: ( aBuildType)) value
- !
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsAfterDetermineSystemBuild: (in category 'cmake config build type ') -----
setGlobalOptionsAfterDetermineSystemBuild: aMaker
+ "convenience method to customize for this build type.
- "convenience method to customize setGlobalOptionsAfterDetermineSystemBuild: aMaker for this build type.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptionsAfterDetermineSystem'
+
+ usually do nothing"
- Default is in CPlatformConfig>AfterDetermineSystemBuild aMaker setGlobalOptions: aMaker
- ^super setGlobalOptionsAfterDetermineSystemBuild: aMaker "
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsAfterDetermineSystemBuildAssert: (in category 'cmake config build type ') -----
setGlobalOptionsAfterDetermineSystemBuildAssert: aMaker
+ "convenience method to customize for this build type.
- "convenience method to customize setGlobalOptionsAfterDetermineSystemBuild: aMaker for this build type.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptionsAfterDetermineSystem'
+
+ usually do nothing"
- Default is in CPlatformConfig>AfterDetermineSystemBuild aMaker setGlobalOptions: aMaker
- ^super setGlobalOptionsAfterDetermineSystemBuildAssert: aMaker "
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsAfterDetermineSystemBuildAssertITimerHeartbeat: (in category 'cmake config build type ') -----
setGlobalOptionsAfterDetermineSystemBuildAssertITimerHeartbeat: aMaker
+ "convenience method to customize for this build type.
- "convenience method to customize setGlobalOptionsAfterDetermineSystemBuild: aMaker for this build type.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptionsAfterDetermineSystem'
+
+ usually do nothing"
- Default is in CPlatformConfig>AfterDetermineSystemBuild aMaker setGlobalOptions: aMaker
- ^super setGlobalOptionsAfterDetermineSystemBuildAssertITimerHeartbeat: aMaker "
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsAfterDetermineSystemBuildDebug: (in category 'cmake config build type ') -----
setGlobalOptionsAfterDetermineSystemBuildDebug: aMaker
+ "convenience method to customize for this build type.
- "convenience method to customize setGlobalOptionsAfterDetermineSystemBuild: aMaker for this build type.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptionsAfterDetermineSystem'
+
+ usually do nothing"
- Default is in CPlatformConfig>AfterDetermineSystemBuild aMaker setGlobalOptions: aMaker
- ^super setGlobalOptionsAfterDetermineSystemBuildDebug: aMaker "
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsAfterDetermineSystemBuildDebugITimerHeartbeat: (in category 'cmake config build type ') -----
setGlobalOptionsAfterDetermineSystemBuildDebugITimerHeartbeat: aMaker
+ "convenience method to customize for this build type.
- "convenience method to customize setGlobalOptionsAfterDetermineSystemBuild: aMaker for this build type.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptionsAfterDetermineSystem'
+
+ usually do nothing"
- Default is in CPlatformConfig>AfterDetermineSystemBuild aMaker setGlobalOptions: aMaker
- ^super setGlobalOptionsAfterDetermineSystemBuildDebugITimerHeartbeat: aMaker "
self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsAfterDetermineSystemBuildITimerHeartbeat: (in category 'cmake config build type ') -----
setGlobalOptionsAfterDetermineSystemBuildITimerHeartbeat: aMaker
+ "convenience method to customize for this build type.
- "convenience method to customize setGlobalOptionsAfterDetermineSystemBuild: aMaker for this build type.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptionsAfterDetermineSystem'
+
+ usually do nothing"
+ self subclassResponsibility.!
- Default is in CPlatformConfig>AfterDetermineSystemBuild aMaker setGlobalOptions: aMaker
- ^super setGlobalOptionsAfterDetermineSystemBuildMultiThreaded: aMaker "
- !
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsAfterDetermineSystemBuildMultiThreaded: (in category 'cmake config build type ') -----
setGlobalOptionsAfterDetermineSystemBuildMultiThreaded: aMaker
+ "convenience method to customize for this build type.
- "convenience method to customize setGlobalOptionsAfterDetermineSystemBuild: aMaker for this build type.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptionsAfterDetermineSystem'
- Default is in CPlatformConfig>AfterDetermineSystemBuild aMaker setGlobalOptions: aMaker
- ^super setGlobalOptionsAfterDetermineSystemBuildMultiThreaded: aMaker "
+ usually do nothing"
+ self subclassResponsibility.!
- self subclassResponsibility
-
- !
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsAfterDetermineSystemBuildMultiThreadedDebug: (in category 'cmake config build type ') -----
setGlobalOptionsAfterDetermineSystemBuildMultiThreadedDebug: aMaker
+ "convenience method to customize for this build type.
- "convenience method to customize setGlobalOptionsAfterDetermineSystemBuild: aMaker for this build type.
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptionsAfterDetermineSystem'
- Default is in CPlatformConfig>AfterDetermineSystemBuild aMaker setGlobalOptions: aMaker
- ^super setGlobalOptionsAfterDetermineSystemBuildMultiThreadedDebug: aMaker "
- self subclassResponsibility
+ usually do nothing"
+ self subclassResponsibility.!
- !
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>setGlobalOptionsAfterDetermineSystemBuildNone (in category 'cmake config build type ') -----
- setGlobalOptionsAfterDetermineSystemBuildNone
- "SHOULD NOT GET HERE"
- self shouldNotImplement.!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>setGlobalOptionsAfterDetermineSystemNoBuildType: (in category 'cmake config build type ') -----
+ setGlobalOptionsAfterDetermineSystemNoBuildType: aMaker
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsBuild: (in category 'cmake config build type ') -----
setGlobalOptionsBuild: aMaker
+ "convenience method to customize for this build type.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptions'
+
+ usually do nothing"
+
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsBuildAssertITimerHeartbeat: (in category 'cmake config build type ') -----
setGlobalOptionsBuildAssertITimerHeartbeat: aMaker
+ "convenience method to customize for this build type.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptions'
+
+ usually do nothing"
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsBuildDebug: (in category 'cmake config build type ') -----
setGlobalOptionsBuildDebug: aMaker
+ "convenience method to customize for this build type.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptions'
+
+ usually do nothing"
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsBuildDebugITimerHeartbeat: (in category 'cmake config build type ') -----
setGlobalOptionsBuildDebugITimerHeartbeat: aMaker
+ "convenience method to customize for this build type.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptions'
+
+ usually do nothing"
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsBuildITimerHeartbeat: (in category 'cmake config build type ') -----
setGlobalOptionsBuildITimerHeartbeat: aMaker
+ "convenience method to customize for this build type.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptions'
+
+ usually do nothing"
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsBuildMultiThreaded: (in category 'cmake config build type ') -----
setGlobalOptionsBuildMultiThreaded: aMaker
+ "convenience method to customize for this build type.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptions'
+
+ usually do nothing"
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsBuildMultiThreadedAssert: (in category 'cmake config build type ') -----
setGlobalOptionsBuildMultiThreadedAssert: aMaker
+ "convenience method to customize for this build type.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptions'
+
+ usually do nothing"
self subclassResponsibility!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setGlobalOptionsBuildMultiThreadedDebug: (in category 'cmake config build type ') -----
setGlobalOptionsBuildMultiThreadedDebug: aMaker
+ "convenience method to customize for this build type.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptions'
+
+ usually do nothing"
self subclassResponsibility!
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>setGlobalOptionsBuildNone: (in category 'cmake config build type ') -----
- setGlobalOptionsBuildNone: aMaker
- "SHOULD NOT HAPPEN"
- self halt.!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>setGlobalOptionsNoBuildType: (in category 'cmake config build type ') -----
+ setGlobalOptionsNoBuildType: aMaker
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.!
Item was changed:
----- Method: CPlatformConfigForSqueak>>setupDirectories: (in category 'squeak compatability') -----
setupDirectories: aMaker
| dirsInclude |
+ " write the directories in separate include file. "
+ self flag: 'tty'. "This message send is not re-routed per build type. My reasoning is that each variable here is set at configure time."
-
- " write the directories in separate include file"
dirsInclude := aMaker captureOutputDuring: [
aMaker
set: #topDir toString: (self topDir fullName);
set: #buildDir toString: (self buildDir ifNil: ['${topDir}/build'] ifNotNil: [self buildDir fullName] );
set: #thirdpartyDir toString: '${buildDir}/thirdParty';
set: #platformsDir toString: self platformsDir;
set: #srcDir toString: self srcDir pathName;
set: #srcPluginsDir toString: (pluginsDir ifNil: [ '${srcDir}/plugins' ]);
set: #srcVMDir toString: '${srcDir}/vm';
set: #platformName toString: self platformName;
set: #targetPlatform to: '${platformsDir}/${platformName}';
set: #crossDir toString: '${platformsDir}/Cross';
set: #platformVMDir toString: '${targetPlatform}/vm';
set: #outputDir toString: self outputDir fullName.
].
self write: dirsInclude toFile: 'directories.cmake'.
aMaker include: 'directories.cmake'.
!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>standardIncludes (in category 'cmake config build type ') -----
+ standardIncludes
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self standardIncludesBuild];
+ at: #buildAssert put: [self standardIncludesBuildAssert];
+ at: #buildAssertITimerHeartbeat put: [self standardIncludesBuildAssertITimerHeartbeat];
+ at:#buildDebug put: [self standardIncludesBuildDebug];
+ at: #buildDebugITimerHeartbeat put: [self standardIncludesBuildDebugITimerHeartbeat ];
+ at: #buildITimerHeartbeat put: [self standardIncludesBuildITimerHeartbeat];
+ at: #buildMultiThreaded put: [self standardIncludesBuildMultiThreaded];
+ at: #buildMultiThreadedAssert put: [self standardIncludesBuildMultiThreadedAssert];
+ at: #buildMultiThreadedDebug put: [self standardIncludesBuildMultiThreadedDebug ];
+ at: #buildNone put:[self standardIncludesNoBuildType].
+ ^(d at: buildType) value!
Item was changed:
----- Method: CPlatformConfigForSqueak>>standardIncludesBuild (in category 'cmake config build type ') -----
standardIncludesBuild
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'standardIncludes'
+
+ Answer array of strings with relative paths to include files (appropriate for this platform?)
+ For eexample, SerialPlugin lives in several places.
+
+ Cog/src/plugins/SerialPlugin
+ Cog/platforms/Mac OS/plugins/SerialPlugin
+ Cog/platforms/win32/plugins/SerialPlugin
+ Cog/platforms/unix/plugins/SerialPlugin
+ Cog/platforms/iOS/vm/src/vm/intplugins/SerialPlugin
+ .Cog/platforms/Cross/plugins/SerialPlugin
+
+ ^ #(
+ '${crossDir}/plugins/SerialPlugin'
+ ...
+ )
+ "
+ self subclassResponsibility!
- "convencience method to customize for this build. default is self standardIncludes
- ^self standardIncludes"
- !
Item was changed:
----- Method: CPlatformConfigForSqueak>>standardIncludesBuildAssert (in category 'cmake config build type ') -----
standardIncludesBuildAssert
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'standardIncludes'
+
+ ^ #(
+ '${crossDir}/plugins/SerialPlugin'
+ ...
+ )
+
+ ^self standardIncludesBuild
+ "
+ self subclassResponsibility!
- "convencience method to customize for this build. default is self standardIncludes
- ^self standardIncludes"
- !
Item was changed:
----- Method: CPlatformConfigForSqueak>>standardIncludesBuildAssertITimerHeartbeat (in category 'cmake config build type ') -----
standardIncludesBuildAssertITimerHeartbeat
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'standardIncludes'
+
+ ^ #(
+ '${crossDir}/plugins/SerialPlugin'
+ ...
+ )
+
+ ^self standardIncludesBuild
+ "
+ self subclassResponsibility!
- "convencience method to customize for this build. default is self standardIncludes
- ^self standardIncludes"
- !
Item was changed:
----- Method: CPlatformConfigForSqueak>>standardIncludesBuildDebug (in category 'cmake config build type ') -----
standardIncludesBuildDebug
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'standardIncludes'
+
+ ^ #(
+ '${crossDir}/plugins/SerialPlugin'
+ ...
+ )
+
+ ^self standardIncludesBuild
+ "
+ self subclassResponsibility!
- "convencience method to customize for this build. default is self standardIncludes
- ^self standardIncludes"
- !
Item was changed:
----- Method: CPlatformConfigForSqueak>>standardIncludesBuildITimerHeartbeat (in category 'cmake config build type ') -----
standardIncludesBuildITimerHeartbeat
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'standardIncludes'
+
+ ^ #(
+ '${crossDir}/plugins/SerialPlugin'
+ ...
+ )
+
+ ^self standardIncludesBuild
+ "
+ self subclassResponsibility!
- "convencience method to customize for this build. default is self standardIncludes
- ^self standardIncludes"
- !
Item was changed:
----- Method: CPlatformConfigForSqueak>>standardIncludesBuildMultiThreaded (in category 'cmake config build type ') -----
standardIncludesBuildMultiThreaded
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'standardIncludes'
+
+ ^ #(
+ '${crossDir}/plugins/SerialPlugin'
+ ...
+ )
+
+ ^self standardIncludesBuild
+ "
+ self subclassResponsibility!
- "convencience method to customize for this build. default is self standardIncludes
- ^self standardIncludes"
- !
Item was changed:
----- Method: CPlatformConfigForSqueak>>standardIncludesBuildMultiThreadedAssert (in category 'cmake config build type ') -----
standardIncludesBuildMultiThreadedAssert
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'standardIncludes'
+
+ ^ #(
+ '${crossDir}/plugins/SerialPlugin'
+ ...
+ )
+
+ ^self standardIncludesBuild
+ "
+ self subclassResponsibility!
- "convencience method to customize for this build. default is self standardIncludes
- ^self standardIncludes"
- !
Item was changed:
----- Method: CPlatformConfigForSqueak>>standardIncludesBuildMultiThreadedDebug (in category 'cmake config build type ') -----
standardIncludesBuildMultiThreadedDebug
+ "convencience method to customize for this build.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'standardIncludes'
+
+ ^ #(
+ '${crossDir}/plugins/SerialPlugin'
+ ...
+ )
+
+ ^self standardIncludesBuild
+ "
+ self subclassResponsibility!
- "convencience method to customize for this build. default is self standardIncludes
- ^self standardIncludes"
- !
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>standardIncludesBuildNone (in category 'cmake config build type ') -----
- standardIncludesBuildNone
- "SHOULD NOT GET HERE"
- self shouldNotImplement.
- !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>standardIncludesNoBuildType (in category 'cmake config build type ') -----
+ standardIncludesNoBuildType
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+ !
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>thirdPartyLibs (in category 'cmake config build type ') -----
+ thirdPartyLibs
+ "Route this message send to the message appropriate for my buildType "
+ |d |
+ d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
+ d
+ at: #build put: [self thirdPartyLibsBuild];
+ at: #buildAssert put: [self thirdPartyLibsBuildAssert];
+ at: #buildAssertITimerHeartbeat put: [self thirdPartyLibsBuildAssertITimerHeartbeat];
+ at:#buildDebug put: [self thirdPartyLibsBuildDebug];
+ at: #buildDebugITimerHeartbeat put: [self thirdPartyLibsBuildDebugITimerHeartbeat ];
+ at: #buildITimerHeartbeat put: [self thirdPartyLibsBuildITimerHeartbeat];
+ at: #buildMultiThreaded put: [self thirdPartyLibsBuildMultiThreaded];
+ at: #buildMultiThreadedAssert put: [self thirdPartyLibsBuildMultiThreadedAssert];
+ at: #buildMultiThreadedDebug put: [self thirdPartyLibsBuildMultiThreadedDebug ];
+ at: #buildNone put:[self thirdPartyLibsNoBuildType].
+ ^(d at: buildType) value
+ !
Item was changed:
----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuild (in category 'cmake config build type ') -----
thirdpartyLibsBuild
+ "convenience method to customize third party libs for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+
+ do nothing is an option
+ "
+ self subclassResponsibility
- "convenience method to customize third party libs for this buildType. default is self thirdpartyLibs
- ^self thirdpartyLibs"
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildAssert (in category 'cmake config build type ') -----
thirdpartyLibsBuildAssert
+ "convenience method to customize third party libs for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+
- "convenience method to customize third party libs for this buildType. default is self thirdpartyLibs
^self thirdpartyLibs"
+ self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildAssertITimerHeartbeat (in category 'cmake config build type ') -----
thirdpartyLibsBuildAssertITimerHeartbeat
+ "convenience method to customize third party libs for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+
- "convenience method to customize third party libs for this buildType. default is self thirdpartyLibs
^self thirdpartyLibs"
+ self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildDebug (in category 'cmake config build type ') -----
thirdpartyLibsBuildDebug
+ "convenience method to customize third party libs for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+
- "convenience method to customize third party libs for this buildType. default is self thirdpartyLibs
^self thirdpartyLibs"
+ self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildDebugITimerHeartbeat (in category 'cmake config build type ') -----
thirdpartyLibsBuildDebugITimerHeartbeat
+ "convenience method to customize third party libs for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+
- "convenience method to customize third party libs for this buildType. default is self thirdpartyLibs
^self thirdpartyLibs"
+ self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildITimerHeartbeat (in category 'cmake config build type ') -----
thirdpartyLibsBuildITimerHeartbeat
+ "convenience method to customize third party libs for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+
- "convenience method to customize third party libs for this buildType. default is self thirdpartyLibs
^self thirdpartyLibs"
+ self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildMultiThreaded (in category 'cmake config build type ') -----
thirdpartyLibsBuildMultiThreaded
+ "convenience method to customize third party libs for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+
- "convenience method to customize third party libs for this buildType. default is self thirdpartyLibs
^self thirdpartyLibs"
+ self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildMultiThreadedAssert (in category 'cmake config build type ') -----
thirdpartyLibsBuildMultiThreadedAssert
+ "convenience method to customize third party libs for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+
- "convenience method to customize third party libs for this buildType. default is self thirdpartyLibs
^self thirdpartyLibs"
+ self subclassResponsibility
!
Item was changed:
----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildMultiThreadedDebug (in category 'cmake config build type ') -----
thirdpartyLibsBuildMultiThreadedDebug
+ "convenience method to customize third party libs for this buildType.
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'addThirdpartyLibrary:'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'processThirdpartyLibraries'
+
+ SystemNavigation default browseMethodsWhoseNamesContain: 'thirdpartyLibs'
+
- "convenience method to customize third party libs for this buildType. default is self thirdpartyLibs
^self thirdpartyLibs"
+ self subclassResponsibility
!
Item was added:
+ ----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildNoBuildType (in category 'cmake config build type ') -----
+ thirdpartyLibsBuildNoBuildType
+ "SHOULD NOT GET HERE"
+ self shouldNotImplement.
+ !
Item was removed:
- ----- Method: CPlatformConfigForSqueak>>thirdpartyLibsBuildNone (in category 'cmake config build type ') -----
- thirdpartyLibsBuildNone
- "SHOULD NOT GET HERE"
- self shouldNotImplement.
- !
Item was changed:
----- Method: Linux64x86w32BitConfig>>preferredIncludes (in category 'source files') -----
preferredIncludes
self flag:'tty'. "pharo does not support newspeak or sista., yet sets this in CogUnixConfig. Is this appropriate here? Revisit when coding newspeak etc"
^ #( '${targetPlatform}/plugins/AioPlugin'
'${targetPlatform}/plugins/B3DAcceleratorPlugin'
'${targetPlatform}/plugins/DropPlugin'
'${targetPlatform}/plugins/FilePlugin'
'${targetPlatform}/plugins/HostWindowPlugin'
'${targetPlatform}/plugins/JPEGReadWriter2Plugin'
'${targetPlatform}/plugins/LocalePlugin'
'${targetPlatform}/plugins/Mpeg3Plugin'
'${targetPlatform}/plugins/PseudoTTYPlugin'
'${targetPlatform}/plugins/SerialPlugin'
'${targetPlatform}/plugins/SoundPlugin'
'${crossDir}/plugins/SoundGenerationPlugin'
'${targetPlatform}/plugins/SqueakSSL'
'${targetPlatform}/plugins/UnixOSProcessPlugin'
'${targetPlatform}/plugins/AsynchFilePlugin'
'${targetPlatform}/plugins/BochsIA32Plugin'
'${targetPlatform}/plugins/FileCopyPlugin'
'${targetPlatform}/plugins/FloatMathPlugin'
'${targetPlatform}/plugins/InternetConfigPlugin'
'${targetPlatform}/plugins/JoystickTabletPlugin'
'${targetPlatform}/plugins/MIDIPlugin'
'${targetPlatform}/plugins/PrintJobPlugin'
'${targetPlatform}/plugins/SecurityPlugin'
+ '${crossDir}/plugins/SocketPlugin'
- '${targetPlatform}/plugins/SocketPlugin'
'${targetPlatform}/plugins/SqueakFFIPrims'
'${targetPlatform}/plugins/UUIDPlugin'
'${targetPlatform}/plugins/XDisplayControlPlugin'
)
"SystemNavigation default browseMethodsWhoseNamesContain: 'preferredIncludes'"
!
Item was added:
+ ----- Method: Linux64x86w32BitConfig>>setGlobalOptions: (in category 'utils') -----
+ setGlobalOptions: maker
+
+ maker set: 'CMAKE_C_COMPILER' to: '/usr/bin/gcc'.
+ maker set: 'CMAKE_CXX_COMPILER' to: '/usr/bin/g++'.
+ " maker set: 'CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH}' to: ' /usr/lib/gcc/x86_64-slackware-linux/4.8.2/'.
+ set any CMake global options, before declaring a project in cmake file
+
+ set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} /opt/local/lib)
+ SystemNavigation default browseMethodsWhoseNamesContain: 'setGlobalOptions:'
+ "!
Item was removed:
- ----- Method: Linux64x86w32BitSqueakCogV3SlackwareNoGLConfig>>commonCompilerFlags (in category 'compiler flags') -----
- commonCompilerFlags
- " LSB_FIRST=1 means that target platform is little endian. set it to 0 for big-endian platforms"
- ^ {
- '-DLSB_FIRST=1'.
- '-DUSE_GLOBAL_STRUCT=0'.
- '-DCOGMTVM=0'.
- '-m32'.
- '-DENABLE_FAST_BLT ' }
- !
Item was added:
+ ----- Method: Linux64x86w32BitSqueakCogV3SlackwareNoGLConfig>>compilerFlagsBuild (in category 'compiler flags') -----
+ compilerFlagsBuild
+ ^ {
+ '-m32'.
+ '-g0'.
+ '-O2'.
+ '-fno-tree-pre'.
+ '-fno-caller-saves'.
+ '-msse2'.
+ '-D_GNU_SOURCE'.
+ '-DNDEBUG'.
+ '-DITIMER_HEARTBEAT=1'.
+ '-DNO_VM_PROFILE=1'.
+ '-DDEBUGVM=0' }!
Item was removed:
- ----- Method: Linux64x86w32BitSqueakCogV3SlackwareNoGLConfig>>compilerFlagsRelease (in category 'compiler flags') -----
- compilerFlagsRelease
-
- ^ {
- '-g0'.
- '-O2'.
- '-fno-tree-pre'.
- '-fno-caller-saves'.
- '-msse2'.
- '-D_GNU_SOURCE'.
- '-DNDEBUG'.
- '-DITIMER_HEARTBEAT=1'.
- '-DNO_VM_PROFILE=1'.
- '-DDEBUGVM=0' }!
Item was changed:
----- Method: Linux64x86w32BitSqueakCogV3SlackwareNoGLConfig>>defaultExternalPlugins (in category 'plugins') -----
defaultExternalPlugins
+ "Removed the B3DAcceleratorPlugin since we don't have OpenGL bindings here"
+ ^ (super defaultExternalPlugins copyWithoutAll: #(#B3DAcceleratorPlugin #ThreadedIA32FFIPlugin #InternetConfigPlugin #FT2Plugin))!
- ^ super defaultExternalPlugins copyWithoutAll: #(#B3DAcceleratorPlugin #BochsIA32Plugin)
- !
Item was added:
+ ----- Method: Linux64x86w32BitSqueakCogV3SlackwareNoGLConfig>>defaultInternalPlugins (in category 'plugins') -----
+ defaultInternalPlugins
+ "Removed the B3DAcceleratorPlugin since we don't have OpenGL bindings here"
+ ^ (super defaultInternalPlugins copyWithoutAll: #(#IA32ABIPlugin #JoystickTabletPlugin #StarSqueakPlugin #SurfacePlugin #SqueakFFIPrims #ThreadedIA32FFIPlugin))!
Item was changed:
+ ----- Method: Linux64x86w32BitSqueakCogV3SlackwareNoGLConfig>>dirBuildLanguageVMMM (in category 'cmake directory ') -----
- ----- Method: Linux64x86w32BitSqueakCogV3SlackwareNoGLConfig>>dirBuildLanguageVMMM (in category 'as yet unclassified') -----
dirBuildLanguageVMMM
^self squeakCogV3!
Item was added:
+ ----- Method: Linux64x86w32BitSqueakCogV3SlackwareNoGLConfig>>linkFlagsBuild (in category 'compiler flags') -----
+ linkFlagsBuild
+ ^ '-lSM -lICE -ldl -lpthread -lm -lnsl -lX11'!
Item was added:
+ ----- Method: SqueakBSDConfig>>compilerFlagsAssert (in category 'compiler flags') -----
+ compilerFlagsAssert
+
+ ^ {
+ '-g3'.
+ '-O0'.
+ '-msse2'.
+ '-D_GNU_SOURCE'.
+ '-DITIMER_HEARTBEAT=1'.
+ '-DNO_VM_PROFILE=1'.
+ '-DDEBUGVM=1' }!
Item was added:
+ ----- Method: SqueakBSDConfig>>compilerFlagsDebug (in category 'compiler flags') -----
+ compilerFlagsDebug
+
+ ^ {
+ '-g3'.
+ '-O0'.
+ '-msse2'.
+ '-D_GNU_SOURCE'.
+ '-DITIMER_HEARTBEAT=1'.
+ '-DNO_VM_PROFILE=1'.
+ '-DDEBUGVM=1' }!
Item was changed:
----- Method: SqueakCMakeVMMakerAbstractBuilder class>>availableBuildTypesFor: (in category 'queries') -----
availableBuildTypesFor: aSymbol
+ self break.
default ifNil:[default:= self new].
^default availableBuildTypesFor: aSymbol!
Item was removed:
- ----- Method: SqueakCMakeVMMakerAbstractBuilder class>>availableBuilds (in category 'queries') -----
- availableBuilds
- default ifNil:[default:= self new].
- ^default availableBuilds!
Item was changed:
----- Method: SqueakCMakeVMMakerAbstractBuilder>>availableBuildTypes (in category 'queries') -----
availableBuildTypes
+ "abstract class pass through for concrete instance"
+ ^self availableBuildTypes: (self configurationsCategory)!
- ^self buildTypeAndDirectoryInfo keys asSortedCollection
- !
Item was added:
+ ----- Method: SqueakCMakeVMMakerAbstractBuilder>>availableBuildTypes: (in category 'queries') -----
+ availableBuildTypes: aCategoryName
+ "answer the CMakeVMakerSqueak configurations in a Smalltalk category"
+ ^((self configurationDictionary:aCategoryName) keys asSortedCollection) sort
+
+ !
Item was changed:
----- Method: SqueakCMakeVMMakerAbstractBuilder>>availableBuildTypesFor: (in category 'queries') -----
availableBuildTypesFor: aSymbol
"answer a build type. somthing like #assert, #debug, #release. Each configuration is in charge of letting us know what it does"
[
((Smalltalk at: aSymbol) category) = (self configurationsCategory) "verify the class is handled by this concrete builder"
ifTrue:[ ^self availableBuildTypesFor: aSymbol inCategory: ((Smalltalk at: aSymbol) category).] "if so, go get its info"
ifFalse:[^self userErrorInvalidTarget: aSymbol]
] ifError:[^'BuildTypeForTarget: ''', aSymbol , ''' not found' ].
^nil.!
Item was changed:
----- Method: SqueakCMakeVMMakerAbstractBuilder>>availableBuildTypesFor:inCategory: (in category 'queries') -----
availableBuildTypesFor: aSymbol inCategory: aCategoryName
|d |
"extract the CMakeVMakerConfigurationInfo object for a configuration and return the availableBuildTypes ."
d:=(self configurationDictionary:aCategoryName) at: aSymbol ifAbsent:[^SqueakCMakeVMMakerAbstractBuilder default noBuildConfigurations].
^d availableBuildTypes
!
Item was removed:
- ----- Method: SqueakCMakeVMMakerAbstractBuilder>>availableBuilds (in category 'queries') -----
- availableBuilds
- "abstract class pass through for concrete instance"
- ^self availableBuilds: (self configurationsCategory)!
Item was changed:
----- Method: SqueakCMakeVMMakerAbstractBuilder>>configureABuildFor:withBuildType: (in category 'building') -----
configureABuildFor: configSymbol withBuildType: typeSymbol
| i |
self flag:'tty'. "excludeFromBuild returning True does not exit gracefully"
"Do some sanity checks, then set the internal state of a Configuration for a particular build type. "
[
((Smalltalk at: configSymbol) category) = (self configurationsCategory) "verify the class is handled by this concrete builder"
ifTrue:[
config := (Smalltalk at: configSymbol) new. "verify this config can handle this build type."
config excludeFromBuild "has a developer excluded this build manually?"
ifTrue:[^self userErrorConfigMarkedAsExcludeFromBuild: configSymbol].
+ i:=config availableBuildTypes indexOf:typeSymbol
- i:=config availableBuilds indexOf:typeSymbol
ifAbsent:[^self userErrorInvalidBuildType: typeSymbol "this config does not support this build type"
forConfiguration: configSymbol
+ hasTypes: config availableBuildTypes].
+ self break.
- hasTypes: config availableBuilds].
-
(config configureForBuildType: typeSymbol) value. "config configure yourself"
^self]
ifFalse:[^self userErrorInvalidTarget: configSymbol]
] ifError:[^'error configureABuildFor: ''', configSymbol].
^nil.
!
Item was changed:
----- Method: SqueakCMakeVMMakerAbstractBuilder>>generate (in category 'building') -----
generate
(config isKindOf: CPlatformConfig)
ifTrue:[config generate]
!
Item was added:
+ ----- Method: SqueakFreeBSDSqueakCogV3Config>>compilerFlagsAssert (in category 'compiler flags') -----
+ compilerFlagsAssert
+
+ ^ {
+ '-g3'.
+ '-O0'.
+ '-msse2'.
+ '-D_GNU_SOURCE'.
+ '-DITIMER_HEARTBEAT=1'.
+ '-DNO_VM_PROFILE=1'.
+ '-DDEBUGVM=1' }!
Item was added:
+ ----- Method: SqueakFreeBSDSqueakCogV3Config>>compilerFlagsBuild (in category 'compiler flags') -----
+ compilerFlagsBuild
+ "copied from Cog svn in build.linux32x86/build/mvm"
+
+ ^ {'-msse2' .
+ '-D_GNU_SOURCE' .
+ '-D_FILE_OFFSET_BITS=64' .
+ '-DCOGMTVM=0'
+ }
+ !
Item was added:
+ ----- Method: SqueakMacintoshConfig>>compilerFlags (in category 'compiler flags') -----
+ compilerFlags
+ self subclassResponsibility!
Item was changed:
----- Method: SqueakUnixConfig>>commonCompilerFlags (in category 'compiler flags') -----
commonCompilerFlags
+ self flag:'tty'. "what can go here? I am leaning to suclassResponsibility."
+ ^#()
"Common compiler flags
-
-
LSB_FIRST=1 means that target platform is little endian.
set it to 0 for big-endian platforms
+
- "
^ {
'-DLSB_FIRST=1'.
'-DUSE_GLOBAL_STRUCT=0'.
'-DCOGMTVM=0'.
'-m32'.
'-DENABLE_FAST_BLT ' }
+ " !
- !
Item was added:
+ ----- Method: SqueakUnixConfig>>compilerFlags (in category 'compiler flags') -----
+ compilerFlags
+ self subclassResponsibility!
Item was removed:
- ----- Method: SqueakWin32x86Config>>addThirdpartyLibrary: (in category 'thirdparty libs') -----
- addThirdpartyLibrary: libName
- | libs lib |
-
- libs := self thirdpartyLibs.
-
- lib := libs
- detect: [:each | each canonicalName = libName ]
- ifNone: [ nil ].
-
- lib ifNil: [
- lib := SqueakCMThirdpartyLibrary named: libName config: self.
- "add dependencies first, so thirpartyLibs collection will be naturally dependency sorted"
- lib dependencies do: [:dep | self addThirdpartyLibrary: dep ].
- libs add: lib ].
-
- ^ lib!
Item was removed:
- ----- Method: SqueakWin32x86Config>>configureForBuildType: (in category 'cmake configuration') -----
- configureForBuildType: aSymbol
- | d |
- "provide a concrete builder with the buildType and configureBuildX method to invoke"
- d:= SqueakCMakeVMMakerAbstractBuilder default buildTypeAndDirectoryInfo copy.
- self configureNoBuildType. "reset all internal flags"
- d
- at: #build
- put: [self buildType:#build. self configureBuild];
-
- at: #buildAssert
- put: [self buildType: #buildAssert. self configureBuildAssert];
-
- at: #buildAssertITimerHeartbeat
- put: [ self buildType: #buildAssertITimerHeartbeat. self configureBuildAssertITimerHeartbeat];
-
- at:#buildDebug
- put: [self buildType: #buildDebug. self configureBuildDebug];
-
- at: #buildDebugITimerHeartbeat
- put: [self buildType: #buildDebugITimerHeartbeat. self configureBuildDebugITimerHeartbeat];
-
- at: #buildITimerHeartbeat
- put: [self buildType:#buildITimerHeartbeat. self configureBuildIHeartbeatTimer];
-
- at: #buildMultiThreaded
- put: [self buildType:#buildMultiThreaded . self configureBuildMultiThreaded];
-
- at: #buildMultiThreadedAssert
- put: [self buildType: #buildMultiThreadedAssert. self configureBuildMultiThreadedAssert];
-
- at: #buildMultiThreadedDebug
- put: [self buildType: #buildMultiThreadedDebug. self configureBuildMultiThreadedDebug].
-
- ^(d at: aSymbol).!
Item was added:
+ ----- Method: SqueakWindowsConfig>>compilerFlags (in category 'compiler flags') -----
+ compilerFlags
+ self subclassResponsibility!
More information about the Vm-dev
mailing list