diff options
-rw-r--r-- | doc/user/Makefile.am | 21 | ||||
-rw-r--r-- | guile-vm.am | 20 | ||||
-rwxr-xr-x | src/pre-inst-skribilo.in | 5 | ||||
-rwxr-xr-x | src/skribilo.in | 7 | ||||
-rw-r--r-- | tests/Makefile.am | 4 |
5 files changed, 41 insertions, 16 deletions
diff --git a/doc/user/Makefile.am b/doc/user/Makefile.am index 8039480..fb5cd4a 100644 --- a/doc/user/Makefile.am +++ b/doc/user/Makefile.am @@ -51,14 +51,19 @@ endif load_path = $(top_srcdir)/doc/modules +load_compiled_path = $(top_builddir)/doc/modules skribilo.info: user.skb - GUILE_LOAD_PATH=$(load_path):$$GUILE_LOAD_PATH \ + GUILE_LOAD_PATH=$(load_path):$$GUILE_LOAD_PATH \ + GUILE_LOAD_COMPILED_PATH=$(load_compiled_path):$$GUILE_LOAD_COMPILED_PATH \ + GUILE_AUTO_COMPILE=0 \ $(skribilo) $(skrflags) --target=info -o $@ $< .skb.html: - GUILE_LOAD_PATH=$(load_path):$$GUILE_LOAD_PATH \ + GUILE_LOAD_PATH=$(load_path):$$GUILE_LOAD_PATH \ + GUILE_LOAD_COMPILED_PATH=$(load_compiled_path):$$GUILE_LOAD_COMPILED_PATH \ + GUILE_AUTO_COMPILE=0 \ $(skribilo) $(skrflags) --target=html -o $@ $< if HAVE_LOUT @@ -93,15 +98,21 @@ if HAVE_PS2PDF endif .skb.lout: - GUILE_LOAD_PATH=$(load_path):$$GUILE_LOAD_PATH \ + GUILE_LOAD_PATH=$(load_path):$$GUILE_LOAD_PATH \ + GUILE_LOAD_COMPILED_PATH=$(load_compiled_path):$$GUILE_LOAD_COMPILED_PATH \ + GUILE_AUTO_COMPILE=0 \ $(skribilo) $(skrflags) --target=lout -o $@ $< .skb.tex: - GUILE_LOAD_PATH=$(load_path):$$GUILE_LOAD_PATH \ + GUILE_LOAD_PATH=$(load_path):$$GUILE_LOAD_PATH \ + GUILE_LOAD_COMPILED_PATH=$(load_compiled_path):$$GUILE_LOAD_COMPILED_PATH \ + GUILE_AUTO_COMPILE=0 \ $(skribilo) $(skrflags) --target=latex -o $@ $< .skb.ctx: - GUILE_LOAD_PATH=$(load_path):$$GUILE_LOAD_PATH \ + GUILE_LOAD_PATH=$(load_path):$$GUILE_LOAD_PATH \ + GUILE_LOAD_COMPILED_PATH=$(load_compiled_path):$$GUILE_LOAD_COMPILED_PATH \ + GUILE_AUTO_COMPILE=0 \ $(skribilo) $(skrflags) --target=context -o $@ $< diff --git a/guile-vm.am b/guile-vm.am index 14b146f..627e5a0 100644 --- a/guile-vm.am +++ b/guile-vm.am @@ -1,3 +1,4 @@ + # Compilation with Guile-VM's compiler (aka. Guile 2.x). if ENABLE_GUILE_VM @@ -8,15 +9,20 @@ GOBJECTS = $(SOURCES:%.scm=%.go) nobase_nodist_module_DATA = \ $(SOURCES) $(GOBJECTS) $(SOURCES_NOT_COMPILED) +# Compiler warnings. +guile_warnings = unused-variable unbound-variable arity-mismatch + .scm.go: $(MKDIR_P) `dirname $@` - $(GUILE) -L $(srcdir) \ - -c "(use-modules (system base compile) \ - (skribilo condition)) \ - (read-set! keywords 'prefix) \ - (call-with-skribilo-error-catch/exit \ - (lambda () \ - (compile-file \"$<\" \"$@\")))" + GUILE_AUTO_COMPILE=0 \ + GUILE_LOAD_COMPILED_PATH="$(builddir):$(top_builddir)/src/guile:$$GUILE_LOAD_COMPILED_PATH" \ + $(GUILE) --debug -L "$(srcdir)" -L "$(top_srcdir)/src/guile" \ + -c "(use-modules (system base compile) \ + (skribilo condition)) \ + (call-with-skribilo-error-catch/exit \ + (lambda () \ + (compile-file \"$<\" #:output-file \"$@\" \ + #:opts '(#:warnings ($(guile_warnings))))))" CLEANFILES += $(GOBJECTS) diff --git a/src/pre-inst-skribilo.in b/src/pre-inst-skribilo.in index 3a5c0d8..eb93e8e 100755 --- a/src/pre-inst-skribilo.in +++ b/src/pre-inst-skribilo.in @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2007 Ludovic Courtès <ludo@gnu.org> +# Copyright 2007, 2009 Ludovic Courtès <ludo@gnu.org> # # # This program is free software; you can redistribute it and/or modify @@ -21,6 +21,9 @@ # A pre-installation `skribilo' executable that makes sure to load # stuff from the source directory rather than the installation directory. +GUILE_LOAD_COMPILED_PATH="@abs_top_builddir@/src/guile:$GUILE_LOAD_COMPILED_PATH" +export GUILE_LOAD_COMPILED_PATH + main='(module-ref (resolve-interface '\''(skribilo)) '\'skribilo')' exec ${GUILE-@GUILE@} -L "@abs_top_srcdir@/src/guile" \ -L "@abs_top_builddir@/src/guile" \ diff --git a/src/skribilo.in b/src/skribilo.in index 95d75b7..f5d3d75 100755 --- a/src/skribilo.in +++ b/src/skribilo.in @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2005, 2006, 2007, 2008 Ludovic Courtès <ludo@gnu.org> +# Copyright 2005, 2006, 2007, 2008, 2009 Ludovic Courtès <ludo@gnu.org> # # # This program is free software; you can redistribute it and/or modify @@ -20,10 +20,13 @@ # The `skribilo' executable. -# Don't pass `--debug' by default (for performance reason). When +# Don't pass `--debug' by default (for performance reasons). When # needed, the use should explicitly set the `GUILE' environment # variable to, e.g., "guile --debug". +GUILE_LOAD_COMPILED_PATH="@guilemoduledir@:$GUILE_LOAD_COMPILED_PATH" +export GUILE_LOAD_COMPILED_PATH + main='(module-ref (resolve-interface '\''(skribilo)) '\'skribilo')' exec ${GUILE-@GUILE@} -L "@guilemoduledir@" -c " diff --git a/tests/Makefile.am b/tests/Makefile.am index bd4349f..280875a 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,4 +1,6 @@ -TESTS_ENVIRONMENT = \ +TESTS_ENVIRONMENT = \ + GUILE_AUTO_COMPILE=0 \ + GUILE_LOAD_COMPILED_PATH="$(top_builddir)/src/guile:$$GUILE_LOAD_COMPILED_PATH" \ $(GUILE) -L $(top_srcdir)/src/guile -L $(top_builddir)/src/guile TESTS = ast.test readers/rss-2.test resolve.test |