ObjectFileLoader.st
changeset 188 fef1879d2fcf
parent 183 1df6c1e19211
child 193 06ca4b4c1dd8
--- a/ObjectFileLoader.st	Sun Jan 07 14:07:29 1996 +0100
+++ b/ObjectFileLoader.st	Wed Jan 10 12:51:44 1996 +0100
@@ -364,6 +364,37 @@
     "
 !
 
+loadableBinaryObjectFormat
+    "return a symbol describing the expected binary format
+     for object files to be loadable.
+     This is very machine specific."
+
+%{  /* NOCONTEXT */
+#ifdef HAS_DL
+# if defined(SYSV4) || defined(ELF)
+    RETURN ( @symbol(elf));
+# endif
+# if defined(GNU_DL)
+    RETURN ( @symbol(aout));
+# endif
+# if defined(AIX_DL)
+    RETURN ( @symbol(xcoff));
+# endif
+# if defined(DL1_6)
+    RETURN ( @symbol(coff));
+# endif
+# if defined(WIN_DL)
+    RETURN ( @symbol(dll));
+# endif
+#endif
+%}.
+    ^ nil
+
+    "
+     ObjectFileLoader loadableBinaryObjectFormat
+    "
+!
+
 needSeparateIDSpaces
     "return true, if we need separate I and D spaces.
      This is only needed if no dynamic-link facilitiy exists."
@@ -435,37 +466,6 @@
     "
      ObjectFileLoader validBinaryExtensions
     "
-!
-
-loadableBinaryObjectFormat
-    "return a symbol describing the expected binary format
-     for object files to be loadable.
-     This is very machine specific."
-
-%{  /* NOCONTEXT */
-#ifdef HAS_DL
-# if defined(SYSV4) || defined(ELF)
-    RETURN ( @symbol(elf));
-# endif
-# if defined(GNU_DL)
-    RETURN ( @symbol(aout));
-# endif
-# if defined(AIX_DL)
-    RETURN ( @symbol(xcoff));
-# endif
-# if defined(DL1_6)
-    RETURN ( @symbol(coff));
-# endif
-# if defined(WIN_DL)
-    RETURN ( @symbol(dll));
-# endif
-#endif
-%}.
-    ^ nil
-
-    "
-     ObjectFileLoader loadableBinaryObjectFormat
-    "
 ! !
 
 !ObjectFileLoader class methodsFor:'dynamic class loading'!
@@ -2360,39 +2360,40 @@
 createLoadableObjectFor:baseFileName
     |oFileName soFileName needSharedObject ldArg|
 
+    needSharedObject := false.
     OperatingSystem getOSType = 'irix' ifTrue:[
-	"
-	 link it to a shared object with 'ld -shared'
-	"
-	needSharedObject := true.
-	ldArg := '-shared'.
+        "
+         link it to a shared object with 'ld -shared'
+        "
+        needSharedObject := true.
+        ldArg := '-shared'.
     ].
 
     OperatingSystem getOSType = 'sys5_4' ifTrue:[
-	"
-	 link it to a shared object with 'ld -G'
-	"
-	needSharedObject := true.
-	ldArg := '-G'.
+        "
+         link it to a shared object with 'ld -G'
+        "
+        needSharedObject := true.
+        ldArg := '-G'.
     ].
 
     OperatingSystem getOSType = 'linux' ifTrue:[
-	ObjectFileLoader loadableBinaryObjectFormat == #elf ifTrue:[
-	    "
-	     link it to a shared object with 'ld -shared'
-	    "
-	    needSharedObject := true.
-	    ldArg := '-shared'.
-	]
+        ObjectFileLoader loadableBinaryObjectFormat == #elf ifTrue:[
+            "
+             link it to a shared object with 'ld -shared'
+            "
+            needSharedObject := true.
+            ldArg := '-shared'.
+        ]
     ].
 
+    oFileName := './' , baseFileName , '.o'.
     needSharedObject ifTrue:[
-	oFileName := './' , baseFileName , '.o'.
-	soFileName := './' , baseFileName , '.so'. 
-	OperatingSystem executeCommand:'rm -f ' , soFileName.
-	OperatingSystem executeCommand:'ld ' , ldArg , ' -o ' , soFileName , ' ' , oFileName.
-	OperatingSystem removeFile:oFileName.
-	^ soFileName. 
+        soFileName := './' , baseFileName , '.so'. 
+        OperatingSystem executeCommand:'rm -f ' , soFileName.
+        OperatingSystem executeCommand:'ld ' , ldArg , ' -o ' , soFileName , ' ' , oFileName.
+        OperatingSystem removeFile:oFileName.
+        ^ soFileName. 
     ].
 
     "
@@ -3075,6 +3076,6 @@
 !ObjectFileLoader class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libcomp/ObjectFileLoader.st,v 1.73 1996-01-05 16:38:28 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libcomp/ObjectFileLoader.st,v 1.74 1996-01-10 11:51:44 ca Exp $'
 ! !
 ObjectFileLoader initialize!