diff -r 07d40cde2ac9 -r 57b363325368 ProjectBuilder.st --- 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 |