From: Chris Hanson Date: Mon, 16 Oct 2000 18:43:42 +0000 (+0000) Subject: Extensive changes to integrate microcode compilation into the script. X-Git-Tag: 20090517-FFI~3254 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=7782e4857ea40a866899acba35db7bf66891d6c0;p=mit-scheme.git Extensive changes to integrate microcode compilation into the script. --- diff --git a/v7/src/etc/bootstrap.sh b/v7/src/etc/bootstrap.sh index 797d92fac..deb06e598 100755 --- a/v7/src/etc/bootstrap.sh +++ b/v7/src/etc/bootstrap.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# $Id: bootstrap.sh,v 1.2 2000/10/16 18:24:10 cph Exp $ +# $Id: bootstrap.sh,v 1.3 2000/10/16 18:43:42 cph Exp $ # # Copyright (c) 2000 Massachusetts Institute of Technology # @@ -22,16 +22,59 @@ MITSCHEME_LARGE_HEAP=4000 export MITSCHEME_LARGE_HEAP +if [ $# -eq 0 ]; then + case "`uname`" in + Linux) + cname=i386-linux + ;; + FreeBSD) + cname=i386-freebsd + ;; + *) + echo "Don't know what system you're using." + echo "You must re-run this script with a configuration name argument." + echo "Here are the allowed names:" + microcode/unxutl/config + exit 1 + ;; + esac +elif [ $# -eq 1 ]; then + cname=$1 +else + echo "usage: $0 [config-name]" + exit 1 +fi + if [ ! -d 6001 ]; then - echo "This must be run from the top-level Scheme source directory." - exit 1 + echo "This must be run from the top-level Scheme source directory." + exit 1 fi # If this tree is freshly checked out, do the post-checkout adjustments. if [ ! -f 6001/Makefile ]; then - etc/build-tree.sh + etc/build-tree.sh fi +# Set up the compiler directory. +( + cd compiler + if [ ! -L machine ]; then + ln -s machines/i386 machine + ln -s machine/compiler.* . + ln -s machine/make.com . + fi +) + +# Compile the C code. +( + cd microcode + unxutl/config "${cname}" + make +) + +# Compile the Scheme code. +./microcode/scheme -compiler < etc/bootstrap-compile.scm + # Build the lib directory. rm -rf lib mkdir lib @@ -40,26 +83,19 @@ mkdir edwin/etc mkdir edwin/info cp -p etc/optiondb.scm lib/. ( - cd lib - ln -s .. SRC - ln -s SRC/runtime options - ln -s ../../edwin edwin/autoload - ln -s ../cref . -) - -# Set up the compiler directory. -( - cd compiler - ln -s machines/i386 machine - ln -s machine/compiler.* . - ln -s machine/make.com . + cd lib + ln -s .. SRC + ln -s SRC/runtime options + ln -s ../../edwin edwin/autoload + ln -s ../cref . ) -# Compile everything. -scheme -compiler < etc/bootstrap-compile.scm - cp -p microcode/utabmd.bin lib/. -(cd runtime; scheme -library ../lib -fasl make.com) < etc/build-runtime.scm -scheme -library lib -large < etc/build-compiler.scm -scheme -library lib -large < etc/build-edwin.scm +( + cd runtime + ../microcode/scheme -library ../lib -fasl make.com +) < etc/build-runtime.scm + +./microcode/scheme -library lib -large < etc/build-compiler.scm +./microcode/scheme -library lib -large < etc/build-edwin.scm