Add CPS language
[bpt/guile.git] / module / Makefile.am
CommitLineData
3bb299b3
LC
1## Process this file with automake to produce Makefile.in.
2##
f05bb849 3## Copyright (C) 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
3bb299b3
LC
4##
5## This file is part of GUILE.
6##
53befeb7
NJ
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
3bb299b3
LC
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
53befeb7 15## GNU Lesser General Public License for more details.
3bb299b3 16##
53befeb7
NJ
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
3bb299b3 21
6d66647d
AW
22include $(top_srcdir)/am/guilec
23
3bb299b3
LC
24# We're at the root of the module hierarchy.
25modpath =
26
c439c756
AW
27# Build eval.go first.
28$(GOBJECTS): ice-9/eval.go
29CLEANFILES += ice-9/eval.go
5161a3c0
AW
30nobase_mod_DATA += ice-9/eval.scm
31nobase_ccache_DATA += ice-9/eval.go
32EXTRA_DIST += ice-9/eval.scm
4fb23c17 33ETAGS_ARGS += ice-9/eval.scm
5161a3c0 34
af95414f
AW
35VM_TARGETS := system/vm/assembler.go system/vm/disassembler.go
36$(VM_TARGETS): $(top_builddir)/libguile/vm-operations.h
37
8210c853 38ice-9/boot-9.go: ice-9/boot-9.scm ice-9/quasisyntax.scm ice-9/r6rs-libraries.scm
8d5d0425 39ice-9/match.go: ice-9/match.scm ice-9/match.upstream.scm
8210c853 40
5f161164
AW
41# We can compile these in any order, but it's fastest if we compile
42# psyntax and boot-9 first, then the compiler itself, then the rest of
43# the code.
44SOURCES = \
45 ice-9/psyntax-pp.scm \
46 ice-9/boot-9.scm \
6ccc6678
AW
47 ice-9/vlist.scm \
48 srfi/srfi-1.scm \
49 language/tree-il/peval.scm \
50 language/tree-il/cse.scm \
5f161164
AW
51 \
52 language/tree-il.scm \
53 language/glil.scm \
54 language/assembly.scm \
55 $(TREE_IL_LANG_SOURCES) \
80b01fd0 56 $(CPS_LANG_SOURCES) \
5f161164
AW
57 $(GLIL_LANG_SOURCES) \
58 $(ASSEMBLY_LANG_SOURCES) \
59 $(BYTECODE_LANG_SOURCES) \
60 $(OBJCODE_LANG_SOURCES) \
61 $(VALUE_LANG_SOURCES) \
62 $(SCHEME_LANG_SOURCES) \
63 $(SYSTEM_BASE_SOURCES) \
64 \
65 $(ICE_9_SOURCES) \
66 $(SRFI_SOURCES) \
67 $(RNRS_SOURCES) \
68 $(OOP_SOURCES) \
69 $(SYSTEM_SOURCES) \
70 $(SCRIPTS_SOURCES) \
71 $(ECMASCRIPT_LANG_SOURCES) \
e4257331 72 $(ELISP_LANG_SOURCES) \
47f3ce52 73 $(BRAINFUCK_LANG_SOURCES) \
73124c6c
AW
74 $(LIB_SOURCES) \
75 $(WEB_SOURCES)
3bb299b3 76
58df2e43 77## test.scm is not currently installed.
cb65f76c
AR
78EXTRA_DIST += \
79 ice-9/test.scm \
80 ice-9/compile-psyntax.scm \
cb65f76c 81 ice-9/ChangeLog-2008
4fb23c17
NJ
82ETAGS_ARGS += \
83 ice-9/test.scm \
84 ice-9/compile-psyntax.scm \
85 ice-9/ChangeLog-2008
58df2e43 86
dbb39d9c 87ice-9/psyntax-pp.scm.gen:
6b8bc6f8 88 $(top_builddir_absolute)/meta/guile --no-auto-compile -s $(srcdir)/ice-9/compile-psyntax.scm \
58df2e43 89 $(srcdir)/ice-9/psyntax.scm $(srcdir)/ice-9/psyntax-pp.scm
90812095 90
736aff00
LC
91.PHONY: ice-9/psyntax-pp.scm.gen
92
f7012874 93# Keep this rule in sync with that in `am/guilec'.
c439c756 94ice-9/psyntax-pp.go: ice-9/psyntax.scm ice-9/psyntax-pp.scm
f7012874 95 $(AM_V_GUILEC)GUILE_AUTO_COMPILE=0 \
a0a8dd62
LC
96 $(top_builddir)/meta/uninstalled-env \
97 guild compile --target="$(host)" $(GUILE_WARNINGS) \
f7012874
LC
98 -L "$(abs_srcdir)" -L "$(abs_builddir)" \
99 -L "$(abs_top_srcdir)/guile-readline" \
a0a8dd62 100 -o "ice-9/psyntax-pp.go" "$(srcdir)/ice-9/psyntax.scm"
58df2e43 101
3bb299b3 102SCHEME_LANG_SOURCES = \
b81d329e
AW
103 language/scheme/spec.scm \
104 language/scheme/compile-tree-il.scm \
27c8177f 105 language/scheme/decompile-tree-il.scm
3bb299b3 106
9efc833d 107TREE_IL_LANG_SOURCES = \
55ae815b 108 language/tree-il/primitives.scm \
da9b2b71 109 language/tree-il/effects.scm \
c21c89b1 110 language/tree-il/fix-letrec.scm \
b275fb26
AW
111 language/tree-il/optimize.scm \
112 language/tree-il/canonicalize.scm \
cf10678f 113 language/tree-il/analyze.scm \
b275fb26 114 language/tree-il/inline.scm \
cf10678f 115 language/tree-il/compile-glil.scm \
6d2d6897 116 language/tree-il/debug.scm \
cf10678f 117 language/tree-il/spec.scm
811d10f5 118
80b01fd0
AW
119CPS_LANG_SOURCES = \
120 language/cps.scm \
121 language/cps/verify.scm
122
3bb299b3 123GLIL_LANG_SOURCES = \
c085589b 124 language/glil/spec.scm language/glil/compile-assembly.scm
3bb299b3
LC
125
126ASSEMBLY_LANG_SOURCES = \
127 language/assembly/spec.scm \
128 language/assembly/compile-bytecode.scm \
129 language/assembly/decompile-bytecode.scm \
130 language/assembly/disassemble.scm
131
132BYTECODE_LANG_SOURCES = \
133 language/bytecode/spec.scm
134
135OBJCODE_LANG_SOURCES = \
b8bc86bc
AW
136 language/objcode/spec.scm \
137 language/objcode/elf.scm
3bb299b3
LC
138
139VALUE_LANG_SOURCES = \
140 language/value/spec.scm
141
142ECMASCRIPT_LANG_SOURCES = \
3bb299b3
LC
143 language/ecmascript/tokenize.scm \
144 language/ecmascript/parse.scm \
3bb299b3
LC
145 language/ecmascript/impl.scm \
146 language/ecmascript/base.scm \
147 language/ecmascript/function.scm \
148 language/ecmascript/array.scm \
eb1482ac 149 language/ecmascript/compile-tree-il.scm \
8f9b9683 150 language/ecmascript/spec.scm
3bb299b3 151
e4257331 152ELISP_LANG_SOURCES = \
b05ca4ab 153 language/elisp/falias.scm \
e4257331
AW
154 language/elisp/lexer.scm \
155 language/elisp/parser.scm \
156 language/elisp/bindings.scm \
157 language/elisp/compile-tree-il.scm \
158 language/elisp/runtime.scm \
159 language/elisp/runtime/function-slot.scm \
e4257331
AW
160 language/elisp/runtime/value-slot.scm \
161 language/elisp/spec.scm
162
6370a6ad 163BRAINFUCK_LANG_SOURCES = \
6370a6ad 164 language/brainfuck/parse.scm \
5c27902e
AW
165 language/brainfuck/compile-scheme.scm \
166 language/brainfuck/compile-tree-il.scm \
167 language/brainfuck/spec.scm
6370a6ad 168
6d66647d 169SCRIPTS_SOURCES = \
6d66647d
AW
170 scripts/compile.scm \
171 scripts/disassemble.scm \
172 scripts/display-commentary.scm \
173 scripts/doc-snarf.scm \
174 scripts/frisk.scm \
175 scripts/generate-autoload.scm \
f4a76a31 176 scripts/help.scm \
6d66647d 177 scripts/lint.scm \
9228f9eb 178 scripts/list.scm \
6d66647d
AW
179 scripts/punify.scm \
180 scripts/read-scheme-source.scm \
181 scripts/read-text-outline.scm \
182 scripts/use2dot.scm \
183 scripts/snarf-check-and-output-texi.scm \
184 scripts/summarize-guile-TODO.scm \
6d66647d
AW
185 scripts/api-diff.scm \
186 scripts/read-rfc822.scm \
187 scripts/snarf-guile-m4-docs.scm
188
1b101522 189SYSTEM_BASE_SOURCES = \
5f161164
AW
190 system/base/pmatch.scm \
191 system/base/syntax.scm \
192 system/base/compile.scm \
193 system/base/language.scm \
1b101522 194 system/base/lalr.scm \
42090217 195 system/base/message.scm \
46954839
MW
196 system/base/target.scm \
197 system/base/ck.scm
5f161164 198
58df2e43 199ICE_9_SOURCES = \
58df2e43 200 ice-9/r5rs.scm \
2a8a127b 201 ice-9/deprecated.scm \
58df2e43 202 ice-9/and-let-star.scm \
dd0d987f 203 ice-9/binary-ports.scm \
58df2e43 204 ice-9/calling.scm \
da5d81a1 205 ice-9/command-line.scm \
58df2e43 206 ice-9/common-list.scm \
9b2a2a39 207 ice-9/control.scm \
9225df3c 208 ice-9/curried-definitions.scm \
58df2e43 209 ice-9/debug.scm \
58df2e43 210 ice-9/documentation.scm \
d59dd06e 211 ice-9/eval-string.scm \
58df2e43
AW
212 ice-9/expect.scm \
213 ice-9/format.scm \
0d4e6ca3 214 ice-9/futures.scm \
58df2e43
AW
215 ice-9/getopt-long.scm \
216 ice-9/hcons.scm \
217 ice-9/i18n.scm \
f05bb849 218 ice-9/iconv.scm \
58df2e43
AW
219 ice-9/lineio.scm \
220 ice-9/ls.scm \
221 ice-9/mapping.scm \
222 ice-9/match.scm \
223 ice-9/networking.scm \
224 ice-9/null.scm \
225 ice-9/occam-channel.scm \
226 ice-9/optargs.scm \
89c3c9ec
NL
227 ice-9/peg/simplify-tree.scm \
228 ice-9/peg/codegen.scm \
229 ice-9/peg/cache.scm \
230 ice-9/peg/using-parsers.scm \
231 ice-9/peg/string-peg.scm \
eee0877c 232 ice-9/peg.scm \
58df2e43 233 ice-9/poe.scm \
6f81b18a 234 ice-9/poll.scm \
58df2e43
AW
235 ice-9/posix.scm \
236 ice-9/q.scm \
237 ice-9/rdelim.scm \
238 ice-9/receive.scm \
239 ice-9/regex.scm \
240 ice-9/runq.scm \
241 ice-9/rw.scm \
242 ice-9/safe-r5rs.scm \
243 ice-9/safe.scm \
d8158b83 244 ice-9/save-stack.scm \
b2e27da3 245 ice-9/scm-style-repl.scm \
58df2e43
AW
246 ice-9/session.scm \
247 ice-9/slib.scm \
248 ice-9/stack-catch.scm \
249 ice-9/streams.scm \
250 ice-9/string-fun.scm \
251 ice-9/syncase.scm \
252 ice-9/threads.scm \
ff87b2bd 253 ice-9/top-repl.scm \
58df2e43
AW
254 ice-9/buffered-input.scm \
255 ice-9/time.scm \
256 ice-9/history.scm \
257 ice-9/channel.scm \
258 ice-9/pretty-print.scm \
259 ice-9/ftw.scm \
260 ice-9/gap-buffer.scm \
261 ice-9/weak-vector.scm \
58df2e43
AW
262 ice-9/list.scm \
263 ice-9/serialize.scm \
d062a8c1 264 ice-9/local-eval.scm
58df2e43 265
df3d365a 266if BUILD_ICE_9_POPEN
712ca51f
LC
267
268# This functionality is missing on systems without `fork'---i.e., Windows.
269ICE_9_SOURCES += ice-9/popen.scm
270
df3d365a
LC
271# These modules rely on (ice-9 popen).
272SCRIPTS_SOURCES += \
273 scripts/autofrisk.scm \
274 scripts/scan-api.scm
275
276endif BUILD_ICE_9_POPEN
712ca51f 277
58df2e43 278SRFI_SOURCES = \
58df2e43
AW
279 srfi/srfi-2.scm \
280 srfi/srfi-4.scm \
ac8ed3db 281 srfi/srfi-4/gnu.scm \
58df2e43
AW
282 srfi/srfi-6.scm \
283 srfi/srfi-8.scm \
284 srfi/srfi-9.scm \
3d82d9a6 285 srfi/srfi-9/gnu.scm \
58df2e43
AW
286 srfi/srfi-10.scm \
287 srfi/srfi-11.scm \
288 srfi/srfi-13.scm \
289 srfi/srfi-14.scm \
290 srfi/srfi-16.scm \
291 srfi/srfi-17.scm \
f176c584 292 srfi/srfi-18.scm \
58df2e43
AW
293 srfi/srfi-19.scm \
294 srfi/srfi-26.scm \
56ec46a7 295 srfi/srfi-27.scm \
58df2e43
AW
296 srfi/srfi-31.scm \
297 srfi/srfi-34.scm \
298 srfi/srfi-35.scm \
299 srfi/srfi-37.scm \
12708eeb 300 srfi/srfi-38.scm \
50d08cd8 301 srfi/srfi-41.scm \
fdc8fd46 302 srfi/srfi-42.scm \
58df2e43 303 srfi/srfi-39.scm \
f16a2007 304 srfi/srfi-45.scm \
58df2e43 305 srfi/srfi-60.scm \
8175a07e 306 srfi/srfi-67.scm \
58df2e43 307 srfi/srfi-69.scm \
822aacbc
AW
308 srfi/srfi-88.scm \
309 srfi/srfi-98.scm
58df2e43 310
1ee2c72e 311RNRS_SOURCES = \
e44d2e4d
AW
312 rnrs/base.scm \
313 rnrs/conditions.scm \
314 rnrs/control.scm \
315 rnrs/enums.scm \
316 rnrs/eval.scm \
317 rnrs/exceptions.scm \
318 rnrs/files.scm \
319 rnrs/hashtables.scm \
320 rnrs/lists.scm \
321 rnrs/mutable-pairs.scm \
322 rnrs/mutable-strings.scm \
323 rnrs/programs.scm \
324 rnrs/r5rs.scm \
325 rnrs/sorting.scm \
326 rnrs/syntax-case.scm \
327 rnrs/unicode.scm \
328 rnrs/arithmetic/bitwise.scm \
329 rnrs/arithmetic/fixnums.scm \
330 rnrs/arithmetic/flonums.scm \
4c06cb2c 331 rnrs/bytevectors.scm \
e44d2e4d 332 rnrs/io/simple.scm \
60b240e9 333 rnrs/io/ports.scm \
e44d2e4d
AW
334 rnrs/records/inspection.scm \
335 rnrs/records/procedural.scm \
9d798af7
LC
336 rnrs/records/syntactic.scm \
337 rnrs.scm
1ee2c72e 338
6d66647d
AW
339EXTRA_DIST += scripts/ChangeLog-2008
340EXTRA_DIST += scripts/README
341
58df2e43
AW
342OOP_SOURCES = \
343 oop/goops.scm \
344 oop/goops/active-slot.scm \
345 oop/goops/compile.scm \
346 oop/goops/composite-slot.scm \
347 oop/goops/describe.scm \
348 oop/goops/dispatch.scm \
349 oop/goops/internal.scm \
350 oop/goops/save.scm \
351 oop/goops/stklos.scm \
352 oop/goops/util.scm \
353 oop/goops/accessors.scm \
354 oop/goops/simple.scm
355
3b12702f
AW
356SYSTEM_SOURCES = \
357 system/vm/inspect.scm \
36b5e394 358 system/vm/coverage.scm \
83e7c584 359 system/vm/elf.scm \
45037e75 360 system/vm/linker.scm \
3b12702f
AW
361 system/vm/frame.scm \
362 system/vm/instruction.scm \
363 system/vm/objcode.scm \
3b12702f
AW
364 system/vm/program.scm \
365 system/vm/trace.scm \
c939b127 366 system/vm/traps.scm \
b9badc35 367 system/vm/trap-state.scm \
e78991aa 368 system/vm/assembler.scm \
cb86cbd7 369 system/vm/debug.scm \
82e299f3 370 system/vm/disassembler.scm \
3b12702f 371 system/vm/vm.scm \
ab4779ff 372 system/foreign.scm \
3b12702f 373 system/xref.scm \
33df2ec7
AW
374 system/repl/debug.scm \
375 system/repl/error-handling.scm \
3b12702f 376 system/repl/common.scm \
33df2ec7 377 system/repl/command.scm \
d30542c2
AW
378 system/repl/repl.scm \
379 system/repl/server.scm
9c35c579 380
47f3ce52
AW
381LIB_SOURCES = \
382 statprof.scm \
383 sxml/apply-templates.scm \
384 sxml/fold.scm \
400a5dcb 385 sxml/match.scm \
47f3ce52
AW
386 sxml/simple.scm \
387 sxml/ssax/input-parse.scm \
388 sxml/ssax.scm \
389 sxml/transform.scm \
390 sxml/xpath.scm \
391 texinfo.scm \
392 texinfo/docbook.scm \
393 texinfo/html.scm \
394 texinfo/indexing.scm \
395 texinfo/string-utils.scm \
396 texinfo/plain-text.scm \
397 texinfo/reflection.scm \
398 texinfo/serialize.scm
399
73124c6c 400WEB_SOURCES = \
680c8c5a 401 web/client.scm \
440840c1 402 web/http.scm \
ad05d4e8 403 web/request.scm \
a9eeb2f4 404 web/response.scm \
79ef79ee
AW
405 web/server.scm \
406 web/server/http.scm \
73124c6c
AW
407 web/uri.scm
408
58df2e43
AW
409EXTRA_DIST += oop/ChangeLog-2008
410
6937c7aa
BT
411ELISP_SOURCES = \
412 language/elisp/boot.el
413
3bb299b3 414NOCOMP_SOURCES = \
d967913f 415 ice-9/match.upstream.scm \
47f3ce52 416 ice-9/psyntax.scm \
b1e4c7cc 417 ice-9/r6rs-libraries.scm \
47f3ce52 418 ice-9/quasisyntax.scm \
fdc8fd46 419 srfi/srfi-42/ec.scm \
8175a07e 420 srfi/srfi-67/compare.scm \
1b101522 421 system/base/lalr.upstream.scm \
47f3ce52 422 system/repl/describe.scm \
400a5dcb 423 sxml/sxml-match.ss \
47f3ce52
AW
424 sxml/upstream/SSAX.scm \
425 sxml/upstream/SXML-tree-trans.scm \
426 sxml/upstream/SXPath-old.scm \
427 sxml/upstream/assert.scm \
428 sxml/upstream/input-parse.scm