EXTRA_DOT_DOC_FILES = @EXTRA_DOT_DOC_FILES@
BUILT_SOURCES = cpp_err_symbols.c cpp_sig_symbols.c libpath.h scmconfig.h \
+ version.h \
$(DOT_X_FILES) $(EXTRA_DOT_X_FILES) guile.texi
EXTRA_libguile_la_SOURCES = _scm.h \
# $(DOT_DOC_FILES) $(EXTRA_DOT_DOC_FILES) \
# guile-procedures.txt guile.texi
+## We use @-...-@ as the substitution brackets here, instead of the
+## usual @...@, so autoconf doesn't go and substitute the values
+## directly into the left-hand sides of the sed substitutions. *sigh*
+version.h: version.h.in
+ sed < $^ > $@.tmp \
+ -e s:@-GUILE_MAJOR_VERSION-@:${GUILE_MAJOR_VERSION}: \
+ -e s:@-GUILE_MINOR_VERSION-@:${GUILE_MINOR_VERSION}: \
+ -e s:@-GUILE_MICRO_VERSION-@:${GUILE_MICRO_VERSION}:
+ mv $@.tmp $@
+
## FIXME: Consider using timestamp file, to avoid unnecessary rebuilds.
libpath.h: $(srcdir)/Makefile.in $(top_builddir)/config.status
@echo "Generating libpath.h..."
@rm -f libpath.tmp
@echo '/* generated by Makefile */' > libpath.tmp
@echo '#define SCM_PKGDATA_DIR "$(pkgdatadir)"' >> libpath.tmp
- @echo '#define SCM_LIBRARY_DIR "$(pkgdatadir)/$(VERSION)"'>>libpath.tmp
+ @echo '#define SCM_LIBRARY_DIR "$(pkgdatadir)/$(GUILE_EFFECTIVE_VERSION)"'>>libpath.tmp
@echo '#define SCM_SITE_DIR "$(pkgdatadir)/site"' >> libpath.tmp
@echo '#define SCM_BUILD_INFO { \' >> libpath.tmp
@echo ' { "srcdir", "'"`cd @srcdir@; pwd`"'" }, \' >> libpath.tmp
c-tokenize.c: c-tokenize.lex
flex -t $(srcdir)/c-tokenize.lex > $@ || { rm $@; false; }
-schemelibdir = $(pkgdatadir)/$(VERSION)
+schemelibdir = $(pkgdatadir)/$(GUILE_EFFECTIVE_VERSION)
schemelib_DATA = guile-procedures.txt
## Add -MG to make the .x magic work with auto-dep code.
MOSTLYCLEANFILES = \
cpp_err_symbols_here cpp_err_symbols_diff cpp_err_symbols_new \
- cpp_sig_symbols_here cpp_sig_symbols_diff cpp_sig_symbols_new
+ cpp_sig_symbols_here cpp_sig_symbols_diff cpp_sig_symbols_new \
+ version.h version.h.tmp \
+ scmconfig.h scmconfig.h.tmp
CLEANFILES = libpath.h *.x *.doc guile-procedures.txt guile-procedures.texi guile.texi