git.fiddlerwoaroof.com
Raw Blame History
#!/bin/csh
#
# build-prelude -- recompile the prelude, saving the old one as old-prelude.*
#
#
cd $Y2
setenv PRELUDEBIN $Y2/progs/prelude/akcl
rm $PRELUDEBIN/old*
if (-e $PRELUDEBIN/Prelude.o) then
  foreach i ($PRELUDEBIN/Prelude*.{o,scm})
    mv $i $PRELUDEBIN/old-$i:t
    end
  endif
$AKCL <<EOF
;; Need a big heap to compile the prelude.
;(setf ext:*bytes-consed-between-gcs* 10000000)
;; If you want to recompile
;; everything from scratch, execute the "clean" script first, or
;; else use the "compile" script to do this.
(proclaim '(optimize (speed 3) (safety 0) (compilation-speed 0)))
(make-package "MUMBLE-IMPLEMENTATION" :use '("LISP"))
(load "cl-support/cl-init.lisp")
;; Use the same compiler settings for processing the prelude.
(in-package :mumble-user)
(setf *printers* '(phase-time dump-stat))
(setf *optimizers* *all-optimizers*)
;; The compiler barfs while compiling the interface file for the prelude,
;; so set the flag for writing it as a source file.
;; Also have it break up the prelude code file into many small pieces
;; to avoid overwhelming the C compiler.
(setf *code-chunk-size* 100)
(setf *compile-interface* '#f)
(compile/compile *prelude-unit-filename*)
(lisp:bye)
EOF