[Vm-dev] VM Maker: VMMaker.oscog-eem.2171.mcz

commits at source.squeak.org commits at source.squeak.org
Mon Mar 20 16:56:54 UTC 2017

Eliot Miranda uploaded a new version of VMMaker to project VM Maker:

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

Name: VMMaker.oscog-eem.2171
Author: eem
Time: 20 March 2017, 9:56:03.040602 am
UUID: 7be28a3f-3b9e-46de-bfc5-f8c46c06c851
Ancestors: VMMaker.oscog-eem.2170

needsToRegenerateCogitFile mustn't get confused by the absence of files.

=============== Diff against VMMaker.oscog-eem.2170 ===============

Item was changed:
  ----- Method: VMMaker>>needsToRegenerateCogitFile (in category 'generate sources') -----
  	"Check the timestamp for the relevant classes and then the timestamp for the main source file (e.g. interp.c)
  	 file if it already exists. Answer if the file needs regenerating."
+ 	| cogitClass cogitClasses tStamp files |
- 	| cogitClass cogitClasses tStamp |
  	cogitClasses := (cogitClass := self interpreterClass cogitClass) withAllSuperclasses copyUpThrough: Cogit.
  	cogitClasses addAllLast: (cogitClass ancilliaryClasses: self options).
  	tStamp := cogitClasses inject: 0 into: [:tS :cl| tS max: cl timeStamp].
  	"don't translate if the file(s) is newer than my timeStamp"
+ 	files := (self coreVMDirectory fileNamesMatching: cogitClass activeCompilerClass moduleName, '*.c').
+ 	files isEmpty ifTrue:
+ 		[^true].
+ 	(files allSatisfy:
- 	((self coreVMDirectory fileNamesMatching: cogitClass activeCompilerClass moduleName, '*') allSatisfy:
  		(self coreVMDirectory entryAt: fileName ifAbsent: [nil])
  			ifNil: [false]
  				[:fstat| | mTime |
  				mTime := fstat modificationTime.
  				mTime isInteger ifFalse: [mTime := mTime asSeconds].
  				tStamp > mTime]]) ifTrue:
  		[^self confirm: ('The ', self configurationNameIfAny, cogitClass printString,
  			', ', cogitClass activeCompilerClass, '\classes have not been modified since the ',
  			cogitClass processorSpecificSourceFileName,
  			' source file\was last generated.  Do you still want to regenerate it?') withCRs].

More information about the Vm-dev mailing list