Merge commit 'origin/master' into vm
[bpt/guile.git] / ice-9 / Makefile.am
1 ## Process this file with automake to produce Makefile.in.
2 ##
3 ## Copyright (C) 1998,1999,2000,2001,2003, 2004, 2006, 2008 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
8 ## it under the terms of the GNU General Public License as
9 ## published by the Free Software Foundation; either version 2, 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 General Public License for more details.
16 ##
17 ## You should have received a copy of the GNU General Public
18 ## License along with GUILE; see the file COPYING. If not, write
19 ## to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
20 ## Floor, Boston, MA 02110-1301 USA
21
22 AUTOMAKE_OPTIONS = gnu
23
24 SUBDIRS = debugger debugging
25
26 # These should be installed and distributed.
27 modpath = ice-9
28 # Compile psyntax and boot-9 first, so that we get the speed benefit in
29 # the rest of the compilation. Also, if there is too much switching back
30 # and forth between interpreted and compiled code, we end up using more
31 # of the C stack than the interpreter would have; so avoid that by
32 # putting these core modules first.
33 SOURCES = psyntax-pp.scm boot-9.scm \
34 and-let-star.scm calling.scm common-list.scm \
35 debug.scm debugger.scm documentation.scm emacs.scm expect.scm \
36 format.scm getopt-long.scm hcons.scm i18n.scm \
37 lineio.scm ls.scm mapping.scm \
38 networking.scm null.scm optargs.scm poe.scm popen.scm \
39 posix.scm q.scm r4rs.scm r5rs.scm \
40 rdelim.scm receive.scm regex.scm runq.scm rw.scm \
41 safe-r5rs.scm safe.scm session.scm slib.scm stack-catch.scm \
42 streams.scm string-fun.scm syncase.scm threads.scm \
43 buffered-input.scm time.scm history.scm channel.scm \
44 pretty-print.scm ftw.scm gap-buffer.scm \
45 weak-vector.scm deprecated.scm list.scm serialize.scm \
46 gds-server.scm
47
48 # match.scm compiles, but then using it (via
49 # snarf-check-and-output-texi) fails. need to figure out what the
50 # problem is.
51 #
52 # occam-channel and gds-client use goops, which is not yet vm-compatible
53 # (it does some compilation-like optimizations for the interpreter), so
54 # punt on them for the time being.
55 #
56 # psyntax.scm needs help. fortunately it's only needed when recompiling
57 # psyntax-pp.scm.
58 NOCOMP_SOURCES = match.scm occam-channel.scm gds-client.scm psyntax.scm
59
60 include $(top_srcdir)/guilec.mk
61
62 ## test.scm is not currently installed.
63 EXTRA_DIST += test.scm compile-psyntax.scm ChangeLog-2008
64
65 TAGS_FILES = $(SOURCES)
66
67 # We expect this to never be invoked when there is not already
68 # ice-9/psyntax-pp.scm in %load-path, since compile-psyntax.scm depends
69 # on ice-9/syncase.scm, which does `(load-from-path "ice-9/psyntax-pp.scm")'.
70 # In other words, to bootstrap this file, you need to do something like:
71 # GUILE_LOAD_PATH=/usr/local/share/guile/1.5.4 make psyntax-pp.scm
72 include $(top_srcdir)/am/pre-inst-guile
73 psyntax-pp.scm: psyntax.scm
74 $(preinstguile) -s $(srcdir)/compile-psyntax.scm \
75 $(srcdir)/psyntax.scm $(srcdir)/psyntax-pp.scm