-# $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,
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}";\
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:
--- /dev/null
+#!/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 <<EOF
+(begin
+ (load "../compiler/base/crsend")
+ (finish-cross-compilation:directory ".."))
+EOF
+
+run_make stamp_install-native-boot-compiler
+run_make c-clean distclean
+
+run_configure "${@}"
+run_make stamp_native-compile-scheme
+run_make build-bands