deprecate scm_sym2var
[bpt/guile.git] / am / guilec
index 939ea76..7634a97 100644 (file)
--- a/am/guilec
+++ b/am/guilec
@@ -1,13 +1,34 @@
 # -*- makefile -*-
 GOBJECTS = $(SOURCES:%.scm=%.go)
 
+GUILE_WARNINGS = -Wunbound-variable -Warity-mismatch -Wformat
+
 moddir = $(pkgdatadir)/$(GUILE_EFFECTIVE_VERSION)/$(modpath)
-nobase_mod_DATA = $(SOURCES) $(NOCOMP_SOURCES) $(GOBJECTS)
+nobase_mod_DATA = $(SOURCES) $(NOCOMP_SOURCES)
+ccachedir = $(pkglibdir)/$(GUILE_EFFECTIVE_VERSION)/ccache/$(modpath)
+nobase_ccache_DATA = $(GOBJECTS)
 EXTRA_DIST = $(SOURCES) $(NOCOMP_SOURCES)
+ETAGS_ARGS = $(SOURCES) $(NOCOMP_SOURCES)
 
 CLEANFILES = $(GOBJECTS)
 
+# Make sure source files are installed first, so that the mtime of
+# installed compiled files is greater than that of installed source
+# files.  See
+# <http://lists.gnu.org/archive/html/guile-devel/2010-07/msg00125.html>
+# for details.
+guile_install_go_files = install-nobase_ccacheDATA
+$(guile_install_go_files): install-nobase_modDATA
+
+AM_V_GUILEC = $(AM_V_GUILEC_$(V))
+AM_V_GUILEC_ = $(AM_V_GUILEC_$(AM_DEFAULT_VERBOSITY))
+AM_V_GUILEC_0 = @echo "  GUILEC" $@;
+
 SUFFIXES = .scm .go
 .scm.go:
-       $(MKDIR_P) `dirname $@`
-       $(top_builddir)/pre-inst-guile-env $(top_builddir)/guile-tools compile -o "$@" "$<"
+       $(AM_V_GUILEC)GUILE_AUTO_COMPILE=0                      \
+       $(top_builddir)/meta/uninstalled-env                    \
+       guild compile --target="$(host)" $(GUILE_WARNINGS)      \
+         -L "$(abs_srcdir)" -L "$(abs_builddir)"               \
+         -L "$(abs_top_srcdir)/guile-readline"                 \
+         -o "$@" "$<"