author | Claus Gittinger <cg@exept.de> |
Thu, 01 Mar 2007 18:09:38 +0100 | |
changeset 10425 | cdc96c56fba4 |
parent 10424 | 92ee1e31165b |
child 10427 | 4ced2ddca6fb |
permissions | -rw-r--r-- |
9552 | 1 |
" |
2 |
COPYRIGHT (c) 2006 by eXept Software AG |
|
3 |
All Rights Reserved |
|
4 |
||
5 |
This software is furnished under a license and may be used |
|
6 |
only in accordance with the terms of that license and with the |
|
7 |
inclusion of the above copyright notice. This software may not |
|
8 |
be provided or otherwise made available to, or used by, any |
|
9 |
other person. No title to or ownership of the software is |
|
10 |
hereby transferred. |
|
11 |
" |
|
9671 | 12 |
"{ Package: 'stx:libbasic' }" |
9532 | 13 |
|
9567 | 14 |
ProjectDefinition subclass:#ApplicationDefinition |
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
15 |
instanceVariableNames:'' |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
16 |
classVariableNames:'' |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
17 |
poolDictionaries:'' |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
18 |
category:'System-Support-Projects' |
9532 | 19 |
! |
20 |
||
9552 | 21 |
!ApplicationDefinition class methodsFor:'documentation'! |
22 |
||
23 |
copyright |
|
24 |
" |
|
25 |
COPYRIGHT (c) 2006 by eXept Software AG |
|
26 |
All Rights Reserved |
|
27 |
||
28 |
This software is furnished under a license and may be used |
|
29 |
only in accordance with the terms of that license and with the |
|
30 |
inclusion of the above copyright notice. This software may not |
|
31 |
be provided or otherwise made available to, or used by, any |
|
32 |
other person. No title to or ownership of the software is |
|
33 |
hereby transferred. |
|
34 |
" |
|
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
35 |
! |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
36 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
37 |
documentation |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
38 |
" |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
39 |
subclasses provide the info on how to build executables and class libraries. |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
40 |
Actually, subclasses must be subclasses of either LibraryDefinition or |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
41 |
ApplicationDefinition. |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
42 |
These know how to generate all required help files for make-building. |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
43 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
44 |
Concrete definition classes must redefine: |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
45 |
classNamesAndAttributes |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
46 |
list of classes which are part of the dll/exe |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
47 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
48 |
extensionMethodNames |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
49 |
list of extension methods |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
50 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
51 |
startupClassName / startupSelector |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
52 |
class and selector with which the show starts |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
53 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
54 |
buildTarget name of the generated exe-file |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
55 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
56 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
57 |
should redefine: |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
58 |
preRequisites list of required packages |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
59 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
60 |
iconFileName name of a .ico file containing the applications icon |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
61 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
62 |
companyName name of your company - will be shown by windows explorer |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
63 |
as attribute of a .dll or .exe |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
64 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
65 |
description short description; shown by windows explorer |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
66 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
67 |
legalCopyright copyright message; shown by windows explorer |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
68 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
69 |
productName product name; shown by windows explorer |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
70 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
71 |
applicationName app name; shown by windows explorer |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
72 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
73 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
74 |
might redefine: |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
75 |
isConsoleApplication if true, windows-build generates a console app. |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
76 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
77 |
isGUIApplication if true, the GUI framework is linked in |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
78 |
(as opposed to a non-GUI server-like executable) |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
79 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
80 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
81 |
[author:] |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
82 |
Felix Madrid |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
83 |
Claus Gittinger |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
84 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
85 |
[see also:] |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
86 |
stx_projects_smalltalk |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
87 |
stx_libbasic |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
88 |
stx_libbasic2 |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
89 |
" |
9552 | 90 |
! ! |
9532 | 91 |
|
10000 | 92 |
!ApplicationDefinition class methodsFor:'code generation'! |
93 |
||
94 |
forEachMethodsCodeToCompileDo:aTwoArgBlock ignoreOldDefinition:ignoreOldDefinition |
|
95 |
super forEachMethodsCodeToCompileDo:aTwoArgBlock ignoreOldDefinition:ignoreOldDefinition. |
|
96 |
||
97 |
aTwoArgBlock |
|
98 |
value:self subProjects_code |
|
99 |
value:'description'. |
|
100 |
||
101 |
aTwoArgBlock |
|
102 |
value:self preRequisites_code |
|
103 |
value:'description'. |
|
104 |
||
105 |
(self class implements:#startupClassName) ifFalse:[ |
|
106 |
aTwoArgBlock |
|
107 |
value:self startupClassName_code |
|
108 |
value:'description - startup'. |
|
109 |
]. |
|
110 |
(self class implements:#startupSelector) ifFalse:[ |
|
111 |
aTwoArgBlock |
|
112 |
value:self startupSelector_code |
|
113 |
value:'description - startup'. |
|
114 |
]. |
|
115 |
||
116 |
"Created: / 10-08-2006 / 16:35:47 / cg" |
|
117 |
"Modified: / 30-08-2006 / 19:03:48 / cg" |
|
118 |
! |
|
119 |
||
120 |
startupClassName_code |
|
10283 | 121 |
|classes startClasses mainClasses appClasses cls| |
10275 | 122 |
|
123 |
classes := self classNamesAndAttributes |
|
124 |
collect:[:nm | Smalltalk classNamed:nm] |
|
125 |
thenSelect:[:cls | cls notNil and:[cls isProjectDefinition not ]]. |
|
126 |
||
10283 | 127 |
mainClasses := classes select:[:each | each theMetaclass implements:#main ]. |
10275 | 128 |
mainClasses size == 1 ifTrue:[ |
129 |
^ self startupClassName_codeFor:(mainClasses first name) |
|
130 |
]. |
|
131 |
mainClasses isEmpty ifTrue:[ |
|
10283 | 132 |
startClasses := classes select:[:each | each theMetaclass implements:#start ]. |
133 |
startClasses size == 1 ifTrue:[ |
|
134 |
^ self startupClassName_codeFor:(startClasses first name) |
|
10275 | 135 |
]. |
10283 | 136 |
startClasses isEmpty ifTrue:[ |
137 |
appClasses := classes select:[:each | each isSubclassOf:ApplicationModel ]. |
|
138 |
appClasses size == 1 ifTrue:[ |
|
139 |
^ self startupClassName_codeFor:(appClasses first name) |
|
140 |
]. |
|
141 |
] |
|
10275 | 142 |
]. |
143 |
||
10000 | 144 |
^ |
145 |
'startupClassName |
|
146 |
self error:''undefined startupClass''. |
|
147 |
^ ''<name of class here>'' |
|
148 |
' |
|
10275 | 149 |
|
10283 | 150 |
"Modified: / 27-12-2006 / 11:43:34 / cg" |
10000 | 151 |
! |
152 |
||
153 |
startupClassName_codeFor:aClassName |
|
154 |
^ |
|
155 |
'startupClassName |
|
156 |
^ ''',aClassName,''' |
|
157 |
' |
|
158 |
||
159 |
"Created: / 05-09-2006 / 13:40:32 / cg" |
|
160 |
! |
|
161 |
||
162 |
startupSelector_code |
|
10283 | 163 |
|clsName cls sel| |
164 |
||
165 |
Error |
|
166 |
handle:[:ex | ] |
|
167 |
do:[ |
|
168 |
clsName := self startupClassName. |
|
169 |
cls := Smalltalk classNamed:clsName. |
|
170 |
]. |
|
10000 | 171 |
|
10283 | 172 |
sel := #'start'. |
173 |
cls notNil ifTrue:[ |
|
174 |
(cls respondsTo:#open) ifTrue:[ |
|
175 |
sel := #'open' |
|
176 |
] ifFalse:[ |
|
177 |
(cls respondsTo:#main) ifTrue:[ |
|
178 |
sel := #'main' |
|
179 |
] |
|
180 |
]. |
|
10275 | 181 |
]. |
182 |
||
183 |
^ self startupSelector_codeFor:sel |
|
184 |
||
10283 | 185 |
"Modified: / 27-12-2006 / 11:45:38 / cg" |
10000 | 186 |
! |
187 |
||
188 |
startupSelector_codeFor:aSelector |
|
189 |
^ |
|
190 |
'startupSelector |
|
10275 | 191 |
^ #''',aSelector,''' |
10000 | 192 |
' |
193 |
||
194 |
"Created: / 05-09-2006 / 13:41:01 / cg" |
|
10275 | 195 |
"Modified: / 15-12-2006 / 14:10:11 / cg" |
10000 | 196 |
! |
197 |
||
198 |
subProjects_code |
|
199 |
|subProjects| |
|
200 |
||
201 |
subProjects := |
|
202 |
(self siblingsAreSubProjects) |
|
203 |
ifTrue:[ self searchForSiblingProjects ] |
|
204 |
ifFalse:[ self searchForSubProjects ]. |
|
205 |
||
206 |
subProjects removeAll: self excludedFromSubProjects. |
|
207 |
||
208 |
^ String streamContents:[:s | |
|
209 |
s nextPutLine:'subProjects'. |
|
210 |
s nextPutLine:' ^ #('. |
|
211 |
subProjects do:[:eachPackageID | |
|
212 |
s nextPutLine:eachPackageID asString storeString |
|
213 |
]. |
|
214 |
s nextPutLine:')' |
|
215 |
]. |
|
216 |
||
217 |
" |
|
218 |
bosch_dapasx subProjectsGeneratedString |
|
219 |
stx_goodies subProjectsGeneratedString |
|
220 |
" |
|
221 |
||
222 |
"Modified: / 08-08-2006 / 19:24:34 / fm" |
|
223 |
"Created: / 17-08-2006 / 21:26:51 / cg" |
|
224 |
! ! |
|
225 |
||
9535 | 226 |
!ApplicationDefinition class methodsFor:'defaults'! |
9532 | 227 |
|
10302
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
228 |
buildTarget |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
229 |
"which target in the Makefile should be built by default? |
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
230 |
For now, reasonable return values are 'exe', which builds the executable(s), |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
231 |
and 'ALL', which builds everything, including an installable package. |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
232 |
Here, 'ALL' is returned. |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
233 |
There is usually no need to redefine this default - we at exept do it for the |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
234 |
stx package only to speed up our own build, as we seldom need new install packages, |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
235 |
put often build new executables..." |
10302
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
236 |
|
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
237 |
^ 'ALL' |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
238 |
! |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
239 |
|
9886 | 240 |
guiClassFileNames_unix |
241 |
^ self guiClasses_unix |
|
10079 | 242 |
collect:[:cls | (cls classBaseFilename asFilename withSuffix:'so') baseName]. |
9886 | 243 |
|
244 |
"Created: / 14-09-2006 / 18:13:22 / cg" |
|
10079 | 245 |
"Modified: / 12-10-2006 / 15:50:39 / cg" |
9886 | 246 |
! |
247 |
||
9833 | 248 |
guiClassFileNames_win32 |
249 |
^ self guiClasses_win32 |
|
10079 | 250 |
collect:[:cls | (cls classBaseFilename asFilename withSuffix:'dll') baseName]. |
9833 | 251 |
|
252 |
"Created: / 07-09-2006 / 17:23:13 / cg" |
|
10079 | 253 |
"Modified: / 12-10-2006 / 15:50:42 / cg" |
9886 | 254 |
! |
255 |
||
256 |
guiClasses_unix |
|
257 |
^ #() |
|
258 |
||
259 |
"Created: / 14-09-2006 / 18:12:58 / cg" |
|
9532 | 260 |
! |
261 |
||
9833 | 262 |
guiClasses_win32 |
9886 | 263 |
^ #() |
264 |
"/ ^ Array with:XWorkstation |
|
9833 | 265 |
|
266 |
"Created: / 07-09-2006 / 17:22:27 / cg" |
|
9886 | 267 |
"Modified: / 14-09-2006 / 18:12:35 / cg" |
9535 | 268 |
! |
9532 | 269 |
|
9535 | 270 |
needResources |
10302
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
271 |
"answer true, if this application |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
272 |
needs resources to be installed. This is normally true. |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
273 |
Even non-GUI apps need some (libbasic/resources)" |
10214
19326faaa3c6
careful with resources rule (under nt) if module is stx.
Claus Gittinger <cg@exept.de>
parents:
10151
diff
changeset
|
274 |
|
10302
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
275 |
^ true |
9532 | 276 |
! ! |
277 |
||
9535 | 278 |
!ApplicationDefinition class methodsFor:'description'! |
9532 | 279 |
|
10423 | 280 |
applicationIconFileName |
281 |
"answer the base-name of the application icon (i.e. 'app' in <app>.ico) |
|
282 |
||
283 |
Subclasses may redefine this" |
|
284 |
||
285 |
^ self applicationName |
|
286 |
! |
|
287 |
||
10302
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
288 |
applicationName |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
289 |
"answer the name of the application. |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
290 |
This is also the name of the generated .exe file. |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
291 |
|
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
292 |
Subclasses may redefine this" |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
293 |
|
10420 | 294 |
^ self applicationNameFromPackage |
295 |
||
296 |
" |
|
297 |
bosch_dapasx_application applicationName |
|
298 |
stx_projects_smalltalk applicationName |
|
299 |
" |
|
300 |
||
301 |
"Created: / 08-08-2006 / 20:25:39 / fm" |
|
302 |
"Modified: / 30-08-2006 / 19:29:25 / cg" |
|
303 |
! |
|
304 |
||
305 |
applicationNameConsole |
|
306 |
^ self applicationName,'_debug' |
|
307 |
! |
|
308 |
||
309 |
applicationNameFromPackage |
|
310 |
"answer the name of the application. |
|
311 |
This is also the name of the generated .exe file. |
|
312 |
||
313 |
Subclasses may redefine this" |
|
314 |
||
10302
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
315 |
|m path| |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
316 |
|
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
317 |
m := self moduleDirectory. |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
318 |
path := m subStrings:$/. |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
319 |
path last = 'application' ifTrue:[ |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
320 |
path size > 1 ifTrue:[ |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
321 |
path := path copyWithoutLast:1. |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
322 |
]. |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
323 |
]. |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
324 |
^ path last |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
325 |
|
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
326 |
" |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
327 |
bosch_dapasx_application applicationName |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
328 |
stx_projects_smalltalk applicationName |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
329 |
" |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
330 |
|
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
331 |
"Created: / 08-08-2006 / 20:25:39 / fm" |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
332 |
"Modified: / 30-08-2006 / 19:29:25 / cg" |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
333 |
! |
8b6235498f47
Some adaptions for stx building
Stefan Vogel <sv@exept.de>
parents:
10300
diff
changeset
|
334 |
|
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
335 |
applicationNameNoConsole |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
336 |
^ self applicationName |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
337 |
! |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
338 |
|
10094
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
339 |
documentExtensions |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
340 |
"list extensions which should be registered with the application. |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
341 |
Results in the application to be started when double-clicking on such a file (win32)" |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
342 |
|
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
343 |
^ #() |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
344 |
|
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
345 |
"Created: / 15-10-2006 / 12:44:14 / cg" |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
346 |
! |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
347 |
|
10379
d8b54dc361d2
Some methods moved from/to ProjectDefinition
Stefan Vogel <sv@exept.de>
parents:
10378
diff
changeset
|
348 |
isConsoleApplication |
d8b54dc361d2
Some methods moved from/to ProjectDefinition
Stefan Vogel <sv@exept.de>
parents:
10378
diff
changeset
|
349 |
"Return true, if this is a console application (used with win32 only). |
d8b54dc361d2
Some methods moved from/to ProjectDefinition
Stefan Vogel <sv@exept.de>
parents:
10378
diff
changeset
|
350 |
Console applications have stdout and stderr and open up a command-window |
d8b54dc361d2
Some methods moved from/to ProjectDefinition
Stefan Vogel <sv@exept.de>
parents:
10378
diff
changeset
|
351 |
when started. Only console applications can interact with the user in the |
d8b54dc361d2
Some methods moved from/to ProjectDefinition
Stefan Vogel <sv@exept.de>
parents:
10378
diff
changeset
|
352 |
command line window. |
d8b54dc361d2
Some methods moved from/to ProjectDefinition
Stefan Vogel <sv@exept.de>
parents:
10378
diff
changeset
|
353 |
By default, GUI apps are compiled as non-console apps." |
9532 | 354 |
|
10379
d8b54dc361d2
Some methods moved from/to ProjectDefinition
Stefan Vogel <sv@exept.de>
parents:
10378
diff
changeset
|
355 |
^ self isGUIApplication not |
9578 | 356 |
|
10379
d8b54dc361d2
Some methods moved from/to ProjectDefinition
Stefan Vogel <sv@exept.de>
parents:
10378
diff
changeset
|
357 |
"Created: / 20-09-2006 / 11:29:24 / cg" |
9532 | 358 |
! |
359 |
||
9535 | 360 |
isGUIApplication |
9578 | 361 |
"Return true, if this is a GUI app. |
362 |
Redefine to return false for non-GUI applications (affects inclusion of Display classes)." |
|
9535 | 363 |
|
9578 | 364 |
^true |
9535 | 365 |
|
366 |
"Created: / 08-08-2006 / 11:15:01 / fm" |
|
9578 | 367 |
"Modified: / 17-08-2006 / 19:47:36 / cg" |
9532 | 368 |
! |
369 |
||
9823 | 370 |
isSingleThreadedApplication |
371 |
"Return true, if this should be started without multiple threads. |
|
372 |
(not possible with gui applications)" |
|
373 |
||
374 |
^false |
|
375 |
||
376 |
"Created: / 05-09-2006 / 13:36:18 / cg" |
|
377 |
! |
|
378 |
||
10418 | 379 |
logFilenameNoConsole |
380 |
"/ ^ (self applicationNameNoConsole , '_%d.log') |
|
381 |
^ (self applicationNameNoConsole , '.log') |
|
382 |
! |
|
383 |
||
9725 | 384 |
startupClassName |
9578 | 385 |
"The name of the class which provides the entry point for the application." |
9532 | 386 |
|
9578 | 387 |
self subclassResponsibility |
388 |
||
389 |
"Modified: / 17-08-2006 / 20:00:22 / cg" |
|
9532 | 390 |
! |
391 |
||
9725 | 392 |
startupSelector |
9578 | 393 |
"The name of the entry point method (in startUpClass) used to start the application." |
9532 | 394 |
|
10379
d8b54dc361d2
Some methods moved from/to ProjectDefinition
Stefan Vogel <sv@exept.de>
parents:
10378
diff
changeset
|
395 |
^ #start |
9578 | 396 |
|
397 |
"Modified: / 17-08-2006 / 20:01:00 / cg" |
|
398 |
! ! |
|
399 |
||
400 |
!ApplicationDefinition class methodsFor:'description - project information'! |
|
401 |
||
402 |
description |
|
403 |
"Returns a description string which will appear in nt.def / bc.def" |
|
404 |
||
405 |
self module = 'stx' ifTrue:[ |
|
406 |
^ 'Smalltalk/X Application' |
|
407 |
]. |
|
408 |
||
9587 | 409 |
^ 'Application' |
9578 | 410 |
|
411 |
"Created: / 17-08-2006 / 20:52:48 / cg" |
|
9587 | 412 |
"Modified: / 18-08-2006 / 16:16:01 / cg" |
9889 | 413 |
! |
414 |
||
9985 | 415 |
docDirPath_unix |
416 |
"path relative to my dir to the documentation - or nil" |
|
417 |
||
418 |
^ nil |
|
419 |
||
420 |
"Created: / 20-09-2006 / 17:58:44 / cg" |
|
421 |
! |
|
422 |
||
423 |
docDirPath_win32 |
|
424 |
"path relative to my dir to the documentation - or nil" |
|
425 |
||
426 |
^ nil |
|
427 |
||
428 |
"Created: / 20-09-2006 / 17:58:40 / cg" |
|
429 |
! |
|
430 |
||
9889 | 431 |
fileDescription |
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
432 |
"Return a description string which will appear in nt.def / bc.def and the rc-file" |
9889 | 433 |
|
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
434 |
^ self description , ' App' |
9889 | 435 |
|
436 |
"Created: / 14-09-2006 / 20:08:11 / cg" |
|
9900 | 437 |
! |
438 |
||
439 |
hasLicenceToAcceptDuringInstallation |
|
440 |
^ false |
|
441 |
||
442 |
"Created: / 14-09-2006 / 22:34:00 / cg" |
|
9532 | 443 |
! ! |
444 |
||
445 |
!ApplicationDefinition class methodsFor:'file generation'! |
|
446 |
||
9854 | 447 |
basicFileNamesToGenerate |
9535 | 448 |
^ #( |
9816 | 449 |
#('Make.spec' #'generate_make_dot_spec') |
10023 | 450 |
#('Make.proto' #'generate_make_dot_proto') |
10308 | 451 |
#('bc.mak' #'generate_bc_dot_mak') |
9605 | 452 |
#('modules.stx' #'generate_modules_dot_stx') |
9961
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
453 |
#('modules.c' #'generate_modules_dot_c') |
9605 | 454 |
#('abbrev.stc' #'generate_abbrev_dot_stc') |
455 |
#('bmake.bat' #'generate_bmake_dot_mak') |
|
9897 | 456 |
) , (Array |
457 |
with: |
|
458 |
(Array |
|
459 |
with:self rcFilename |
|
460 |
with:#'generate_packageName_dot_rc') |
|
461 |
with: |
|
462 |
(Array |
|
463 |
with:self nsiFilename |
|
464 |
with:#'generate_packageName_dot_nsi') |
|
465 |
). |
|
9578 | 466 |
|
9854 | 467 |
"Created: / 14-09-2006 / 14:36:00 / cg" |
10023 | 468 |
"Modified: / 29-09-2006 / 17:32:57 / cg" |
9623 | 469 |
! |
470 |
||
9961
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
471 |
generate_modules_dot_c |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
472 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
473 |
^self replaceMappings: self modules_dot_c_mappings |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
474 |
in: self modules_dot_c |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
475 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
476 |
" |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
477 |
bosch_dapasx_application generate_modules_dot_c |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
478 |
" |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
479 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
480 |
"Created: / 19-09-2006 / 22:35:27 / cg" |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
481 |
! |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
482 |
|
9963 | 483 |
generate_packageName_dot_nsi |
484 |
||
10094
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
485 |
^self |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
486 |
replaceMappings: self packageName_dot_nsi_mappings |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
487 |
in: self packageName_dot_nsi |
9963 | 488 |
|
489 |
" |
|
490 |
bosch_dapasx_application generate_packageName_dot_nsi |
|
491 |
" |
|
492 |
||
493 |
"Modified: / 09-08-2006 / 11:31:09 / fm" |
|
494 |
"Created: / 14-09-2006 / 21:08:23 / cg" |
|
10094
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
495 |
"Modified: / 15-10-2006 / 12:52:21 / cg" |
9963 | 496 |
! |
497 |
||
9830 | 498 |
rcFilename |
499 |
^ self packageName,'WinRC.rc'. |
|
500 |
||
501 |
"Created: / 07-09-2006 / 17:07:08 / cg" |
|
502 |
! |
|
503 |
||
504 |
resourceFilename |
|
505 |
^ (self rcFilename asFilename withSuffix:'res') name |
|
506 |
||
507 |
"Created: / 07-09-2006 / 17:12:53 / cg" |
|
9532 | 508 |
! ! |
509 |
||
510 |
!ApplicationDefinition class methodsFor:'file templates'! |
|
511 |
||
9535 | 512 |
bc_dot_def |
9578 | 513 |
"the template code for the bc.def file" |
9535 | 514 |
|
515 |
^ |
|
516 |
'DESCRIPTION %(DESCRIPTION) |
|
517 |
CODE PRELOAD MOVEABLE DISCARDABLE |
|
518 |
SEGMENTS |
|
519 |
INITCODE PRELOAD DISCARDABLE |
|
520 |
' |
|
521 |
||
522 |
"Created: / 08-08-2006 / 12:26:58 / fm" |
|
523 |
"Modified: / 08-08-2006 / 19:32:27 / fm" |
|
9578 | 524 |
"Modified: / 17-08-2006 / 20:05:17 / cg" |
9535 | 525 |
! |
526 |
||
10308 | 527 |
bc_dot_mak |
10316
b617a026a146
bc.def - no longer generated it is now in rules\bc_dll.def or
Stefan Vogel <sv@exept.de>
parents:
10313
diff
changeset
|
528 |
"answer a template for the bc.mak makefile. |
b617a026a146
bc.def - no longer generated it is now in rules\bc_dll.def or
Stefan Vogel <sv@exept.de>
parents:
10313
diff
changeset
|
529 |
Any variable definition %(Variable) will be later replaced by the mapping. |
b617a026a146
bc.def - no longer generated it is now in rules\bc_dll.def or
Stefan Vogel <sv@exept.de>
parents:
10313
diff
changeset
|
530 |
$% characters have to be duplicated" |
10308 | 531 |
|
10316
b617a026a146
bc.def - no longer generated it is now in rules\bc_dll.def or
Stefan Vogel <sv@exept.de>
parents:
10313
diff
changeset
|
532 |
^ '# $','Header','$ |
10308 | 533 |
# |
534 |
# DO NOT EDIT |
|
535 |
# automagically generated from the projectDefinition: ',self name,'. |
|
536 |
# |
|
537 |
# Warning: once you modify this file, do not rerun |
|
538 |
# stmkmp or projectDefinition-build again - otherwise, your changes are lost. |
|
539 |
# |
|
540 |
||
541 |
TOP=%(TOP) |
|
542 |
INCLUDE_TOP=$(TOP)\.. |
|
543 |
||
544 |
# CFLAGS1= -WD -w-pro -w-ccc -w-rch -w-aus -w-par -x- -r- -k -y -v -vi- -c -tWDR |
|
545 |
CFLAGS1= -w-pro -w-ccc -w-rch -w-aus -w-par -x- -r- -k -y -v -vi- -c |
|
546 |
||
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
547 |
CFLAGS_CONSOLE=-tWC -tWR -D_NO_VCL;WIN32 |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
548 |
CFLAGS_NOCONSOLE=-tWR -D_NO_VCL;WIN32GUI;WIN32 |
10308 | 549 |
LFLAGS_CONSOLE=-ap |
550 |
LFLAGS_NOCONSOLE=-aa |
|
551 |
CRT_STARTUP_CONSOLE=c0x32.obj |
|
552 |
CRT_STARTUP_NOCONSOLE=c0w32.obj |
|
553 |
||
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
554 |
# notice: the following 3 are now defined via the make-stx and make-winstx rules. |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
555 |
# |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
556 |
# CFLAGS_APPTYPE=$(CFLAGS_%(CONSOLE_OR_NOCONSOLE)) |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
557 |
# LFLAGS_APPTYPE=$(LFLAGS_%(CONSOLE_OR_NOCONSOLE)) |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
558 |
# CRT_STARTUP=$(CRT_STARTUP_%(CONSOLE_OR_NOCONSOLE)) |
10308 | 559 |
|
560 |
CFLAGS_LOCAL=$(CFLAGS_APPTYPE) \ |
|
561 |
-DSTARTUP_CLASS="\"%(STARTUP_CLASS)\"" \ |
|
562 |
-DSTARTUP_SELECTOR="\"%(STARTUP_SELECTOR)\"" \ |
|
563 |
-DUSE_MODULE_TABLE |
|
564 |
||
565 |
# |
|
566 |
||
567 |
!!INCLUDE $(TOP)\rules\stdHeader_bc |
|
568 |
!!INCLUDE Make.spec |
|
569 |
||
570 |
OBJS= $(COMMON_OBJS) $(WIN32_OBJS) |
|
571 |
||
572 |
# |
|
573 |
LIBNAME=dummy |
|
574 |
STCOPT="+optinline" |
|
575 |
LOCALINCLUDES=%(LOCAL_INCLUDES) |
|
576 |
STCLOCALOPT=''-package=$(PACKAGE)'' $(LOCALINCLUDES) %(HEADEROUTPUTARG) $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) $(COMMONSYMFLAG) -varPrefix=$(LIBNAME) |
|
577 |
||
578 |
LINKER = ilink32 |
|
579 |
||
580 |
# LFLAGS = -L$(TOP)\libbc;$(BCB)\lib;$(DEBUGLIBPATH) -H:0x400000 -Hc:0x100000 -S:0x40000 -Sc:0x10000 -ap -Tpe -x -Gn -v -Ao:0x10000 |
|
581 |
LFLAGS = -L$(TOP)\libbc;$(BCB)\lib -S:0x40000 -Sc:0x10000 $(LFLAGS_APPTYPE) -Tpe -x -Gn -v -Ao:0x10000 |
|
582 |
||
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
583 |
PROJECT_CONSOLE = %(CONSOLE_APPLICATION).exe |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
584 |
PROJECT_NOCONSOLE = %(NOCONSOLE_APPLICATION).exe |
10308 | 585 |
ALLOBJFILES = main.obj |
586 |
RESFILES = %(RESFILENAME) |
|
587 |
ALLOBJ = $(CRT_STARTUP) $(ALLOBJFILES) $(OBJS) |
|
10316
b617a026a146
bc.def - no longer generated it is now in rules\bc_dll.def or
Stefan Vogel <sv@exept.de>
parents:
10313
diff
changeset
|
588 |
DEFFILE=$(TOP)\rules\bc_exe.def |
10308 | 589 |
|
590 |
LIBFILES=$(TOP)\libbc\librun.lib |
|
591 |
ALLLIB=$(LIBFILES) import32.lib $(RT_LIB) |
|
592 |
||
593 |
REQUIRED_LIBS=librun.dll %(REQUIRED_LIBS) |
|
594 |
REQUIRED_FILES=cs3245.dll symbols.stc $(REQUIRED_LIBS) |
|
595 |
||
596 |
REQUIRED_SUPPORT_DIRS=%(REQUIRED_SUPPORT_DIRS) |
|
597 |
||
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
598 |
target: %(BUILD_TARGET) |
10308 | 599 |
|
600 |
# the executable, all required files and a self-installing-installer-exe |
|
10424 | 601 |
ALL:: exe setup |
10308 | 602 |
|
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
603 |
exe: %(APPLICATION_OR_CONSOLEAPPLICATION) %(ADDITIONAL_TARGETS) |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
604 |
|
10308 | 605 |
# the executable only |
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
606 |
# with console |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
607 |
%(CONSOLE_APPLICATION): |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
608 |
-del main.obj |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
609 |
$(MAKE) -N -f bc.mak \ |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
610 |
PROJECT=$(PROJECT_CONSOLE) \ |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
611 |
CFLAGS_APPTYPE="$(CFLAGS_CONSOLE)" \ |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
612 |
LFLAGS_APPTYPE="$(LFLAGS_CONSOLE)" \ |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
613 |
CRT_STARTUP="$(CRT_STARTUP_CONSOLE)" theExe |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
614 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
615 |
# without console |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
616 |
%(NOCONSOLE_APPLICATION): |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
617 |
-del main.obj |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
618 |
$(MAKE) -N -f bc.mak \ |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
619 |
PROJECT=$(PROJECT_NOCONSOLE) \ |
10418 | 620 |
CFLAGS_APPTYPE="$(CFLAGS_NOCONSOLE) -DWIN_LOGFILE="\\"\"%(NOCONSOLE_LOGFILE)\\"\""" \ |
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
621 |
LFLAGS_APPTYPE="$(LFLAGS_NOCONSOLE)" \ |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
622 |
CRT_STARTUP="$(CRT_STARTUP_NOCONSOLE)" theExe |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
623 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
624 |
# the executable only (internal target; needs some defines) |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
625 |
theExe: $(OUTDIR) $(OBJS) $(REQUIRED_FILES) show $(PROJECT) |
10308 | 626 |
|
627 |
# a nullsoft installable delivery |
|
10424 | 628 |
setup: $(REQUIRED_SUPPORT_DIRS) install_%(APPLICATION).exe |
10308 | 629 |
|
630 |
# This uses the Nullsoft Installer Package and works in Windows only |
|
631 |
||
632 |
install_%(APPLICATION).exe: $(PROJECT) %(APPLICATION).nsi |
|
633 |
$(MAKENSIS) %(APPLICATION).nsi |
|
634 |
||
635 |
new: |
|
636 |
bmake clean |
|
637 |
bmake |
|
638 |
||
639 |
RESOURCEFILES: %(APPLICATION)_RESOURCES %(APPLICATION)_BITMAPS \ |
|
640 |
stx_RESOURCES stx_STYLES stx_BITMAPS |
|
641 |
||
642 |
%(RESOURCE_RULES) |
|
643 |
%(STX_RESOURCE_RULES) |
|
644 |
||
645 |
%(PREREQUISITES_LIBS) |
|
646 |
%(SUBPROJECTS_LIBS) |
|
647 |
||
648 |
show: |
|
649 |
@echo LFLAGS= $(LFLAGS) |
|
650 |
@echo ALLOBJ= $(ALLOBJ) |
|
651 |
@echo PROJECT= $(PROJECT) |
|
652 |
@echo ALLLIB= $(ALLLIB) |
|
653 |
@echo DEFFILE= $(DEFFILE) |
|
654 |
@echo ALLRES= $(ALLRES) |
|
655 |
||
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
656 |
$(PROJECT_CONSOLE): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE) |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
657 |
$(BCB)\BIN\$(LINKER) $(LFLAGS) $(ALLOBJ), $(PROJECT_CONSOLE),, $(ALLLIB), $(DEFFILE), $(RESFILES) |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
658 |
|
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
659 |
$(PROJECT_NOCONSOLE): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE) |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
660 |
$(BCB)\BIN\$(LINKER) $(LFLAGS) $(ALLOBJ), $(PROJECT_NOCONSOLE),, $(ALLLIB), $(DEFFILE), $(RESFILES) |
10308 | 661 |
|
662 |
#$(PROJECT): $(ALLOBJFILES) $(RESFILES) $(DEFFILE) |
|
663 |
# $(BCB)\BIN\$(LINKER) @&&!! |
|
664 |
# $(LFLAGS) + |
|
665 |
# $(ALLOBJ), + |
|
666 |
# $(PROJECT),, + |
|
667 |
# $(ALLLIB), + |
|
668 |
# $(DEFFILE), + |
|
669 |
# $(RESFILES) |
|
670 |
#!! |
|
671 |
||
672 |
||
673 |
!!INCLUDE $(TOP)\rules\stdRules_bc |
|
674 |
||
675 |
# |
|
676 |
# additional rules |
|
677 |
# |
|
678 |
%(APPLICATION)Win.res: %(APPLICATION)Win.rc %(APPLICATION).ico |
|
679 |
||
680 |
main.obj: buildDate.h main.c bc.mak |
|
681 |
||
682 |
main.c: $(TOP)\librun\main.c |
|
683 |
copy $(TOP)\librun\main.c main.c |
|
684 |
||
685 |
buildDate.h: $(TOP)\librun\genDate.exe |
|
686 |
$(TOP)\librun\genDate.exe |
|
687 |
||
688 |
librun.dll: $(TOP)\librun\librun.dll |
|
689 |
copy $(TOP)\librun\librun.dll librun.dll |
|
690 |
||
691 |
cs3245.dll: $(TOP)\support\win32\borland\cs3245.dll |
|
692 |
copy $(TOP)\support\win32\borland\cs3245.dll cs3245.dll |
|
693 |
||
694 |
symbols.stc: $(TOP)\include\symbols.stc |
|
695 |
copy $(TOP)\include\symbols.stc symbols.stc |
|
696 |
||
697 |
clobber:: |
|
698 |
-del librun.dll |
|
699 |
||
10313
b6ce260fe8cf
#additionalTargets_bc_dot_mak for applications
Stefan Vogel <sv@exept.de>
parents:
10308
diff
changeset
|
700 |
%(ADDITIONAL_RULES) |
b6ce260fe8cf
#additionalTargets_bc_dot_mak for applications
Stefan Vogel <sv@exept.de>
parents:
10308
diff
changeset
|
701 |
|
10308 | 702 |
clean:: |
703 |
-del genDate.exe |
|
704 |
-del c0x32.dll |
|
705 |
-del c0x32.lib |
|
706 |
-del buildDate.h |
|
707 |
-del $(PROJECT) |
|
708 |
-del install_%(APPLICATION).exe |
|
709 |
-del stx.lib |
|
710 |
-del stx.dll |
|
711 |
-del cs3245.dll |
|
712 |
-del $(REQUIRED_FILES) |
|
713 |
-del main.c |
|
714 |
-del *.log |
|
715 |
-del *.res |
|
716 |
-rmdir /S /Q resources |
|
717 |
-rmdir /S /Q objbc |
|
718 |
||
719 |
clobber:: |
|
720 |
-del *.dll |
|
721 |
-del *.exe |
|
722 |
||
723 |
# BEGINMAKEDEPEND --- do not remove this line; make depend needs it |
|
724 |
%(DEPENDENCIES) |
|
725 |
# ENDMAKEDEPEND --- do not remove this line |
|
726 |
'. |
|
10424 | 727 |
|
728 |
"Modified: / 01-03-2007 / 18:07:05 / cg" |
|
10308 | 729 |
! |
730 |
||
731 |
bc_dot_mak_resource_rules |
|
10378
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
732 |
|p| |
10308 | 733 |
|
10378
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
734 |
^ String streamContents:[:s | |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
735 |
s nextPutAll:' |
10308 | 736 |
%(APPLICATION)_RESOURCES: resources\%(MODULE)\%(MODULE_PATH)\NUL |
737 |
-copy ..\resources\*.rs resources\%(MODULE)\%(MODULE_PATH)\..\*.* |
|
738 |
||
739 |
%(APPLICATION)_BITMAPS: resources\%(MODULE)\%(MODULE_PATH)\bitmaps\NUL |
|
740 |
-copy *.ico resources\%(MODULE)\%(MODULE_PATH)\bitmaps\*.* |
|
741 |
-copy *.gif resources\%(MODULE)\%(MODULE_PATH)\bitmaps\*.* |
|
742 |
||
743 |
resources\%(MODULE)\%(MODULE_PATH)\bitmaps\NUL: resources\%(MODULE)\%(MODULE_PATH)\NUL |
|
744 |
mkdir resources\%(MODULE)\%(MODULE_PATH)\bitmaps |
|
745 |
'. |
|
10378
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
746 |
|
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
747 |
p := self moduleDirectory_win32 asCollectionOfSubstringsSeparatedBy:$\. |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
748 |
p size to:2 by:-1 do:[:len | |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
749 |
|part2 part1| |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
750 |
|
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
751 |
part2 := (p copyTo:len) asStringWith:$\. |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
752 |
part1 := (p copyTo:len-1) asStringWith:$\. |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
753 |
s nextPutAll:' |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
754 |
resources\%(MODULE)\',part2,'\NUL: resources\%(MODULE)\',part1,'\NUL |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
755 |
mkdir resources\%(MODULE)\',part2,' |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
756 |
'. |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
757 |
]. |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
758 |
|
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
759 |
s nextPutAll:' |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
760 |
resources\%(MODULE)\',p first,'\NUL: resources\%(MODULE)\NUL |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
761 |
mkdir resources\%(MODULE)\',p first,' |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
762 |
'. |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
763 |
|
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
764 |
"/ be careful to not include two rules for it (-> stx_resource_rules). |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
765 |
self module ~= 'stx' ifTrue:[ |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
766 |
s nextPutAll: |
10308 | 767 |
'resources\%(MODULE)\NUL: resources\NUL |
768 |
mkdir resources\%(MODULE) |
|
769 |
'. |
|
10378
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
770 |
]. |
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
771 |
] |
10308 | 772 |
|
10378
12f4f3d800cb
fixed resource-directory setup if directory is
Claus Gittinger <cg@exept.de>
parents:
10316
diff
changeset
|
773 |
"Modified: / 09-02-2007 / 16:13:43 / cg" |
10308 | 774 |
! |
775 |
||
776 |
bc_dot_mak_stx_resource_rules |
|
777 |
^ ' |
|
778 |
||
779 |
stx_RESOURCES: \ |
|
780 |
keyboard.rc \ |
|
781 |
libbasic_RESOURCES \ |
|
782 |
libview_RESOURCES \ |
|
783 |
libtool_RESOURCES \ |
|
784 |
libtool2_RESOURCES |
|
785 |
||
786 |
keyboard.rc: $(TOP)\projects\smalltalk\keyboard.rc |
|
787 |
copy $(TOP)\projects\smalltalk\keyboard.rc *.* |
|
788 |
||
789 |
stx_STYLES: resources\stx\libview\NUL |
|
790 |
copy $(TOP)\libview\styles\mswindowsXP* resources\stx\libview\*.* |
|
791 |
copy $(TOP)\libview\styles\mswindows*.common resources\stx\libview\*.* |
|
792 |
||
793 |
stx_BITMAPS: \ |
|
794 |
libwidg_BITMAPS |
|
795 |
||
796 |
libwidg_BITMAPS: resources\stx\libwidg\bitmaps\NUL |
|
797 |
copy $(TOP)\libwidg\bitmaps\*.xpm resources\stx\libwidg\bitmaps\*.* |
|
798 |
||
799 |
libbasic_RESOURCES: resources\stx\libbasic\NUL |
|
800 |
copy $(TOP)\libbasic\resources\*.rs resources\stx\libbasic\*.* |
|
801 |
||
802 |
libtool_RESOURCES: resources\stx\libtool\NUL |
|
803 |
copy $(TOP)\libtool\resources\*.rs resources\stx\libtool\*.* |
|
804 |
||
805 |
libtool2_RESOURCES: resources\stx\libtool2\NUL |
|
806 |
copy $(TOP)\libtool2\resources\*.rs resources\stx\libtool2\*.* |
|
807 |
||
808 |
libview_RESOURCES: resources\stx\libview\NUL |
|
809 |
copy $(TOP)\libview\resources\*.rs resources\stx\libview\*.* |
|
810 |
||
811 |
libview2_RESOURCES: resources\stx\libview2\NUL |
|
812 |
copy $(TOP)\libview2\resources\*.rs resources\stx\libview2\*.* |
|
813 |
||
814 |
resources\stx\libbasic\NUL: resources\stx\NUL |
|
815 |
mkdir resources\stx\libbasic |
|
816 |
||
817 |
resources\stx\libtool\NUL: resources\stx\NUL |
|
818 |
mkdir resources\stx\libtool |
|
819 |
||
820 |
resources\stx\libtool2\NUL: resources\stx\NUL |
|
821 |
mkdir resources\stx\libtool2 |
|
822 |
||
823 |
resources\stx\libview\NUL: resources\stx\NUL |
|
824 |
mkdir resources\stx\libview |
|
825 |
||
826 |
resources\stx\libview2\NUL: resources\stx\NUL |
|
827 |
mkdir resources\stx\libview2 |
|
828 |
||
829 |
resources\stx\libwidg\bitmaps\NUL: resources\stx\libwidg\NUL |
|
830 |
mkdir resources\stx\libwidg\bitmaps |
|
831 |
||
832 |
resources\stx\libwidg\NUL: resources\stx\NUL |
|
833 |
mkdir resources\stx\libwidg |
|
834 |
||
835 |
resources\stx\NUL: resources\NUL |
|
836 |
mkdir resources\stx |
|
837 |
||
838 |
resources\NUL: |
|
839 |
mkdir resources |
|
840 |
||
841 |
bitmaps\NUL: |
|
842 |
mkdir bitmaps |
|
843 |
||
844 |
doc\NUL: |
|
845 |
mkdir doc |
|
846 |
||
847 |
'. |
|
848 |
||
849 |
"Created: / 20-09-2006 / 17:36:29 / cg" |
|
850 |
! |
|
851 |
||
9816 | 852 |
buildDate_dot_h |
853 |
"the template code for the buildDate.h file" |
|
854 |
||
855 |
^ |
|
856 |
'#define BUILD_DATE "%(BUILDDATE)"' |
|
857 |
||
858 |
"Created: / 30-08-2006 / 19:18:34 / cg" |
|
859 |
! |
|
860 |
||
9961
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
861 |
classLine_modules_dot_c |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
862 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
863 |
^'_%(CLASS)_Init,' |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
864 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
865 |
"Modified: / 08-08-2006 / 15:46:05 / fm" |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
866 |
"Created: / 19-09-2006 / 22:49:46 / cg" |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
867 |
! |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
868 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
869 |
classLine_modules_dot_c_extern |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
870 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
871 |
^'extern void _%(CLASS)_Init();' |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
872 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
873 |
"Modified: / 08-08-2006 / 15:46:05 / fm" |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
874 |
"Created: / 19-09-2006 / 22:50:14 / cg" |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
875 |
! |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
876 |
|
10094
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
877 |
defineExtenionLine_nsi_for:extension |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
878 |
"the template code for a single extenions definition line in the <appname>.nsi file" |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
879 |
|
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
880 |
^ |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
881 |
' WriteRegStr HKCR ".',extension,'" "" "%(MODULE_KEY).%(PRODUCT_NAME).1"' |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
882 |
|
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
883 |
"Created: / 15-10-2006 / 12:50:00 / cg" |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
884 |
! |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
885 |
|
10023 | 886 |
make_dot_proto |
887 |
||
888 |
^ |
|
889 |
'# $','Header','$ |
|
890 |
# |
|
891 |
# DO NOT EDIT |
|
892 |
# automagically generated from the projectDefinition: ',self name,'. |
|
893 |
# |
|
894 |
# Warning: once you modify this file, do not rerun |
|
895 |
# stmkmp or projectDefinition-build again - otherwise, your changes are lost. |
|
896 |
# |
|
897 |
# The Makefile as generated by this Make.proto supports the following targets: |
|
898 |
# make - compile all st-files to a classLib |
|
899 |
# make clean - clean all temp files |
|
900 |
# make clobber - clean all |
|
901 |
# |
|
902 |
# This file contains definitions for Unix based platforms. |
|
903 |
# It shares common definitions with the win32-make in Make.spec. |
|
904 |
||
905 |
# |
|
906 |
# position (of this package) in directory hierarchy: |
|
907 |
# (must point to ST/X top directory, for tools and includes) |
|
908 |
TOP=%(TOP) |
|
909 |
INCLUDE_TOP=$(TOP)/.. |
|
910 |
||
911 |
# subdirectories where targets are to be made: |
|
912 |
SUBDIRS=%(SUBDIRECTORIES) |
|
913 |
||
914 |
||
915 |
# subdirectories where Makefiles are to be made: |
|
916 |
# (only define if different from SUBDIRS) |
|
917 |
# ALLSUBDIRS= |
|
918 |
||
919 |
||
920 |
# if your embedded C code requires any system includes, |
|
921 |
# add the path(es) here:, |
|
922 |
# ********** OPTIONAL: MODIFY the next lines *** |
|
923 |
# LOCALINCLUDES=-Ifoo -Ibar |
|
924 |
LOCALINCLUDES=%(LOCAL_INCLUDES) |
|
925 |
||
926 |
||
927 |
# if you need any additional defines for embedded C code, |
|
928 |
# add them here:, |
|
929 |
# ********** OPTIONAL: MODIFY the next lines *** |
|
930 |
# LOCALDEFINES=-Dfoo -Dbar -DDEBUG |
|
931 |
LOCALDEFINES=%(LOCAL_DEFINES) |
|
932 |
||
933 |
LIBNAME=%(LIBRARY_NAME) |
|
934 |
STCLOCALOPT=''-package=$(PACKAGE)'' -I. $(LOCALINCLUDES) $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) %(HEADEROUTPUTARG) %(COMMONSYMFLAG) -varPrefix=$(LIBNAME) |
|
935 |
||
936 |
||
937 |
# ********** OPTIONAL: MODIFY the next line *** |
|
938 |
# additional C-libraries that should be pre-linked with the class-objects |
|
939 |
LD_OBJ_LIBS=%(ADDITIONAL_LINK_LIBRARIES) |
|
940 |
LOCAL_SHARED_LIBS=%(ADDITIONAL_SHARED_LINK_LIBRARIES) |
|
941 |
||
942 |
||
943 |
# ********** OPTIONAL: MODIFY the next line *** |
|
944 |
# additional C targets or libraries should be added below |
|
945 |
LOCAL_EXTRA_TARGETS= |
|
946 |
||
947 |
OBJS= $(COMMON_OBJS) $(UNIX_OBJS) |
|
948 |
||
949 |
%(ADDITIONAL_DEFINITIONS) |
|
950 |
||
951 |
all:: preMake classLibRule postMake |
|
952 |
||
953 |
pre_objs:: %(ADDITIONAL_TARGETS) |
|
954 |
||
955 |
%(ADDITIONAL_RULES) |
|
956 |
||
957 |
# add more install actions here |
|
958 |
install:: |
|
959 |
||
960 |
# add more install actions for aux-files (resources) here |
|
961 |
installAux:: |
|
962 |
||
963 |
# add more preMake actions here |
|
964 |
preMake:: |
|
965 |
||
966 |
# add more postMake actions here |
|
967 |
postMake:: cleanjunk |
|
968 |
||
969 |
cleanjunk:: |
|
970 |
||
971 |
clean:: |
|
972 |
%(TAB)-rm -f *.o *.H |
|
973 |
||
974 |
clobber:: |
|
975 |
%(TAB)-rm -f *.so *.dll |
|
976 |
||
977 |
', |
|
978 |
" |
|
979 |
$(INSTALLBASE):: |
|
980 |
%(TAB)@test -d $@ || mkdir $@ |
|
981 |
||
982 |
$(INSTALLBASE)/packages:: $(INSTALLBASE) |
|
983 |
%(TAB)@test -d $@ || mkdir $@ |
|
984 |
||
985 |
$(INSTALLBASE)/packages/$(MODULE):: $(INSTALLBASE)/packages |
|
986 |
%(TAB)@test -d $@ || mkdir $@ |
|
987 |
||
988 |
$(INSTALLBASE)/packages/$(MODULE)/dapasx:: $(INSTALLBASE)/packages/$(MODULE) |
|
989 |
%(TAB)@test -d $@ || mkdir $@ |
|
990 |
||
991 |
$(INSTALLBASE)/packages/$(MODULE)/dapasx/interactiver_editor:: $(INSTALLBASE)/packages/$(MODULE)/dapasx |
|
992 |
%(TAB)@test -d $@ || mkdir $@ |
|
993 |
||
994 |
$(INSTALLBASE)/packages/$(MODULE)/$(MODULE_DIR):: $(INSTALLBASE)/packages/$(MODULE) |
|
995 |
%(TAB)@test -d $@ || mkdir $@ |
|
996 |
" |
|
997 |
' |
|
998 |
# BEGINMAKEDEPEND --- do not remove this line; make depend needs it |
|
999 |
%(DEPENDENCIES) |
|
1000 |
# ENDMAKEDEPEND --- do not remove this line |
|
1001 |
||
1002 |
' |
|
1003 |
||
1004 |
"Modified: / 09-08-2006 / 16:50:23 / fm" |
|
1005 |
"Created: / 29-09-2006 / 23:47:07 / cg" |
|
1006 |
! |
|
1007 |
||
9961
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1008 |
modules_dot_c |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1009 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1010 |
^ |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1011 |
'/* $','Header','$ |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1012 |
* |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1013 |
* DO NOT EDIT |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1014 |
* automagically generated from the projectDefinition: ',self name,'. |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1015 |
* |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1016 |
* Warning: once you modify this file, do not rerun |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1017 |
* stmkmp or projectDefinition-build again - otherwise, your changes are lost. |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1018 |
*/ |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1019 |
typedef void (*vf)(); |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1020 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1021 |
%(EXTERN_INIT_NAME_LIST) |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1022 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1023 |
static vf modules[] = { |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1024 |
%(INIT_LIST) |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1025 |
(vf)0 |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1026 |
}; |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1027 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1028 |
vf *__modules__ = modules; |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1029 |
' |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1030 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1031 |
"Created: / 19-09-2006 / 22:36:58 / cg" |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1032 |
! |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1033 |
|
9535 | 1034 |
modules_dot_stx |
9532 | 1035 |
|
9535 | 1036 |
^ |
9542 | 1037 |
'# $','Header','$ |
9535 | 1038 |
# |
9578 | 1039 |
# DO NOT EDIT |
1040 |
# automagically generated from the projectDefinition: ',self name,'. |
|
1041 |
# |
|
1042 |
# Warning: once you modify this file, do not rerun |
|
1043 |
# stmkmp or projectDefinition-build again - otherwise, your changes are lost. |
|
1044 |
# |
|
9535 | 1045 |
# This file is (currently) only used with win-95 / win-NT versions of STX. |
1046 |
# It lists the dll''s which are to be loaded at startup time. |
|
1047 |
# |
|
1048 |
# All classes loaded at startup time will be present as precompiled classes. |
|
1049 |
# Others will be autoloaded. |
|
1050 |
# |
|
1051 |
%(PREREQUISITE_LIBS) |
|
1052 |
%(SUBPROJECT_LIBS) |
|
1053 |
' |
|
1054 |
||
1055 |
"Created: / 08-08-2006 / 12:26:58 / fm" |
|
1056 |
"Modified: / 08-08-2006 / 19:32:27 / fm" |
|
9542 | 1057 |
"Modified: / 16-08-2006 / 17:56:58 / User" |
9578 | 1058 |
"Modified: / 17-08-2006 / 20:35:38 / cg" |
9535 | 1059 |
! |
1060 |
||
9963 | 1061 |
packageName_dot_nsi |
1062 |
"the template code for the <appname>.nsi file" |
|
1063 |
||
1064 |
^ |
|
1065 |
'; $','Header','$ |
|
1066 |
; Script generated by ProjectDefinition. |
|
1067 |
||
1068 |
!!define PRODUCT_NAME "%(PRODUCT_NAME)" |
|
1069 |
!!define PRODUCT_VERSION "%(PRODUCT_VERSION)" |
|
1070 |
!!define PRODUCT_PUBLISHER "%(PRODUCT_PUBLISHER)" |
|
1071 |
!!define PRODUCT_WEB_SITE "http://www.expecco.de" |
|
1072 |
!!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" |
|
1073 |
!!define PRODUCT_UNINST_ROOT_KEY "HKLM" |
|
1074 |
||
1075 |
!!define STX_ROOT "%(TOP)\.." |
|
1076 |
||
1077 |
SetCompressor lzma |
|
1078 |
||
1079 |
||
1080 |
; MUI 1.67 compatible ------ |
|
1081 |
!!include "MUI.nsh" |
|
1082 |
||
1083 |
; MUI Settings |
|
1084 |
||
1085 |
!!define MUI_ABORTWARNING |
|
9985 | 1086 |
%(SEMI_IF_ICON_EXISTS)!!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico" |
10423 | 1087 |
%(SEMI_IF_NO_ICON_EXISTS)!!define MUI_ICON "%(APPLICATION_ICON).ico" |
9985 | 1088 |
%(SEMI_IF_ICON_EXISTS)!!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico" |
10423 | 1089 |
%(SEMI_IF_NO_ICON_EXISTS)!!define MUI_UNICON "%(APPLICATION_ICON).ico" |
9963 | 1090 |
|
1091 |
; Language Selection Dialog Settings |
|
1092 |
!!define MUI_LANGDLL_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}" |
|
1093 |
!!define MUI_LANGDLL_REGISTRY_KEY "${PRODUCT_UNINST_KEY}" |
|
1094 |
!!define MUI_LANGDLL_REGISTRY_VALUENAME "NSIS:Language" |
|
1095 |
||
1096 |
; Welcome page |
|
1097 |
!!insertmacro MUI_PAGE_WELCOME |
|
1098 |
; License page |
|
1099 |
; !!define MUI_LICENSEPAGE_CHECKBOX |
|
1100 |
||
1101 |
',(self hasLicenceToAcceptDuringInstallation |
|
1102 |
ifTrue:['!!insertmacro MUI_PAGE_LICENSE $(license)'] |
|
1103 |
ifFalse:['']),' |
|
1104 |
!!insertmacro MUI_PAGE_COMPONENTS |
|
1105 |
; Directory page |
|
1106 |
!!insertmacro MUI_PAGE_DIRECTORY |
|
1107 |
; Instfiles page |
|
1108 |
!!insertmacro MUI_PAGE_INSTFILES |
|
1109 |
; Finish page |
|
1110 |
!!insertmacro MUI_PAGE_FINISH |
|
1111 |
||
1112 |
; Uninstaller pages |
|
1113 |
!!insertmacro MUI_UNPAGE_INSTFILES |
|
1114 |
||
1115 |
; Language files |
|
1116 |
!!insertmacro MUI_LANGUAGE "English" |
|
1117 |
!!insertmacro MUI_LANGUAGE "German" |
|
1118 |
||
1119 |
; MUI end ------ |
|
1120 |
||
9985 | 1121 |
',((self hasLicenceToAcceptDuringInstallation and:[self docDirPath_win32 notNil]) |
9963 | 1122 |
ifTrue:[' |
9985 | 1123 |
LicenseLangString license ${LANG_ENGLISH} "',self docDirPath_win32,'\licence_en.txt" |
1124 |
LicenseLangString license ${LANG_GERMAN} "',self docDirPath_win32,'\licence_de.txt" |
|
9963 | 1125 |
'] |
1126 |
ifFalse:['']),' |
|
1127 |
||
1128 |
Name "${PRODUCT_NAME} ${PRODUCT_VERSION}" |
|
1129 |
VIProductVersion "${PRODUCT_VERSION}.0" |
|
1130 |
VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "${PRODUCT_NAME}" |
|
1131 |
VIAddVersionKey /LANG=${LANG_ENGLISH} "CompanyName" "${PRODUCT_PUBLISHER}" |
|
1132 |
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "%(FILE_VERSION)" |
|
1133 |
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "${PRODUCT_NAME} Installer" |
|
1134 |
VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductVersion" "${PRODUCT_VERSION}" |
|
1135 |
VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "%(LEGAL_COPYRIGHT)" |
|
1136 |
||
1137 |
||
10425 | 1138 |
OutFile "%(APPLICATION)Setup.exe" |
9963 | 1139 |
InstallDir "%(PRODUCT_INSTALLDIR)" |
1140 |
ShowInstDetails show |
|
1141 |
ShowUnInstDetails show |
|
1142 |
||
1143 |
Function .onInit |
|
1144 |
!!insertmacro MUI_LANGDLL_DISPLAY |
|
1145 |
FunctionEnd |
|
1146 |
||
1147 |
InstType Full |
|
1148 |
InstType Partial |
|
1149 |
||
1150 |
Section "Programme" Section1 |
|
1151 |
SectionIn 1 2 |
|
1152 |
SetOutPath "$INSTDIR\bin" |
|
1153 |
SetOverwrite ifnewer |
|
1154 |
File "*.dll" |
|
10419 | 1155 |
File %(DELIVERED_EXECUTABLES) |
9963 | 1156 |
File "symbols.stc" |
1157 |
File "modules.stx" |
|
1158 |
File /r "resources" |
|
1159 |
File "keyboard.rc" |
|
1160 |
||
1161 |
; File "${STX_ROOT}\stx\projects\smalltalk\patches" |
|
1162 |
; File /r "${STX_ROOT}\stx\projects\smalltalk\include" |
|
1163 |
; File /r "${STX_ROOT}\stx\*.rs" |
|
1164 |
; File /r "${STX_ROOT}\%(MODULE)\%(APPLICATION)\*.rs" |
|
1165 |
; File /x CVS "${STX_ROOT}\stx\libview\styles\*" |
|
1166 |
||
10094
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1167 |
%(FILE_EXTENION_DEFINITION_LINES) |
9963 | 1168 |
WriteRegStr HKCR "%(MODULE_KEY).%(PRODUCT_NAME).1" "" "%(PRODUCT_NAME) File" |
10419 | 1169 |
WriteRegStr HKCR "%(MODULE_KEY).%(PRODUCT_NAME).1\DefaultIcon" "" ''$INSTDIR\bin\%(NOCONSOLE_APPLICATION).exe,0'' |
9963 | 1170 |
WriteRegStr HKCR "%(MODULE_KEY).%(PRODUCT_NAME).1\Shell\open" "" $(appOpen) |
10419 | 1171 |
WriteRegStr HKCR "%(MODULE_KEY).%(PRODUCT_NAME).1\Shell\open\command" "" ''"$INSTDIR\bin\%(NOCONSOLE_APPLICATION).exe" -- "%1"'' |
9963 | 1172 |
SectionEnd |
1173 |
||
9985 | 1174 |
%(SEMI_IF_NO_DOC_EXISTS)Section "Online-Documentation for %(PRODUCT_NAME)" Section2 |
1175 |
%(SEMI_IF_NO_DOC_EXISTS) SectionIn 1 |
|
1176 |
%(SEMI_IF_NO_DOC_EXISTS) SetOutPath "$INSTDIR\doc" |
|
1177 |
%(SEMI_IF_NO_DOC_EXISTS) SetOverwrite ifnewer |
|
1178 |
%(SEMI_IF_NO_DOC_EXISTS) File /r /x CVS "${STX_ROOT}\%(MODULE)\%(APPLICATION)\doc\*" |
|
1179 |
%(SEMI_IF_NO_DOC_EXISTS)SectionEnd |
|
9963 | 1180 |
|
1181 |
;; Section "%(PRODUCT_NAME) Libraries and Demos" Section3 |
|
1182 |
;; SectionIn 1 |
|
1183 |
;; SetOutPath "$INSTDIR\lib" |
|
1184 |
;; SetOverwrite ifnewer |
|
1185 |
;; ; File /r /x CVS "${STX_ROOT}\%(MODULE)\%(APPLICATION)\examples\*" |
|
1186 |
;; SectionEnd |
|
1187 |
;; |
|
1188 |
;; Section "%(PRODUCT_NAME) Reports and Printing" Section4 |
|
1189 |
;; SectionIn 1 |
|
1190 |
;; SetOutPath "$INSTDIR\reportGenerator" |
|
1191 |
;; SetOverwrite ifnewer |
|
1192 |
;; ; File /r /x CVS "..\reportGenerator\java" "..\reportGenerator\rules" "..\reportGenerator\*.xml" "..\reportGenerator\*.xslt" "..\reportGenerator\CloseApp.exe" "..\reportGenerator\eXpecco.jpg" |
|
1193 |
;; SectionEnd |
|
1194 |
||
1195 |
Section -AdditionalIcons |
|
10151
8be8745d851c
app must start in bin-dir, in order for resource files to be found.
Claus Gittinger <cg@exept.de>
parents:
10094
diff
changeset
|
1196 |
SetOutPath "$INSTDIR\bin" |
9963 | 1197 |
WriteIniStr "$INSTDIR\${PRODUCT_NAME}.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}" |
1198 |
CreateDirectory "$SMPROGRAMS\${PRODUCT_NAME}" |
|
10419 | 1199 |
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\%(APPLICATION).lnk" "$INSTDIR\bin\%(NOCONSOLE_APPLICATION)" |
1200 |
CreateShortCut "$DESKTOP\%(APPLICATION).lnk" "$INSTDIR\bin\%(NOCONSOLE_APPLICATION)" |
|
9963 | 1201 |
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Website.lnk" "$INSTDIR\${PRODUCT_NAME}.url" |
1202 |
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Uninstall.lnk" "$INSTDIR\uninst.exe" |
|
1203 |
SectionEnd |
|
1204 |
||
1205 |
Section -Post |
|
1206 |
WriteUninstaller "$INSTDIR\uninst.exe" |
|
1207 |
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)" |
|
1208 |
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe" |
|
1209 |
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" |
|
1210 |
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}" |
|
1211 |
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}" |
|
1212 |
SectionEnd |
|
1213 |
||
1214 |
LangString appOpen ${LANG_GERMAN} "Mit %(PRODUCT_NAME) öffnen" |
|
1215 |
LangString appOpen ${LANG_ENGLISH} "Open with %(PRODUCT_NAME)" |
|
1216 |
||
1217 |
LangString DESC_Section1 ${LANG_ENGLISH} "Program components of %(PRODUCT_NAME)" |
|
1218 |
LangString DESC_Section1 ${LANG_GERMAN} "Alle Programmkomponenten von %(PRODUCT_NAME)" |
|
9985 | 1219 |
%(SEMI_IF_NO_DOC_EXISTS)LangString DESC_Section2 ${LANG_ENGLISH} "Online-Documentation of %(PRODUCT_NAME)" |
1220 |
%(SEMI_IF_NO_DOC_EXISTS)LangString DESC_Section2 ${LANG_GERMAN} "Online-Dokumentation zu %(PRODUCT_NAME)" |
|
9963 | 1221 |
;; LangString DESC_Section3 ${LANG_ENGLISH} "Libraries and Demo Projects" |
1222 |
;; LangString DESC_Section3 ${LANG_GERMAN} "Bibliotheken und Beispielprojekte" |
|
1223 |
;; LangString DESC_Section4 ${LANG_ENGLISH} "Logfile Printing and Report Generation" |
|
1224 |
;; LangString DESC_Section4 ${LANG_GERMAN} "Drucken und Report-Generierung aus Log-Dateien" |
|
1225 |
||
1226 |
||
1227 |
!!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN |
|
1228 |
!!insertmacro MUI_DESCRIPTION_TEXT ${Section1} $(DESC_Section1) |
|
9985 | 1229 |
%(SEMI_IF_NO_DOC_EXISTS) !!insertmacro MUI_DESCRIPTION_TEXT ${Section2} $(DESC_Section2) |
9963 | 1230 |
;; !!insertmacro MUI_DESCRIPTION_TEXT ${Section3} $(DESC_Section3) |
1231 |
;; !!insertmacro MUI_DESCRIPTION_TEXT ${Section4} $(DESC_Section4) |
|
1232 |
!!insertmacro MUI_FUNCTION_DESCRIPTION_END |
|
1233 |
||
1234 |
||
1235 |
||
1236 |
Function un.onUninstSuccess |
|
1237 |
HideWindow |
|
1238 |
MessageBox MB_ICONINFORMATION|MB_OK "%(PRODUCT_NAME) wurde erfolgreich deinstalliert" |
|
1239 |
FunctionEnd |
|
1240 |
||
1241 |
Function un.onInit |
|
1242 |
!!insertmacro MUI_UNGETLANGUAGE |
|
1243 |
MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Möchten Sie %(PRODUCT_NAME) und alle seine Komponenten deinstallieren?" IDYES +2 |
|
1244 |
Abort |
|
1245 |
FunctionEnd |
|
1246 |
||
1247 |
Section Uninstall |
|
1248 |
Delete "$INSTDIR\${PRODUCT_NAME}.url" |
|
1249 |
Delete "$INSTDIR\uninst.exe" |
|
1250 |
Delete "$INSTDIR\*" |
|
1251 |
||
1252 |
Delete "$SMPROGRAMS\${PRODUCT_NAME}\Uninstall.lnk" |
|
1253 |
Delete "$SMPROGRAMS\${PRODUCT_NAME}\Website.lnk" |
|
1254 |
Delete "$SMPROGRAMS\${PRODUCT_NAME}\%(APPLICATION).lnk" |
|
1255 |
Delete "$DESKTOP\%(APPLICATION).lnk" |
|
1256 |
||
1257 |
RMDir "$SMPROGRAMS\${PRODUCT_NAME}" |
|
1258 |
RMDir /r "$INSTDIR" |
|
1259 |
||
1260 |
DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" |
|
1261 |
DeleteRegKey HKCR "%(MODULE_KEY).%(PRODUCT_NAME).1" |
|
10094
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1262 |
%(FILE_EXTENION_UNDEFINITION_LINES) |
9963 | 1263 |
|
1264 |
SetAutoClose true |
|
1265 |
SectionEnd |
|
1266 |
' |
|
1267 |
" |
|
1268 |
bosch_dapasx_application packageName_dot_nsi |
|
1269 |
bosch_dapasx_application generateFile:'dapasx.nsi' |
|
1270 |
" |
|
1271 |
||
1272 |
"Modified: / 09-08-2006 / 15:10:57 / fm" |
|
1273 |
"Created: / 14-09-2006 / 21:09:18 / cg" |
|
10425 | 1274 |
"Modified: / 01-03-2007 / 18:09:35 / cg" |
9963 | 1275 |
! |
1276 |
||
9816 | 1277 |
packageName_dot_rc |
1278 |
"the template code for the <appname>.rc file" |
|
1279 |
||
1280 |
^ |
|
1281 |
'// |
|
1282 |
// DO NOT EDIT |
|
1283 |
// automagically generated from the projectDefinition: ',self name,'. |
|
1284 |
// |
|
1285 |
#define IDR_MAINFRAME 128 |
|
1286 |
||
1287 |
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US |
|
1288 |
#pragma code_page(1252) |
|
1289 |
||
1290 |
%(ICONDEFINITION_LINE) |
|
1291 |
||
1292 |
VS_VERSION_INFO VERSIONINFO |
|
1293 |
FILEVERSION %(FILE_VERSION_COMMASEPARATED) |
|
1294 |
PRODUCTVERSION %(PRODUCT_VERSION_COMMASEPARATED) |
|
1295 |
// FILEFLAGSMASK 0x3fL |
|
1296 |
FILEFLAGSMASK VS_FF_DEBUG | VS_FF_PRERELEASE |
|
1297 |
FILEFLAGS VS_FF_PRERELEASE | VS_FF_SPECIALBUILD |
|
1298 |
FILEOS VOS_NT_WINDOWS32 |
|
1299 |
FILETYPE %(FILETYPE) |
|
1300 |
FILESUBTYPE VS_USER_DEFINED |
|
1301 |
||
1302 |
BEGIN |
|
1303 |
BLOCK "StringFileInfo" |
|
1304 |
BEGIN |
|
1305 |
BLOCK "040904E4" |
|
1306 |
BEGIN |
|
1307 |
VALUE "CompanyName", "%(COMPANY_NAME)\0" |
|
1308 |
VALUE "FileDescription", "%(FILE_DESCRIPTION)\0" |
|
1309 |
VALUE "FileVersion", "%(FILE_VERSION)\0" |
|
1310 |
VALUE "InternalName", "%(INTERNAL_NAME)\0" |
|
1311 |
%(LEGAL_COPYRIGHT_LINE) |
|
1312 |
VALUE "ProductName", "%(PRODUCT_NAME)\0" |
|
1313 |
VALUE "ProductVersion", "%(PRODUCT_VERSION)\0" |
|
1314 |
VALUE "ProductDate", "%(PRODUCT_DATE)\0" |
|
1315 |
END |
|
1316 |
END |
|
1317 |
||
1318 |
BLOCK "VarFileInfo" |
|
1319 |
BEGIN // Language | Translation |
|
1320 |
VALUE "Translation", 0x409, 0x4E4 // U.S. English, Windows Multilingual |
|
1321 |
END |
|
1322 |
END |
|
1323 |
' |
|
1324 |
" |
|
1325 |
stx_libbasic3 packageName_dot_rc |
|
1326 |
stx_libbasic3 generate_packageName_dot_rc |
|
1327 |
" |
|
1328 |
||
1329 |
"Modified: / 09-08-2006 / 15:10:57 / fm" |
|
1330 |
"Created: / 30-08-2006 / 18:41:47 / cg" |
|
1331 |
! |
|
1332 |
||
10308 | 1333 |
preRequisiteLine_bc_dot_mak |
10381
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1334 |
^ |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1335 |
'%(FILE_NAME).dll: %(MODULE_DIRECTORY)\objbc\%(FILE_NAME).dll |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1336 |
copy %(MODULE_DIRECTORY)\objbc\%(FILE_NAME).dll *.* |
9532 | 1337 |
|
10381
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1338 |
%(MODULE_DIRECTORY)\objbc\%(FILE_NAME).dll: |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1339 |
cd %(MODULE_DIRECTORY) |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1340 |
bmake |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1341 |
cd %(BACK_DIRECTORY) |
9532 | 1342 |
' |
9900 | 1343 |
|
10381
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1344 |
"Modified: / 09-02-2007 / 16:22:47 / cg" |
9532 | 1345 |
! |
1346 |
||
10308 | 1347 |
subProjectLine_bc_dot_mak |
9532 | 1348 |
|
1349 |
^'%(LIBRARY_NAME).dll: $(TOP)\..\%(PATH_TO_SUB_PROJECT)\objbc\%(LIBRARY_NAME).dll |
|
1350 |
copy $(TOP)\..\%(PATH_TO_SUB_PROJECT)\objbc\%(LIBRARY_NAME).dll *.* |
|
1351 |
||
1352 |
$(TOP)\..\%(PATH_TO_SUB_PROJECT)\objbc\%(LIBRARY_NAME).dll: |
|
1353 |
cd $(TOP)\..\%(PATH_TO_SUB_PROJECT) |
|
1354 |
bmake |
|
1355 |
-cd $(TOP)\..\%(PATH_TO_MYPROJECT) |
|
1356 |
' |
|
10094
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1357 |
! |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1358 |
|
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1359 |
undefineExtenionLine_nsi_for:extension |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1360 |
"the template code for a single extenions undefinition line in the <appname>.nsi file" |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1361 |
|
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1362 |
^ |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1363 |
' DeleteRegKey HKCR ".',extension,'"' |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1364 |
|
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1365 |
"Created: / 15-10-2006 / 12:51:00 / cg" |
9532 | 1366 |
! ! |
1367 |
||
1368 |
!ApplicationDefinition class methodsFor:'mappings'! |
|
1369 |
||
10308 | 1370 |
bc_dot_mak_mappings |
1371 |
|d| |
|
1372 |
||
1373 |
d := super bc_dot_mak_mappings. |
|
1374 |
d |
|
1375 |
at: 'CONSOLE_OR_NOCONSOLE' put:(self isConsoleApplication ifTrue:'CONSOLE' ifFalse:'NOCONSOLE'); |
|
1376 |
at: 'LOCAL_INCLUDES' put: (self generateLocalIncludes_win32); |
|
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
1377 |
at: 'APPLICATION_OR_CONSOLEAPPLICATION' put:(self isConsoleApplication ifTrue:(self applicationNameConsole) ifFalse:(self applicationNameNoConsole)); |
10308 | 1378 |
at: 'APPLICATION' put: (self applicationName); |
10415
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
1379 |
at: 'CONSOLE_APPLICATION' put: (self applicationNameConsole); |
8d6ed7ea4c15
generate rules for both stx and winstx
Claus Gittinger <cg@exept.de>
parents:
10381
diff
changeset
|
1380 |
at: 'NOCONSOLE_APPLICATION' put: (self applicationNameNoConsole); |
10418 | 1381 |
at: 'NOCONSOLE_LOGFILE' put:(self logFilenameNoConsole); |
10308 | 1382 |
at: 'RESFILENAME' put: (self resourceFilename ); |
1383 |
at: 'RCFILENAME' put: (self rcFilename ); |
|
1384 |
at: 'STARTUP_CLASS' put: ( self startupClassName ); |
|
1385 |
at: 'STARTUP_SELECTOR' put: (self startupSelector ); |
|
1386 |
at: 'REQUIRED_LIBS' put: (self generateRequiredLibs_bc_dot_mak); |
|
1387 |
at: 'PREREQUISITES_LIBS' put: (self generatePreRequisiteLines_bc_dot_mak ); |
|
1388 |
at: 'DEPENDENCIES' put: (self generateDependencies_win32); |
|
1389 |
at: 'SUBPROJECTS_LIBS' put: (self generateSubProjectLines_bc_dot_mak ); |
|
10313
b6ce260fe8cf
#additionalTargets_bc_dot_mak for applications
Stefan Vogel <sv@exept.de>
parents:
10308
diff
changeset
|
1390 |
at: 'BUILD_TARGET' put: (self buildTarget ); |
b6ce260fe8cf
#additionalTargets_bc_dot_mak for applications
Stefan Vogel <sv@exept.de>
parents:
10308
diff
changeset
|
1391 |
at: 'ADDITIONAL_TARGETS' put: (self additionalTargets_bc_dot_mak); |
b6ce260fe8cf
#additionalTargets_bc_dot_mak for applications
Stefan Vogel <sv@exept.de>
parents:
10308
diff
changeset
|
1392 |
at: 'ADDITIONAL_RULES' put: (self additionalRules_bc_dot_mak); |
10308 | 1393 |
yourself. |
1394 |
||
1395 |
self needResources ifTrue:[ |
|
1396 |
d |
|
1397 |
at: 'REQUIRED_SUPPORT_DIRS' put: 'RESOURCEFILES'; |
|
1398 |
at: 'RESOURCE_RULES' put:( self replaceMappings: d |
|
1399 |
in: self bc_dot_mak_resource_rules ); |
|
1400 |
at: 'STX_RESOURCE_RULES' put: ( self replaceMappings: d |
|
1401 |
in: self bc_dot_mak_stx_resource_rules); |
|
1402 |
yourself |
|
1403 |
]. |
|
1404 |
^ d |
|
1405 |
||
1406 |
"Modified: / 20-09-2006 / 17:37:57 / cg" |
|
1407 |
! |
|
1408 |
||
9816 | 1409 |
buildDate_dot_h_mappings |
1410 |
|d| |
|
1411 |
||
1412 |
d := Dictionary new. |
|
1413 |
d |
|
9886 | 1414 |
at: 'BUILDDATE' put: (Timestamp now printStringRFC1123Format ). |
9816 | 1415 |
|
1416 |
^ d |
|
1417 |
||
1418 |
"Created: / 30-08-2006 / 19:19:30 / cg" |
|
9886 | 1419 |
"Modified: / 14-09-2006 / 18:58:31 / cg" |
9816 | 1420 |
! |
1421 |
||
10094
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1422 |
fileExtensionDefinitionLines_dot_nsi:bindings |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1423 |
^ String streamContents:[:s | |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1424 |
self documentExtensions do:[:ext | |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1425 |
s nextPutAll:((self defineExtenionLine_nsi_for:ext) expandPlaceholdersWith:bindings) |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1426 |
]. |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1427 |
]. |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1428 |
|
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1429 |
"Created: / 15-10-2006 / 12:59:03 / cg" |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1430 |
! |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1431 |
|
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1432 |
fileExtensionUndefinitionLines_dot_nsi:bindings |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1433 |
^ String streamContents:[:s | |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1434 |
self documentExtensions do:[:ext | |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1435 |
s nextPutAll:((self undefineExtenionLine_nsi_for:ext) expandPlaceholdersWith:bindings) |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1436 |
]. |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1437 |
]. |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1438 |
|
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1439 |
"Created: / 15-10-2006 / 12:59:18 / cg" |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1440 |
! |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1441 |
|
9961
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1442 |
modules_dot_c_mappings |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1443 |
|d| |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1444 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1445 |
d := Dictionary new. |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1446 |
d |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1447 |
at: 'INIT_LIST' put: (self generateClassLines:(self classLine_modules_dot_c)); |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1448 |
at: 'EXTERN_INIT_NAME_LIST' put: (self generateClassLines:(self classLine_modules_dot_c_extern)); |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1449 |
yourself. |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1450 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1451 |
^ d |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1452 |
|
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1453 |
"Created: / 19-09-2006 / 22:42:15 / cg" |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1454 |
! |
c3bd31c4af2f
also generate modules.c (precompiled-in init list for app)
Claus Gittinger <cg@exept.de>
parents:
9958
diff
changeset
|
1455 |
|
9535 | 1456 |
modules_dot_stx_mappings |
1457 |
|d| |
|
1458 |
||
1459 |
d := Dictionary new. |
|
1460 |
d |
|
9886 | 1461 |
at: 'PREREQUISITE_LIBS' put: (self generatePreRequisiteLibs_modules_dot_stx); |
1462 |
at: 'SUBPROJECT_LIBS' put: (self generateSubProjectLines_modules_dot_stx ). |
|
9535 | 1463 |
|
1464 |
^ d |
|
9886 | 1465 |
|
1466 |
"Modified: / 14-09-2006 / 18:58:41 / cg" |
|
9535 | 1467 |
! |
1468 |
||
10419 | 1469 |
nsiDeliveredExecutables |
1470 |
^ '"',self applicationName,'.exe','"' |
|
1471 |
! |
|
1472 |
||
9963 | 1473 |
packageName_dot_nsi_mappings |
10094
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1474 |
|d s defLines undefLines| |
9963 | 1475 |
|
1476 |
d := Dictionary new. |
|
1477 |
d |
|
1478 |
at: 'TOP' put: ( self pathToTop_win32 ); |
|
1479 |
||
1480 |
at: 'APPLICATION' put: (self applicationName); |
|
10423 | 1481 |
at: 'APPLICATION_ICON' put: (self applicationIconFileName); |
10419 | 1482 |
at: 'CONSOLE_APPLICATION' put: (self applicationNameConsole); |
1483 |
at: 'NOCONSOLE_APPLICATION' put: (self applicationNameNoConsole); |
|
1484 |
at: 'DELIVERED_EXECUTABLES' put: (self nsiDeliveredExecutables); |
|
9963 | 1485 |
at: 'MODULE' put: ( self module ); |
1486 |
at: 'MODULE_KEY' put: ( self module asUppercaseFirst ); |
|
1487 |
at: 'PRODUCT_NAME' put: (self productName); |
|
1488 |
at: 'PRODUCT_VERSION' put: (self productVersion); |
|
1489 |
at: 'PRODUCT_DATE' put: (self productDate); |
|
1490 |
at: 'PRODUCT_PUBLISHER' put: (self productPublisher); |
|
1491 |
at: 'PRODUCT_WEBSITE' put: (self productWebSite); |
|
1492 |
at: 'PRODUCT_INSTALLDIR' put: (self productInstallDir); |
|
1493 |
at: 'FILETYPE' put: ( 'VFT_DLL' ); |
|
1494 |
at: 'FILE_VERSION_COMMASEPARATED' put: (self fileVersionCommaSeparated); |
|
1495 |
at: 'PRODUCT_VERSION_COMMASEPARATED' put: (self productVersionCommaSeparated); |
|
1496 |
||
1497 |
at: 'COMPANY_NAME' put: (self companyName); |
|
1498 |
at: 'FILE_DESCRIPTION' put: (self fileDescription); |
|
1499 |
at: 'FILE_VERSION' put: (self fileVersion); |
|
1500 |
at: 'LEGAL_COPYRIGHT' put: (self legalCopyright ? ''); |
|
1501 |
at: 'INTERNAL_NAME' put: (self internalName). |
|
1502 |
s := self legalCopyright. |
|
1503 |
s notNil ifTrue:[ |
|
9985 | 1504 |
d at: 'LEGAL_COPYRIGHT_LINE' put: ' VALUE "LegalCopyright", "',s,'\0"' |
9963 | 1505 |
]. |
1506 |
s := self iconFileName. |
|
9985 | 1507 |
s isNil ifTrue:[ |
1508 |
d at:'SEMI_IF_NO_ICON_EXISTS' put:';; '. |
|
1509 |
d at:'SEMI_IF_ICON_EXISTS' put:''. |
|
1510 |
] ifFalse:[ |
|
1511 |
d at:'SEMI_IF_NO_ICON_EXISTS' put:''. |
|
1512 |
d at:'SEMI_IF_ICON_EXISTS' put:';; '. |
|
1513 |
d at: #'ICONDEFINITION_LINE' put: 'IDR_MAINFRAME ICON DISCARDABLE "',s,'"' |
|
1514 |
]. |
|
1515 |
self docDirPath_win32 isNil ifTrue:[ |
|
1516 |
d at:'SEMI_IF_NO_DOC_EXISTS' put:';; '. |
|
1517 |
] ifFalse:[ |
|
1518 |
d at:'SEMI_IF_NO_DOC_EXISTS' put:''. |
|
9963 | 1519 |
]. |
1520 |
||
10094
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1521 |
defLines := self fileExtensionDefinitionLines_dot_nsi:d. |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1522 |
undefLines := self fileExtensionUndefinitionLines_dot_nsi:d. |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1523 |
|
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1524 |
d at:'FILE_EXTENION_DEFINITION_LINES' put:defLines. |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1525 |
d at:'FILE_EXTENION_UNDEFINITION_LINES' put:undefLines. |
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1526 |
|
9963 | 1527 |
^ d |
1528 |
||
1529 |
"Created: / 14-09-2006 / 21:08:44 / cg" |
|
10094
f19c19308711
care for registered file-extensions
Claus Gittinger <cg@exept.de>
parents:
10079
diff
changeset
|
1530 |
"Modified: / 15-10-2006 / 13:00:36 / cg" |
9963 | 1531 |
! |
1532 |
||
10308 | 1533 |
preRequisiteLine_bc_dot_mak_mappings: aProjectID |
10381
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1534 |
|module relPath relBackPath| |
9532 | 1535 |
|
10381
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1536 |
module := self module. |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1537 |
|
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1538 |
relPath := self msdosPathToPackage:aProjectID from:(self package). |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1539 |
relBackPath := Array new:(relPath asCollectionOfSubstringsSeparatedBy:$\) size withAll:'..'. |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1540 |
relBackPath := relBackPath asStringWith:$\. |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1541 |
relBackPath := relBackPath , '\',module,'\',(self moduleDirectory_win32). |
9567 | 1542 |
|
10381
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1543 |
^ Dictionary new |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1544 |
at: 'FILE_NAME' put: (self libraryNameFor: aProjectID ); |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1545 |
at: 'MODULE_DIRECTORY' put: relPath; |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1546 |
at: 'BACK_DIRECTORY' put: relBackPath; |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1547 |
yourself |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1548 |
|
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1549 |
"Modified: / 09-02-2007 / 16:59:21 / cg" |
9532 | 1550 |
! |
1551 |
||
10308 | 1552 |
preRequisiteLine_bc_dot_mak_mappingsForClass:aClass |
10381
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1553 |
|relPath relBackPath| |
9535 | 1554 |
|
10381
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1555 |
relPath := (PackageId from:aClass package) directory copy replaceAll:$/ with:$\. |
9567 | 1556 |
|
10381
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1557 |
^ Dictionary new |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1558 |
at: 'FILE_NAME' put: ( aClass classBaseFilename asFilename withoutSuffix baseName ); |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1559 |
at: 'MODULE_DIRECTORY' put:relPath; |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1560 |
yourself |
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1561 |
|
9118d27357a9
make prerequisite dirs as well
Claus Gittinger <cg@exept.de>
parents:
10379
diff
changeset
|
1562 |
"Modified: / 09-02-2007 / 16:28:12 / cg" |
9535 | 1563 |
! |
1564 |
||
10308 | 1565 |
subProjectLine_bc_dot_mak_mappings: aProjectID |
9557 | 1566 |
^ Dictionary new |
9886 | 1567 |
at: 'LIBRARY_NAME' put: (self libraryNameFor: aProjectID ); |
1568 |
at: 'PATH_TO_SUB_PROJECT' put: ( (PackageId from:aProjectID) module,'\',(PackageId from:aProjectID) directory copy replaceAll:$/ with:$\ ); |
|
1569 |
at: 'PATH_TO_MYPROJECT' put: (self msdosPathToPackage: self package from: aProjectID); |
|
9557 | 1570 |
yourself |
9532 | 1571 |
|
9886 | 1572 |
"Modified: / 14-09-2006 / 18:59:26 / cg" |
9532 | 1573 |
! ! |
1574 |
||
1575 |
!ApplicationDefinition class methodsFor:'mappings support'! |
|
1576 |
||
9535 | 1577 |
generatePreRequisiteLibs_modules_dot_stx |
9578 | 1578 |
^ String streamContents:[:s | |
1579 |
self preRequisites do:[:projectID | |
|
9687 | 1580 |
s nextPutLine:(self libraryNameFor:projectID) |
1581 |
]. |
|
1582 |
self isGUIApplication ifTrue:[ |
|
9833 | 1583 |
self guiClassFileNames_win32 do:[:eachFilename | |
9687 | 1584 |
s nextPutLine:(eachFilename asFilename withoutSuffix baseName) |
9535 | 1585 |
]. |
9578 | 1586 |
]. |
9687 | 1587 |
]. |
9535 | 1588 |
|
1589 |
" |
|
9687 | 1590 |
bosch_dapasx_application generatePreRequisiteLibs_modules_dot_stx |
9535 | 1591 |
" |
9567 | 1592 |
|
9833 | 1593 |
"Modified: / 07-09-2006 / 17:22:58 / cg" |
9535 | 1594 |
! |
1595 |
||
10308 | 1596 |
generatePreRequisiteLines_bc_dot_mak |
9532 | 1597 |
|
1598 |
^ String streamContents:[:s | |
|
9535 | 1599 |
self preRequisites do:[:eachPackage | |
9532 | 1600 |
|mappings newObjectLine| |
10308 | 1601 |
mappings := self preRequisiteLine_bc_dot_mak_mappings: eachPackage. |
9532 | 1602 |
newObjectLine := self replaceMappings: mappings |
10308 | 1603 |
in: self preRequisiteLine_bc_dot_mak. |
9532 | 1604 |
s nextPutAll:newObjectLine. |
1605 |
s cr. |
|
9535 | 1606 |
]. |
9833 | 1607 |
self guiClasses_win32 do:[:eachClass | |
9535 | 1608 |
|mappings newObjectLine| |
10308 | 1609 |
mappings := self preRequisiteLine_bc_dot_mak_mappingsForClass: eachClass. |
9535 | 1610 |
newObjectLine := self replaceMappings: mappings |
10308 | 1611 |
in: self preRequisiteLine_bc_dot_mak. |
9535 | 1612 |
s nextPutAll:newObjectLine. |
1613 |
s cr. |
|
1614 |
]. |
|
1615 |
||
9532 | 1616 |
] |
9900 | 1617 |
" |
10308 | 1618 |
bosch_dapasx_application generatePreRequisiteLines_bc_dot_mak |
9900 | 1619 |
" |
9532 | 1620 |
|
1621 |
"Created: / 09-08-2006 / 11:24:39 / fm" |
|
9900 | 1622 |
"Modified: / 14-09-2006 / 21:58:47 / cg" |
9532 | 1623 |
! |
1624 |
||
10308 | 1625 |
generateRequiredLibs_bc_dot_mak |
9578 | 1626 |
^ String streamContents:[:s | |
9816 | 1627 |
s nextPutLine:' \'. |
9578 | 1628 |
self preRequisites do:[:projectID | |
9816 | 1629 |
s space; nextPutAll:(self libraryNameFor:projectID),'.dll'; nextPutLine:' \'. |
9578 | 1630 |
]. |
9535 | 1631 |
|
9578 | 1632 |
self isGUIApplication ifTrue:[ |
9833 | 1633 |
self guiClassFileNames_win32 do:[:eachFilename | |
9816 | 1634 |
s space; nextPutAll:eachFilename; nextPutLine:' \'. |
9578 | 1635 |
]. |
1636 |
]. |
|
1637 |
self subProjects do:[:projectID | |
|
9816 | 1638 |
s space; nextPutAll:(self libraryNameFor:projectID),'.dll'; nextPutLine:' \'. |
9535 | 1639 |
]. |
9816 | 1640 |
s cr. |
9532 | 1641 |
]. |
1642 |
||
9535 | 1643 |
" |
10308 | 1644 |
bosch_dapasx_application generateRequiredLibs_bc_dot_mak |
9535 | 1645 |
" |
9567 | 1646 |
|
9833 | 1647 |
"Modified: / 07-09-2006 / 17:22:51 / cg" |
9532 | 1648 |
! |
1649 |
||
10308 | 1650 |
generateSubProjectLines_bc_dot_mak |
1651 |
||
1652 |
^ String streamContents:[:s | |
|
1653 |
self subProjects do:[:projectID | |
|
1654 |
|mappings newObjectLine| |
|
1655 |
||
1656 |
mappings := self subProjectLine_bc_dot_mak_mappings: projectID. |
|
1657 |
newObjectLine := self replaceMappings: mappings |
|
1658 |
in: self subProjectLine_bc_dot_mak. |
|
1659 |
s nextPutAll:newObjectLine. |
|
1660 |
s cr. |
|
1661 |
] |
|
1662 |
] |
|
1663 |
" |
|
1664 |
bosch_dapasx_application generateSubProjectLines_bc_dot_mak |
|
1665 |
||
1666 |
" |
|
1667 |
||
1668 |
"Created: / 09-08-2006 / 11:24:39 / fm" |
|
1669 |
"Modified: / 14-09-2006 / 18:46:09 / cg" |
|
1670 |
! |
|
1671 |
||
9535 | 1672 |
generateSubProjectLines_modules_dot_stx |
1673 |
|string| |
|
1674 |
||
1675 |
string := String streamContents:[:s | |
|
1676 |
self subProjects do:[:projectID | |
|
9687 | 1677 |
s nextPutLine:(self libraryNameFor:projectID) |
9535 | 1678 |
]. |
1679 |
]. |
|
1680 |
||
1681 |
^ string |
|
1682 |
||
1683 |
" |
|
9687 | 1684 |
bosch_dapasx_application generateSubProjectLines_modules_dot_stx |
9535 | 1685 |
" |
9567 | 1686 |
|
1687 |
"Modified: / 17-08-2006 / 17:22:37 / cg" |
|
9532 | 1688 |
! ! |
1689 |
||
9813 | 1690 |
!ApplicationDefinition class methodsFor:'queries'! |
1691 |
||
1692 |
canHaveExtensions |
|
1693 |
"return true, if this class allows extensions from other packages. |
|
1694 |
Private classes, namespaces and projectDefinitions dont allow this" |
|
1695 |
||
1696 |
^ self == ApplicationDefinition |
|
1697 |
||
1698 |
" |
|
1699 |
Smalltalk allClasses select:[:each | each canHaveExtensions not] |
|
1700 |
" |
|
1701 |
||
1702 |
"Created: / 30-08-2006 / 15:29:49 / cg" |
|
1703 |
! ! |
|
1704 |
||
9725 | 1705 |
!ApplicationDefinition class methodsFor:'sanity checks'! |
1706 |
||
1707 |
validateDescription |
|
9958 | 1708 |
super validateDescription. |
1709 |
||
9725 | 1710 |
#( |
1711 |
startupClassName |
|
1712 |
"/ startupSelector |
|
1713 |
) do:[:sel | |
|
1714 |
(self theMetaclass implements:sel) ifFalse:[ |
|
1715 |
Dialog |
|
1716 |
warn:('The %1-method is missing from the description %2!!' |
|
1717 |
bindWith:sel allBold |
|
1718 |
with:self name allBold). |
|
1719 |
AbortSignal raise. |
|
1720 |
]. |
|
1721 |
(Error catch:[ self perform:sel ]) ifTrue:[ |
|
1722 |
Dialog |
|
1723 |
warn:('The %1-method needs to be edited in the description %2!!' |
|
1724 |
bindWith:sel allBold |
|
1725 |
with:self name allBold). |
|
1726 |
AbortSignal raise. |
|
1727 |
]. |
|
1728 |
]. |
|
9958 | 1729 |
|
1730 |
"Modified: / 19-09-2006 / 20:17:38 / cg" |
|
9725 | 1731 |
! ! |
1732 |
||
9587 | 1733 |
!ApplicationDefinition class methodsFor:'testing'! |
1734 |
||
9669 | 1735 |
isApplicationDefinition |
1736 |
^ self ~~ ApplicationDefinition |
|
1737 |
||
1738 |
"Created: / 23-08-2006 / 15:17:38 / cg" |
|
1739 |
! |
|
1740 |
||
9587 | 1741 |
isProjectDefinition |
1742 |
^ self ~~ ApplicationDefinition |
|
1743 |
||
1744 |
"Created: / 17-08-2006 / 14:11:56 / cg" |
|
1745 |
! ! |
|
1746 |
||
9532 | 1747 |
!ApplicationDefinition class methodsFor:'documentation'! |
1748 |
||
1749 |
version |
|
10425 | 1750 |
^ '$Header: /cvs/stx/stx/libbasic/ApplicationDefinition.st,v 1.72 2007-03-01 17:09:38 cg Exp $' |
9532 | 1751 |
! ! |