0.7.9.6:
[sbcl.git] / src / cold / warm.lisp
index 8199d50..91bd152 100644 (file)
 \f
 ;;;; general warm init compilation policy
 
+
 (proclaim '(optimize (compilation-speed 1)
                     (debug #+sb-show 2 #-sb-show 1)
                     (inhibit-warnings 2)
-                    (safety 1)
+                    (safety 2)
                     (space 1)
                     (speed 2)))
 \f
 ;;;; do belong in cold load and will hopefully make it back there reasonably
 ;;;; soon). -- WHN 19991207
 
-(dolist (stem '(;; FIXME: The files here from outside the src/pcl directory
-               ;; probably belong in cold load instead of warm load. They
-               ;; ended up here as a quick hack to work around the
-               ;; consequences of my misunderstanding how ASSEMBLE-FILE works
-               ;; when I wrote the cold build code. The cold build code
-               ;; expects only one FASL filename per source file, when it
-               ;; turns out we really need one FASL file for ASSEMBLE-FILE
-               ;; output and another for COMPILE-FILE output. It would
-               ;; probably be good to redo the cold build code so that the
-               ;; COMPILE-FILE stuff generated here can be loaded at the same
-               ;; time as the ASSEMBLE-FILE stuff generated there.
+(dolist (stem '(;; FIXME: The assembly files here probably belong in
+               ;; cold load instead of warm load. They ended up here
+               ;; as a quick hack to work around the consequences of
+               ;; my misunderstanding how ASSEMBLE-FILE works when I
+               ;; wrote the cold build code. The cold build code
+               ;; expects only one FASL filename per source file,
+               ;; when it turns out we really need one FASL file for
+               ;; ASSEMBLE-FILE output and another for COMPILE-FILE
+               ;; output. It would probably be good to redo the cold
+               ;; build code so that the COMPILE-FILE stuff generated
+               ;; here can be loaded at the same time as the
+               ;; ASSEMBLE-FILE stuff generated there.
                "src/assembly/target/assem-rtns"
                "src/assembly/target/array"
                "src/assembly/target/arith"
 \f
 ;;;; package hacking
 
-;;; Our cross-compilation host is out of the picture now, so we no longer need
-;;; to worry about collisions between our package names and cross-compilation
-;;; host package names, so now is a good time to rename any package with a
-;;; bootstrap-only name SB!FOO to its permanent name SB-FOO.
+;;; Our cross-compilation host is out of the picture now, so we no
+;;; longer need to worry about collisions between our package names
+;;; and cross-compilation host package names, so now is a good time to
+;;; rename any package with a bootstrap-only name SB!FOO to its
+;;; permanent name SB-FOO.
 ;;;
-;;; (In principle it might be tidier to do this when dumping the cold image in
-;;; genesis, but in practice the logic might be a little messier because
-;;; genesis dumps both symbols and packages, and we'd need to make that dumped
-;;; symbols were renamed in the same way as dumped packages. Or we could do it
-;;; in cold init, but it's easier to experiment with and debug things here in
-;;; warm init than in cold init, so we do it here instead.)
+;;; (In principle it might be tidier to do this when dumping the cold
+;;; image in genesis, but in practice the logic might be a little
+;;; messier because genesis dumps both symbols and packages, and we'd
+;;; need to make sure that dumped symbols were renamed in the same way
+;;; as dumped packages. Or we could do it in cold init, but it's
+;;; easier to experiment with and debug things here in warm init than
+;;; in cold init, so we do it here instead.)
 (let ((boot-prefix "SB!")
       (perm-prefix "SB-"))
   (dolist (package (list-all-packages))
                          new-package-name
                          (package-nicknames package)))))))
 
+;;; FIXME: This nickname is a deprecated hack for backwards
+;;; compatibility with code which assumed the CMU-CL-style
+;;; SB-ALIEN/SB-C-CALL split. That split went away and was deprecated
+;;; in 0.7.0, so we should get rid of this nickname after a while.
+(let ((package (find-package "SB-ALIEN")))
+  (rename-package package
+                 (package-name package)
+                 (cons "SB-C-CALL" (package-nicknames package))))
+
 ;;; KLUDGE: This is created here (instead of in package-data-list.lisp-expr)
 ;;; because it doesn't have any symbols in it, so even if it's
 ;;; present at cold load time, genesis thinks it's unimportant
 (dolist (stem '(;; CLOS, derived from the PCL reference implementation
                ;;
                ;; This PCL build order is based on a particular
-               ;; linearization of the declared build order
-               ;; dependencies from the old PCL defsys.lisp
+               ;; (arbitrary) linearization of the declared build
+               ;; order dependencies from the old PCL defsys.lisp
                ;; dependency database.
                "src/pcl/walk"
-                ;; "src/pcl/iterate" removed 2001-12-20 njf
                "src/pcl/early-low"
                "src/pcl/macros"
                 "src/pcl/compiler-support"
                "src/pcl/low"
-               ;; "src/pcl/fin" merged into "src/pcl/low" in 0.6.11.43
+                "src/pcl/slot-name"
                "src/pcl/defclass"
                "src/pcl/defs"
                "src/pcl/fngen"
 ;;; through the cold boot process. They need to be set somewhere. Maybe the
 ;;; easiest thing to do is to read them out of package-data-list.lisp-expr
 ;;; now?
-\f
-;;;; restoring compilation policy to neutral values in preparation for
-;;;; SAVE-LISP-AND-DIE as final SBCL core
-
-(sb-int:/show "setting compilation policy to neutral values")
-(proclaim '(optimize (compilation-speed 1)
-                    (debug 1)
-                    (inhibit-warnings 1)
-                    (safety 1)
-                    (space 1)
-                    (speed 1)))