0.7.4.7:
[sbcl.git] / build-order.lisp-expr
index e8b6315..76acd22 100644 (file)
  ;; leaking into target SBCL code.
  ("src/code/backq")
 
+ ;; It's difficult to be too early with a DECLAIM SPECIAL (or DEFVAR
+ ;; or whatever) thanks to the sullenly-do-the-wrong-thing semantics
+ ;; of CL special binding when the variable is undeclared.
+ ("src/code/globals" :not-host)
+
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;; various DEFSETFs and/or other DEFMACROish things, defined as early as
  ;; possible so we don't need to fiddle with any subtleties of defining them
@@ -63,6 +68,7 @@
  ("src/code/cross-float" :not-target)
  ("src/code/cross-io"    :not-target)
  ("src/code/cross-sap"   :not-target)
+ ("src/code/cross-make-load-form" :not-target)
 
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;;; stuff needed early both in cross-compilation host and in target Lisp
 
  ("src/code/defbangtype")
  ("src/code/defbangmacro")
+ ("src/code/defbangconstant")
 
  ("src/code/primordial-extensions")
 
- ;; for various constants e.g. SB!VM:*TARGET-MOST-POSITIVE-FIXNUM* and
+ ;; for various constants e.g. SB!XC:MOST-POSITIVE-FIXNUM and
  ;; SB!VM:N-LOWTAG-BITS, needed by "early-objdef" and others
  ("src/compiler/generic/early-vm")
  ("src/compiler/generic/early-objdef")
@@ -86,6 +93,7 @@
  ("src/code/parse-defmacro")   ; on host for PARSE-DEFMACRO
  ("src/code/early-extensions") ; on host for COLLECT, SYMBOLICATE, etc.
  ("src/compiler/deftype")      ; on host for SB!XC:DEFTYPE
+ ("src/compiler/defconstant")
  ("src/code/early-alieneval")  ; for vars needed both at build and run time
 
  ("src/code/specializable-array")
  ;;    and stuff."
  ;; Dunno exactly what this meant or whether it still holds. -- WHN 19990803
  ;; FIXME: more informative and up-to-date comment?
- ("src/code/globals"     :not-host)
  ("src/code/kernel"      :not-host)
  ("src/code/toplevel"    :not-host)
  ("src/code/cold-error"  :not-host)
  ("src/compiler/globaldb")
  ("src/compiler/info-functions")
 
+ ("src/code/force-delayed-defbangconstants")
  ("src/code/defmacro")
  ("src/code/force-delayed-defbangmacros")
 
  ("src/compiler/ir1report")
  ("src/compiler/ir1opt")
 
- ;; Compiling this file requires the macros SB!ASSEM:EMIT-LABEL and
- ;; SB!ASSEM:EMIT-POST-IT, defined in assem.lisp.
- ("src/compiler/late-vmdef")
-
  ("src/compiler/ir1final")
  ("src/compiler/array-tran")
  ("src/compiler/seqtran")
  ("src/compiler/generic/utils")
  ("src/assembly/assemfile")
 
+ ;; Compiling this file requires the macros SB!ASSEM:EMIT-LABEL and
+ ;; SB!ASSEM:EMIT-POST-IT, defined in assem.lisp, and also possibly
+ ;; the definition of the LOCATION-INFO structure (if structures in
+ ;; the host lisp have setf expanders rather than setf functions).
+ ("src/compiler/late-vmdef")
+
  ("src/compiler/fixup") ; for DEFSTRUCT FIXUP, used by insts.lisp
 
  ("src/compiler/target/insts")
  ("src/compiler/target/nlx")
  ("src/compiler/target/show")
  ("src/compiler/target/array"
-  ;; KLUDGE: Compiling this file raises alarming warnings of the form
+  ;; KLUDGE: Compiling this file for X86 raises alarming warnings of
+  ;; the form
   ;;    Argument FOO to VOP CHECK-BOUND has SC restriction
   ;;    DESCRIPTOR-REG which is not allowed by the operand type:
   ;;      (:OR POSITIVE-FIXNUM)
   ;; these warnings are severe enough that they would ordinarily abort
   ;; compilation, for now we blithely ignore them and press on to more
   ;; pressing problems. Someday, though, it would be nice to figure out
-  ;; what the problem is and fix it.. -- WHN 19990323
+  ;; what the problem is and fix it. (See the comments in
+  ;; src/compiler/x86/array for a candidate patch.) -- WHN 19990323
   :ignore-failure-p)
  ("src/compiler/target/pred")
  ("src/compiler/target/type-vops")
                                                 ;   "compiler/generic/core"
 
  ("src/code/eval"              :not-host) ; uses INFO, wants compiler macro
- ("src/code/target-sap"        :not-host) ; uses SAP-INT-TYPE
+ ("src/code/target-sap"        :not-host) ; uses SAP-INT type
  ("src/code/target-package"    :not-host) ; needs "code/package"
  ("src/code/target-random"     :not-host) ; needs "code/random"
  ("src/code/target-hash-table" :not-host) ; needs "code/hash-table"
  ("src/code/bit-bash"    :not-host) ; needs %NEGATE from assembly/target/arith
 
  ("src/code/target-load" :not-host) ; needs special vars from code/load.lisp
-
+ ("src/compiler/target/sanctify" :not-host) 
  ;; FIXME: Does this really need stuff from compiler/dump.lisp?
  ("src/compiler/target-dump" :not-host) ; needs stuff from compiler/dump.lisp