summaryrefslogtreecommitdiff
path: root/bootstrap
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2016-01-29 10:21:44 +0100
committerAndy Wingo <wingo@pobox.com>2016-01-29 10:21:44 +0100
commiteccdeb6cc6c164ea10160fafbd276b6dc5e9b73e (patch)
tree2e31767aafb05352db514563b003fff9991c3dfa /bootstrap
parente4be4aea3491be954da25b8356e97c0fe60f98f9 (diff)
Distribute prebuilt bootstraps for common hosts
* am/bootstrap.am: New file, factored out of bootstrap/Makefile.am. * bootstrap/Makefile.am: Use bootstrap.am. * prebuilt/Makefile.am: * prebuilt/i686-pc-linux-gnu/Makefile.am: * prebuilt/mips-unknown-linux-gnu/Makefile.am: * prebuilt/x86_64-unknown-linux-gnu/Makefile.am: New files. * configure.ac: Output the prebuilt/ makefiles. * Makefile.am: Descend into prebuilt/ when making dist. * meta/uninstalled-env.in: Arrange to put prebuilt/ in the beginning of the GUILE_LOAD_COMPILED_PATH. Also fix a case where bootstrap/ wasn't being correctly added to the load path.
Diffstat (limited to 'bootstrap')
-rw-r--r--bootstrap/Makefile.am133
1 files changed, 3 insertions, 130 deletions
diff --git a/bootstrap/Makefile.am b/bootstrap/Makefile.am
index e954059bb..496d5301a 100644
--- a/bootstrap/Makefile.am
+++ b/bootstrap/Makefile.am
@@ -21,138 +21,11 @@
## Fifth Floor, Boston, MA 02110-1301 USA
-GOBJECTS = $(SOURCES:%.scm=%.go)
-# No warnings for the bootstrap build. Run
-# make GUILE_WARNINGS="-Wunbound-variable -Warity-mismatch -Wformat"
-# to get the normal set of warnings.
GUILE_WARNINGS =
GUILE_OPTIMIZATIONS = -O1
-nobase_noinst_DATA = $(GOBJECTS) ice-9/eval.go
-CLEANFILES = $(GOBJECTS) ice-9/eval.go
+
+include $(top_srcdir)/am/bootstrap.am
# We must build the evaluator first, so that we can be sure to control
# the stack.
-$(GOBJECTS): ice-9/eval.go
-
-VM_TARGETS := system/vm/assembler.go system/vm/disassembler.go
-$(VM_TARGETS): $(top_builddir)/libguile/vm-operations.h
-
-AM_V_GUILEC = $(AM_V_GUILEC_$(V))
-AM_V_GUILEC_ = $(AM_V_GUILEC_$(AM_DEFAULT_VERBOSITY))
-AM_V_GUILEC_0 = @echo " BOOTSTRAP GUILEC" $@;
-
-vpath %.scm @srcdir@/../module
-
-SUFFIXES = .scm .go
-
-.scm.go:
- $(AM_V_GUILEC)GUILE_AUTO_COMPILE=0 \
- $(top_builddir)/meta/uninstalled-env \
- guild compile --target="$(host)" \
- $(GUILE_WARNINGS) $(GUILE_OPTIMIZATIONS) \
- -L "$(abs_top_srcdir)/module" \
- -L "$(abs_top_srcdir)/guile-readline" \
- -o "$@" "$<"
-
-# A subset of sources that are used by the compiler. We can compile
-# these in any order; the order below is designed to hopefully result in
-# the lowest total compile time.
-SOURCES = \
- ice-9/psyntax-pp.scm \
- language/cps/intmap.scm \
- language/cps/intset.scm \
- language/cps/utils.scm \
- ice-9/vlist.scm \
- srfi/srfi-1.scm \
- \
- language/tree-il.scm \
- language/tree-il/analyze.scm \
- language/tree-il/canonicalize.scm \
- language/tree-il/compile-cps.scm \
- language/tree-il/debug.scm \
- language/tree-il/effects.scm \
- language/tree-il/fix-letrec.scm \
- language/tree-il/optimize.scm \
- language/tree-il/peval.scm \
- language/tree-il/primitives.scm \
- language/tree-il/spec.scm \
- \
- language/cps.scm \
- language/cps/closure-conversion.scm \
- language/cps/compile-bytecode.scm \
- language/cps/constructors.scm \
- language/cps/contification.scm \
- language/cps/cse.scm \
- language/cps/dce.scm \
- language/cps/effects-analysis.scm \
- language/cps/elide-values.scm \
- language/cps/licm.scm \
- language/cps/peel-loops.scm \
- language/cps/primitives.scm \
- language/cps/prune-bailouts.scm \
- language/cps/prune-top-level-scopes.scm \
- language/cps/reify-primitives.scm \
- language/cps/renumber.scm \
- language/cps/rotate-loops.scm \
- language/cps/optimize.scm \
- language/cps/simplify.scm \
- language/cps/self-references.scm \
- language/cps/slot-allocation.scm \
- language/cps/spec.scm \
- language/cps/specialize-primcalls.scm \
- language/cps/specialize-numbers.scm \
- language/cps/split-rec.scm \
- language/cps/type-checks.scm \
- language/cps/type-fold.scm \
- language/cps/types.scm \
- language/cps/verify.scm \
- language/cps/with-cps.scm \
- \
- language/scheme/spec.scm \
- language/scheme/compile-tree-il.scm \
- language/scheme/decompile-tree-il.scm \
- \
- language/bytecode.scm \
- language/bytecode/spec.scm \
- \
- language/value/spec.scm \
- \
- system/base/pmatch.scm \
- system/base/syntax.scm \
- system/base/compile.scm \
- system/base/language.scm \
- system/base/lalr.scm \
- system/base/message.scm \
- system/base/target.scm \
- system/base/types.scm \
- system/base/ck.scm \
- \
- ice-9/boot-9.scm \
- ice-9/r5rs.scm \
- ice-9/deprecated.scm \
- ice-9/binary-ports.scm \
- ice-9/command-line.scm \
- ice-9/control.scm \
- ice-9/format.scm \
- ice-9/getopt-long.scm \
- ice-9/i18n.scm \
- ice-9/match.scm \
- ice-9/networking.scm \
- ice-9/posix.scm \
- ice-9/rdelim.scm \
- ice-9/receive.scm \
- ice-9/regex.scm \
- ice-9/session.scm \
- ice-9/pretty-print.scm \
- \
- system/vm/assembler.scm \
- system/vm/debug.scm \
- system/vm/disassembler.scm \
- system/vm/dwarf.scm \
- system/vm/elf.scm \
- system/vm/frame.scm \
- system/vm/linker.scm \
- system/vm/loader.scm \
- system/vm/program.scm \
- system/vm/vm.scm \
- system/foreign.scm
+$(filter-out ice-9/eval.go, $(GOBJECTS)): ice-9/eval.go