checkin from browser
authorClaus Gittinger <cg@exept.de>
Fri, 03 Dec 1999 18:33:11 +0100
changeset 5074 7c7c3ebe6492
parent 5073 9c92ad3f3a05
child 5075 c9e585ae97d4
checkin from browser
Smalltalk.st
--- a/Smalltalk.st	Fri Dec 03 18:23:51 1999 +0100
+++ b/Smalltalk.st	Fri Dec 03 18:33:11 1999 +0100
@@ -2737,6 +2737,7 @@
     "/ old scheme: look for a single file called 'abbrev.stc' in the
     "/ include directory. This will vanish.
 
+    ('Smalltalk [info]: installing autoloaded classes from ''include/abbrev.stc''') infoPrintCR.
     self installAutoloadedClassesFrom:'include/abbrev.stc'
 
     "
@@ -2895,8 +2896,19 @@
     "read all abbrev.stc files from and under aDirectory
      and install autoloaded classes."
 
+    self
+        recursiveInstallAutoloadedClassesFrom:aDirectory
+        maxLevels:5
+!
+
+recursiveInstallAutoloadedClassesFrom:aDirectory maxLevels:maxLevels
+    "read all abbrev.stc files from and under aDirectory
+     and install autoloaded classes."
+
     |abbrevStream dir|
 
+    maxLevels == 0 ifTrue:[^ self].
+
     dir := aDirectory asFilename.
 
     abbrevStream := (dir construct:'abbrev.stc') asFilename readStream.
@@ -2917,7 +2929,7 @@
         ) includes:aFilename) ifFalse:[
             f := dir construct:aFilename.
             f isDirectory ifTrue:[
-                 self recursiveInstallAutoloadedClassesFrom:f
+                 self recursiveInstallAutoloadedClassesFrom:f maxLevels:maxLevels-1
             ]
         ].
     ].
@@ -5262,5 +5274,5 @@
 !Smalltalk class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/Smalltalk.st,v 1.391 1999-12-03 13:31:32 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Smalltalk.st,v 1.392 1999-12-03 17:33:11 cg Exp $'
 ! !