changed:
#buildWithOutputTo:errorTo:
#generateSourceFilesByFilingOut
--- a/ProjectBuilder.st Mon Oct 19 14:38:12 2009 +0200
+++ b/ProjectBuilder.st Tue Oct 20 00:03:57 2009 +0200
@@ -143,12 +143,17 @@
mySTXTopDirectory := myTopDirectory / 'stx'.
self setupBuildDirectory.
+ self activityNotification:'Generating stc directory...'.
self copySTCDirectoryForBuild.
+ self activityNotification:'Generating source files...'.
self generateSourceFiles.
+ self activityNotification:'Generating dlls for linkage...'.
self copyDLLsForLinkage.
+ self activityNotification:'Generating support files for linkage...'.
self copySupportFilesForLinkage.
self copyStartupFilesFromSmalltalk.
+ self activityNotification:'Executing make...'.
self makeWithOutputTo:stdOut errorTo:stdErr.
!
@@ -442,11 +447,20 @@
packageDef := packageId projectDefinitionClass.
(packageDef compiled_classNames_common ,
packageDef compiled_classNamesForPlatform) do:[:eachClassName |
- |cls|
+ |cls fileName newSource|
cls := Smalltalk classNamed:eachClassName.
self assert:cls isLoaded.
- cls fileOutIn:packageTargetDir
+ fileName := (Smalltalk fileNameForClass:cls),'.st'.
+ fileName := packageTargetDir asFilename construct:fileName.
+ fileName exists ifTrue:[
+ newSource := String streamContents:[:s | cls fileOutOn:s withTimeStamp:false].
+ newSource = fileName contentsAsString ifFalse:[
+ fileName contents:newSource
+ ].
+ ] ifFalse:[
+ cls fileOutIn:packageTargetDir withTimeStamp:false
+ ].
].
"/ (Smalltalk allClassesInPackage:eachPackageToFileout) do:[:cls |