The load-module routine tries to interpret relative paths relative to
[bpt/guile.git] / doc / ref / Makefile.am
1 ## Process this file with Automake to create Makefile.in
2 ##
3 ## Copyright (C) 1998, 2004, 2006, 2008, 2009, 2010 Free Software Foundation, Inc.
4 ##
5 ## This file is part of GUILE.
6 ##
7 ## GUILE is free software; you can redistribute it and/or modify it
8 ## under the terms of the GNU Lesser General Public License as
9 ## published by the Free Software Foundation; either version 3, or
10 ## (at your option) any later version.
11 ##
12 ## GUILE is distributed in the hope that it will be useful, but
13 ## WITHOUT ANY WARRANTY; without even the implied warranty of
14 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ## GNU Lesser General Public License for more details.
16 ##
17 ## You should have received a copy of the GNU Lesser General Public
18 ## License along with GUILE; see the file COPYING.LESSER. If not,
19 ## write to the Free Software Foundation, Inc., 51 Franklin Street,
20 ## Fifth Floor, Boston, MA 02110-1301 USA
21
22 AUTOMAKE_OPTIONS = gnu
23
24 BUILT_SOURCES = lib-version.texi standard-library.texi
25
26 info_TEXINFOS = guile.texi
27
28 guile_TEXINFOS = preface.texi \
29 intro.texi \
30 libguile-program.texi \
31 scheme-intro.texi \
32 api-scm.texi \
33 api-snarf.texi \
34 api-smobs.texi \
35 scheme-ideas.texi \
36 api-data.texi \
37 api-procedures.texi \
38 api-utility.texi \
39 api-binding.texi \
40 api-control.texi \
41 api-io.texi \
42 api-evaluation.texi \
43 api-memory.texi \
44 api-modules.texi \
45 api-scheduling.texi \
46 api-options.texi \
47 api-translation.texi \
48 api-i18n.texi \
49 api-debug.texi \
50 scheme-reading.texi \
51 scheme-indices.texi \
52 slib.texi \
53 posix.texi \
54 expect.texi \
55 scsh.texi \
56 tcltk.texi \
57 scheme-scripts.texi \
58 api-overview.texi \
59 scheme-debugging.texi \
60 scheme-using.texi \
61 indices.texi \
62 script-getopt.texi \
63 data-rep.texi \
64 repl-modules.texi \
65 srfi-modules.texi \
66 misc-modules.texi \
67 api-compound.texi \
68 autoconf.texi \
69 autoconf-macros.texi \
70 tools.texi \
71 history.texi \
72 vm.texi \
73 compiler.texi \
74 fdl.texi \
75 libguile-concepts.texi \
76 libguile-smobs.texi \
77 libguile-snarf.texi \
78 libguile-linking.texi \
79 libguile-extensions.texi \
80 api-init.texi \
81 mod-getopt-long.texi \
82 goops.texi \
83 goops-tutorial.texi \
84 effective-version.texi
85
86 ETAGS_ARGS = $(info_TEXINFOS) $(guile_TEXINFOS)
87
88 PICTURES = hierarchy.eps \
89 hierarchy.pdf \
90 hierarchy.png \
91 hierarchy.txt \
92 gds.eps \
93 gds.pdf \
94 gds.txt \
95 scheme.eps \
96 scheme.pdf \
97 scheme.txt \
98 mop.text
99
100 noinst_DATA = $(PICTURES)
101
102 EXTRA_DIST = ChangeLog-2008 $(PICTURES)
103
104 include $(top_srcdir)/am/pre-inst-guile
105
106 # Automated snarfing
107
108 autoconf.texi: autoconf-macros.texi
109 autoconf-macros.texi: $(top_srcdir)/meta/guile.m4
110 GUILE_AUTO_COMPILE=0 $(top_builddir)/meta/uninstalled-env guile-tools \
111 snarf-guile-m4-docs $(top_srcdir)/meta/guile.m4 \
112 > $(srcdir)/$@
113
114 lib-version.texi: $(top_srcdir)/GUILE-VERSION
115 cat "$^" | grep '^LIBGUILE_.*_MAJOR' | \
116 sed 's/^LIBGUILE_\([A-Z0-9_]*\)_MAJOR=\([0-9]\+\)/@set LIBGUILE_\1_MAJOR \2/' \
117 > "$@"
118
119 MAINTAINERCLEANFILES = autoconf-macros.texi
120
121 # To allow "make distcheck" to succeed, lib-version.texi must either
122 # be cleaned or be included in the distribution. Or both - and in
123 # fact both are good. There's no point forcing a distribution build
124 # to regenerate lib-version.texi, because it can't possibly be
125 # different on the build machine than where the distribution was
126 # generated, so we might as well include it in the distribution.
127 EXTRA_DIST += lib-version.texi
128 # But when we want to get back to a clean tree, lib-version.texi
129 # should be cleaned.
130 CLEANFILES = lib-version.texi
131
132 # Support for snarfing docs out of Scheme modules.
133 snarf_doc = standard-library
134
135 $(snarf_doc).am: $(snarf_doc).scm
136 GUILE_AUTO_COMPILE=0 ; \
137 variable="`echo $(snarf_doc) | tr - _`_scm_files" ; \
138 "$(preinstguile)" -l "$(srcdir)/$(snarf_doc).scm" -c " \
139 (format #t \"# Automatically generated, do not edit.~%\") \
140 (format #t \"$$variable = \") \
141 (for-each (lambda (m) \
142 (format #t \"$$""(top_srcdir)/module/~a.scm \" \
143 (string-join (map symbol->string m) \"/\"))) \
144 (map car *modules*))" > "$@.tmp"
145 mv "$@.tmp" "$@"
146
147 # The following line leads to the definition of $(standard_library_scm_files).
148 include standard-library.am
149
150 $(snarf_doc).texi: $(standard_library_scm_files)
151 GUILE_AUTO_COMPILE=0 \
152 "$(preinstguile)" "$(srcdir)/make-texinfo.scm" \
153 "$(abs_srcdir)/$(snarf_doc).scm" > "$@.tmp"
154 mv "$@.tmp" "$@"
155
156 CLEANFILES += $(snarf_doc).texi
157 EXTRA_DIST += $(snarf_doc).scm make-texinfo.scm $(snarf_doc).texi $(snarf_doc).am