Don't remove `standard-library.texi' upon "make clean".
[bpt/guile.git] / doc / ref / Makefile.am
index ba24ad1..c154f42 100644 (file)
@@ -1,32 +1,34 @@
 ## Process this file with Automake to create Makefile.in
 ##
-##     Copyright (C) 1998, 2004, 2006, 2008 Free Software Foundation, Inc.
+##   Copyright (C) 1998, 2004, 2006, 2008, 2009, 2010,
+##     2011 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
 
 AUTOMAKE_OPTIONS = gnu
 
-BUILT_SOURCES = lib-version.texi
+BUILT_SOURCES = standard-library.texi
 
 info_TEXINFOS = guile.texi
 
 guile_TEXINFOS = preface.texi                  \
                  intro.texi                    \
+                 tour.texi                     \
                  libguile-program.texi         \
                  scheme-intro.texi             \
                 api-scm.texi                   \
@@ -35,40 +37,50 @@ guile_TEXINFOS = preface.texi                       \
                 scheme-ideas.texi              \
                 api-data.texi                  \
                 api-procedures.texi            \
+                api-macros.texi                \
                 api-utility.texi               \
                 api-binding.texi               \
                 api-control.texi               \
                 api-io.texi                    \
+                api-foreign.texi               \
+                api-regex.texi                 \
+                api-lalr.texi                  \
+                api-languages.texi             \
                 api-evaluation.texi            \
                 api-memory.texi                \
                 api-modules.texi               \
                 api-scheduling.texi            \
                 api-options.texi               \
-                api-translation.texi           \
                 api-i18n.texi                  \
                 api-debug.texi                 \
+                api-coverage.texi              \
                 scheme-reading.texi            \
                 scheme-indices.texi            \
                 slib.texi                      \
                 posix.texi                     \
+                web.texi                       \
                 expect.texi                    \
                 scsh.texi                      \
-                tcltk.texi                     \
+                sxml-match.texi                \
                 scheme-scripts.texi            \
-                gh.texi                        \
                 api-overview.texi              \
-                scheme-debugging.texi          \
+                api-deprecated.texi            \
                 scheme-using.texi              \
                 indices.texi                   \
                 script-getopt.texi             \
                 data-rep.texi                  \
                 repl-modules.texi              \
                 srfi-modules.texi              \
+                r6rs.texi                      \
+                match.texi                     \
                 misc-modules.texi              \
                 api-compound.texi              \
                 autoconf.texi                  \
                 autoconf-macros.texi           \
                 tools.texi                     \
+                history.texi                   \
+                vm.texi                        \
+                compiler.texi                  \
                 fdl.texi                       \
                 libguile-concepts.texi         \
                 libguile-smobs.texi            \
@@ -76,32 +88,71 @@ guile_TEXINFOS = preface.texi                       \
                 libguile-linking.texi          \
                 libguile-extensions.texi       \
                 api-init.texi                  \
-                mod-getopt-long.texi
+                mod-getopt-long.texi           \
+                goops.texi                     \
+                goops-tutorial.texi            \
+                effective-version.texi
 
 ETAGS_ARGS = $(info_TEXINFOS) $(guile_TEXINFOS)
 
-EXTRA_DIST = ChangeLog-2008
+PICTURES = hierarchy.eps \
+          hierarchy.pdf \
+          hierarchy.png \
+          hierarchy.txt \
+          gds.eps \
+          gds.pdf \
+          gds.txt \
+          scheme.eps \
+          scheme.pdf \
+          scheme.txt \
+          mop.text
+
+noinst_DATA = $(PICTURES)
+
+EXTRA_DIST = ChangeLog-2008 $(PICTURES)
 
 include $(top_srcdir)/am/pre-inst-guile
 
 # Automated snarfing
 
 autoconf.texi: autoconf-macros.texi
-autoconf-macros.texi: $(top_srcdir)/guile-config/guile.m4
-       $(preinstguiletool)/snarf-guile-m4-docs $(top_srcdir)/guile-config/guile.m4 \
+autoconf-macros.texi: $(top_srcdir)/meta/guile.m4
+       GUILE_AUTO_COMPILE=0 $(top_builddir)/meta/uninstalled-env guile-tools \
+         snarf-guile-m4-docs $(top_srcdir)/meta/guile.m4 \
          > $(srcdir)/$@
 
-lib-version.texi: $(top_srcdir)/GUILE-VERSION
-       cat "$^" | grep '^LIBGUILE_.*_MAJOR' |                          \
-       sed 's/^LIBGUILE_\([A-Z0-9_]*\)_MAJOR=\([0-9]\+\)/@set LIBGUILE_\1_MAJOR \2/'   \
-       > "$@"
-
 MAINTAINERCLEANFILES = autoconf-macros.texi
 
-# To allow "make distcheck" to succeed, lib-version.texi must either
-# be cleaned or be included in the distribution.  There's no point
-# forcing a distribution build to regenerate lib-version.texi, because
-# it can't possibly be different on the build machine than where the
-# distribution was generated, so we might as well include it in the
-# distribution.
-EXTRA_DIST += lib-version.texi
+# Support for snarfing docs out of Scheme modules.
+snarf_doc = standard-library
+
+$(snarf_doc).am: $(snarf_doc).scm
+       GUILE_AUTO_COMPILE=0 ;                                                  \
+       variable="`echo $(snarf_doc) | tr - _`_scm_files" ;                     \
+       "$(preinstguile)" -l "$(srcdir)/$(snarf_doc).scm" -c "                  \
+        (format #t \"# Automatically generated, do not edit.~%\")              \
+        (format #t \"$$variable = \")                                          \
+        (for-each (lambda (m)                                                  \
+                    (format #t \"$$""(top_srcdir)/module/~a.scm \"             \
+                            (string-join (map symbol->string m) \"/\")))       \
+                  (map car *modules*))" > "$@.tmp"
+       mv "$@.tmp" "$@"
+
+# The following line leads to the definition of $(standard_library_scm_files).
+include standard-library.am
+
+$(snarf_doc).texi: $(standard_library_scm_files)
+       GUILE_AUTO_COMPILE=0                            \
+       "$(preinstguile)" "$(srcdir)/make-texinfo.scm"  \
+         "$(abs_srcdir)/$(snarf_doc).scm" > "$@.tmp"
+       mv "$@.tmp" "$@"
+
+DISTCLEANFILES = $(snarf_doc).texi
+EXTRA_DIST += $(snarf_doc).scm make-texinfo.scm $(snarf_doc).texi $(snarf_doc).am
+
+
+www-commit: html
+       cd guile.html; \
+       cvs -d :ext:cvs.sv.gnu.org:/web/guile \
+         import -m 'make www-commit in doc/ref' guile/docs/master/guile.html gnu \
+         $(shell date "+D%Y%m%d%H%M%S")