patches
author Claus Gittinger <cg@exept.de>
Mon, 31 May 1999 17:21:46 +0200
changeset 358 14a45495e3d8
parent 323 42233c66f9a0
child 362 87f7b4670ae8
permissions -rw-r--r--
autoloaded classes must be read after the host.rc file; now done in smalltalk.rc.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
     1
"/
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
     2
"/ $Header$
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
     3
"/
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
     4
"/ This file is processed at initial startup 
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
     5
"/ - not when resuming an image.
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
     6
"/
0
0cb137a77319 Initial revision
claus
parents:
diff changeset
     7
12
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
     8
"/
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
     9
"/ install uncompiled classes as autoload
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
    10
"/ classes ... (if not already present)
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
    11
"/ Autoloaded classes will be automatically filed-in
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
    12
"/ when first accessed. This allows a smaller executable,
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
    13
"/ but creates a short delay, when the class is loaded on
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
    14
"/ first access.
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
    15
"/
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
    16
"/ You can add more classes to these lists -
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
    17
"/ i.e. all your classes you like to have around,
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
    18
"/ but which are not needed often enough to justify
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
    19
"/ machine code for them ...
0
0cb137a77319 Initial revision
claus
parents:
diff changeset
    20
263
b9158aae3e36 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 261
diff changeset
    21
|system requiredClasses|
24
claus
parents: 21
diff changeset
    22
196
7613c443524d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 194
diff changeset
    23
'patches [info]: initial startup (snapshot image restart is faster) ...' infoPrintCR.
225
d15db3f26508 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 223
diff changeset
    24
263
b9158aae3e36 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 261
diff changeset
    25
system := OperatingSystem getSystemType.
282
eded1e30cb09 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
    26
(#(
eded1e30cb09 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
    27
  'linux'
eded1e30cb09 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
    28
  'unixware'
323
42233c66f9a0 do not enable JIT by default on sparc.
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
    29
"/  'solaris'
282
eded1e30cb09 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
    30
  'iris'
eded1e30cb09 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
    31
  'osf'
300
2c9568743a3f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 291
diff changeset
    32
  'win32'
282
eded1e30cb09 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
    33
) includes:system) ifTrue:[
268
fc519ebf52ae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 265
diff changeset
    34
    "/ 'patches [info]: turn on JIT ...' infoPrintCR.
265
257923d52c51 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 263
diff changeset
    35
    ObjectMemory justInTimeCompilation:true.
257923d52c51 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 263
diff changeset
    36
].
175
ce28eba6e426 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    37
81
3428f2142b80 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
    38
"/ GLXWorkstation forceGL:true.
79
084235ea4066 autoloaded PS classes
Claus Gittinger <cg@exept.de>
parents: 78
diff changeset
    39
"/ OperatingSystem disableSignal:14.
81
3428f2142b80 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
    40
26
Claus Gittinger <cg@exept.de>
parents: 25
diff changeset
    41
ObjectMemory infoPrinting:false.
174
b0336b8ba704 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 173
diff changeset
    42
"/ Smalltalk loadBinaries:true.
160
842c808f5cf5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 143
diff changeset
    43
Compiler allowUnderscoreInIdentifier:true. 
842c808f5cf5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 143
diff changeset
    44
Compiler warnUnderscoreInIdentifier:false. 
842c808f5cf5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 143
diff changeset
    45
Compiler warnSTXSpecials:false.
26
Claus Gittinger <cg@exept.de>
parents: 25
diff changeset
    46
24
claus
parents: 21
diff changeset
    47
Project notNil ifTrue:[
claus
parents: 21
diff changeset
    48
    Project setDefaultProject.
25
claus
parents: 24
diff changeset
    49
    Project current packageName:#'autoloaded'.
24
claus
parents: 21
diff changeset
    50
].
10
43d0db9ff204 *** empty log message ***
claus
parents: 8
diff changeset
    51
12
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
    52
"/
77
3ec9d8e38918 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
    53
"/ when filing in, keep source as reference to file
3ec9d8e38918 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
    54
"/ (instead of keeping a string locally in the image)
3ec9d8e38918 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
    55
"/
85
8363b09e8c3c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 81
diff changeset
    56
"/ I disable this - its dangerous if you fileIn
8363b09e8c3c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 81
diff changeset
    57
"/ classes from other directories and fileOut later clobbers those files
8363b09e8c3c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 81
diff changeset
    58
"/
8363b09e8c3c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 81
diff changeset
    59
"/ ClassCategoryReader sourceMode:#reference.
77
3ec9d8e38918 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
    60
3ec9d8e38918 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
    61
"/
12
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
    62
"/ the following are required (either compiled or interpreted) ...
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
    63
"/
10
43d0db9ff204 *** empty log message ***
claus
parents: 8
diff changeset
    64
requiredClasses := #( 
77
3ec9d8e38918 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
    65
     ObsoleteObject
3ec9d8e38918 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
    66
     BinaryIOManager BinaryInputManager BinaryOutputManager BinaryObjectStorage
3ec9d8e38918 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
    67
     StringCollection
3ec9d8e38918 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
    68
).
10
43d0db9ff204 *** empty log message ***
claus
parents: 8
diff changeset
    69
43d0db9ff204 *** empty log message ***
claus
parents: 8
diff changeset
    70
requiredClasses do:[:s |
43d0db9ff204 *** empty log message ***
claus
parents: 8
diff changeset
    71
    (Smalltalk at:s) isNil ifTrue:[
196
7613c443524d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 194
diff changeset
    72
	('patches [info]: loading ' , s , ' ...') infoPrintCR.
10
43d0db9ff204 *** empty log message ***
claus
parents: 8
diff changeset
    73
	Smalltalk fileInClass:s initialize:true lazy:false silent:true
43d0db9ff204 *** empty log message ***
claus
parents: 8
diff changeset
    74
    ]
43d0db9ff204 *** empty log message ***
claus
parents: 8
diff changeset
    75
].
24
claus
parents: 21
diff changeset
    76
!
claus
parents: 21
diff changeset
    77
169
08055578224e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 167
diff changeset
    78
|optionalViews|
0
0cb137a77319 Initial revision
claus
parents:
diff changeset
    79
24
claus
parents: 21
diff changeset
    80
(Smalltalk at:#View) isNil ifTrue:[
196
7613c443524d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 194
diff changeset
    81
    'patches [info]: installing required autoloaded classes ...' infoPrintCR.
169
08055578224e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 167
diff changeset
    82
24
claus
parents: 21
diff changeset
    83
    optionalViews := #(
26
Claus Gittinger <cg@exept.de>
parents: 25
diff changeset
    84
			DeviceWorkstation
24
claus
parents: 21
diff changeset
    85
			Workstation
26
Claus Gittinger <cg@exept.de>
parents: 25
diff changeset
    86
			XWorkstation
24
claus
parents: 21
diff changeset
    87
			DisplayRootView
claus
parents: 21
diff changeset
    88
			SimpleView
claus
parents: 21
diff changeset
    89
			TopView
claus
parents: 21
diff changeset
    90
			StandardSystemView
claus
parents: 21
diff changeset
    91
			ModalBox
claus
parents: 21
diff changeset
    92
			View
claus
parents: 21
diff changeset
    93
			PseudoView
claus
parents: 21
diff changeset
    94
			DeviceDrawable
claus
parents: 21
diff changeset
    95
			DisplayMedium
claus
parents: 21
diff changeset
    96
			GraphicsContext
claus
parents: 21
diff changeset
    97
			Image
claus
parents: 21
diff changeset
    98
			ViewStyle
claus
parents: 21
diff changeset
    99
			KeyboardMap
claus
parents: 21
diff changeset
   100
			KeyboardForwarder
claus
parents: 21
diff changeset
   101
			TextCollector
77
3ec9d8e38918 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   102
			SynchronousWindowSensor
24
claus
parents: 21
diff changeset
   103
			WindowSensor
claus
parents: 21
diff changeset
   104
			WindowGroup
claus
parents: 21
diff changeset
   105
			WindowEvent
claus
parents: 21
diff changeset
   106
			WindowingTransformation
claus
parents: 21
diff changeset
   107
			FontDescription
claus
parents: 21
diff changeset
   108
			Font
claus
parents: 21
diff changeset
   109
			Form
claus
parents: 21
diff changeset
   110
			Cursor
claus
parents: 21
diff changeset
   111
			Color
claus
parents: 21
diff changeset
   112
			Depth1Image
claus
parents: 21
diff changeset
   113
			Depth8Image
claus
parents: 21
diff changeset
   114
			ResourcePack
claus
parents: 21
diff changeset
   115
			Model
claus
parents: 21
diff changeset
   116
			Controller
claus
parents: 21
diff changeset
   117
			ApplicationModel
291
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   118
			ApplicationWindow
24
claus
parents: 21
diff changeset
   119
			WindowBuilder
claus
parents: 21
diff changeset
   120
			PopUpView
claus
parents: 21
diff changeset
   121
			ShadowView
claus
parents: 21
diff changeset
   122
			Colormap
25
claus
parents: 24
diff changeset
   123
			DeviceHandle
claus
parents: 24
diff changeset
   124
			DisplayObject
24
claus
parents: 21
diff changeset
   125
		     ).
claus
parents: 21
diff changeset
   126
    optionalViews do:[:s |
claus
parents: 21
diff changeset
   127
	"install if not already compiled-in"
claus
parents: 21
diff changeset
   128
	(Smalltalk at:s) isNil ifTrue:[
claus
parents: 21
diff changeset
   129
	    Autoload subclass:s
claus
parents: 21
diff changeset
   130
		 instanceVariableNames:''
claus
parents: 21
diff changeset
   131
		 classVariableNames:''
claus
parents: 21
diff changeset
   132
		 poolDictionaries:''
claus
parents: 21
diff changeset
   133
		 category:'autoloaded-Views'
claus
parents: 21
diff changeset
   134
	]
claus
parents: 21
diff changeset
   135
    ].
179
e3be85982d13 avoid warnings in minitalk
Claus Gittinger <cg@exept.de>
parents: 175
diff changeset
   136
    (Smalltalk at:#DeviceWorkstation) autoload.
e3be85982d13 avoid warnings in minitalk
Claus Gittinger <cg@exept.de>
parents: 175
diff changeset
   137
    (Smalltalk at:#XWorkstation) autoload.
e3be85982d13 avoid warnings in minitalk
Claus Gittinger <cg@exept.de>
parents: 175
diff changeset
   138
    (Smalltalk at:#Workstation) autoload.
e3be85982d13 avoid warnings in minitalk
Claus Gittinger <cg@exept.de>
parents: 175
diff changeset
   139
    (Smalltalk at:#DeviceHandle) autoload.
24
claus
parents: 21
diff changeset
   140
].
131
20fc8bdf1de5 removed (old) builtIn class list; depend on abbrev.stc alone
Claus Gittinger <cg@exept.de>
parents: 125
diff changeset
   141
!
24
claus
parents: 21
diff changeset
   142
claus
parents: 21
diff changeset
   143
Project notNil ifTrue:[
claus
parents: 21
diff changeset
   144
    Project setDefaultProject.
claus
parents: 21
diff changeset
   145
    Project current packageName:#'patches'.
claus
parents: 21
diff changeset
   146
].
claus
parents: 21
diff changeset
   147
196
7613c443524d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 194
diff changeset
   148
'patches [info]: installing patches ...' infoPrintCR.
174
b0336b8ba704 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 173
diff changeset
   149
!
125
82e8b356f5c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 117
diff changeset
   150
291
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   151
"/ future systems will read patches from a patch-directory,
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   152
"/ called stxPatches. (we will deliver patch-sets in the future)
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   153
"/ This is not yet implemented, but we are prepared here for
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   154
"/ this ...
358
14a45495e3d8 autoloaded classes must be read after the host.rc file;
Claus Gittinger <cg@exept.de>
parents: 323
diff changeset
   155
"/ patches from that directory are read in alphabetic order;
14a45495e3d8 autoloaded classes must be read after the host.rc file;
Claus Gittinger <cg@exept.de>
parents: 323
diff changeset
   156
"/ patches will be named them p_nnnn.st, where nnnn is a sequence-nr.
291
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   157
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   158
|patchDir|
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   159
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   160
patchDir := 'stxPatches' asFilename.
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   161
(patchDir exists and:[patchDir isDirectory and:[patchDir isReadable]]) ifTrue:[
358
14a45495e3d8 autoloaded classes must be read after the host.rc file;
Claus Gittinger <cg@exept.de>
parents: 323
diff changeset
   162
    patchDir directoryContents sort do:[:f |
291
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   163
	|fn|
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   164
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   165
	fn := (patchDir construct:f) name.
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   166
	('patches [info]: reading patchFile ''' , fn , ''' ...') infoPrintCR.
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   167
	Smalltalk fileIn:fn.
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   168
    ]
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   169
].
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   170
!
b6ece4a96c36 preps to read patchFiles from stxPatches directory
Claus Gittinger <cg@exept.de>
parents: 284
diff changeset
   171
16
db5d473df9f0 *** empty log message ***
claus
parents: 15
diff changeset
   172
"/
12
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
   173
"/ the following patches where added by the changesBrowsers 'make change a patch'
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
   174
"/ function ...
d8d2f32ca7a2 *** empty log message ***
claus
parents: 11
diff changeset
   175
"/
210
4951ef3afb16 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 196
diff changeset
   176
!