mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-29 19:30:36 +02:00
Rework bootstrap to be reproducible
* configure.ac: * Makefile.am (SUBDIRS): Replace bootstrap/ with stage0, stage1, and stage2. * am/bootstrap.am: Include all files and all rules. * meta/build-env.in (GUILE_AUTO_COMPILE): Always turn off auto-compilation. Take a GUILE_BOOTSTRAP_STAGE argument, which can be stage0, stage1, stage2, or unset. Adapt the load-compiled path accordingly. * meta/uninstalled-env.in: Include .go files from stage2. * module/Makefile.am: Rework to use boostrap.am. * module/system/base/optimize.scm (available-optimizations): Punt the inlinable-exports machinery to -O2. * stage0/Makefile.am: * stage1/Makefile.am: * stage2/Makefile.am: New files.
This commit is contained in:
parent
6ed66f42cb
commit
9b9149a5bf
10 changed files with 474 additions and 480 deletions
|
@ -2,7 +2,7 @@
|
||||||
##
|
##
|
||||||
## Copyright (C) 1998, 1999, 2000, 2001, 2002, 2006, 2007,
|
## Copyright (C) 1998, 1999, 2000, 2001, 2002, 2006, 2007,
|
||||||
## 2008, 2009, 2010, 2011, 2012, 2013,
|
## 2008, 2009, 2010, 2011, 2012, 2013,
|
||||||
## 2014, 2015, 2016 Free Software Foundation, Inc.
|
## 2014, 2015, 2016, 2022 Free Software Foundation, Inc.
|
||||||
##
|
##
|
||||||
## This file is part of GUILE.
|
## This file is part of GUILE.
|
||||||
##
|
##
|
||||||
|
@ -30,8 +30,10 @@ SUBDIRS = \
|
||||||
lib \
|
lib \
|
||||||
meta \
|
meta \
|
||||||
libguile \
|
libguile \
|
||||||
bootstrap \
|
|
||||||
module \
|
module \
|
||||||
|
stage0 \
|
||||||
|
stage1 \
|
||||||
|
stage2 \
|
||||||
guile-readline \
|
guile-readline \
|
||||||
examples \
|
examples \
|
||||||
emacs \
|
emacs \
|
||||||
|
|
424
am/bootstrap.am
424
am/bootstrap.am
|
@ -1,4 +1,4 @@
|
||||||
## Copyright (C) 2009-2021 Free Software Foundation, Inc.
|
## Copyright (C) 2009-2022 Free Software Foundation, Inc.
|
||||||
##
|
##
|
||||||
## This file is part of GNU Guile.
|
## This file is part of GNU Guile.
|
||||||
##
|
##
|
||||||
|
@ -21,9 +21,9 @@
|
||||||
GUILE_WARNINGS ?= -W1
|
GUILE_WARNINGS ?= -W1
|
||||||
GUILE_OPTIMIZATIONS ?= -O2
|
GUILE_OPTIMIZATIONS ?= -O2
|
||||||
GUILE_TARGET ?= $(host)
|
GUILE_TARGET ?= $(host)
|
||||||
GUILE_BUILD_TAG ?= BOOTSTRAP
|
GUILE_BUILD_TAG ?= BOOTSTRAP($(GUILE_BOOTSTRAP_STAGE))
|
||||||
|
|
||||||
GOBJECTS = $(SOURCES:%.scm=%.go)
|
GOBJECTS = $(SOURCES:%.scm=%.go) $(ELISP_SOURCES:%.el=%.go)
|
||||||
nobase_noinst_DATA = $(GOBJECTS)
|
nobase_noinst_DATA = $(GOBJECTS)
|
||||||
CLEANFILES = $(GOBJECTS)
|
CLEANFILES = $(GOBJECTS)
|
||||||
|
|
||||||
|
@ -35,30 +35,43 @@ AM_V_GUILEC_ = $(AM_V_GUILEC_$(AM_DEFAULT_VERBOSITY))
|
||||||
AM_V_GUILEC_0 = @echo " $(GUILE_BUILD_TAG) GUILEC" $@;
|
AM_V_GUILEC_0 = @echo " $(GUILE_BUILD_TAG) GUILEC" $@;
|
||||||
|
|
||||||
vpath %.scm @top_srcdir@/module
|
vpath %.scm @top_srcdir@/module
|
||||||
|
vpath %.el @top_srcdir@/module
|
||||||
|
|
||||||
SUFFIXES = .scm .go
|
SUFFIXES = .scm .el .go
|
||||||
|
|
||||||
.scm.go:
|
COMPILE = $(AM_V_GUILEC) \
|
||||||
$(AM_V_GUILEC)GUILE_AUTO_COMPILE=0 \
|
GUILE_BOOTSTRAP_STAGE=$(GUILE_BOOTSTRAP_STAGE) \
|
||||||
$(top_builddir)/meta/build-env \
|
$(top_builddir)/meta/build-env \
|
||||||
guild compile --target="$(GUILE_TARGET)" \
|
guild compile --target="$(GUILE_TARGET)" \
|
||||||
$(GUILE_WARNINGS) $(GUILE_OPTIMIZATIONS) \
|
$(GUILE_WARNINGS) $(GUILE_OPTIMIZATIONS) \
|
||||||
-L "$(abs_top_srcdir)/module" \
|
-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
|
.scm.go:
|
||||||
# these in any order; the order below is designed to hopefully result in
|
$(COMPILE) -o "$@" "$<"
|
||||||
# the lowest total compile time.
|
|
||||||
|
.el.go:
|
||||||
|
$(COMPILE) --from=elisp -o "$@" "$<"
|
||||||
|
|
||||||
|
ice-9/boot-9.go: ice-9/boot-9.scm ice-9/quasisyntax.scm ice-9/r6rs-libraries.scm ice-9/r7rs-libraries.scm ice-9/read.scm
|
||||||
|
ice-9/match.go: ice-9/match.scm ice-9/match.upstream.scm
|
||||||
|
srfi/srfi-64.go: srfi/srfi-64.scm srfi/srfi-64/testing.scm
|
||||||
|
|
||||||
|
# Keep this rule in sync with that in `am/guilec'.
|
||||||
|
ice-9/psyntax-pp.go: ice-9/psyntax.scm ice-9/psyntax-pp.scm
|
||||||
|
$(COMPILE) -o "$@" "$<"
|
||||||
|
|
||||||
|
# All sources. We can compile these in any order; the order below is
|
||||||
|
# designed to hopefully result in the lowest total compile time.
|
||||||
SOURCES = \
|
SOURCES = \
|
||||||
ice-9/eval.scm \
|
ice-9/eval.scm \
|
||||||
ice-9/psyntax-pp.scm \
|
ice-9/psyntax-pp.scm \
|
||||||
language/tree-il/compile-bytecode.scm \
|
|
||||||
ice-9/boot-9.scm \
|
ice-9/boot-9.scm \
|
||||||
srfi/srfi-1.scm \
|
|
||||||
\
|
\
|
||||||
language/tree-il.scm \
|
language/tree-il.scm \
|
||||||
language/tree-il/analyze.scm \
|
language/tree-il/analyze.scm \
|
||||||
|
language/tree-il/compile-bytecode.scm \
|
||||||
|
language/tree-il/compile-cps.scm \
|
||||||
|
language/tree-il/cps-primitives.scm \
|
||||||
language/tree-il/debug.scm \
|
language/tree-il/debug.scm \
|
||||||
language/tree-il/effects.scm \
|
language/tree-il/effects.scm \
|
||||||
language/tree-il/eta-expand.scm \
|
language/tree-il/eta-expand.scm \
|
||||||
|
@ -71,15 +84,269 @@ SOURCES = \
|
||||||
language/tree-il/resolve-free-vars.scm \
|
language/tree-il/resolve-free-vars.scm \
|
||||||
language/tree-il/spec.scm \
|
language/tree-il/spec.scm \
|
||||||
\
|
\
|
||||||
language/scheme/spec.scm \
|
language/cps.scm \
|
||||||
language/scheme/compile-tree-il.scm \
|
language/cps/closure-conversion.scm \
|
||||||
language/scheme/decompile-tree-il.scm \
|
language/cps/compile-bytecode.scm \
|
||||||
|
language/cps/contification.scm \
|
||||||
|
language/cps/cse.scm \
|
||||||
|
language/cps/dce.scm \
|
||||||
|
language/cps/devirtualize-integers.scm \
|
||||||
|
language/cps/dump.scm \
|
||||||
|
language/cps/elide-arity-checks.scm \
|
||||||
|
language/cps/effects-analysis.scm \
|
||||||
|
language/cps/graphs.scm \
|
||||||
|
language/cps/intmap.scm \
|
||||||
|
language/cps/intset.scm \
|
||||||
|
language/cps/licm.scm \
|
||||||
|
language/cps/loop-instrumentation.scm \
|
||||||
|
language/cps/optimize.scm \
|
||||||
|
language/cps/peel-loops.scm \
|
||||||
|
language/cps/prune-top-level-scopes.scm \
|
||||||
|
language/cps/reify-primitives.scm \
|
||||||
|
language/cps/renumber.scm \
|
||||||
|
language/cps/return-types.scm \
|
||||||
|
language/cps/rotate-loops.scm \
|
||||||
|
language/cps/self-references.scm \
|
||||||
|
language/cps/simplify.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/switch.scm \
|
||||||
|
language/cps/type-checks.scm \
|
||||||
|
language/cps/type-fold.scm \
|
||||||
|
language/cps/types.scm \
|
||||||
|
language/cps/utils.scm \
|
||||||
|
language/cps/verify.scm \
|
||||||
|
language/cps/with-cps.scm \
|
||||||
|
\
|
||||||
|
ice-9/and-let-star.scm \
|
||||||
|
ice-9/arrays.scm \
|
||||||
|
ice-9/atomic.scm \
|
||||||
|
ice-9/binary-ports.scm \
|
||||||
|
ice-9/buffered-input.scm \
|
||||||
|
ice-9/calling.scm \
|
||||||
|
ice-9/command-line.scm \
|
||||||
|
ice-9/common-list.scm \
|
||||||
|
ice-9/control.scm \
|
||||||
|
ice-9/copy-tree.scm \
|
||||||
|
ice-9/curried-definitions.scm \
|
||||||
|
ice-9/deprecated.scm \
|
||||||
|
ice-9/documentation.scm \
|
||||||
|
ice-9/eval-string.scm \
|
||||||
|
ice-9/exceptions.scm \
|
||||||
|
ice-9/expect.scm \
|
||||||
|
ice-9/fdes-finalizers.scm \
|
||||||
|
ice-9/format.scm \
|
||||||
|
ice-9/ftw.scm \
|
||||||
|
ice-9/futures.scm \
|
||||||
|
ice-9/gap-buffer.scm \
|
||||||
|
ice-9/getopt-long.scm \
|
||||||
|
ice-9/hash-table.scm \
|
||||||
|
ice-9/hcons.scm \
|
||||||
|
ice-9/history.scm \
|
||||||
|
ice-9/i18n.scm \
|
||||||
|
ice-9/iconv.scm \
|
||||||
|
ice-9/lineio.scm \
|
||||||
|
ice-9/list.scm \
|
||||||
|
ice-9/local-eval.scm \
|
||||||
|
ice-9/ls.scm \
|
||||||
|
ice-9/match.scm \
|
||||||
|
ice-9/networking.scm \
|
||||||
|
ice-9/null.scm \
|
||||||
|
ice-9/occam-channel.scm \
|
||||||
|
ice-9/optargs.scm \
|
||||||
|
ice-9/peg.scm \
|
||||||
|
ice-9/peg/cache.scm \
|
||||||
|
ice-9/peg/codegen.scm \
|
||||||
|
ice-9/peg/simplify-tree.scm \
|
||||||
|
ice-9/peg/string-peg.scm \
|
||||||
|
ice-9/peg/using-parsers.scm \
|
||||||
|
ice-9/poe.scm \
|
||||||
|
ice-9/poll.scm \
|
||||||
|
ice-9/popen.scm \
|
||||||
|
ice-9/ports.scm \
|
||||||
|
ice-9/posix.scm \
|
||||||
|
ice-9/pretty-print.scm \
|
||||||
|
ice-9/q.scm \
|
||||||
|
ice-9/r5rs.scm \
|
||||||
|
ice-9/rdelim.scm \
|
||||||
|
ice-9/receive.scm \
|
||||||
|
ice-9/regex.scm \
|
||||||
|
ice-9/runq.scm \
|
||||||
|
ice-9/rw.scm \
|
||||||
|
ice-9/safe-r5rs.scm \
|
||||||
|
ice-9/safe.scm \
|
||||||
|
ice-9/sandbox.scm \
|
||||||
|
ice-9/save-stack.scm \
|
||||||
|
ice-9/scm-style-repl.scm \
|
||||||
|
ice-9/serialize.scm \
|
||||||
|
ice-9/session.scm \
|
||||||
|
ice-9/slib.scm \
|
||||||
|
ice-9/stack-catch.scm \
|
||||||
|
ice-9/streams.scm \
|
||||||
|
ice-9/string-fun.scm \
|
||||||
|
ice-9/suspendable-ports.scm \
|
||||||
|
ice-9/textual-ports.scm \
|
||||||
|
ice-9/threads.scm \
|
||||||
|
ice-9/time.scm \
|
||||||
|
ice-9/top-repl.scm \
|
||||||
|
ice-9/unicode.scm \
|
||||||
|
ice-9/vlist.scm \
|
||||||
|
ice-9/weak-vector.scm \
|
||||||
|
\
|
||||||
|
language/brainfuck/parse.scm \
|
||||||
|
language/brainfuck/compile-scheme.scm \
|
||||||
|
language/brainfuck/compile-tree-il.scm \
|
||||||
|
language/brainfuck/spec.scm \
|
||||||
\
|
\
|
||||||
language/bytecode.scm \
|
language/bytecode.scm \
|
||||||
language/bytecode/spec.scm \
|
language/bytecode/spec.scm \
|
||||||
\
|
\
|
||||||
|
language/ecmascript/tokenize.scm \
|
||||||
|
language/ecmascript/parse.scm \
|
||||||
|
language/ecmascript/impl.scm \
|
||||||
|
language/ecmascript/base.scm \
|
||||||
|
language/ecmascript/function.scm \
|
||||||
|
language/ecmascript/array.scm \
|
||||||
|
language/ecmascript/compile-tree-il.scm \
|
||||||
|
language/ecmascript/spec.scm \
|
||||||
|
\
|
||||||
|
language/elisp/falias.scm \
|
||||||
|
language/elisp/lexer.scm \
|
||||||
|
language/elisp/parser.scm \
|
||||||
|
language/elisp/bindings.scm \
|
||||||
|
language/elisp/compile-tree-il.scm \
|
||||||
|
language/elisp/runtime.scm \
|
||||||
|
language/elisp/runtime/function-slot.scm \
|
||||||
|
language/elisp/runtime/value-slot.scm \
|
||||||
|
language/elisp/spec.scm \
|
||||||
|
\
|
||||||
|
language/scheme/compile-tree-il.scm \
|
||||||
|
language/scheme/decompile-tree-il.scm \
|
||||||
|
language/scheme/spec.scm \
|
||||||
|
\
|
||||||
language/value/spec.scm \
|
language/value/spec.scm \
|
||||||
\
|
\
|
||||||
|
rnrs/base.scm \
|
||||||
|
rnrs/conditions.scm \
|
||||||
|
rnrs/control.scm \
|
||||||
|
rnrs/enums.scm \
|
||||||
|
rnrs/eval.scm \
|
||||||
|
rnrs/exceptions.scm \
|
||||||
|
rnrs/files.scm \
|
||||||
|
rnrs/hashtables.scm \
|
||||||
|
rnrs/lists.scm \
|
||||||
|
rnrs/mutable-pairs.scm \
|
||||||
|
rnrs/mutable-strings.scm \
|
||||||
|
rnrs/programs.scm \
|
||||||
|
rnrs/r5rs.scm \
|
||||||
|
rnrs/sorting.scm \
|
||||||
|
rnrs/syntax-case.scm \
|
||||||
|
rnrs/unicode.scm \
|
||||||
|
rnrs/arithmetic/bitwise.scm \
|
||||||
|
rnrs/arithmetic/fixnums.scm \
|
||||||
|
rnrs/arithmetic/flonums.scm \
|
||||||
|
rnrs/bytevectors.scm \
|
||||||
|
rnrs/io/simple.scm \
|
||||||
|
rnrs/io/ports.scm \
|
||||||
|
rnrs/records/inspection.scm \
|
||||||
|
rnrs/records/procedural.scm \
|
||||||
|
rnrs/records/syntactic.scm \
|
||||||
|
rnrs.scm \
|
||||||
|
\
|
||||||
|
oop/goops.scm \
|
||||||
|
oop/goops/active-slot.scm \
|
||||||
|
oop/goops/composite-slot.scm \
|
||||||
|
oop/goops/describe.scm \
|
||||||
|
oop/goops/internal.scm \
|
||||||
|
oop/goops/save.scm \
|
||||||
|
oop/goops/stklos.scm \
|
||||||
|
oop/goops/accessors.scm \
|
||||||
|
oop/goops/simple.scm \
|
||||||
|
\
|
||||||
|
scheme/base.scm \
|
||||||
|
scheme/case-lambda.scm \
|
||||||
|
scheme/char.scm \
|
||||||
|
scheme/complex.scm \
|
||||||
|
scheme/cxr.scm \
|
||||||
|
scheme/eval.scm \
|
||||||
|
scheme/file.scm \
|
||||||
|
scheme/inexact.scm \
|
||||||
|
scheme/lazy.scm \
|
||||||
|
scheme/load.scm \
|
||||||
|
scheme/process-context.scm \
|
||||||
|
scheme/r5rs.scm \
|
||||||
|
scheme/read.scm \
|
||||||
|
scheme/repl.scm \
|
||||||
|
scheme/time.scm \
|
||||||
|
scheme/write.scm \
|
||||||
|
\
|
||||||
|
scripts/compile.scm \
|
||||||
|
scripts/disassemble.scm \
|
||||||
|
scripts/display-commentary.scm \
|
||||||
|
scripts/doc-snarf.scm \
|
||||||
|
scripts/frisk.scm \
|
||||||
|
scripts/generate-autoload.scm \
|
||||||
|
scripts/help.scm \
|
||||||
|
scripts/lint.scm \
|
||||||
|
scripts/list.scm \
|
||||||
|
scripts/punify.scm \
|
||||||
|
scripts/read-scheme-source.scm \
|
||||||
|
scripts/read-text-outline.scm \
|
||||||
|
scripts/use2dot.scm \
|
||||||
|
scripts/snarf-check-and-output-texi.scm \
|
||||||
|
scripts/summarize-guile-TODO.scm \
|
||||||
|
scripts/api-diff.scm \
|
||||||
|
scripts/read-rfc822.scm \
|
||||||
|
scripts/snarf-guile-m4-docs.scm \
|
||||||
|
scripts/autofrisk.scm \
|
||||||
|
scripts/scan-api.scm \
|
||||||
|
\
|
||||||
|
srfi/srfi-1.scm \
|
||||||
|
srfi/srfi-2.scm \
|
||||||
|
srfi/srfi-4.scm \
|
||||||
|
srfi/srfi-4/gnu.scm \
|
||||||
|
srfi/srfi-6.scm \
|
||||||
|
srfi/srfi-8.scm \
|
||||||
|
srfi/srfi-9.scm \
|
||||||
|
srfi/srfi-9/gnu.scm \
|
||||||
|
srfi/srfi-10.scm \
|
||||||
|
srfi/srfi-11.scm \
|
||||||
|
srfi/srfi-13.scm \
|
||||||
|
srfi/srfi-14.scm \
|
||||||
|
srfi/srfi-16.scm \
|
||||||
|
srfi/srfi-17.scm \
|
||||||
|
srfi/srfi-18.scm \
|
||||||
|
srfi/srfi-19.scm \
|
||||||
|
srfi/srfi-26.scm \
|
||||||
|
srfi/srfi-27.scm \
|
||||||
|
srfi/srfi-28.scm \
|
||||||
|
srfi/srfi-31.scm \
|
||||||
|
srfi/srfi-34.scm \
|
||||||
|
srfi/srfi-35.scm \
|
||||||
|
srfi/srfi-37.scm \
|
||||||
|
srfi/srfi-38.scm \
|
||||||
|
srfi/srfi-41.scm \
|
||||||
|
srfi/srfi-42.scm \
|
||||||
|
srfi/srfi-43.scm \
|
||||||
|
srfi/srfi-39.scm \
|
||||||
|
srfi/srfi-45.scm \
|
||||||
|
srfi/srfi-60.scm \
|
||||||
|
srfi/srfi-64.scm \
|
||||||
|
srfi/srfi-67.scm \
|
||||||
|
srfi/srfi-69.scm \
|
||||||
|
srfi/srfi-71.scm \
|
||||||
|
srfi/srfi-88.scm \
|
||||||
|
srfi/srfi-98.scm \
|
||||||
|
srfi/srfi-111.scm \
|
||||||
|
srfi/srfi-171.scm \
|
||||||
|
srfi/srfi-171/gnu.scm \
|
||||||
|
srfi/srfi-171/meta.scm \
|
||||||
|
\
|
||||||
|
statprof.scm \
|
||||||
|
\
|
||||||
system/base/pmatch.scm \
|
system/base/pmatch.scm \
|
||||||
system/base/syntax.scm \
|
system/base/syntax.scm \
|
||||||
system/base/compile.scm \
|
system/base/compile.scm \
|
||||||
|
@ -92,73 +359,82 @@ SOURCES = \
|
||||||
system/base/types/internal.scm \
|
system/base/types/internal.scm \
|
||||||
system/base/ck.scm \
|
system/base/ck.scm \
|
||||||
\
|
\
|
||||||
ice-9/ports.scm \
|
system/foreign.scm \
|
||||||
ice-9/r5rs.scm \
|
system/foreign-library.scm \
|
||||||
ice-9/deprecated.scm \
|
system/foreign-object.scm \
|
||||||
ice-9/binary-ports.scm \
|
\
|
||||||
ice-9/command-line.scm \
|
system/repl/debug.scm \
|
||||||
ice-9/control.scm \
|
system/repl/error-handling.scm \
|
||||||
ice-9/format.scm \
|
system/repl/common.scm \
|
||||||
ice-9/getopt-long.scm \
|
system/repl/command.scm \
|
||||||
ice-9/i18n.scm \
|
system/repl/repl.scm \
|
||||||
ice-9/match.scm \
|
system/repl/server.scm \
|
||||||
ice-9/networking.scm \
|
system/repl/coop-server.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 \
|
|
||||||
ice-9/vlist.scm \
|
|
||||||
\
|
\
|
||||||
system/vm/assembler.scm \
|
system/vm/assembler.scm \
|
||||||
|
system/vm/coverage.scm \
|
||||||
system/vm/debug.scm \
|
system/vm/debug.scm \
|
||||||
system/vm/disassembler.scm \
|
system/vm/disassembler.scm \
|
||||||
system/vm/dwarf.scm \
|
system/vm/dwarf.scm \
|
||||||
system/vm/elf.scm \
|
system/vm/elf.scm \
|
||||||
system/vm/frame.scm \
|
system/vm/frame.scm \
|
||||||
|
system/vm/inspect.scm \
|
||||||
system/vm/linker.scm \
|
system/vm/linker.scm \
|
||||||
system/vm/loader.scm \
|
system/vm/loader.scm \
|
||||||
system/vm/program.scm \
|
system/vm/program.scm \
|
||||||
|
system/vm/trace.scm \
|
||||||
|
system/vm/trap-state.scm \
|
||||||
|
system/vm/traps.scm \
|
||||||
system/vm/vm.scm \
|
system/vm/vm.scm \
|
||||||
system/foreign.scm \
|
|
||||||
system/foreign-library.scm \
|
|
||||||
\
|
\
|
||||||
language/tree-il/compile-cps.scm \
|
system/syntax.scm \
|
||||||
language/tree-il/cps-primitives.scm \
|
|
||||||
\
|
\
|
||||||
language/cps.scm \
|
system/xref.scm \
|
||||||
language/cps/closure-conversion.scm \
|
\
|
||||||
language/cps/compile-bytecode.scm \
|
sxml/apply-templates.scm \
|
||||||
language/cps/contification.scm \
|
sxml/fold.scm \
|
||||||
language/cps/cse.scm \
|
sxml/match.scm \
|
||||||
language/cps/dce.scm \
|
sxml/simple.scm \
|
||||||
language/cps/devirtualize-integers.scm \
|
sxml/ssax/input-parse.scm \
|
||||||
language/cps/effects-analysis.scm \
|
sxml/ssax.scm \
|
||||||
language/cps/elide-arity-checks.scm \
|
sxml/transform.scm \
|
||||||
language/cps/intmap.scm \
|
sxml/xpath.scm \
|
||||||
language/cps/intset.scm \
|
\
|
||||||
language/cps/graphs.scm \
|
texinfo.scm \
|
||||||
language/cps/licm.scm \
|
texinfo/docbook.scm \
|
||||||
language/cps/loop-instrumentation.scm \
|
texinfo/html.scm \
|
||||||
language/cps/peel-loops.scm \
|
texinfo/indexing.scm \
|
||||||
language/cps/prune-top-level-scopes.scm \
|
texinfo/string-utils.scm \
|
||||||
language/cps/reify-primitives.scm \
|
texinfo/plain-text.scm \
|
||||||
language/cps/renumber.scm \
|
texinfo/reflection.scm \
|
||||||
language/cps/return-types.scm \
|
texinfo/serialize.scm \
|
||||||
language/cps/rotate-loops.scm \
|
\
|
||||||
language/cps/optimize.scm \
|
web/client.scm \
|
||||||
language/cps/simplify.scm \
|
web/http.scm \
|
||||||
language/cps/self-references.scm \
|
web/request.scm \
|
||||||
language/cps/slot-allocation.scm \
|
web/response.scm \
|
||||||
language/cps/spec.scm \
|
web/server.scm \
|
||||||
language/cps/specialize-primcalls.scm \
|
web/server/http.scm \
|
||||||
language/cps/specialize-numbers.scm \
|
web/uri.scm
|
||||||
language/cps/split-rec.scm \
|
|
||||||
language/cps/switch.scm \
|
ELISP_SOURCES = \
|
||||||
language/cps/type-checks.scm \
|
language/elisp/boot.el
|
||||||
language/cps/type-fold.scm \
|
|
||||||
language/cps/types.scm \
|
NOCOMP_SOURCES = \
|
||||||
language/cps/utils.scm \
|
ice-9/match.upstream.scm \
|
||||||
language/cps/verify.scm \
|
ice-9/psyntax.scm \
|
||||||
language/cps/with-cps.scm
|
ice-9/read.scm \
|
||||||
|
ice-9/r6rs-libraries.scm \
|
||||||
|
ice-9/r7rs-libraries.scm \
|
||||||
|
ice-9/quasisyntax.scm \
|
||||||
|
srfi/srfi-42/ec.scm \
|
||||||
|
srfi/srfi-64/testing.scm \
|
||||||
|
srfi/srfi-67/compare.scm \
|
||||||
|
system/base/lalr.upstream.scm \
|
||||||
|
system/repl/describe.scm \
|
||||||
|
sxml/sxml-match.ss \
|
||||||
|
sxml/upstream/SSAX.scm \
|
||||||
|
sxml/upstream/SXML-tree-trans.scm \
|
||||||
|
sxml/upstream/SXPath-old.scm \
|
||||||
|
sxml/upstream/assert.scm \
|
||||||
|
sxml/upstream/input-parse.scm
|
||||||
|
|
|
@ -1492,8 +1492,10 @@ AC_CONFIG_FILES([
|
||||||
test-suite/Makefile
|
test-suite/Makefile
|
||||||
test-suite/standalone/Makefile
|
test-suite/standalone/Makefile
|
||||||
meta/Makefile
|
meta/Makefile
|
||||||
bootstrap/Makefile
|
|
||||||
module/Makefile
|
module/Makefile
|
||||||
|
stage0/Makefile
|
||||||
|
stage1/Makefile
|
||||||
|
stage2/Makefile
|
||||||
prebuilt/Makefile
|
prebuilt/Makefile
|
||||||
prebuilt/x86_64-unknown-linux-gnu/Makefile
|
prebuilt/x86_64-unknown-linux-gnu/Makefile
|
||||||
prebuilt/i686-pc-linux-gnu/Makefile
|
prebuilt/i686-pc-linux-gnu/Makefile
|
||||||
|
|
|
@ -40,6 +40,9 @@ top_builddir="@top_builddir_absolute@"
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GUILE_AUTO_COMPILE=0
|
||||||
|
export GUILE_AUTO_COMPILE
|
||||||
|
|
||||||
# When cross-compiling, let $GUILE_FOR_BUILD use its own .go files since
|
# When cross-compiling, let $GUILE_FOR_BUILD use its own .go files since
|
||||||
# the ones that are being built may be incompatible ($GUILE_FOR_BUILD is
|
# the ones that are being built may be incompatible ($GUILE_FOR_BUILD is
|
||||||
# typically used to run `guild compile --target=$host'.) Likewise,
|
# typically used to run `guild compile --target=$host'.) Likewise,
|
||||||
|
@ -54,7 +57,12 @@ then
|
||||||
GUILE_LOAD_PATH="$GUILE_LOAD_PATH:${top_builddir}/module:${top_builddir}/guile-readline"
|
GUILE_LOAD_PATH="$GUILE_LOAD_PATH:${top_builddir}/module:${top_builddir}/guile-readline"
|
||||||
fi
|
fi
|
||||||
export GUILE_LOAD_PATH
|
export GUILE_LOAD_PATH
|
||||||
GUILE_LOAD_COMPILED_PATH="${top_builddir}/module:${top_builddir}/bootstrap:${top_srcdir}/prebuilt/@SCM_PREBUILT_BINARIES@:${top_builddir}/guile-readline"
|
case "$GUILE_BOOTSTRAP_STAGE" in
|
||||||
|
stage0) GUILE_LOAD_COMPILED_PATH="${top_builddir}/stage0:${top_srcdir}/prebuilt/@SCM_PREBUILT_BINARIES@" ;;
|
||||||
|
stage1) GUILE_LOAD_COMPILED_PATH="${top_builddir}/stage1:${top_builddir}/stage0" ;;
|
||||||
|
stage2) GUILE_LOAD_COMPILED_PATH="${top_builddir}/stage1" ;;
|
||||||
|
*) GUILE_LOAD_COMPILED_PATH="${top_builddir}/stage2:${top_builddir}/guile-readline" ;;
|
||||||
|
esac
|
||||||
export GUILE_LOAD_COMPILED_PATH
|
export GUILE_LOAD_COMPILED_PATH
|
||||||
|
|
||||||
# Don't look in installed dirs for guile modules
|
# Don't look in installed dirs for guile modules
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# Copyright (C) 2003, 2006, 2008, 2009, 2010, 2011, 2012, 2015, 2017 Free Software Foundation
|
# Copyright (C) 2003, 2006, 2008, 2009, 2010, 2011, 2012, 2015, 2017, 2022 Free Software Foundation
|
||||||
#
|
#
|
||||||
# This file is part of GUILE.
|
# This file is part of GUILE.
|
||||||
#
|
#
|
||||||
|
@ -80,7 +80,7 @@ then
|
||||||
fi
|
fi
|
||||||
export GUILE_LOAD_PATH
|
export GUILE_LOAD_PATH
|
||||||
|
|
||||||
for d in "/prebuilt/@SCM_PREBUILT_BINARIES@" "/bootstrap" "/module" "/guile-readline"
|
for d in "/prebuilt/@SCM_PREBUILT_BINARIES@" "/stage2" "/guile-readline"
|
||||||
do
|
do
|
||||||
# This hair prevents double inclusion.
|
# This hair prevents double inclusion.
|
||||||
# The ":" prevents prefix aliasing.
|
# The ":" prevents prefix aliasing.
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
## Process this file with automake to produce Makefile.in.
|
## Process this file with automake to produce Makefile.in.
|
||||||
##
|
##
|
||||||
## Copyright (C) 2009-2021 Free Software Foundation, Inc.
|
## Copyright (C) 2009-2022 Free Software Foundation, Inc.
|
||||||
##
|
##
|
||||||
## This file is part of GUILE.
|
## This file is part of GUILE.
|
||||||
##
|
##
|
||||||
|
@ -19,404 +19,15 @@
|
||||||
## write to the Free Software Foundation, Inc., 51 Franklin Street,
|
## write to the Free Software Foundation, Inc., 51 Franklin Street,
|
||||||
## Fifth Floor, Boston, MA 02110-1301 USA
|
## Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
include $(top_srcdir)/am/guilec
|
include $(top_srcdir)/am/bootstrap.am
|
||||||
|
|
||||||
# We're at the root of the module hierarchy.
|
moddir = $(pkgdatadir)/$(GUILE_EFFECTIVE_VERSION)
|
||||||
modpath =
|
nobase_mod_DATA = $(SOURCES) $(ELISP_SOURCES) $(NOCOMP_SOURCES)
|
||||||
|
EXTRA_DIST = $(SOURCES) $(ELISP_SOURCES) $(NOCOMP_SOURCES)
|
||||||
|
ETAGS_ARGS = $(SOURCES) $(ELISP_SOURCES) $(NOCOMP_SOURCES)
|
||||||
|
|
||||||
VM_TARGETS := system/vm/assembler.go system/vm/disassembler.go
|
# Don't build .go files here.
|
||||||
$(VM_TARGETS): $(top_builddir)/libguile/vm-operations.h
|
nobase_noinst_DATA =
|
||||||
|
|
||||||
ice-9/boot-9.go: ice-9/boot-9.scm ice-9/quasisyntax.scm ice-9/r6rs-libraries.scm ice-9/r7rs-libraries.scm ice-9/read.scm
|
|
||||||
ice-9/match.go: ice-9/match.scm ice-9/match.upstream.scm
|
|
||||||
srfi/srfi-64.go: srfi/srfi-64.scm srfi/srfi-64/testing.scm
|
|
||||||
$(nobase_ccache_DATA): ../bootstrap/ice-9/eval.go
|
|
||||||
|
|
||||||
# Keep this rule in sync with that in `am/guilec'.
|
|
||||||
ice-9/psyntax-pp.go: ice-9/psyntax.scm ice-9/psyntax-pp.scm
|
|
||||||
$(AM_V_GUILEC)GUILE_AUTO_COMPILE=0 \
|
|
||||||
$(top_builddir)/meta/build-env \
|
|
||||||
guild compile --target="$(host)" $(GUILE_WARNINGS) $(GUILE_OPTIMIZATIONS) \
|
|
||||||
-L "$(abs_srcdir)" -L "$(abs_builddir)" \
|
|
||||||
-L "$(abs_top_srcdir)/guile-readline" \
|
|
||||||
-o "ice-9/psyntax-pp.go" "$(srcdir)/ice-9/psyntax.scm"
|
|
||||||
|
|
||||||
SOURCES = \
|
|
||||||
ice-9/eval.scm \
|
|
||||||
ice-9/psyntax-pp.scm \
|
|
||||||
\
|
|
||||||
language/cps.scm \
|
|
||||||
language/cps/closure-conversion.scm \
|
|
||||||
language/cps/compile-bytecode.scm \
|
|
||||||
language/cps/contification.scm \
|
|
||||||
language/cps/cse.scm \
|
|
||||||
language/cps/dce.scm \
|
|
||||||
language/cps/devirtualize-integers.scm \
|
|
||||||
language/cps/dump.scm \
|
|
||||||
language/cps/elide-arity-checks.scm \
|
|
||||||
language/cps/effects-analysis.scm \
|
|
||||||
language/cps/graphs.scm \
|
|
||||||
language/cps/intmap.scm \
|
|
||||||
language/cps/intset.scm \
|
|
||||||
language/cps/licm.scm \
|
|
||||||
language/cps/loop-instrumentation.scm \
|
|
||||||
language/cps/optimize.scm \
|
|
||||||
language/cps/peel-loops.scm \
|
|
||||||
language/cps/prune-top-level-scopes.scm \
|
|
||||||
language/cps/reify-primitives.scm \
|
|
||||||
language/cps/renumber.scm \
|
|
||||||
language/cps/return-types.scm \
|
|
||||||
language/cps/rotate-loops.scm \
|
|
||||||
language/cps/self-references.scm \
|
|
||||||
language/cps/simplify.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/switch.scm \
|
|
||||||
language/cps/type-checks.scm \
|
|
||||||
language/cps/type-fold.scm \
|
|
||||||
language/cps/types.scm \
|
|
||||||
language/cps/utils.scm \
|
|
||||||
language/cps/verify.scm \
|
|
||||||
language/cps/with-cps.scm \
|
|
||||||
\
|
|
||||||
language/tree-il.scm \
|
|
||||||
language/tree-il/analyze.scm \
|
|
||||||
language/tree-il/compile-bytecode.scm \
|
|
||||||
language/tree-il/compile-cps.scm \
|
|
||||||
language/tree-il/cps-primitives.scm \
|
|
||||||
language/tree-il/debug.scm \
|
|
||||||
language/tree-il/effects.scm \
|
|
||||||
language/tree-il/eta-expand.scm \
|
|
||||||
language/tree-il/fix-letrec.scm \
|
|
||||||
language/tree-il/inlinable-exports.scm \
|
|
||||||
language/tree-il/letrectify.scm \
|
|
||||||
language/tree-il/optimize.scm \
|
|
||||||
language/tree-il/peval.scm \
|
|
||||||
language/tree-il/primitives.scm \
|
|
||||||
language/tree-il/resolve-free-vars.scm \
|
|
||||||
language/tree-il/spec.scm \
|
|
||||||
\
|
|
||||||
ice-9/and-let-star.scm \
|
|
||||||
ice-9/arrays.scm \
|
|
||||||
ice-9/atomic.scm \
|
|
||||||
ice-9/binary-ports.scm \
|
|
||||||
ice-9/boot-9.scm \
|
|
||||||
ice-9/buffered-input.scm \
|
|
||||||
ice-9/calling.scm \
|
|
||||||
ice-9/command-line.scm \
|
|
||||||
ice-9/common-list.scm \
|
|
||||||
ice-9/control.scm \
|
|
||||||
ice-9/copy-tree.scm \
|
|
||||||
ice-9/curried-definitions.scm \
|
|
||||||
ice-9/deprecated.scm \
|
|
||||||
ice-9/documentation.scm \
|
|
||||||
ice-9/eval-string.scm \
|
|
||||||
ice-9/exceptions.scm \
|
|
||||||
ice-9/expect.scm \
|
|
||||||
ice-9/fdes-finalizers.scm \
|
|
||||||
ice-9/format.scm \
|
|
||||||
ice-9/ftw.scm \
|
|
||||||
ice-9/futures.scm \
|
|
||||||
ice-9/gap-buffer.scm \
|
|
||||||
ice-9/getopt-long.scm \
|
|
||||||
ice-9/hash-table.scm \
|
|
||||||
ice-9/hcons.scm \
|
|
||||||
ice-9/history.scm \
|
|
||||||
ice-9/i18n.scm \
|
|
||||||
ice-9/iconv.scm \
|
|
||||||
ice-9/lineio.scm \
|
|
||||||
ice-9/list.scm \
|
|
||||||
ice-9/local-eval.scm \
|
|
||||||
ice-9/ls.scm \
|
|
||||||
ice-9/match.scm \
|
|
||||||
ice-9/networking.scm \
|
|
||||||
ice-9/null.scm \
|
|
||||||
ice-9/occam-channel.scm \
|
|
||||||
ice-9/optargs.scm \
|
|
||||||
ice-9/peg.scm \
|
|
||||||
ice-9/peg/cache.scm \
|
|
||||||
ice-9/peg/codegen.scm \
|
|
||||||
ice-9/peg/simplify-tree.scm \
|
|
||||||
ice-9/peg/string-peg.scm \
|
|
||||||
ice-9/peg/using-parsers.scm \
|
|
||||||
ice-9/poe.scm \
|
|
||||||
ice-9/poll.scm \
|
|
||||||
ice-9/popen.scm \
|
|
||||||
ice-9/ports.scm \
|
|
||||||
ice-9/posix.scm \
|
|
||||||
ice-9/pretty-print.scm \
|
|
||||||
ice-9/q.scm \
|
|
||||||
ice-9/r5rs.scm \
|
|
||||||
ice-9/rdelim.scm \
|
|
||||||
ice-9/receive.scm \
|
|
||||||
ice-9/regex.scm \
|
|
||||||
ice-9/runq.scm \
|
|
||||||
ice-9/rw.scm \
|
|
||||||
ice-9/safe-r5rs.scm \
|
|
||||||
ice-9/safe.scm \
|
|
||||||
ice-9/sandbox.scm \
|
|
||||||
ice-9/save-stack.scm \
|
|
||||||
ice-9/scm-style-repl.scm \
|
|
||||||
ice-9/serialize.scm \
|
|
||||||
ice-9/session.scm \
|
|
||||||
ice-9/slib.scm \
|
|
||||||
ice-9/stack-catch.scm \
|
|
||||||
ice-9/streams.scm \
|
|
||||||
ice-9/string-fun.scm \
|
|
||||||
ice-9/suspendable-ports.scm \
|
|
||||||
ice-9/textual-ports.scm \
|
|
||||||
ice-9/threads.scm \
|
|
||||||
ice-9/time.scm \
|
|
||||||
ice-9/top-repl.scm \
|
|
||||||
ice-9/unicode.scm \
|
|
||||||
ice-9/vlist.scm \
|
|
||||||
ice-9/weak-vector.scm \
|
|
||||||
\
|
|
||||||
language/brainfuck/parse.scm \
|
|
||||||
language/brainfuck/compile-scheme.scm \
|
|
||||||
language/brainfuck/compile-tree-il.scm \
|
|
||||||
language/brainfuck/spec.scm \
|
|
||||||
\
|
|
||||||
language/bytecode.scm \
|
|
||||||
language/bytecode/spec.scm \
|
|
||||||
\
|
|
||||||
language/ecmascript/tokenize.scm \
|
|
||||||
language/ecmascript/parse.scm \
|
|
||||||
language/ecmascript/impl.scm \
|
|
||||||
language/ecmascript/base.scm \
|
|
||||||
language/ecmascript/function.scm \
|
|
||||||
language/ecmascript/array.scm \
|
|
||||||
language/ecmascript/compile-tree-il.scm \
|
|
||||||
language/ecmascript/spec.scm \
|
|
||||||
\
|
|
||||||
language/elisp/falias.scm \
|
|
||||||
language/elisp/lexer.scm \
|
|
||||||
language/elisp/parser.scm \
|
|
||||||
language/elisp/bindings.scm \
|
|
||||||
language/elisp/compile-tree-il.scm \
|
|
||||||
language/elisp/runtime.scm \
|
|
||||||
language/elisp/runtime/function-slot.scm \
|
|
||||||
language/elisp/runtime/value-slot.scm \
|
|
||||||
language/elisp/spec.scm \
|
|
||||||
\
|
|
||||||
language/scheme/compile-tree-il.scm \
|
|
||||||
language/scheme/decompile-tree-il.scm \
|
|
||||||
language/scheme/spec.scm \
|
|
||||||
\
|
|
||||||
language/value/spec.scm \
|
|
||||||
\
|
|
||||||
rnrs/base.scm \
|
|
||||||
rnrs/conditions.scm \
|
|
||||||
rnrs/control.scm \
|
|
||||||
rnrs/enums.scm \
|
|
||||||
rnrs/eval.scm \
|
|
||||||
rnrs/exceptions.scm \
|
|
||||||
rnrs/files.scm \
|
|
||||||
rnrs/hashtables.scm \
|
|
||||||
rnrs/lists.scm \
|
|
||||||
rnrs/mutable-pairs.scm \
|
|
||||||
rnrs/mutable-strings.scm \
|
|
||||||
rnrs/programs.scm \
|
|
||||||
rnrs/r5rs.scm \
|
|
||||||
rnrs/sorting.scm \
|
|
||||||
rnrs/syntax-case.scm \
|
|
||||||
rnrs/unicode.scm \
|
|
||||||
rnrs/arithmetic/bitwise.scm \
|
|
||||||
rnrs/arithmetic/fixnums.scm \
|
|
||||||
rnrs/arithmetic/flonums.scm \
|
|
||||||
rnrs/bytevectors.scm \
|
|
||||||
rnrs/io/simple.scm \
|
|
||||||
rnrs/io/ports.scm \
|
|
||||||
rnrs/records/inspection.scm \
|
|
||||||
rnrs/records/procedural.scm \
|
|
||||||
rnrs/records/syntactic.scm \
|
|
||||||
rnrs.scm \
|
|
||||||
\
|
|
||||||
oop/goops.scm \
|
|
||||||
oop/goops/active-slot.scm \
|
|
||||||
oop/goops/composite-slot.scm \
|
|
||||||
oop/goops/describe.scm \
|
|
||||||
oop/goops/internal.scm \
|
|
||||||
oop/goops/save.scm \
|
|
||||||
oop/goops/stklos.scm \
|
|
||||||
oop/goops/accessors.scm \
|
|
||||||
oop/goops/simple.scm \
|
|
||||||
\
|
|
||||||
scheme/base.scm \
|
|
||||||
scheme/case-lambda.scm \
|
|
||||||
scheme/char.scm \
|
|
||||||
scheme/complex.scm \
|
|
||||||
scheme/cxr.scm \
|
|
||||||
scheme/eval.scm \
|
|
||||||
scheme/file.scm \
|
|
||||||
scheme/inexact.scm \
|
|
||||||
scheme/lazy.scm \
|
|
||||||
scheme/load.scm \
|
|
||||||
scheme/process-context.scm \
|
|
||||||
scheme/r5rs.scm \
|
|
||||||
scheme/read.scm \
|
|
||||||
scheme/repl.scm \
|
|
||||||
scheme/time.scm \
|
|
||||||
scheme/write.scm \
|
|
||||||
\
|
|
||||||
scripts/compile.scm \
|
|
||||||
scripts/disassemble.scm \
|
|
||||||
scripts/display-commentary.scm \
|
|
||||||
scripts/doc-snarf.scm \
|
|
||||||
scripts/frisk.scm \
|
|
||||||
scripts/generate-autoload.scm \
|
|
||||||
scripts/help.scm \
|
|
||||||
scripts/lint.scm \
|
|
||||||
scripts/list.scm \
|
|
||||||
scripts/punify.scm \
|
|
||||||
scripts/read-scheme-source.scm \
|
|
||||||
scripts/read-text-outline.scm \
|
|
||||||
scripts/use2dot.scm \
|
|
||||||
scripts/snarf-check-and-output-texi.scm \
|
|
||||||
scripts/summarize-guile-TODO.scm \
|
|
||||||
scripts/api-diff.scm \
|
|
||||||
scripts/read-rfc822.scm \
|
|
||||||
scripts/snarf-guile-m4-docs.scm \
|
|
||||||
scripts/autofrisk.scm \
|
|
||||||
scripts/scan-api.scm \
|
|
||||||
\
|
|
||||||
srfi/srfi-1.scm \
|
|
||||||
srfi/srfi-2.scm \
|
|
||||||
srfi/srfi-4.scm \
|
|
||||||
srfi/srfi-4/gnu.scm \
|
|
||||||
srfi/srfi-6.scm \
|
|
||||||
srfi/srfi-8.scm \
|
|
||||||
srfi/srfi-9.scm \
|
|
||||||
srfi/srfi-9/gnu.scm \
|
|
||||||
srfi/srfi-10.scm \
|
|
||||||
srfi/srfi-11.scm \
|
|
||||||
srfi/srfi-13.scm \
|
|
||||||
srfi/srfi-14.scm \
|
|
||||||
srfi/srfi-16.scm \
|
|
||||||
srfi/srfi-17.scm \
|
|
||||||
srfi/srfi-18.scm \
|
|
||||||
srfi/srfi-19.scm \
|
|
||||||
srfi/srfi-26.scm \
|
|
||||||
srfi/srfi-27.scm \
|
|
||||||
srfi/srfi-28.scm \
|
|
||||||
srfi/srfi-31.scm \
|
|
||||||
srfi/srfi-34.scm \
|
|
||||||
srfi/srfi-35.scm \
|
|
||||||
srfi/srfi-37.scm \
|
|
||||||
srfi/srfi-38.scm \
|
|
||||||
srfi/srfi-41.scm \
|
|
||||||
srfi/srfi-42.scm \
|
|
||||||
srfi/srfi-43.scm \
|
|
||||||
srfi/srfi-39.scm \
|
|
||||||
srfi/srfi-45.scm \
|
|
||||||
srfi/srfi-60.scm \
|
|
||||||
srfi/srfi-64.scm \
|
|
||||||
srfi/srfi-67.scm \
|
|
||||||
srfi/srfi-69.scm \
|
|
||||||
srfi/srfi-71.scm \
|
|
||||||
srfi/srfi-88.scm \
|
|
||||||
srfi/srfi-98.scm \
|
|
||||||
srfi/srfi-111.scm \
|
|
||||||
srfi/srfi-171.scm \
|
|
||||||
srfi/srfi-171/gnu.scm \
|
|
||||||
srfi/srfi-171/meta.scm \
|
|
||||||
\
|
|
||||||
statprof.scm \
|
|
||||||
\
|
|
||||||
system/base/pmatch.scm \
|
|
||||||
system/base/syntax.scm \
|
|
||||||
system/base/compile.scm \
|
|
||||||
system/base/optimize.scm \
|
|
||||||
system/base/language.scm \
|
|
||||||
system/base/lalr.scm \
|
|
||||||
system/base/message.scm \
|
|
||||||
system/base/target.scm \
|
|
||||||
system/base/types.scm \
|
|
||||||
system/base/types/internal.scm \
|
|
||||||
system/base/ck.scm \
|
|
||||||
\
|
|
||||||
system/foreign.scm \
|
|
||||||
system/foreign-library.scm \
|
|
||||||
system/foreign-object.scm \
|
|
||||||
\
|
|
||||||
system/repl/debug.scm \
|
|
||||||
system/repl/error-handling.scm \
|
|
||||||
system/repl/common.scm \
|
|
||||||
system/repl/command.scm \
|
|
||||||
system/repl/repl.scm \
|
|
||||||
system/repl/server.scm \
|
|
||||||
system/repl/coop-server.scm \
|
|
||||||
\
|
|
||||||
system/vm/assembler.scm \
|
|
||||||
system/vm/coverage.scm \
|
|
||||||
system/vm/debug.scm \
|
|
||||||
system/vm/disassembler.scm \
|
|
||||||
system/vm/dwarf.scm \
|
|
||||||
system/vm/elf.scm \
|
|
||||||
system/vm/frame.scm \
|
|
||||||
system/vm/inspect.scm \
|
|
||||||
system/vm/linker.scm \
|
|
||||||
system/vm/loader.scm \
|
|
||||||
system/vm/program.scm \
|
|
||||||
system/vm/trace.scm \
|
|
||||||
system/vm/trap-state.scm \
|
|
||||||
system/vm/traps.scm \
|
|
||||||
system/vm/vm.scm \
|
|
||||||
\
|
|
||||||
system/syntax.scm \
|
|
||||||
\
|
|
||||||
system/xref.scm \
|
|
||||||
\
|
|
||||||
sxml/apply-templates.scm \
|
|
||||||
sxml/fold.scm \
|
|
||||||
sxml/match.scm \
|
|
||||||
sxml/simple.scm \
|
|
||||||
sxml/ssax/input-parse.scm \
|
|
||||||
sxml/ssax.scm \
|
|
||||||
sxml/transform.scm \
|
|
||||||
sxml/xpath.scm \
|
|
||||||
\
|
|
||||||
texinfo.scm \
|
|
||||||
texinfo/docbook.scm \
|
|
||||||
texinfo/html.scm \
|
|
||||||
texinfo/indexing.scm \
|
|
||||||
texinfo/string-utils.scm \
|
|
||||||
texinfo/plain-text.scm \
|
|
||||||
texinfo/reflection.scm \
|
|
||||||
texinfo/serialize.scm \
|
|
||||||
\
|
|
||||||
web/client.scm \
|
|
||||||
web/http.scm \
|
|
||||||
web/request.scm \
|
|
||||||
web/response.scm \
|
|
||||||
web/server.scm \
|
|
||||||
web/server/http.scm \
|
|
||||||
web/uri.scm
|
|
||||||
|
|
||||||
ELISP_SOURCES = \
|
|
||||||
language/elisp/boot.el
|
|
||||||
|
|
||||||
NOCOMP_SOURCES = \
|
|
||||||
ice-9/match.upstream.scm \
|
|
||||||
ice-9/psyntax.scm \
|
|
||||||
ice-9/read.scm \
|
|
||||||
ice-9/r6rs-libraries.scm \
|
|
||||||
ice-9/r7rs-libraries.scm \
|
|
||||||
ice-9/quasisyntax.scm \
|
|
||||||
srfi/srfi-42/ec.scm \
|
|
||||||
srfi/srfi-64/testing.scm \
|
|
||||||
srfi/srfi-67/compare.scm \
|
|
||||||
system/base/lalr.upstream.scm \
|
|
||||||
system/repl/describe.scm \
|
|
||||||
sxml/sxml-match.ss \
|
|
||||||
sxml/upstream/SSAX.scm \
|
|
||||||
sxml/upstream/SXML-tree-trans.scm \
|
|
||||||
sxml/upstream/SXPath-old.scm \
|
|
||||||
sxml/upstream/assert.scm \
|
|
||||||
sxml/upstream/input-parse.scm
|
|
||||||
|
|
||||||
## ice-9/test.scm is not currently installed.
|
## ice-9/test.scm is not currently installed.
|
||||||
EXTRA_DIST += \
|
EXTRA_DIST += \
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;; Optimization flags
|
;;; Optimization flags
|
||||||
|
|
||||||
;; Copyright (C) 2018, 2020, 2021 Free Software Foundation, Inc.
|
;; Copyright (C) 2018, 2020-2022 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;;;; This library is free software; you can redistribute it and/or
|
;;;; This library is free software; you can redistribute it and/or
|
||||||
;;;; modify it under the terms of the GNU Lesser General Public
|
;;;; modify it under the terms of the GNU Lesser General Public
|
||||||
|
@ -28,14 +28,14 @@
|
||||||
(match lang-name
|
(match lang-name
|
||||||
('tree-il
|
('tree-il
|
||||||
'((#:cps? 2)
|
'((#:cps? 2)
|
||||||
(#:resolve-free-vars? 1)
|
(#:resolve-free-vars? 2)
|
||||||
(#:resolve-primitives? 1)
|
(#:resolve-primitives? 1)
|
||||||
(#:expand-primitives? 1)
|
(#:expand-primitives? 1)
|
||||||
(#:letrectify? 2)
|
(#:letrectify? 2)
|
||||||
(#:seal-private-bindings? 3)
|
(#:seal-private-bindings? 3)
|
||||||
(#:partial-eval? 1)
|
(#:partial-eval? 1)
|
||||||
(#:eta-expand? 2)
|
(#:eta-expand? 2)
|
||||||
(#:inlinable-exports? 1)
|
(#:inlinable-exports? 2)
|
||||||
(#:cross-module-inlining? 2)))
|
(#:cross-module-inlining? 2)))
|
||||||
('cps
|
('cps
|
||||||
'( ;; (#:split-rec? #t)
|
'( ;; (#:split-rec? #t)
|
||||||
|
|
36
stage0/Makefile.am
Normal file
36
stage0/Makefile.am
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
## Process this file with automake to produce Makefile.in.
|
||||||
|
##
|
||||||
|
## Copyright (C) 2009, 2010, 2011, 2012, 2013,
|
||||||
|
## 2014, 2015, 2018, 2020, 2022 Free Software Foundation, Inc.
|
||||||
|
##
|
||||||
|
## This file is part of GUILE.
|
||||||
|
##
|
||||||
|
## GUILE is free software; you can redistribute it and/or modify it
|
||||||
|
## under the terms of the GNU Lesser General Public License as
|
||||||
|
## published by the Free Software Foundation; either version 3, or
|
||||||
|
## (at your option) any later version.
|
||||||
|
##
|
||||||
|
## GUILE 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 Lesser General Public License for more details.
|
||||||
|
##
|
||||||
|
## You should have received a copy of the GNU Lesser General Public
|
||||||
|
## License along with GUILE; see the file COPYING.LESSER. If not,
|
||||||
|
## write to the Free Software Foundation, Inc., 51 Franklin Street,
|
||||||
|
## Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
|
||||||
|
GUILE_WARNINGS = -W0
|
||||||
|
GUILE_OPTIMIZATIONS = -O1
|
||||||
|
GUILE_BOOTSTRAP_STAGE = stage0
|
||||||
|
|
||||||
|
include $(top_srcdir)/am/bootstrap.am
|
||||||
|
|
||||||
|
# We must build the evaluator first, so that we can be sure to control
|
||||||
|
# the stack. Then, we build the syntax-case macro expander before the
|
||||||
|
# rest, in order to speed up parallel builds.
|
||||||
|
ice-9/psyntax-pp.go: | ice-9/eval.go
|
||||||
|
|
||||||
|
$(filter-out ice-9/eval.go ice-9/psyntax-pp.go, $(GOBJECTS)): | \
|
||||||
|
ice-9/psyntax-pp.go
|
28
stage1/Makefile.am
Normal file
28
stage1/Makefile.am
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
## Process this file with automake to produce Makefile.in.
|
||||||
|
##
|
||||||
|
## Copyright (C) 2009, 2010, 2011, 2012, 2013,
|
||||||
|
## 2014, 2015, 2018, 2020, 2022 Free Software Foundation, Inc.
|
||||||
|
##
|
||||||
|
## This file is part of GUILE.
|
||||||
|
##
|
||||||
|
## GUILE is free software; you can redistribute it and/or modify it
|
||||||
|
## under the terms of the GNU Lesser General Public License as
|
||||||
|
## published by the Free Software Foundation; either version 3, or
|
||||||
|
## (at your option) any later version.
|
||||||
|
##
|
||||||
|
## GUILE 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 Lesser General Public License for more details.
|
||||||
|
##
|
||||||
|
## You should have received a copy of the GNU Lesser General Public
|
||||||
|
## License along with GUILE; see the file COPYING.LESSER. If not,
|
||||||
|
## write to the Free Software Foundation, Inc., 51 Franklin Street,
|
||||||
|
## Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
|
||||||
|
GUILE_WARNINGS = -W1
|
||||||
|
GUILE_OPTIMIZATIONS = -O2 -Ono-cross-module-inlining
|
||||||
|
GUILE_BOOTSTRAP_STAGE = stage1
|
||||||
|
|
||||||
|
include $(top_srcdir)/am/bootstrap.am
|
31
stage2/Makefile.am
Normal file
31
stage2/Makefile.am
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
## Process this file with automake to produce Makefile.in.
|
||||||
|
##
|
||||||
|
## Copyright (C) 2009, 2010, 2011, 2012, 2013,
|
||||||
|
## 2014, 2015, 2018, 2020, 2022 Free Software Foundation, Inc.
|
||||||
|
##
|
||||||
|
## This file is part of GUILE.
|
||||||
|
##
|
||||||
|
## GUILE is free software; you can redistribute it and/or modify it
|
||||||
|
## under the terms of the GNU Lesser General Public License as
|
||||||
|
## published by the Free Software Foundation; either version 3, or
|
||||||
|
## (at your option) any later version.
|
||||||
|
##
|
||||||
|
## GUILE 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 Lesser General Public License for more details.
|
||||||
|
##
|
||||||
|
## You should have received a copy of the GNU Lesser General Public
|
||||||
|
## License along with GUILE; see the file COPYING.LESSER. If not,
|
||||||
|
## write to the Free Software Foundation, Inc., 51 Franklin Street,
|
||||||
|
## Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
|
||||||
|
GUILE_WARNINGS = -W1
|
||||||
|
GUILE_OPTIMIZATIONS = -O2
|
||||||
|
GUILE_BOOTSTRAP_STAGE = stage2
|
||||||
|
|
||||||
|
include $(top_srcdir)/am/bootstrap.am
|
||||||
|
|
||||||
|
ccachedir = $(pkglibdir)/$(GUILE_EFFECTIVE_VERSION)/ccache
|
||||||
|
nobase_ccache_DATA = $(GOBJECTS)
|
Loading…
Add table
Add a link
Reference in a new issue