From: Chris Hanson Date: Fri, 4 Dec 1987 10:07:31 +0000 (+0000) Subject: Initial revision X-Git-Tag: 20090517-FFI~13026 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=db030bdcb9ddd8a673f4a89271fbdee76794c50d;p=mit-scheme.git Initial revision --- diff --git a/etc/make_bin b/etc/make_bin new file mode 100755 index 000000000..d2c757370 --- /dev/null +++ b/etc/make_bin @@ -0,0 +1,15 @@ +#!/bin/csh -f + +set scheme=`pwd` + +if (! -e $scheme/microcode/Psbtobin ) then + (cd $scheme/microcode; make Psbtobin) +endif + +foreach i (runtime sf) + cd $scheme/$i + foreach j (*.psb) + echo "Psbtobin $scheme/$i/$j" + $scheme/microcode/Psbtobin <$j >$j:r.bin + end +end diff --git a/etc/make_dist b/etc/make_dist new file mode 100755 index 000000000..6725bebbe --- /dev/null +++ b/etc/make_dist @@ -0,0 +1,78 @@ +#!/bin/csh -fx +# $1 = name of distribution directory to build +# $2 = name of RCS release symbol (optional) +# $3 = prefix string for source directories (optional) (e.g. "/z") + +if (($#argv < 1) || ($#argv > 3)) then + echo "usage: $0 [] []" + exit 1 +endif + +set destination="$1" +if ($#argv == 1) then + set rcs_opts="" +else + set rcs_opts=" -r$2" + if ($#argv == 2) then + set prefix="" + else + set prefix="$3" +endif +set source="$prefix/scheme/rel5" +set rcs_source="$prefix/scheme/rel5-RCS" +set tempfile="/tmp/sdist$$" + +if (-e $destination) then + rm -rf $destination +endif +mkdir $destination + +# Guarantee that VMS command files are constructed. +cd $source +vms/make.vms + +# Copy all the auxiliary files. Use $tempfile because of buggy +# interaction between `find' and RFA under recent versions of hp-ux. +cd $source +if (-e $tempfile) then + rm -f $tempfile +endif +find Makefile documentation etc makefiles libs -print > $tempfile +find vms \( -name '*.com' -o -name '*.txt' -o -name '*.el' \) -print >> $tempfile +cpio -pdmuv $destination < $tempfile +rm -f $tempfile + +# Clean up any unwanted files that might be around. +cd $source +foreach i (documentation etc makefiles libs) + find $destination/$i \( -name '.*~*' -o -name '#*' -o -name '*~*' -o -name '*.bin' -o -name '*.ext' -o -name '*.com' -o -name '*.elc' \) -exec rm -f {} \; +end + +# Copy the primary source code by checking out reference copies from RCS. +foreach i (microcode runtime sf) + cd $destination + mkdir $i + cd $i + foreach j ($rcs_source/$i/*,v) + co $rcs_opts $j + end +end + +# Make the PSB files by resyntaxing and converting them. +cd $destination +etc/resyntax +etc/make_psb +find * \( -name '*.bin' -o -name '*.ext' \) -exec rm -f {} \; + +# Move things into the appropriate places. +cd $destination/documentation +mv INSTALL Install.* README .. + +cd $destination/microcode +make -k remove +mv config.h config.dst +mv Makefile ../makefiles + +# Create the file "make_dirs.com": +cd $destination +emacs -batch -q -l vms/make_dirs.el diff --git a/etc/make_psb b/etc/make_psb new file mode 100755 index 000000000..d5debef0e --- /dev/null +++ b/etc/make_psb @@ -0,0 +1,21 @@ +#!/bin/csh -f + +set scheme=`pwd` + +if (! -e $scheme/microcode/Bintopsb ) then + (cd $scheme/microcode; make Bintopsb) +endif + +cd $scheme/runtime +foreach i (*.bin) + if (("$i" != "scheme.bin") && ("$i" != "sicp.bin")) then + echo "Bintopsb $scheme/runtime/$i" + $scheme/microcode/Bintopsb <$i >$i:r.psb + endif +end + +cd $scheme/sf +foreach i (*.bin) + echo "Bintopsb $scheme/sf/$i" + $scheme/microcode/Bintopsb <$i >$i:r.psb +end diff --git a/etc/mkband.scm b/etc/mkband.scm new file mode 100644 index 000000000..24f8ee2fe --- /dev/null +++ b/etc/mkband.scm @@ -0,0 +1,17 @@ +;;; -*- Scheme -*- + +((access finish-load runtime-system)) + +(set-working-directory-pathname! "../sf") + +(load "make.bin" system-global-environment) + +(set-working-directory-pathname! "../runtime") + +(disk-save "scheme.bin") + +(load "sbuild.bin" system-global-environment) + +(disk-save "sicp.bin") + +(%exit) diff --git a/etc/resyntax b/etc/resyntax new file mode 100755 index 000000000..9ca1d601f --- /dev/null +++ b/etc/resyntax @@ -0,0 +1,4 @@ +#!/bin/csh -f + +setenv scheme `pwd` +exec scheme < etc/resyntax.scm diff --git a/etc/resyntax.scm b/etc/resyntax.scm new file mode 100644 index 000000000..0b8a4bea9 --- /dev/null +++ b/etc/resyntax.scm @@ -0,0 +1,10 @@ +;;; -*- Scheme -*- + +(sf "$scheme/etc/direct") +(load "$scheme/etc/direct" system-global-environment) + +(sf "$scheme/microcode/utabmd" "$scheme/runtime/") + +(sf (directory-read "$scheme/runtime/*.scm")) + +(sf (directory-read "$scheme/sf/*.scm")) \ No newline at end of file