equal
deleted
inserted
replaced
30 ! ! |
30 ! ! |
31 |
31 |
32 !ProjectBuilder methodsFor:'building'! |
32 !ProjectBuilder methodsFor:'building'! |
33 |
33 |
34 build |
34 build |
|
35 "/ intermediate - this will move into a commonly used utility class |
|
36 "/ (where all the project code support will be collected). |
|
37 |
|
38 |makeOutput stdOut stdErr lock| |
|
39 |
|
40 lock := Semaphore forMutualExclusion. |
|
41 makeOutput := TextStream on:(Text new:10000). |
|
42 stdErr := ActorStream new |
|
43 nextPutBlock:[:char | |
|
44 lock critical:[ |
|
45 makeOutput emphasis:{#backgroundColor->Color red. #color->Color white.}. |
|
46 makeOutput nextPut:char. |
|
47 makeOutput emphasis:nil. |
|
48 ] |
|
49 ]; |
|
50 nextPutAllBlock:[:char | |
|
51 lock critical:[ |
|
52 makeOutput emphasis:{#backgroundColor->Color red. #color->Color white.}. |
|
53 makeOutput nextPutAll:char. |
|
54 makeOutput emphasis:nil. |
|
55 ] |
|
56 ]. |
|
57 stdOut := ActorStream new |
|
58 nextPutBlock:[:char | |
|
59 lock critical:[ |
|
60 makeOutput nextPut:char. |
|
61 ] |
|
62 ]; |
|
63 nextPutAllBlock:[:char | |
|
64 lock critical:[ |
|
65 makeOutput nextPutAll:char. |
|
66 ] |
|
67 ]. |
|
68 |
|
69 self buildWithOutputTo:stdOut errorTo:stdErr. |
|
70 |
|
71 TextView openWith:makeOutput contents. |
|
72 ! |
|
73 |
|
74 buildWithOutputTo:stdOut errorTo:stdErr |
35 "/ intermediate - this will move into a commonly used utility class |
75 "/ intermediate - this will move into a commonly used utility class |
36 "/ (where all the project code support will be collected). |
76 "/ (where all the project code support will be collected). |
37 |
77 |
38 |module directory| |
78 |module directory| |
39 |
79 |
85 self generateSourceFiles. |
125 self generateSourceFiles. |
86 self copyDLLsForLinkage. |
126 self copyDLLsForLinkage. |
87 self copySupportFilesForLinkage. |
127 self copySupportFilesForLinkage. |
88 self copyStartupFilesFromSmalltalk. |
128 self copyStartupFilesFromSmalltalk. |
89 |
129 |
90 OperatingSystem |
130 self makeWithOutputTo:stdOut errorTo:stdErr. |
91 executeCommand:(ParserFlags makeCommand,' exe') |
|
92 inputFrom:nil |
|
93 outputTo:Transcript |
|
94 errorTo:Transcript |
|
95 inDirectory:(buildDirectory / module / directory) |
|
96 onError:[:status| self error:'make failed']. |
|
97 |
|
98 "Created: / 09-08-2006 / 18:37:19 / fm" |
|
99 "Modified: / 09-08-2006 / 19:55:50 / fm" |
|
100 "Modified: / 22-09-2006 / 17:37:11 / cg" |
|
101 ! |
131 ! |
102 |
132 |
103 copyDLLsForLinkage |
133 copyDLLsForLinkage |
104 |targetBuildDir| |
134 |targetBuildDir| |
105 |
135 |
438 ]. |
468 ]. |
439 self copyResourcesForPackage:eachPackageToFileout. |
469 self copyResourcesForPackage:eachPackageToFileout. |
440 ]. |
470 ]. |
441 |
471 |
442 "/ stx_libbasic2 preRequisitesForBuilding#(#'stx:libbasic') |
472 "/ stx_libbasic2 preRequisitesForBuilding#(#'stx:libbasic') |
|
473 ! |
|
474 |
|
475 makeWithOutputTo:stdOut errorTo:stdErr |
|
476 |module directory| |
|
477 |
|
478 module := package module. |
|
479 directory := package directory. |
|
480 |
|
481 OperatingSystem |
|
482 executeCommand:(ParserFlags makeCommand,' exe') |
|
483 inputFrom:nil |
|
484 outputTo:stdOut |
|
485 errorTo:stdErr |
|
486 inDirectory:(buildDirectory / module / directory) |
|
487 onError:[:status| self error:'make failed']. |
|
488 |
|
489 OperatingSystem |
|
490 executeCommand:(ParserFlags makeCommand,' setup') |
|
491 inputFrom:nil |
|
492 outputTo:stdOut |
|
493 errorTo:stdErr |
|
494 inDirectory:(buildDirectory / module / directory) |
|
495 onError:[:status| self error:'make failed']. |
443 ! |
496 ! |
444 |
497 |
445 setupBuildDirectory |
498 setupBuildDirectory |
446 buildDirectory exists ifFalse:[ |
499 buildDirectory exists ifFalse:[ |
447 buildDirectory recursiveMakeDirectory. |
500 buildDirectory recursiveMakeDirectory. |