# HG changeset patch # User Claus Gittinger # Date 1375778360 -7200 # Node ID 7022b69410ab807a339ec4d24d1296bece1cf522 # Parent 380d18b003122455da56630102090df66a7a78fb class: Tools::ProjectBuilder added: #generateBuildSupportFilesByFilingOutIn:forDefinitionClass: changed: #generateSourceFilesByFilingOut diff -r 380d18b00312 -r 7022b69410ab ProjectBuilder.st --- a/ProjectBuilder.st Mon Aug 05 21:17:05 2013 +0200 +++ b/ProjectBuilder.st Tue Aug 06 10:39:20 2013 +0200 @@ -746,6 +746,22 @@ "Modified: / 15-08-2011 / 14:58:46 / cg" ! +generateBuildSupportFilesByFilingOutIn:packageTargetDir forDefinitionClass:projectDefinitionClass + |fullPathName| + + projectDefinitionClass forEachFileNameAndGeneratedContentsDo:[:fileName :fileContents | + fullPathName := packageTargetDir construct:fileName. + fullPathName directory exists ifFalse:[ + "take care for files like 'autopackage/default.apspec'" + fullPathName directory makeDirectory. + ]. + (fullPathName exists + and:[ fullPathName contents = fileContents ]) ifFalse:[ + fullPathName contents:fileContents. + ]. + ]. +! + generateSourceFiles (self isLocalBuild not and:[ sourceCodeManager notNil ]) ifTrue:[ "/ check out / generate files there @@ -805,8 +821,6 @@ "/ local build "/ fileout the project - |fullPathName| - (package module ~= 'stx') ifTrue:[ (buildDirectory / package module) makeDirectory. ]. @@ -865,21 +879,11 @@ "/ cls fileOutIn:packageTargetDir "/ ] "/ ]. - - projectDefinitionClass forEachFileNameAndGeneratedContentsDo:[:fileName :fileContents | - fullPathName := packageTargetDir construct:fileName. - fullPathName directory exists ifFalse:[ - "take care for files like 'autopackage/default.apspec'" - fullPathName directory makeDirectory. - ]. - (fullPathName exists - and:[ fullPathName contents = fileContents ]) ifFalse:[ - fullPathName contents:fileContents. - ]. - ]. + self generateBuildSupportFilesByFilingOutIn:packageTargetDir forDefinitionClass:projectDefinitionClass. ]. self makeQuick ifFalse:[ - "/ generate header files in prerequisite packages... + "/ generate header files and build support files + "/ in prerequisite packages... (projectDefinitionClass allPreRequisites) do:[:eachPackageToFileout | |packageId packageDef packageModule packageDirectory packageTargetDir| @@ -905,6 +909,8 @@ ]. ]. self copyResourcesForPackage:eachPackageToFileout. + self generateBuildSupportFilesByFilingOutIn:packageTargetDir forDefinitionClass:packageDef. + (packageTargetDir / '.NOSOURCE') contents:'existence of this file suppresses compilation of st files'. ]. ].