racket/rktboot
Matthew Flatt aa9bba9328 add Racket-based bootstrap support
Move "racket/src/cs/bootstrap" from the Racket source repository to
this one, because the bootstrapping implementation needs to track the
Chez Scheme source much more closely than the Racket implementation.
Currently, any Racket v7.1 or later works.

Also update "README.md" and "BUILDING" to get all the information
consistent and in sync with revised build options.

original commit: a9e6e99ea414b4625fe9705e4f3cfd62bbf38ae2
2020-07-25 14:10:25 -06:00
..
config.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
constant.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
define-datatype.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
format.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
gensym.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
hand-coded.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
immediate.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
info.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
main.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
make-boot.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
nanopass-patch.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
parse-makefile.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
primdata.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
r6rs-lang.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
r6rs-readtable.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
rcd.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
README.txt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
record.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
scheme-lang.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
scheme-readtable.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
scheme-struct.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
strip.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
symbol.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00
syntax-mode.rkt add Racket-based bootstrap support 2020-07-25 14:10:25 -06:00

This directory constains enough of a Chez Scheme simulation to load
the Chez Scheme compiler purely from source into Racket and apply the
compiler to itself, thus bootstrapping Chez Scheme. (So, using an
existing Racket v7.1 or later, but without using an existing Chez
Scheme.)

The "make-boot.rkt" programs builds Chez Scheme ".boot" and ".h" files
from source. The output is written to "<machine>/boot/<machine>" in a
Chez Scheme source directory. Build boot files that way before
`configure` and `make` to bootstrap the build.

The Chez Scheme simulation hasn't been made especially fast, so expect
the bootstrap process to take 10 times as long as using an existing
Chez Scheme.

While the similation of Chez Scheme should be robust to many Chez
Scheme changes, it does rely on details of the Chez Scheme
implementation and source, So, the simulation will have to be updated
to accommodate some Chez Scheme changes.