X-Git-Url: https://git.hcoop.net/bpt/guile.git/blobdiff_plain/a3f2bf81d9a1a8d080dd4b09d59c46995cefb1eb..805b4179bfe44506e6dcd3e62c6868659ffdafb6:/module/Makefile.am diff --git a/module/Makefile.am b/module/Makefile.am index 171f9f1d2..5d220bd10 100644 --- a/module/Makefile.am +++ b/module/Makefile.am @@ -1,59 +1,104 @@ ## Process this file with automake to produce Makefile.in. ## -## Copyright (C) 2009 Free Software Foundation, Inc. +## Copyright (C) 2009, 2010 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 General Public License as -## published by the Free Software Foundation; either version 2, or +## 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 General Public License for more details. +## GNU Lesser General Public License for more details. ## -## You should have received a copy of the GNU General Public -## License along with GUILE; see the file COPYING. If not, write -## to the Free Software Foundation, Inc., 51 Franklin Street, Fifth -## Floor, Boston, MA 02110-1301 USA +## 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 -# Build the compiler and VM support first to avoid stack overflows -# when building the rest. -SUBDIRS = . ice-9 srfi oop +include $(top_srcdir)/am/guilec # We're at the root of the module hierarchy. modpath = -SOURCES = \ - system/base/pmatch.scm system/base/syntax.scm \ - system/base/compile.scm system/base/language.scm \ - \ - system/vm/debug.scm system/vm/frame.scm system/vm/instruction.scm \ - system/vm/objcode.scm system/vm/profile.scm system/vm/program.scm \ - system/vm/trace.scm system/vm/vm.scm \ - \ - system/repl/repl.scm system/repl/common.scm \ - system/repl/command.scm \ - \ - language/ghil.scm language/glil.scm language/assembly.scm \ - \ - $(SCHEME_LANG_SOURCES) $(ECMASCRIPT_LANG_SOURCES) \ - $(GHIL_LANG_SOURCES) $(GLIL_LANG_SOURCES) \ - $(ASSEMBLY_LANG_SOURCES) $(BYTECODE_LANG_SOURCES) \ - $(OBJCODE_LANG_SOURCES) $(VALUE_LANG_SOURCES) +BEGINNING_OF_TIME=198001010100 + +$(GOBJECTS): ice-9/eval.go.stamp +ice-9/eval.go.stamp: ice-9/eval.go + touch -t $(BEGINNING_OF_TIME) $(srcdir)/ice-9/eval.scm + touch -r $(srcdir)/ice-9/eval.scm ice-9/eval.go + touch -r $(srcdir)/ice-9/eval.scm ice-9/eval.go.stamp +CLEANFILES += ice-9/eval.go ice-9/eval.go.stamp +nobase_mod_DATA += ice-9/eval.scm +nobase_ccache_DATA += ice-9/eval.go +EXTRA_DIST += ice-9/eval.scm + +# We can compile these in any order, but it's fastest if we compile +# psyntax and boot-9 first, then the compiler itself, then the rest of +# the code. +SOURCES = \ + ice-9/psyntax-pp.scm \ + ice-9/boot-9.scm \ + \ + language/tree-il.scm \ + language/glil.scm \ + language/assembly.scm \ + $(TREE_IL_LANG_SOURCES) \ + $(GLIL_LANG_SOURCES) \ + $(ASSEMBLY_LANG_SOURCES) \ + $(BYTECODE_LANG_SOURCES) \ + $(OBJCODE_LANG_SOURCES) \ + $(VALUE_LANG_SOURCES) \ + $(SCHEME_LANG_SOURCES) \ + $(SYSTEM_BASE_SOURCES) \ + \ + $(ICE_9_SOURCES) \ + $(SRFI_SOURCES) \ + $(RNRS_SOURCES) \ + $(OOP_SOURCES) \ + $(SYSTEM_SOURCES) \ + $(SCRIPTS_SOURCES) \ + $(ECMASCRIPT_LANG_SOURCES) \ + $(ELISP_LANG_SOURCES) \ + $(BRAINFUCK_LANG_SOURCES) \ + $(LIB_SOURCES) + +## test.scm is not currently installed. +EXTRA_DIST += \ + ice-9/test.scm \ + ice-9/compile-psyntax.scm \ + ice-9/ChangeLog-2008 + +# We expect this to never be invoked when there is not already +# ice-9/psyntax-pp.scm in %load-path, since compile-psyntax.scm depends +# on ice-9/syncase.scm, which does `(load-from-path "ice-9/psyntax-pp.scm")'. +# In other words, to bootstrap this file, you need to do something like: +# GUILE_LOAD_PATH=/usr/local/share/guile/1.5.4 make psyntax-pp.scm +include $(top_srcdir)/am/pre-inst-guile +ice-9/psyntax-pp.scm: ice-9/psyntax.scm + $(preinstguile) --no-autocompile -s $(srcdir)/ice-9/compile-psyntax.scm \ + $(srcdir)/ice-9/psyntax.scm $(srcdir)/ice-9/psyntax-pp.scm SCHEME_LANG_SOURCES = \ - language/scheme/amatch.scm language/scheme/expand.scm \ - language/scheme/compile-ghil.scm language/scheme/spec.scm \ - language/scheme/inline.scm + language/scheme/spec.scm \ + language/scheme/compile-tree-il.scm \ + language/scheme/decompile-tree-il.scm -GHIL_LANG_SOURCES = \ - language/ghil/spec.scm language/ghil/compile-glil.scm +TREE_IL_LANG_SOURCES = \ + language/tree-il/primitives.scm \ + language/tree-il/optimize.scm \ + language/tree-il/inline.scm \ + language/tree-il/fix-letrec.scm \ + language/tree-il/analyze.scm \ + language/tree-il/compile-glil.scm \ + language/tree-il/spec.scm GLIL_LANG_SOURCES = \ - language/glil/spec.scm language/glil/compile-assembly.scm + language/glil/spec.scm language/glil/compile-assembly.scm \ + language/glil/decompile-assembly.scm ASSEMBLY_LANG_SOURCES = \ language/assembly/spec.scm \ @@ -71,17 +116,237 @@ VALUE_LANG_SOURCES = \ language/value/spec.scm ECMASCRIPT_LANG_SOURCES = \ - language/ecmascript/parse-lalr.scm \ language/ecmascript/tokenize.scm \ language/ecmascript/parse.scm \ - language/ecmascript/spec.scm \ language/ecmascript/impl.scm \ language/ecmascript/base.scm \ language/ecmascript/function.scm \ language/ecmascript/array.scm \ - language/ecmascript/compile-ghil.scm + language/ecmascript/compile-tree-il.scm \ + language/ecmascript/spec.scm -NOCOMP_SOURCES = \ - system/repl/describe.scm +ELISP_LANG_SOURCES = \ + 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/macro-slot.scm \ + language/elisp/runtime/value-slot.scm \ + language/elisp/spec.scm -include $(top_srcdir)/am/guilec +BRAINFUCK_LANG_SOURCES = \ + language/brainfuck/parse.scm \ + language/brainfuck/compile-scheme.scm \ + language/brainfuck/compile-tree-il.scm \ + language/brainfuck/spec.scm + +SCRIPTS_SOURCES = \ + scripts/PROGRAM.scm \ + scripts/autofrisk.scm \ + scripts/compile.scm \ + scripts/disassemble.scm \ + scripts/display-commentary.scm \ + scripts/doc-snarf.scm \ + scripts/frisk.scm \ + scripts/generate-autoload.scm \ + scripts/lint.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/scan-api.scm \ + scripts/api-diff.scm \ + scripts/read-rfc822.scm \ + scripts/snarf-guile-m4-docs.scm + +SYSTEM_BASE_SOURCES = \ + system/base/pmatch.scm \ + system/base/syntax.scm \ + system/base/compile.scm \ + system/base/language.scm \ + system/base/lalr.scm \ + system/base/message.scm + +ICE_9_SOURCES = \ + ice-9/r4rs.scm \ + ice-9/r5rs.scm \ + ice-9/and-let-star.scm \ + ice-9/calling.scm \ + ice-9/common-list.scm \ + ice-9/control.scm \ + ice-9/curried-definitions.scm \ + ice-9/debug.scm \ + ice-9/debugger.scm \ + ice-9/documentation.scm \ + ice-9/emacs.scm \ + ice-9/expect.scm \ + ice-9/format.scm \ + ice-9/getopt-long.scm \ + ice-9/hcons.scm \ + ice-9/i18n.scm \ + ice-9/lineio.scm \ + ice-9/ls.scm \ + ice-9/mapping.scm \ + ice-9/match.scm \ + ice-9/networking.scm \ + ice-9/null.scm \ + ice-9/occam-channel.scm \ + ice-9/optargs.scm \ + ice-9/poe.scm \ + ice-9/popen.scm \ + ice-9/posix.scm \ + ice-9/q.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/session.scm \ + ice-9/slib.scm \ + ice-9/stack-catch.scm \ + ice-9/streams.scm \ + ice-9/string-fun.scm \ + ice-9/syncase.scm \ + ice-9/threads.scm \ + ice-9/buffered-input.scm \ + ice-9/time.scm \ + ice-9/history.scm \ + ice-9/channel.scm \ + ice-9/pretty-print.scm \ + ice-9/ftw.scm \ + ice-9/gap-buffer.scm \ + ice-9/weak-vector.scm \ + ice-9/deprecated.scm \ + ice-9/list.scm \ + ice-9/serialize.scm \ + ice-9/gds-server.scm \ + ice-9/vlist.scm + +SRFI_SOURCES = \ + 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-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-31.scm \ + srfi/srfi-34.scm \ + srfi/srfi-35.scm \ + srfi/srfi-37.scm \ + srfi/srfi-39.scm \ + srfi/srfi-60.scm \ + srfi/srfi-69.scm \ + srfi/srfi-88.scm \ + srfi/srfi-98.scm + +RNRS_SOURCES = \ + rnrs/6/base.scm \ + rnrs/6/conditions.scm \ + rnrs/6/control.scm \ + rnrs/6/exceptions.scm \ + rnrs/6/hashtables.scm \ + rnrs/6/lists.scm \ + rnrs/6/programs.scm \ + rnrs/6/sorting.scm \ + rnrs/6/syntax-case.scm \ + rnrs/6/unicode.scm \ + rnrs/arithmetic/6/bitwise.scm \ + rnrs/bytevector.scm \ + rnrs/io/6/simple.scm \ + rnrs/io/ports.scm \ + rnrs/records/6/inspection.scm \ + rnrs/records/6/procedural.scm \ + rnrs/records/6/syntactic.scm + +EXTRA_DIST += scripts/ChangeLog-2008 +EXTRA_DIST += scripts/README + +OOP_SOURCES = \ + oop/goops.scm \ + oop/goops/active-slot.scm \ + oop/goops/compile.scm \ + oop/goops/composite-slot.scm \ + oop/goops/describe.scm \ + oop/goops/dispatch.scm \ + oop/goops/internal.scm \ + oop/goops/save.scm \ + oop/goops/stklos.scm \ + oop/goops/util.scm \ + oop/goops/accessors.scm \ + oop/goops/simple.scm + +SYSTEM_SOURCES = \ + system/vm/inspect.scm \ + system/vm/coverage.scm \ + system/vm/debug.scm \ + system/vm/frame.scm \ + system/vm/instruction.scm \ + system/vm/objcode.scm \ + system/vm/profile.scm \ + system/vm/program.scm \ + system/vm/trace.scm \ + system/vm/vm.scm \ + system/foreign.scm \ + system/xref.scm \ + system/repl/repl.scm \ + system/repl/common.scm \ + system/repl/command.scm + +LIB_SOURCES = \ + statprof.scm \ + sxml/apply-templates.scm \ + sxml/fold.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 + +EXTRA_DIST += oop/ChangeLog-2008 + +NOCOMP_SOURCES = \ + ice-9/gds-client.scm \ + ice-9/psyntax.scm \ + ice-9/r6rs-libraries.scm \ + ice-9/quasisyntax.scm \ + system/base/lalr.upstream.scm \ + system/repl/describe.scm \ + ice-9/debugger/command-loop.scm \ + ice-9/debugger/commands.scm \ + ice-9/debugger/state.scm \ + ice-9/debugger/trc.scm \ + ice-9/debugger/utils.scm \ + ice-9/debugging/example-fns.scm \ + ice-9/debugging/steps.scm \ + ice-9/debugging/trace.scm \ + ice-9/debugging/traps.scm \ + ice-9/debugging/trc.scm \ + sxml/upstream/SSAX.scm \ + sxml/upstream/SXML-tree-trans.scm \ + sxml/upstream/SXPath-old.scm \ + sxml/upstream/assert.scm \ + sxml/upstream/input-parse.scm