1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-29 19:30:36 +02:00

Don't serialize build through psyntax-pp.scm

* bootstrap/Makefile.am: Don't serialize the build through
  psyntax-pp.scm.  On a multicore make, this will result in higher total
  CPU time as multiple processes use an interpreted expander, but lower
  total build time, as all processes will take approximately the same
  time to load and run the compiler.
This commit is contained in:
Andy Wingo 2016-01-03 18:20:19 +01:00
parent fb2f7b4e5f
commit 204336c377

View file

@ -28,14 +28,11 @@ GOBJECTS = $(SOURCES:%.scm=%.go)
GUILE_WARNINGS =
GUILE_OPTIMIZATIONS = -O1
nobase_noinst_DATA = $(GOBJECTS) ice-9/eval.go
CLEANFILES = $(GOBJECTS) ice-9/eval.go ice-9/psyntax-pp.go
CLEANFILES = $(GOBJECTS) ice-9/eval.go
# We must build the evaluator first, so that we can be sure to control
# the stack. Then we really need to build the expander before other
# things, otherwise the compile time for everything else is dominated by
# the expander.
ice-9/psyntax-pp.go: ice-9/eval.go
$(GOBJECTS): ice-9/psyntax-pp.go
# 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
@ -61,6 +58,7 @@ SUFFIXES = .scm .go
# 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 \