sbcl.sbcl/make-host-1.sh
William Harold Newman ce02ab2ecd 0.6.11.13:
converted SIMPLE-/COMPLEX- -INTERSECTION to -INTERSECTION2
	reviewed old SIMPLE-/COMPLEX- -INTERSECTION methods to make
		them OK in the new world
	made TYPE-INTERSECTION2 and TYPE-APPROX-INTERSECTION2 for
		some things which used to call TYPE-INTERSECTION
	made new with-&REST-list TYPE-INTERSECTION to replace
		MAKE-INTERSECTION-TYPE-OR-SOMETHING
	HIERARCHICAL-INTERSECTION is more descriptive than
		VANILLA-INTERSECTION.
	deleted unused SIMPLIFY2 stuff
	deleted unused TYPE-INTERSECT and VALUES-TYPE-ALLOWP
	Pure BOOLEAN TYPE-ENUMERABLE is too much trouble; relax to
		generalized boolean instead.
	tweaked DEFUN-CACHED so that it will work early in cold init
		(if some clueless bozo happens to mess up types so
		badly that it gets called early in cold init:-)
	Now the AND type translator can just use TYPE-INTERSECTION.
	added *SOFT-HEAP-LIMIT*
	removed some unused symbols in SB!UNIX
	tweaked /SHOW0 to automatically stringify and concatenate its
		arguments, to abbreviate an idiom that I use a lot
	wrote /HEXSTR0 to abbreviate another idiom
	defined /PRIMITIVE-PRINT to abbreviate another idiom
	DO-LOAD-TIME-CODE-FIXUP and DO-LOAD-TIME-VALUE-FIXUP are
		only needed at cold init.
	added tests/type.after-xc.lisp and tests/type.before-xc.lisp
	upgraded SB-XC:TYPEP to handle (TYPEP #(1 2 3) 'VECTOR) etc.
	Intersection with *EMPTY-TYPE* and *UNIVERSAL-TYPE* should
		behave (and be commutative).
	Guard against some type method operations on *. (easier than
		worrying about them, or trying to make them right..)
	moved STYLE-WARN and friends to SB-INT to eliminate thought
		about whether they're visible e.g. in ir1tran.lisp
	tripped over bug 84
	made SB!C-CALL use SB!INT and SB!EXT so I can use /SHOW0 et al.
	DEF-PRIMITIVE-TYPE stuff can become !DEF-PRIMITIVE-TYPE.
	DEF-BOUNDED-TYPE and DEFINE-FLOAT-FORMAT can become
		!DEF-BOUNDED-TYPE and !DEFINE-FLOAT-FORMAT.
	moved DEFTYPE FLOAT-FORMAT earlier so that it's visible in
		early-type.lisp (for NUMERIC-TYPE FORMAT slot :TYPE)
	moved LIST, CONS, and NULL classes earlier in *BUILT-IN-CLASSES*
		to try to help with RATIO cold init problem
	removed pre-ANSI keyword-only stuff in ARG-INFO-KEYWORD and
		in various &KEY-related error messages and symbol names
	bug 12 fixed: (SUBTYPEP 'KEYWORD 'SYMBOL)=>T,T
	added INTERSECTION-TYPE support to CTYPEP
2001-03-12 13:47:43 +00:00

47 lines
2 KiB
Bash

#!/bin/sh
# This is a script to be run as part of make.sh. The only time you'd
# want to run it by itself is if you're trying to cross-compile the
# system or if you're doing some kind of troubleshooting.
# This software is part of the SBCL system. See the README file for
# more information.
#
# This software is derived from the CMU CL system, which was
# written at Carnegie Mellon University and released into the
# public domain. The software is in the public domain and is
# provided with absolutely no warranty. See the COPYING and CREDITS
# files for more information.
echo //entering make-host-1.sh
# Compile and load the cross-compiler. (We load it here not because we're
# about to use it, but because it's written under the assumption that each
# file will be loaded before the following file is compiled.)
#
# Also take the opportunity to compile and load genesis, to create the
# header file sbcl.h which will be needed to create the C runtime
# environment.
echo //building cross-compiler, and doing first genesis
$SBCL_XC_HOST <<-'EOF' || exit 1
;; (We want to have some limit on print length and print level
;; during bootstrapping because PRINT-OBJECT only gets set
;; up rather late, and running without PRINT-OBJECT it's easy
;; to fall into printing enormous (or infinitely circular)
;; low-level representations of things.)
(setf *print-level* 5 *print-length* 5)
(load "src/cold/shared.lisp")
(in-package "SB-COLD")
(setf *host-obj-prefix* "obj/from-host/")
(load "src/cold/shared.lisp")
(load "src/cold/set-up-cold-packages.lisp")
(load "src/cold/defun-load-or-cload-xcompiler.lisp")
(load-or-cload-xcompiler #'host-cload-stem)
;; Let's check that the type system is reasonably sane. (It's
;; easy to spend a long time wandering around confused trying
;; to debug cross-compilation if it isn't.)
(load "tests/type.before-xc.lisp")
(host-cload-stem "compiler/generic/genesis")
(sb!vm:genesis :c-header-file-name "src/runtime/sbcl.h")
EOF