Initial revision
authorChris Hanson <org/chris-hanson/cph>
Fri, 4 Dec 1987 10:07:31 +0000 (10:07 +0000)
committerChris Hanson <org/chris-hanson/cph>
Fri, 4 Dec 1987 10:07:31 +0000 (10:07 +0000)
etc/make_bin [new file with mode: 0755]
etc/make_dist [new file with mode: 0755]
etc/make_psb [new file with mode: 0755]
etc/mkband.scm [new file with mode: 0644]
etc/resyntax [new file with mode: 0755]
etc/resyntax.scm [new file with mode: 0644]

diff --git a/etc/make_bin b/etc/make_bin
new file mode 100755 (executable)
index 0000000..d2c7573
--- /dev/null
@@ -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 (executable)
index 0000000..6725beb
--- /dev/null
@@ -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 <distribution directory> [<release>] [<source prefix>]"
+  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 (executable)
index 0000000..d5debef
--- /dev/null
@@ -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 (file)
index 0000000..24f8ee2
--- /dev/null
@@ -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 (executable)
index 0000000..9ca1d60
--- /dev/null
@@ -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 (file)
index 0000000..0b8a4be
--- /dev/null
@@ -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