author | Claus Gittinger <cg@exept.de> |
Thu, 05 Feb 1998 23:55:56 +0100 | |
changeset 263 | b9158aae3e36 |
parent 261 | 4577d07f7dc6 |
child 265 | 257923d52c51 |
permissions | -rw-r--r-- |
12 | 1 |
"/ |
2 |
"/ $Header$ |
|
3 |
"/ |
|
4 |
"/ This file is processed at initial startup |
|
5 |
"/ - not when resuming an image. |
|
6 |
"/ |
|
0 | 7 |
|
12 | 8 |
"/ |
9 |
"/ install uncompiled classes as autoload |
|
10 |
"/ classes ... (if not already present) |
|
11 |
"/ Autoloaded classes will be automatically filed-in |
|
12 |
"/ when first accessed. This allows a smaller executable, |
|
13 |
"/ but creates a short delay, when the class is loaded on |
|
14 |
"/ first access. |
|
15 |
"/ |
|
16 |
"/ You can add more classes to these lists - |
|
17 |
"/ i.e. all your classes you like to have around, |
|
18 |
"/ but which are not needed often enough to justify |
|
19 |
"/ machine code for them ... |
|
0 | 20 |
|
263 | 21 |
|system requiredClasses| |
24 | 22 |
|
196 | 23 |
'patches [info]: initial startup (snapshot image restart is faster) ...' infoPrintCR. |
225 | 24 |
|
263 | 25 |
system := OperatingSystem getSystemType. |
26 |
system = 'linux' ifTrue:[ |
|
27 |
ObjectMemory justInTimeCompilation:true. |
|
28 |
]. |
|
175 | 29 |
|
81 | 30 |
"/ GLXWorkstation forceGL:true. |
79 | 31 |
"/ OperatingSystem disableSignal:14. |
81 | 32 |
|
26 | 33 |
ObjectMemory infoPrinting:false. |
174 | 34 |
"/ Smalltalk loadBinaries:true. |
160 | 35 |
Compiler allowUnderscoreInIdentifier:true. |
36 |
Compiler warnUnderscoreInIdentifier:false. |
|
37 |
Compiler warnSTXSpecials:false. |
|
26 | 38 |
|
24 | 39 |
Project notNil ifTrue:[ |
40 |
Project setDefaultProject. |
|
25 | 41 |
Project current packageName:#'autoloaded'. |
24 | 42 |
]. |
10 | 43 |
|
12 | 44 |
"/ |
77 | 45 |
"/ when filing in, keep source as reference to file |
46 |
"/ (instead of keeping a string locally in the image) |
|
47 |
"/ |
|
85 | 48 |
"/ I disable this - its dangerous if you fileIn |
49 |
"/ classes from other directories and fileOut later clobbers those files |
|
50 |
"/ |
|
51 |
"/ ClassCategoryReader sourceMode:#reference. |
|
77 | 52 |
|
53 |
"/ |
|
12 | 54 |
"/ the following are required (either compiled or interpreted) ... |
55 |
"/ |
|
10 | 56 |
requiredClasses := #( |
77 | 57 |
ObsoleteObject |
58 |
BinaryIOManager BinaryInputManager BinaryOutputManager BinaryObjectStorage |
|
59 |
StringCollection |
|
60 |
). |
|
10 | 61 |
|
62 |
requiredClasses do:[:s | |
|
63 |
(Smalltalk at:s) isNil ifTrue:[ |
|
196 | 64 |
('patches [info]: loading ' , s , ' ...') infoPrintCR. |
10 | 65 |
Smalltalk fileInClass:s initialize:true lazy:false silent:true |
66 |
] |
|
67 |
]. |
|
24 | 68 |
! |
69 |
||
169 | 70 |
|optionalViews| |
0 | 71 |
|
24 | 72 |
(Smalltalk at:#View) isNil ifTrue:[ |
196 | 73 |
'patches [info]: installing required autoloaded classes ...' infoPrintCR. |
169 | 74 |
|
24 | 75 |
optionalViews := #( |
26 | 76 |
DeviceWorkstation |
24 | 77 |
Workstation |
26 | 78 |
XWorkstation |
24 | 79 |
DisplayRootView |
80 |
SimpleView |
|
81 |
TopView |
|
82 |
StandardSystemView |
|
83 |
ModalBox |
|
84 |
View |
|
85 |
PseudoView |
|
86 |
DeviceDrawable |
|
87 |
DisplayMedium |
|
88 |
GraphicsContext |
|
89 |
Image |
|
90 |
ViewStyle |
|
91 |
KeyboardMap |
|
92 |
KeyboardForwarder |
|
93 |
TextCollector |
|
77 | 94 |
SynchronousWindowSensor |
24 | 95 |
WindowSensor |
96 |
WindowGroup |
|
97 |
WindowEvent |
|
98 |
WindowingTransformation |
|
99 |
FontDescription |
|
100 |
Font |
|
101 |
Form |
|
102 |
Cursor |
|
103 |
Color |
|
104 |
Depth1Image |
|
105 |
Depth8Image |
|
106 |
ResourcePack |
|
107 |
Model |
|
108 |
Controller |
|
109 |
ApplicationModel |
|
110 |
WindowBuilder |
|
111 |
PopUpView |
|
112 |
ShadowView |
|
113 |
Colormap |
|
25 | 114 |
DeviceHandle |
115 |
DisplayObject |
|
24 | 116 |
). |
117 |
optionalViews do:[:s | |
|
118 |
"install if not already compiled-in" |
|
119 |
(Smalltalk at:s) isNil ifTrue:[ |
|
120 |
Autoload subclass:s |
|
121 |
instanceVariableNames:'' |
|
122 |
classVariableNames:'' |
|
123 |
poolDictionaries:'' |
|
124 |
category:'autoloaded-Views' |
|
125 |
] |
|
126 |
]. |
|
179 | 127 |
(Smalltalk at:#DeviceWorkstation) autoload. |
128 |
(Smalltalk at:#XWorkstation) autoload. |
|
129 |
(Smalltalk at:#Workstation) autoload. |
|
130 |
(Smalltalk at:#DeviceHandle) autoload. |
|
24 | 131 |
]. |
131
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
132 |
! |
24 | 133 |
|
170 | 134 |
"/ |
135 |
"/ read the abbrev.stc file, extract class names |
|
136 |
"/ and install all nonExisting classes as autoloaded |
|
137 |
"/ |
|
138 |
|needToReactivate| |
|
139 |
||
174 | 140 |
HistoryManager notNil ifTrue:[ |
141 |
needToReactivate := HistoryManager isActive. |
|
142 |
HistoryManager deactivate. |
|
143 |
] ifFalse:[ |
|
144 |
needToReactivate := false |
|
145 |
]. |
|
220 | 146 |
|
170 | 147 |
Class withoutUpdatingChangesDo:[ |
220 | 148 |
'patches [info]: installing autoloaded classes ...' infoPrintCR. |
149 |
Smalltalk installAutoloadedClassesFrom:'include/abbrev.stc'. |
|
170 | 150 |
]. |
151 |
needToReactivate ifTrue:[HistoryManager activate]. |
|
12 | 152 |
! |
0 | 153 |
|
12 | 154 |
"/ |
155 |
"/ a kludge: we might have added new ImageReaders above - let Image know about it |
|
156 |
"/ |
|
131
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
157 |
|imageClass cls| |
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
158 |
|
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
159 |
imageClass := Smalltalk at:#Image ifAbsent:nil. |
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
160 |
imageClass notNil ifTrue:[ |
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
161 |
imageClass isBehavior ifTrue:[ |
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
162 |
imageClass initializeFileFormatTable. |
12 | 163 |
] |
164 |
]. |
|
165 |
||
166 |
"/ |
|
167 |
"/ some ST80 name aliases |
|
168 |
"/ (actually, much more is needed - this is just a start ...) |
|
169 |
"/ |
|
131
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
170 |
(cls := Smalltalk at:#StandardSystemView) notNil ifTrue:[ |
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
171 |
Smalltalk at:#ScheduledWindow put:cls |
12 | 172 |
]. |
131
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
173 |
(cls := Smalltalk at:#Socket) notNil ifTrue:[ |
225 | 174 |
Smalltalk at:#UnixSocketAccessor put:cls. |
175 |
Smalltalk at:#SocketAccessor put:cls. |
|
261
4577d07f7dc6
aliases for Timestamp & SocketAccessorByAddress (VW compatibility)
Claus Gittinger <cg@exept.de>
parents:
260
diff
changeset
|
176 |
Smalltalk at:#SocketAccessorByAddress put:cls. |
12 | 177 |
]. |
178 |
Smalltalk at:#BlockClosure put:Block. |
|
131
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
179 |
(cls := Smalltalk at:#DialogBox) notNil ifTrue:[ |
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
180 |
Smalltalk at:#Dialog put:cls. |
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
181 |
Smalltalk at:#DialogView put:cls. |
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
182 |
]. |
223 | 183 |
Smalltalk at:#ByteString put:String. |
258 | 184 |
Smalltalk at:#ByteSymbol put:Symbol. |
225 | 185 |
Smalltalk at:#ByteEncodedString put:String. |
72 | 186 |
Smalltalk at:#Console put:Stderr. |
258 | 187 |
Smalltalk at:#HandlerList put:HandlerCollection. |
188 |
Smalltalk at:#SignalCollection put:SignalSet. |
|
261
4577d07f7dc6
aliases for Timestamp & SocketAccessorByAddress (VW compatibility)
Claus Gittinger <cg@exept.de>
parents:
260
diff
changeset
|
189 |
Smalltalk at:#Timestamp put:AbsoluteTime. |
72 | 190 |
|
253 | 191 |
"/ FileDirectory notNil ifTrue:[ |
192 |
"/ Smalltalk at:#Disk put:(Filename rootDirectory) |
|
193 |
"/ ]. |
|
131
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
194 |
|
12 | 195 |
Display notNil ifTrue:[ |
131
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
196 |
Smalltalk at:#Window put:(Display class). |
20fc8bdf1de5
removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents:
125
diff
changeset
|
197 |
Smalltalk at:#Screen put:(Display class). |
170 | 198 |
Smalltalk at:#Sensor put:Display. |
12 | 199 |
]. |
200 |
||
201 |
"/ |
|
202 |
"/ ST/X has (currently) no Double, but Float is what ST-80's Double is ... |
|
203 |
"/ |
|
204 |
Smalltalk at:#Double put:Float. |
|
205 |
||
256 | 206 |
Smalltalk at:#Browser put:SystemBrowser. |
143
71dc5ec7ef26
Renamed NewLauncher to Launcher.
Stefan Vogel <sv@exept.de>
parents:
139
diff
changeset
|
207 |
|
24 | 208 |
Project notNil ifTrue:[ |
209 |
Project setDefaultProject. |
|
210 |
Project current packageName:#'patches'. |
|
211 |
]. |
|
212 |
||
196 | 213 |
'patches [info]: installing patches ...' infoPrintCR. |
174 | 214 |
! |
125 | 215 |
|
16 | 216 |
"/ |
12 | 217 |
"/ the following patches where added by the changesBrowsers 'make change a patch' |
218 |
"/ function ... |
|
219 |
"/ |
|
210 | 220 |
! |
221 |