smalltalk.rc
changeset 677 222fd88429a3
parent 672 43a67655f4f2
child 678 728aff120ee7
--- a/smalltalk.rc	Wed Dec 21 13:30:17 2005 +0100
+++ b/smalltalk.rc	Wed Dec 21 14:24:03 2005 +0100
@@ -97,10 +97,9 @@
 "/ funny viewStyles, colors and stupid strings if wrong.
 "/
 
-|path|
+|path pathOfSTXExecutable|
 
-'systemPath before: ' print.
-Smalltalk systemPath printCR.
+'systemPath before: ' print. Smalltalk systemPath printCR.
 
 (path := OperatingSystem getEnvironment:'STX_SYSTEMPATH') notNil ifTrue:[
     Smalltalk systemPath:(path asCollectionOfSubstringsSeparatedBy:$:)
@@ -113,27 +112,22 @@
 	('smalltalk.rc [info]: found gnu-smalltalk sources in ' , path , '; removed from systemPath.') infoPrintCR.
 	Smalltalk systemPath:(Smalltalk systemPath remove:path; yourself).
     ].
-].
 
-(Smalltalk systemPath includes:(OperatingSystem pathOfSTXExecutable asFilename directoryName)) ifFalse:[
-    Smalltalk systemPath addFirst:(OperatingSystem pathOfSTXExecutable asFilename directoryName).
-].
+    pathOfSTXExecutable := OperatingSystem pathOfSTXExecutable asFilename directoryName.
+    (Smalltalk systemPath includes:pathOfSTXExecutable) ifFalse:[
+	Smalltalk systemPath addFirst:pathOfSTXExecutable.
+    ].
 
-'../../../stx/libbasic' asFilename exists ifTrue:[
-    (Smalltalk systemPath includes:'../../../stx' asFilename pathName) ifFalse:[
-	Smalltalk systemPath addFirst:'../../../stx' asFilename pathName.
-    ]
+    "/ the current directory should always be first...
+    (Smalltalk systemPath includes:'.') ifTrue:[
+	Smalltalk systemPath remove:'.'.
+    ].
+    (Smalltalk systemPath includes:'.' asFilename pathName) ifTrue:[
+	Smalltalk systemPath remove:'.' asFilename pathName.
+    ].
+    Smalltalk systemPath addFirst:'.' asFilename pathName.
 ].
 
-"/ the current directory should always be first...
-(Smalltalk systemPath includes:'.') ifTrue:[
-    Smalltalk systemPath remove:'.'.
-].
-(Smalltalk systemPath includes:'.' asFilename pathName) ifTrue:[
-    Smalltalk systemPath remove:'.' asFilename pathName.
-].
-Smalltalk systemPath addFirst:'.' asFilename pathName.
-
 (path := OperatingSystem getEnvironment:'STX_PACKAGEPATH') notNil ifTrue:[
     Smalltalk packagePath:(path asCollectionOfSubstringsSeparatedBy:$:).
     'smalltalk.rc [info]: setting packagePath from STX_PACKAGEPATH' printCR.
@@ -143,7 +137,7 @@
     "/ only use the local packages.
     "/
     '../../../stx/projects/smalltalk' asFilename exists ifTrue:[
-	Smalltalk packagePath removeAll; add:'../../..'.
+	Smalltalk packagePath removeAll; add:'../../..' asFilename pathName.
 	'smalltalk.rc [info]: setting packagePath for local operation' printCR.
     ].
 
@@ -151,10 +145,10 @@
     "/ any additional local packages ?.
     "/
     'packages' asFilename exists ifTrue:[
-	 Smalltalk packagePath addFirst:'./packages'.
-	 "/ 'additional local packages' printCR.
+	(Smalltalk packagePath includes:'packages' asFilename pathName) ifFalse:[
+	    Smalltalk packagePath addFirst:'packages' asFilename pathName.
+	].
     ].
-    "/ 'packagePath: ' print. Smalltalk packagePath printCR.
 ].
 
 'systemPath: ' errorPrint. Smalltalk systemPath errorPrintCR.