From: Taylor R Campbell Date: Tue, 11 Dec 2018 15:35:34 +0000 (+0000) Subject: Make `make cross-target' work in three stages. X-Git-Tag: mit-scheme-pucked-10.1.9~3^2~35^2~44 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=e372f0838a2b656926dd302a2e708ecfb2c08160;p=mit-scheme.git Make `make cross-target' work in three stages. 1. moc->com in runtime, so the next stages can use a compiled runtime 2. moc->com in the whole tree 3. fni->inf in the whole tree XXX Maybe the latter stages can be combined; for now this change just splits the first two apart. Even better, maybe we can nix this step altogether and teach the cross-fasdumper to do this part itself. Wouldn't be hard to teach the cross-fasdumper to do the relocation that currently requires sketchy with-absolutely-no-interrupts crap. For compile-scode, could maybe just fasdump to a bytevector in memory and invent a primitive to fasload from that. --- diff --git a/src/Makefile.in b/src/Makefile.in index 98573e51b..9d16487a6 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -583,8 +583,12 @@ cross-target: stamp_cross-finished lib/runtime.com lib/all.com stamp_cross-finished: stamp_cross-host microcode/scheme (echo '(let ((env (->environment (quote (runtime)))))' && \ echo ' (load "../compiler/base/crsend" env)' && \ - echo ' ((access finish-cross-compilation:files env) ".."))') \ + echo ' ((access finish-cross-compilation:files env) "."))') \ | (cd runtime && ../run-build --batch-mode --fasl make.bin) + (echo '(let ((env (->environment (quote (runtime)))))' && \ + echo ' (load "../compiler/base/crsend" env)' && \ + echo ' ((access finish-cross-compilation:files env) ".."))') \ + | (cd runtime && ../run-build --batch-mode --fasl make.com) (echo '(let ((env (->environment (quote (runtime)))))' && \ echo ' (load "../compiler/base/crsend" env)' && \ echo ' ((access finish-cross-compilation:info-files env) ".."))') \