vcmake.bat generation
authorClaus Gittinger <cg@exept.de>
Wed, 16 Sep 2009 14:32:43 +0200
changeset 11937 622f2641439d
parent 11936 94784c846e12
child 11938 79dcaf7ae7ad
vcmake.bat generation
ProjectDefinition.st
--- a/ProjectDefinition.st	Wed Sep 16 13:51:31 2009 +0200
+++ b/ProjectDefinition.st	Wed Sep 16 14:32:43 2009 +0200
@@ -2038,8 +2038,8 @@
 !ProjectDefinition class methodsFor:'file generation'!
 
 basicFileNamesToGenerate
-    "answer a dictionary (filename -> generator method) with all the files, that have to be generated for this
-     package"
+    "answer a dictionary (filename -> generator method) with all the files, 
+     that have to be generated for this package"
 
     |dict|
 
@@ -2049,6 +2049,7 @@
           'bc.mak'            #'generate_bc_dot_mak'
           'abbrev.stc'        #'generate_abbrev_dot_stc' 
           'bmake.bat'         #'generate_bmake_dot_mak' 
+          'vcmake.bat'        #'generate_vcmake_dot_mak' 
     ).
 
     dict 
@@ -2401,6 +2402,12 @@
     "Modified: / 09-08-2006 / 11:31:21 / fm"
 !
 
+generate_vcmake_dot_mak                         
+
+    ^self replaceMappings: self bmake_dot_mak_mappings 
+            in: self vcmake_dot_mak
+!
+
 protectedFileNames
     "names of files which should NOT be generated 
      - redefine this to protect a hand-written Make.proto"
@@ -2573,6 +2580,16 @@
     "Created: / 08-08-2006 / 19:31:29 / fm"
     "Modified: / 09-08-2006 / 15:10:57 / fm"
     "Modified: / 23-08-2006 / 01:32:23 / cg"
+!
+
+vcmake_dot_mak
+    "the template code for the vcmake.bat file"
+
+    ^ '
+make.exe -N -f bc.mak %%1 %%2 USEVC=1
+
+%(SUBPROJECT_VCMAKE_CALLS)
+'
 ! !
 
 !ProjectDefinition class methodsFor:'loading'!
@@ -2656,6 +2673,7 @@
 bmake_dot_mak_mappings
     ^ (Dictionary new)
         at:'SUBPROJECT_BMAKE_CALLS' put:(self subProjectBmakeCalls);
+        at:'SUBPROJECT_VCMAKE_CALLS' put:(self subProjectVCmakeCalls);
         yourself
 
     "Created: / 17-08-2006 / 21:41:56 / cg"
@@ -3308,6 +3326,17 @@
 
     "Created: / 14-09-2006 / 18:40:09 / cg"
     "Modified: / 14-09-2006 / 19:46:57 / cg"
+!
+
+subProjectVCmakeCalls
+    ^ String streamContents:[:s |
+        self subProjects do:[:packageID |
+            s nextPutLine:'cd ', (self msdosPathToPackage:packageID from:(self package)). 
+            s nextPutLine:'call vcmake %1 %2'. 
+            s nextPutLine:'cd ', (self msdosPathToPackage:(self package) from:packageID). 
+            s cr. 
+        ]
+    ]
 ! !
 
 !ProjectDefinition class methodsFor:'private'!
@@ -4251,7 +4280,7 @@
 !ProjectDefinition class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.225 2009-08-19 18:32:26 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.226 2009-09-16 12:32:43 cg Exp $'
 ! !
 
 ProjectDefinition initialize!