0.pre7.86.flaky7.23:
[sbcl.git] / src / cold / shared.lisp
index 40f1eba..6229901 100644 (file)
 (defvar *host-obj-prefix*)
 (defvar *target-obj-prefix*)
 
-;;; suffixes for filename stems when cross-compiling. Everything should work
-;;; fine for any arbitrary string values here. With more work maybe we
-;;; could cause these automatically to become the traditional extensions for
-;;; whatever host and target architectures (e.g. ".x86f" or ".axpf") we're
-;;; currently doing. That would make it easier for a human looking at the
-;;; temporary files to figure out what they're for, but it's not necessary for
-;;; the compilation process to work, so we haven't bothered.
+;;; suffixes for filename stems when cross-compiling. Everything
+;;; should work fine for any arbitrary string values here. With more
+;;; work maybe we could cause these automatically to become the
+;;; traditional extensions for whatever host and target architectures
+;;; (e.g. ".x86f" or ".axpf") we're currently doing. That would make
+;;; it easier for a human looking at the temporary files to figure out
+;;; what they're for, but it's not necessary for the compilation
+;;; process to work, so we haven't bothered.
 (defvar *host-obj-suffix* ".lisp-obj")
 (defvar *target-obj-suffix* ".lisp-obj")
 
                     (compile-file #'compile-file)
                     ignore-failure-p)
 
-  (format t "~&/entering COMPILE-STEM~%") ; REMOVEME
-
   (let* (;; KLUDGE: Note that this CONCATENATE 'STRING stuff is not The Common
        ;; Lisp Way, although it works just fine for common UNIX environments.
        ;; Should it come to pass that the system is ported to environments
     ;; the temporary output file to the permanent object file.
     (rename-file-a-la-unix tmp-obj obj)
 
-    (format t "~&/nearly done with COMPILE-STEM~%") ; REMOVEME
-
     ;; nice friendly traditional return value
     (pathname obj)))
 (compile 'compile-stem)
     ;; warnings and remove support for this flag. -- WHN 19990323)
     :ignore-failure-p))
 
-(defparameter *stems-and-flags* (read-from-file "stems-and-flags.lisp-expr"))
+(defparameter *stems-and-flags* (read-from-file "build-order.lisp-expr"))
 
 (defmacro do-stems-and-flags ((stem flags) &body body)
   (let ((stem-and-flags (gensym "STEM-AND-FLAGS-")))
 (let ((stems (make-hash-table :test 'equal)))
   (do-stems-and-flags (stem flags)
     (if (gethash stem stems)
-      (error "duplicate stem ~S in stems-and-flags data" stem)
+      (error "duplicate stem ~S in *STEMS-AND-FLAGS*" stem)
       (setf (gethash stem stems) t))
     (let ((set-difference (set-difference flags *expected-stem-flags*)))
       (when set-difference
                                              :sb-propagate-fun-type))))
     (with-additional-nickname ("SB-XC" "SB!XC")
       (funcall fn))))
-;;; FIXME: This COMPILE caused problems in sbcl-0.6.11.26. (bug 93)
-;;;(compile 'in-host-compilation-mode)
+(compile 'in-host-compilation-mode)
 
 ;;; Process a file as source code for the cross-compiler, compiling it
 ;;; (if necessary) in the appropriate environment, then loading it
 ;;; into the cross-compilation host Common lisp.
 (defun host-cload-stem (stem &key ignore-failure-p)
-  (format t "~&/entering HOST-CLOAD-STEM ~S ~S" stem ignore-failure-p) ; REMOVEME
-  (load (in-host-compilation-mode
-        (lambda ()
-          (compile-stem stem
-                        :obj-prefix *host-obj-prefix*
-                        :obj-suffix *host-obj-suffix*
-                        :compile-file #'cl:compile-file
-                        :ignore-failure-p ignore-failure-p)))))
+  (let ((compiled-filename (in-host-compilation-mode
+                           (lambda ()
+                             (compile-stem
+                              stem
+                              :obj-prefix *host-obj-prefix*
+                              :obj-suffix *host-obj-suffix*
+                              :compile-file #'cl:compile-file
+                              :ignore-failure-p ignore-failure-p)))))
+    (load compiled-filename)))
 (compile 'host-cload-stem)
 
 ;;; Like HOST-CLOAD-STEM, except that we don't bother to compile.