From: Chris Hanson Date: Fri, 15 Jun 2007 03:41:35 +0000 (+0000) Subject: Get native-from-liarc compilation working (finally). X-Git-Tag: 20090517-FFI~527 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=66722414ea545f85ffc18b7274dceee2da59a3cc;p=mit-scheme.git Get native-from-liarc compilation working (finally). --- diff --git a/v7/src/Makefile.in b/v7/src/Makefile.in index a42cf106d..571fdde2a 100644 --- a/v7/src/Makefile.in +++ b/v7/src/Makefile.in @@ -1,4 +1,4 @@ -# $Id: Makefile.in,v 1.43 2007/06/13 13:36:38 cph Exp $ +# $Id: Makefile.in,v 1.44 2007/06/15 03:41:35 cph Exp $ # # Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, # 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, @@ -82,19 +82,23 @@ all-liarc: compile-microcode: (cd microcode && $(MAKE) all) +stamp_install-microcode: compile-microcode + (cd microcode; $(MAKE) install) + echo "done" > $@ + build-bands: @$(top_srcdir)/etc/build-bands.sh +# **** Make liarc distribution from native **** + liarc-dist: @$(top_srcdir)/etc/compile-boot-compiler.sh mit-scheme @$(top_srcdir)/etc/c-prepare.sh mit-scheme $(MAKE) distclean -stamp_install-liarc-microcode: compile-microcode - (cd microcode; $(MAKE) install) - echo "done" > $@ +# **** Build liarc from distribution **** -stamp_compile-liarc-boot-bundles: stamp_install-liarc-microcode +stamp_compile-liarc-boot-bundles: stamp_install-microcode @for BN in $(LIARC_BOOT_BUNDLES); do \ CMD="(cd $${BN} && $(MAKE) compile-liarc-bundle)";\ echo "$${CMD}"; eval "$${CMD}";\ @@ -134,23 +138,20 @@ install-liarc-bundles: stamp_compile-liarc-bundles echo "$${CMD}"; eval "$${CMD}";\ done +# **** Build native from liarc **** +stamp_build-native-boot-compiler: stamp_install-microcode + @$(top_srcdir)/etc/build-boot-compiler.sh + echo "done" > $@ +stamp_install-native-boot-compiler: stamp_build-native-boot-compiler + $(MAKE) install-auxdir-top + echo "done" > $@ -native-from-liarc: boot-lib/native-compiler.com clean - $(MAKE) compile-microcode - @$(top_srcdir)/etc/compile.sh boot-lib/scheme --library boot-lib \ - --band boot-lib/native-compiler.com - rm -rf boot-lib - -boot-lib/native-compiler.com: boot-lib/scheme native-prepare - @$(top_srcdir)/etc/build-boot-compiler.sh native-compiler.com - -native-prepare: - @$(top_srcdir)/etc/compile-boot-compiler.sh mit-scheme-c - (cd compiler && $(MAKE) compile-liarc-bundle) - @$(top_srcdir)/etc/native-prepare.sh mit-scheme-c - +stamp_native-compile-scheme: compile-microcode + @$(top_srcdir)/etc/compile.sh boot-root/bin/scheme \ + --band boot-compiler.com + echo "done" > $@ mostlyclean clean distclean maintainer-clean c-clean: diff --git a/v7/src/etc/make-native.sh b/v7/src/etc/make-native.sh new file mode 100755 index 000000000..599c3e3ac --- /dev/null +++ b/v7/src/etc/make-native.sh @@ -0,0 +1,62 @@ +#!/bin/sh +# +# $Id: make-native.sh,v 1.1 2007/06/15 03:41:35 cph Exp $ +# +# Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, +# 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005, 2006, 2007 Massachusetts Institute of Technology +# +# This file is part of MIT/GNU Scheme. +# +# MIT/GNU Scheme 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. +# +# MIT/GNU Scheme 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 MIT/GNU Scheme; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA +# 02110-1301, USA. + +set -e + +. etc/functions.sh + +FASTP=no +for ARG in "${@}"; do + case ${ARG} in + --help|--help=*|--version) + FASTP=yes + ;; + esac +done + +if [ ${FASTP} = yes ]; then + exec ./configure "${@}" +fi + +run_cmd ./Setup.sh +run_configure --prefix=`pwd`/boot-root +run_cmd etc/compile-boot-compiler.sh mit-scheme-c +run_cmd_in_dir compiler run_make compile-liarc-bundle +run_cmd etc/native-prepare.sh mit-scheme-c +run_make compile-microcode + +run_cmd_in_dir runtime ../microcode/scheme --library ../lib \ + --fasl make.bin --heap 6000 <