ProjectDefinition.st
branchjv
changeset 20079 8d884971c2ed
parent 20075 7f62aabd8dbf
parent 20023 c91a69e8f369
child 20154 52198bb46e04
--- a/ProjectDefinition.st	Thu Jun 30 21:11:02 2016 +0100
+++ b/ProjectDefinition.st	Thu Jun 30 21:12:35 2016 +0100
@@ -383,6 +383,27 @@
     "Created: / 25-11-2011 / 14:34:01 / cg"
 !
 
+fullPackageName
+    "all components with underlines"
+
+    ^ self fullPackageNameFor: self package
+
+    "
+     stx_libwidg2 packageName
+     stx_libwidg2 fullPackageName
+     stx_goodies_refactoryBrowser_browser packageName
+     stx_goodies_refactoryBrowser_browser fullPackageName
+    "
+!
+
+fullPackageNameFor: aProjectID
+    ^ (aProjectID copyReplaceAny:':/' with:$_)
+
+    "
+     stx_goodies_refactoryBrowser_lint fullPackageNameFor:#stx_goodies_refactoryBrowser_lint  
+    "
+!
+
 initialClassNameForDefinitionOf:aPackageId
     <resource: #obsolete>
 
@@ -3344,7 +3365,7 @@
     action notNil ifTrue:[
         ^ self perform:action
     ].
-    (filename = 'app.rc' or:[filename = 'lib.rc']) ifTrue:[
+    (filename = 'app.rc' or:[filename = 'lib.rc' or:[filename = self rcFilename]]) ifTrue:[
         ^ self generate_packageName_dot_rc
     ].
     (filename = 'loadAll') ifTrue:[
@@ -3771,9 +3792,15 @@
 !
 
 rcFilename
-    ^ self packageName,'.rc'.
+    ^ self fullPackageName,'WINrc.rc'.
 
     "Created: / 07-09-2006 / 17:07:00 / cg"
+!
+
+resourceFilename
+    ^ (self rcFilename asFilename withSuffix:'$(RES)') name
+
+    "Created: / 07-09-2006 / 17:12:53 / cg"
 ! !
 
 !ProjectDefinition class methodsFor:'file mappings'!
@@ -3864,7 +3891,7 @@
 
 builder_baseline_dot_rbspec_packages
     ^ String streamContents:[:s |
-        self allPreRequisitesWithMandatorySorted do: [:packageId |
+        self allPreRequisitesSorted do: [:packageId |
             s nextPutLine:('  package "%1"' bindWith:packageId).
         ] 
     ].
@@ -4773,12 +4800,25 @@
 subProjectMakeCallsUsing:callString
     ^ String streamContents:[:s |
         self effectiveSubProjects do:[:packageID |
+            |pkgLabel skipLabel joinLabel|
+            
+            pkgLabel := (packageID copyReplaceAll:$: with:$_) copyReplaceAll:$/ with:$_.
+            skipLabel := 'skip_',pkgLabel.
+            joinLabel := 'done_',pkgLabel.
+            s nextPutLine:'@if not exist ',(self msdosPathToPackage:packageID from:(self package)),' goto ',skipLabel.
             s nextPutLine:'@echo "***********************************"'.
             s nextPutLine:'@echo "Building ',(packageID copyReplaceAll:$: with:$/).
             s nextPutLine:'@echo "***********************************"'.
             s nextPutLine:'@pushd ', (self msdosPathToPackage:packageID from:(self package)).
             s nextPutAll:'@'; nextPutAll:callString; nextPutLine:' || exit /b "%errorlevel%"'.
             s nextPutLine:'@popd'.
+            s nextPutLine:'@goto ',joinLabel.
+            s nextPutLine:':',skipLabel.
+            s nextPutLine:'@echo "###################################"'.
+            s nextPutLine:'@echo "FOLDER MISSING: ',(packageID copyReplaceAll:$: with:$/).
+            s nextPutLine:'@echo "###################################"'.
+            s nextPutLine:'exit /b 1'.
+            s nextPutLine:':',joinLabel.
             s cr.
         ]
     ]
@@ -4811,6 +4851,7 @@
 ! !
 
 
+
 !ProjectDefinition class methodsFor:'file templates'!
 
 autopackage_default_dot_apspec