diff -r ceb6bb9078db -r d03c40cd3fa5 ProjectBuilder.st --- a/ProjectBuilder.st Mon Mar 11 19:39:52 2013 +0100 +++ b/ProjectBuilder.st Mon Mar 11 19:39:57 2013 +0100 @@ -248,7 +248,7 @@ "Modified: / 06-09-2012 / 16:15:50 / cg" ! -buildWithOutputTo:stdOut errorTo:stdErr +buildWithOutputTo:stdOutArg errorTo:stdErrArg "/ intermediate - this will move into a commonly used utility class "/ (where all the project code support will be collected). @@ -565,7 +565,7 @@ OperatingSystem isMSWINDOWSlike ifTrue:[ files := #( - 'librun/genDate.exe' + 'librun/genDate.com' 'librun/main.c' 'projects/smalltalk/stx_16x16.ico' 'projects/smalltalk/stx_32x32.ico' @@ -839,8 +839,12 @@ cls := Smalltalk classNamed:eachClassName. "/ self assert:cls isLoaded. - cls isLoaded ifTrue:[ - self createHeaderFileFor:cls in:packageTargetDir + cls isNil ifTrue:[ + stdErr nextPutLine:('Missing class: ',eachClassName, ' (not present in system. Warning only:subclasses of it will not be compiled)'). + ] ifFalse:[ + cls isLoaded ifTrue:[ + self createHeaderFileFor:cls in:packageTargetDir + ] ]. ]. self copyResourcesForPackage:eachPackageToFileout. @@ -889,6 +893,7 @@ OperatingSystem isUNIXlike ifTrue:[ "/ generate the makefile first + self activityNotification:('sh %1/rules/stmkmf' bindWith:mySTXTopDirectory pathName). OperatingSystem executeCommand:('sh %1/rules/stmkmf' bindWith:mySTXTopDirectory pathName) inputFrom:nil @@ -900,6 +905,7 @@ projectDefinitionClass isLibraryDefinition ifTrue:[ "/ generate the library + self activityNotification:(makeCommand,' classLibRule'). OperatingSystem executeCommand:(makeCommand,' classLibRule') inputFrom:nil @@ -908,19 +914,22 @@ inDirectory:(buildDirectory / module / directory) onError:[:status | self error:'make failed']. ] ifFalse:[ - OperatingSystem - "/ generate the executable - executeCommand:(makeCommand,' exe') - inputFrom:nil - outputTo:stdOut - errorTo:stdErr - inDirectory:(buildDirectory / module / directory) - onError:[:status | self error:'make failed']. + (makeExeOnly ? false) ifTrue:[ + self activityNotification:(makeCommand,' exe'). + OperatingSystem + "/ generate the executable + executeCommand:(makeCommand,' exe') + inputFrom:nil + outputTo:stdOut + errorTo:stdErr + inDirectory:(buildDirectory / module / directory) + onError:[:status | self error:'make failed']. - (makeExeOnly ? false) ifFalse:[ + ] ifFalse:[ "/ generate the self-installable package + self activityNotification:(makeCommand,' ALL_NP'). OperatingSystem - executeCommand:(makeCommand,' setup') + executeCommand:(makeCommand,' ALL_NP') inputFrom:nil outputTo:stdOut errorTo:stdErr