From d0ec25b1726a45ddbfa18b67855b9bc53febbd1a Mon Sep 17 00:00:00 2001 From: Chris Hanson Date: Fri, 8 Dec 2000 04:52:44 +0000 Subject: [PATCH] Redesign the structure for setup and clean rules. New structure uses shell scripts in each directory, which the makefiles refer to. This greatly simplifies the configuration code because it was getting too painful to put complex shell scripts inside the makefiles. --- v7/src/Clean.sh | 52 +++++++++ v7/src/Makefile | 66 ++---------- v7/src/Makefile.std | 69 ++---------- v7/src/{etc/create-dirs.sh => Setup.sh} | 15 ++- v7/src/{microcode/Mclean.sh => cref/Clean.sh} | 20 +++- v7/src/edwin/Clean.sh | 34 ++++++ v7/src/etc/Clean.sh | 58 ++++++++++ v7/src/etc/Setup.sh | 44 ++++++++ v7/src/etc/Stage.sh | 52 +++++++++ v7/src/etc/bootstrap-compile.scm | 38 ------- v7/src/etc/bootstrap.sh | 100 ------------------ v7/src/etc/build-compiler.scm | 29 ----- v7/src/etc/build-edwin.scm | 28 ----- v7/src/etc/build-runtime.scm | 22 ---- v7/src/etc/build-tree.sh | 49 --------- v7/src/etc/runtime-check.cbf | 24 ----- v7/src/microcode/Clean.sh | 47 ++++++++ 17 files changed, 332 insertions(+), 415 deletions(-) create mode 100755 v7/src/Clean.sh rename v7/src/{etc/create-dirs.sh => Setup.sh} (75%) rename v7/src/{microcode/Mclean.sh => cref/Clean.sh} (69%) create mode 100755 v7/src/edwin/Clean.sh create mode 100755 v7/src/etc/Clean.sh create mode 100755 v7/src/etc/Setup.sh create mode 100755 v7/src/etc/Stage.sh delete mode 100644 v7/src/etc/bootstrap-compile.scm delete mode 100755 v7/src/etc/bootstrap.sh delete mode 100644 v7/src/etc/build-compiler.scm delete mode 100644 v7/src/etc/build-edwin.scm delete mode 100644 v7/src/etc/build-runtime.scm delete mode 100755 v7/src/etc/build-tree.sh delete mode 100644 v7/src/etc/runtime-check.cbf create mode 100755 v7/src/microcode/Clean.sh diff --git a/v7/src/Clean.sh b/v7/src/Clean.sh new file mode 100755 index 000000000..0be20b1a4 --- /dev/null +++ b/v7/src/Clean.sh @@ -0,0 +1,52 @@ +#!/bin/sh +# +# $Id: Clean.sh,v 1.1 2000/12/08 04:49:28 cph Exp $ +# +# Copyright (c) 2000 Massachusetts Institute of Technology +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +# Utility for cleaning up MIT Scheme build directories. +# The working directory must be the top-level source directory. + +if [ $# -le 1 ]; then + echo "usage: $0 ..." + exit 1 +fi + +COMMAND=$1 +shift + +case "${COMMAND}" in +mostlyclean) + ;; +clean | distclean) + rm -f lib/*.com + ;; +maintainer-clean) + rm -rf lib + ;; +*) + echo "$0: Unknown command ${COMMAND}" + exit 1 + ;; +esac + +for SUBDIR; do + if test -x $${SUBDIR}/Clean.sh; then + echo "making ${COMMAND} in $${SUBDIR}" + ( cd $${SUBDIR} && ./Clean.sh ${COMMAND} ) || exit 1 + fi +done diff --git a/v7/src/Makefile b/v7/src/Makefile index b261da754..e80cd1ed6 100644 --- a/v7/src/Makefile +++ b/v7/src/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.16 2000/12/07 23:06:27 cph Exp $ +# $Id: Makefile,v 1.17 2000/12/08 04:49:31 cph Exp $ # # Copyright (c) 2000 Massachusetts Institute of Technology # @@ -18,24 +18,19 @@ SHELL = /bin/sh -SCHEME_SUBDIRS = 6001 compiler cref edwin imail rcs \ - runtime runtime-check sf sos win32 -SUBDIRS = $(SCHEME_SUBDIRS) microcode +SUBDIRS = 6001 compiler cref edwin imail microcode \ + rcs runtime runtime-check sf sos win32 all: ( cd microcode && $(MAKE) $@ ) - etc/create-dirs.sh scheme -compiler -heap 4000 < etc/compile.scm etc/build-bands.sh setup: - @for SUBDIR in $(SCHEME_SUBDIRS); do \ - echo "making $@ in $${SUBDIR}"; \ - test -e $${SUBDIR}/Makefile \ - || ln -s ../Makefile.std $${SUBDIR}/Makefile; \ - ( cd $${SUBDIR} && $(MAKE) $@ ) || exit 1; \ - done - ( cd microcode && ./Setup.sh ) + ./Setup.sh $(SUBDIRS) + +mostlyclean clean distclean maintainer-clean: + ./Clean.sh $@ $(SUBDIRS) tags TAGS: @for SUBDIR in $(SUBDIRS); do \ @@ -43,49 +38,4 @@ tags TAGS: ( cd $${SUBDIR} && $(MAKE) $@ ) || exit 1; \ done -mostlyclean: mostlyclean-extra - @for SUBDIR in $(SUBDIRS); do \ - if test -e $${SUBDIR}/Makefile; then \ - echo "making $@ in $${SUBDIR}"; \ - ( cd $${SUBDIR} && $(MAKE) $@ ); \ - fi; \ - done - -mostlyclean-extra: - -clean: clean-extra - @for SUBDIR in $(SUBDIRS); do \ - if test -e $${SUBDIR}/Makefile; then \ - echo "making $@ in $${SUBDIR}"; \ - ( cd $${SUBDIR} && $(MAKE) $@ ); \ - fi; \ - done - -clean-extra: mostlyclean-extra - -rm -f lib/*.com - -distclean: distclean-extra - @for SUBDIR in $(SUBDIRS); do \ - if test -e $${SUBDIR}/Makefile; then \ - echo "making $@ in $${SUBDIR}"; \ - ( cd $${SUBDIR} && $(MAKE) $@ ); \ - fi; \ - done - -distclean-extra: clean-extra - rm -rf lib - -maintainer-clean: maintainer-clean-extra - @for SUBDIR in $(SCHEME_SUBDIRS); do \ - if test -e $${SUBDIR}/Makefile; then \ - echo "making $@ in $${SUBDIR}"; \ - ( cd $${SUBDIR} && $(MAKE) $@ ); \ - fi; \ - done - ( cd microcode && ./Mclean.sh ) - -maintainer-clean-extra: distclean-extra - -.PHONY: all setup tags TAGS -.PHONY: mostlyclean mostlyclean-extra clean clean-extra -.PHONY: distclean distclean-extra maintainer-clean maintainer-clean-extra +.PHONY: all setup mostlyclean clean distclean maintainer-clean tags TAGS diff --git a/v7/src/Makefile.std b/v7/src/Makefile.std index fc0e123ba..f6fbe5ab7 100644 --- a/v7/src/Makefile.std +++ b/v7/src/Makefile.std @@ -1,4 +1,4 @@ -# $Id: Makefile.std,v 1.8 2000/12/07 22:20:38 cph Exp $ +# $Id: Makefile.std,v 1.9 2000/12/08 04:49:34 cph Exp $ # # Copyright (c) 2000 Massachusetts Institute of Technology # @@ -27,78 +27,31 @@ all: echo "No ALL action" setup: - test ! -e ed-ffi.scm \ - || test -e .edwin-ffi \ - || ln -s ed-ffi.scm .edwin-ffi + ./Setup.sh tags TAGS: etags *.scm -mostlyclean: - rm -f *.bin *.ext *.com *.bci *.bco *.bld *.crf *.fre *.glo - @for FN in *.con; do \ - test "${FN}" = "triv.con" \ - || rm -f "${FN}"; \ - done - @for FN in *.ldr; do \ - test "${FN}" = "edwin.ldr" \ - || test "${FN}" = "triv.ldr" \ - || rm -f "${FN}"; \ - done - -clean: mostlyclean - -distclean: clean - -maintainer-clean: distclean - rm -f Makefile .edwin-ffi +mostlyclean clean distclean maintainer-clean: + ./Clean.sh $@ stage1: - mkdir STAGE1 && mv -f *.com *.bci STAGE1/. + ./Stage.sh make 1 unstage1: - mv -f STAGE1/* . && rmdir STAGE1 - -rmstage1: - rm -rf STAGE1 - -cpstage1: - cp -p STAGE1/* . - -lnstage1: - ln -f STAGE1/* . + ./Stage.sh unmake 1 stage2: - mkdir STAGE2 && mv -f *.com *.bci STAGE2/. + ./Stage.sh make 2 unstage2: - mv -f STAGE2/* . && rmdir STAGE2 - -rmstage2: - rm -rf STAGE2 - -cpstage2: - cp -p STAGE2/* . - -lnstage2: - ln -f STAGE2/* . + ./Stage.sh unmake 2 stage3: - mkdir STAGE3 && mv -f *.com *.bci STAGE3/. + ./Stage.sh make 3 unstage3: - mv -f STAGE3/* . && rmdir STAGE3 - -rmstage3: - rm -rf STAGE3 - -cpstage3: - cp -p STAGE3/* . - -lnstage3: - ln -f STAGE3/* . + ./Stage.sh unmake 3 .PHONY: all setup tags TAGS mostlyclean clean distclean maintainer-clean -.PHONY: stage1 unstage1 rmstage1 cpstage1 lnstage1 -.PHONY: stage2 unstage2 rmstage2 cpstage2 lnstage2 -.PHONY: stage3 unstage3 rmstage3 cpstage3 lnstage3 +.PHONY: stage1 unstage1 stage2 unstage2 stage3 unstage3 diff --git a/v7/src/etc/create-dirs.sh b/v7/src/Setup.sh similarity index 75% rename from v7/src/etc/create-dirs.sh rename to v7/src/Setup.sh index 51a734dea..df0a8b7a0 100755 --- a/v7/src/etc/create-dirs.sh +++ b/v7/src/Setup.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# $Id: create-dirs.sh,v 1.7 2000/12/07 23:05:08 cph Exp $ +# $Id: Setup.sh,v 1.1 2000/12/08 04:49:37 cph Exp $ # # Copyright (c) 2000 Massachusetts Institute of Technology # @@ -18,11 +18,12 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -# Create build directories and links. +# Utility to set up the MIT Scheme build directories. +# The working directory must be the top-level source directory. maybe_mkdir () { - if test ! -e ${1}; then + if [ ! -e ${1} ]; then echo "mkdir ${1}" mkdir ${1} fi @@ -30,7 +31,7 @@ maybe_mkdir () maybe_link () { - if test ! -e ${1}; then + if [ ! -e ${1} ]; then echo "ln -s ${2} ${1}" ln -s ${2} ${1} fi @@ -48,3 +49,9 @@ maybe_mkdir lib/edwin maybe_mkdir lib/edwin/etc maybe_mkdir lib/edwin/info maybe_link lib/edwin/autoload ../../edwin + +for SUBDIR in "$@"; do + echo "setting up ${SUBDIR}" + maybe_link ${SUBDIR}/Setup.sh ../etc/Setup.sh + ( cd ${SUBDIR} && ./Setup.sh ) || exit 1 +done diff --git a/v7/src/microcode/Mclean.sh b/v7/src/cref/Clean.sh similarity index 69% rename from v7/src/microcode/Mclean.sh rename to v7/src/cref/Clean.sh index 0dcf6be7b..f5d0d5b13 100755 --- a/v7/src/microcode/Mclean.sh +++ b/v7/src/cref/Clean.sh @@ -1,6 +1,6 @@ #!/bin/sh - -# $Id: Mclean.sh,v 1.3 2000/12/06 05:54:55 cph Exp $ +# +# $Id: Clean.sh,v 1.1 2000/12/08 04:50:44 cph Exp $ # # Copyright (c) 2000 Massachusetts Institute of Technology # @@ -18,7 +18,17 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -# Program to do "maintainer-clean" rule. +# Utility for cleaning up the MIT Scheme cref directory. +# The working directory must be the cref directory. + +if [ $# -ne 1 ]; then + echo "usage: $0 " + exit 1 +fi + +../etc/Clean.sh "${1}" recursive + +echo "rm -f cref.con cref.ldr" +rm -f cref.con cref.ldr -test ! -f Makefile && test -f configure && ./configure -test ! -f Makefile || make maintainer-clean +exit 0 diff --git a/v7/src/edwin/Clean.sh b/v7/src/edwin/Clean.sh new file mode 100755 index 000000000..6a494c974 --- /dev/null +++ b/v7/src/edwin/Clean.sh @@ -0,0 +1,34 @@ +#!/bin/sh +# +# $Id: Clean.sh,v 1.1 2000/12/08 04:50:26 cph Exp $ +# +# Copyright (c) 2000 Massachusetts Institute of Technology +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +# Utility for cleaning up the MIT Scheme edwin directory. +# The working directory must be the edwin directory. + +if [ $# -ne 1 ]; then + echo "usage: $0 " + exit 1 +fi + +../etc/Clean.sh "${1}" recursive + +echo "rm -f edwin.bld edwinunx.* edwinw32.* edwinos2.*" +rm -f edwin.bld edwinunx.* edwinw32.* edwinos2.* + +exit 0 diff --git a/v7/src/etc/Clean.sh b/v7/src/etc/Clean.sh new file mode 100755 index 000000000..da0db4f8e --- /dev/null +++ b/v7/src/etc/Clean.sh @@ -0,0 +1,58 @@ +#!/bin/sh +# +# $Id: Clean.sh,v 1.1 2000/12/08 04:49:54 cph Exp $ +# +# Copyright (c) 2000 Massachusetts Institute of Technology +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +# Utility for cleaning up an MIT Scheme build directory. +# The working directory must be the build directory. + +if [ $# -eq 1 ]; then + RECURSIVE=no +elif [ $# -eq 2 ] && [ "${2}" = "recursive" ]; then + RECURSIVE=yes +else + echo "usage: $0 [recursive]" + exit 1 +fi + +case "${1}" in +mostlyclean | clean | distclean) + ;; +maintainer-clean) + for FN in .edwin-ffi Clean.sh Makefile Setup.sh Stage.sh; do + if [ -L ${FN} ]; then + echo "rm ${FN}" + rm ${FN} + fi + done + ;; +*) + echo "$0: Unknown command ${1}" + exit 1 + ;; +esac + +echo "rm -f *.bin *.ext *.com *.bci *.bco *.bld *.crf *.fre *.glo" +rm -f *.bin *.ext *.com *.bci *.bco *.bld *.crf *.fre *.glo + +if [ ${RECURSIVE} = no ]; then + echo "rm -f *.con *.ldr" + rm -f *.con *.ldr +fi + +exit 0 diff --git a/v7/src/etc/Setup.sh b/v7/src/etc/Setup.sh new file mode 100755 index 000000000..d4efd2e04 --- /dev/null +++ b/v7/src/etc/Setup.sh @@ -0,0 +1,44 @@ +#!/bin/sh +# +# $Id: Setup.sh,v 1.1 2000/12/08 04:49:57 cph Exp $ +# +# Copyright (c) 2000 Massachusetts Institute of Technology +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +# Utility to set up an MIT Scheme build directory. +# The working directory must be the build directory. + +if [ $# -ne 0 ]; then + echo "usage: $0" + exit 1 +fi + +maybe_link () +{ + if [ ! -e ${1} ]; then + echo "ln -s ${2} ${1}" + ln -s ${2} ${1} + fi +} + +maybe_link ${SUBDIR}/Makefile ../etc/Makefile.std +for FN in Clean.sh Stage.sh; do + maybe_link ${SUBDIR}/${FN} ../etc/${FN} +done + +[ -e ed-ffi.scm ] && maybe_link .edwin-ffi ed-ffi.scm + +exit 0 diff --git a/v7/src/etc/Stage.sh b/v7/src/etc/Stage.sh new file mode 100755 index 000000000..fd0eaa2d5 --- /dev/null +++ b/v7/src/etc/Stage.sh @@ -0,0 +1,52 @@ +#!/bin/sh +# +# $Id: Stage.sh,v 1.1 2000/12/08 04:49:59 cph Exp $ +# +# Copyright (c) 2000 Massachusetts Institute of Technology +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +# Utility for MIT Scheme compiler staging. + +if [ $# -ne 2 ]; then + echo "usage: $0 " + exit 1 +fi + +DIRNAME="STAGE${2}" + +case "${1}" in +make) + mkdir "${DIRNAME}" && mv -f *.com *.bci "${DIRNAME}/." + ;; +unmake) + mv -f "${DIRNAME}/*" . && rmdir "${DIRNAME}" + ;; +remove) + rm -rf "${DIRNAME}" + ;; +copy) + cp "${DIRNAME}/*" . + ;; +link) + ln "${DIRNAME}/*" . + ;; +*) + echo "$0: Unknown command ${1}" + exit 1 + ;; +esac + +exit 0 diff --git a/v7/src/etc/bootstrap-compile.scm b/v7/src/etc/bootstrap-compile.scm deleted file mode 100644 index 603ec4366..000000000 --- a/v7/src/etc/bootstrap-compile.scm +++ /dev/null @@ -1,38 +0,0 @@ -#| -*-Scheme-*- - -$Id: bootstrap-compile.scm,v 1.7 2000/10/16 19:25:33 cph Exp $ - -Copyright (c) 2000 Massachusetts Institute of Technology - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or (at -your option) any later version. - -This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -|# - -(begin - (sf "microcode/utabmd") - (with-working-directory-pathname "cref" - (lambda () - (load "cref.sf") - (load "cref.cbf") - (if (not (name->package '(CROSS-REFERENCE))) - (load "make")))) - (for-each (lambda (name) - (with-working-directory-pathname name - (lambda () - (load (pathname-new-type name "sf")) - (load (pathname-new-type name "cbf"))))) - '("runtime" "sf" "compiler" "edwin" "6001")) - (for-each (lambda (name) - (load (merge-pathnames "compile" (pathname-as-directory name)))) - '("sos" "imail"))) \ No newline at end of file diff --git a/v7/src/etc/bootstrap.sh b/v7/src/etc/bootstrap.sh deleted file mode 100755 index 29c8cbb92..000000000 --- a/v7/src/etc/bootstrap.sh +++ /dev/null @@ -1,100 +0,0 @@ -#!/bin/sh -# -# $Id: bootstrap.sh,v 1.4 2000/10/16 19:29:00 cph Exp $ -# -# Copyright (c) 2000 Massachusetts Institute of Technology -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or (at -# your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - -# This must be at least 2000. -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 -fi - -# If this tree is freshly checked out, do the post-checkout adjustments. -if [ ! -f 6001/Makefile ]; then - 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 - [ -f cf.h ] || unxutl/config "${cname}" - [ -x scheme ] || make -) - -# Compile the Scheme code. -./microcode/scheme -compiler < etc/bootstrap-compile.scm - -# Build the lib directory. -rm -rf lib -mkdir lib -mkdir lib/edwin -mkdir lib/edwin/etc -mkdir lib/edwin/info -cp -p etc/optiondb.scm lib/. -( - cd lib - ln -s .. SRC - ln -s SRC/runtime options - ln -s ../SRC/edwin edwin/autoload -) - -cp -p microcode/utabmd.bin lib/. - -( - 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 diff --git a/v7/src/etc/build-compiler.scm b/v7/src/etc/build-compiler.scm deleted file mode 100644 index d429a098c..000000000 --- a/v7/src/etc/build-compiler.scm +++ /dev/null @@ -1,29 +0,0 @@ -#| -*-Scheme-*- - -$Id: build-compiler.scm,v 1.1 2000/10/16 18:17:51 cph Exp $ - -Copyright (c) 2000 Massachusetts Institute of Technology - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or (at -your option) any later version. - -This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -|# - -(let ((load-it - (lambda (name) - (with-working-directory-pathname name (lambda () (load "make")))))) - (load-it "sf") - (load-it "compiler") - (disk-save "lib/compiler.com") - (load-it "edwin") - (disk-save "lib/all.com")) \ No newline at end of file diff --git a/v7/src/etc/build-edwin.scm b/v7/src/etc/build-edwin.scm deleted file mode 100644 index 943b793ed..000000000 --- a/v7/src/etc/build-edwin.scm +++ /dev/null @@ -1,28 +0,0 @@ -#| -*-Scheme-*- - -$Id: build-edwin.scm,v 1.1 2000/10/16 18:17:53 cph Exp $ - -Copyright (c) 2000 Massachusetts Institute of Technology - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or (at -your option) any later version. - -This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -|# - -(let ((load-it - (lambda (name) - (with-working-directory-pathname name (lambda () (load "make")))))) - (load-it "edwin") - (disk-save "lib/edwin.com") - (load-it "6001") - (disk-save "lib/6001.com")) \ No newline at end of file diff --git a/v7/src/etc/build-runtime.scm b/v7/src/etc/build-runtime.scm deleted file mode 100644 index beae1257b..000000000 --- a/v7/src/etc/build-runtime.scm +++ /dev/null @@ -1,22 +0,0 @@ -#| -*-Scheme-*- - -$Id: build-runtime.scm,v 1.1 2000/10/16 18:17:55 cph Exp $ - -Copyright (c) 2000 Massachusetts Institute of Technology - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or (at -your option) any later version. - -This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -|# - -(disk-save "../lib/runtime.com") diff --git a/v7/src/etc/build-tree.sh b/v7/src/etc/build-tree.sh deleted file mode 100755 index e8562ba63..000000000 --- a/v7/src/etc/build-tree.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/sh -# -# $Id: build-tree.sh,v 1.4 2000/10/16 18:57:16 cph Exp $ -# -# Copyright (c) 2000 Massachusetts Institute of Technology -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or (at -# your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - -# Program to finish setting up the Scheme source tree after it is -# checked out. Adds required links, builds TAGS files, etc. - -if [ ! -d 6001 ] -then - echo "This must be run from the top-level Scheme source directory." - exit 1 -fi -for directory in 6001 cref edwin imail rcs runtime sf sos win32 -do - (cd $directory; ln -s ../Makefile.std Makefile) -done -for directory in 6001 compiler cref edwin imail rcs runtime sf sos swat win32 -do - (cd $directory; make TAGS) -done -for directory in edwin imail runtime sos -do - (cd $directory; ln -s ed-ffi.scm .edwin-ffi) -done -(cd microcode; scheme -load os2pm.scm < /dev/null) -(cd microcode; etags -r '/^DEF[A-Za-z_ \t(]+"\([^"]+\)"/' *.[ch]) -(cd microcode/cmpauxmd; make all) -(cd pcsample; etags *.scm *.c) -(cd compiler/machines/vax; - for n in 1 2 3 - do - ln -s instr${n}.scm dinstr${n}.scm - done) diff --git a/v7/src/etc/runtime-check.cbf b/v7/src/etc/runtime-check.cbf deleted file mode 100644 index a562231df..000000000 --- a/v7/src/etc/runtime-check.cbf +++ /dev/null @@ -1,24 +0,0 @@ -#| -*-Scheme-*- - -$Id: runtime-check.cbf,v 1.1 2000/12/07 22:26:06 cph Exp $ - -Copyright (c) 2000 Massachusetts Institute of Technology - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or (at -your option) any later version. - -This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -|# - -(fluid-let ((compiler:generate-type-checks? #t) - (compiler:generate-range-checks? #t)) - (load "../runtime/runtime.cbf")) \ No newline at end of file diff --git a/v7/src/microcode/Clean.sh b/v7/src/microcode/Clean.sh new file mode 100755 index 000000000..eab9c503d --- /dev/null +++ b/v7/src/microcode/Clean.sh @@ -0,0 +1,47 @@ +#!/bin/sh +# +# $Id: Clean.sh,v 1.1 2000/12/08 04:51:24 cph Exp $ +# +# Copyright (c) 2000 Massachusetts Institute of Technology +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +# Utility for cleaning up the MIT Scheme microcode directory. +# The working directory must be the microcode directory. + +if [ $# -ne 1 ]; then + echo "usage: $0 " + exit 1 +fi + +case "${1}" in +mostlyclean | clean | distclean) + ;; +maintainer-clean) + if [ ! -f Makefile ] && [ -f configure ]; then + ./configure + fi + ;; +*) + echo "$0: Unknown command ${1}" + exit 1 + ;; +esac + +if [ -f Makefile ]; then + make ${1} +fi + +exit 0 -- 2.25.1