GDB support: add frame annotators and filters
[bpt/guile.git] / module / Makefile.am
1 ## Process this file with automake to produce Makefile.in.
2 ##
3 ## Copyright (C) 2009, 2010, 2011, 2012, 2013,
4 ## 2014, 2015 Free Software Foundation, Inc.
5 ##
6 ## This file is part of GUILE.
7 ##
8 ## GUILE is free software; you can redistribute it and/or modify it
9 ## under the terms of the GNU Lesser General Public License as
10 ## published by the Free Software Foundation; either version 3, or
11 ## (at your option) any later version.
12 ##
13 ## GUILE is distributed in the hope that it will be useful, but
14 ## WITHOUT ANY WARRANTY; without even the implied warranty of
15 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 ## GNU Lesser General Public License for more details.
17 ##
18 ## You should have received a copy of the GNU Lesser General Public
19 ## License along with GUILE; see the file COPYING.LESSER. If not,
20 ## write to the Free Software Foundation, Inc., 51 Franklin Street,
21 ## Fifth Floor, Boston, MA 02110-1301 USA
22
23 include $(top_srcdir)/am/guilec
24
25 # We're at the root of the module hierarchy.
26 modpath =
27
28 # Build eval.go first. Then build psyntax-pp.go, as the expander has to
29 # run on every loaded scheme file. It doesn't pay off at compile-time
30 # to interpret the expander in parallel.
31 BOOT_SOURCES = ice-9/psyntax-pp.scm
32 BOOT_GOBJECTS = $(BOOT_SOURCES:%.scm=%.go)
33 $(BOOT_GOBJECTS): ice-9/eval.go
34 $(GOBJECTS): $(BOOT_GOBJECTS)
35 CLEANFILES += ice-9/eval.go $(BOOT_GOBJECTS)
36 nobase_mod_DATA += ice-9/eval.scm $(BOOT_SOURCES)
37 nobase_ccache_DATA += ice-9/eval.go $(BOOT_GOBJECTS)
38 EXTRA_DIST += ice-9/eval.scm $(BOOT_SOURCES)
39 ETAGS_ARGS += ice-9/eval.scm $(BOOT_SOURCES)
40
41 VM_TARGETS := system/vm/assembler.go system/vm/disassembler.go
42 $(VM_TARGETS): $(top_builddir)/libguile/vm-operations.h
43
44 ice-9/boot-9.go: ice-9/boot-9.scm ice-9/quasisyntax.scm ice-9/r6rs-libraries.scm
45 ice-9/match.go: ice-9/match.scm ice-9/match.upstream.scm
46
47 # We can compile these in any order, but it's fastest if we compile
48 # boot-9 first, then the compiler itself, then the rest of the code.
49 SOURCES = \
50 ice-9/boot-9.scm \
51 language/tree-il/peval.scm \
52 language/cps/types.scm \
53 system/vm/elf.scm \
54 ice-9/vlist.scm \
55 srfi/srfi-1.scm \
56 system/vm/linker.scm \
57 system/vm/dwarf.scm \
58 system/vm/assembler.scm \
59 \
60 language/tree-il.scm \
61 $(TREE_IL_LANG_SOURCES) \
62 $(CPS_LANG_SOURCES) \
63 $(BYTECODE_LANG_SOURCES) \
64 $(VALUE_LANG_SOURCES) \
65 $(SCHEME_LANG_SOURCES) \
66 $(SYSTEM_BASE_SOURCES) \
67 \
68 $(ICE_9_SOURCES) \
69 $(SYSTEM_SOURCES) \
70 $(SRFI_SOURCES) \
71 $(RNRS_SOURCES) \
72 $(OOP_SOURCES) \
73 $(SCRIPTS_SOURCES) \
74 $(ECMASCRIPT_LANG_SOURCES) \
75 $(ELISP_LANG_SOURCES) \
76 $(BRAINFUCK_LANG_SOURCES) \
77 $(LIB_SOURCES) \
78 $(WEB_SOURCES)
79
80 ## test.scm is not currently installed.
81 EXTRA_DIST += \
82 ice-9/test.scm \
83 ice-9/compile-psyntax.scm \
84 ice-9/ChangeLog-2008
85 ETAGS_ARGS += \
86 ice-9/test.scm \
87 ice-9/compile-psyntax.scm \
88 ice-9/ChangeLog-2008
89
90 ice-9/psyntax-pp.scm.gen:
91 $(top_builddir_absolute)/meta/guile --no-auto-compile -s $(srcdir)/ice-9/compile-psyntax.scm \
92 $(srcdir)/ice-9/psyntax.scm $(srcdir)/ice-9/psyntax-pp.scm
93
94 .PHONY: ice-9/psyntax-pp.scm.gen
95
96 # Keep this rule in sync with that in `am/guilec'.
97 ice-9/psyntax-pp.go: ice-9/psyntax.scm ice-9/psyntax-pp.scm
98 $(AM_V_GUILEC)GUILE_AUTO_COMPILE=0 \
99 $(top_builddir)/meta/uninstalled-env \
100 guild compile --target="$(host)" $(GUILE_WARNINGS) \
101 -L "$(abs_srcdir)" -L "$(abs_builddir)" \
102 -L "$(abs_top_srcdir)/guile-readline" \
103 -o "ice-9/psyntax-pp.go" "$(srcdir)/ice-9/psyntax.scm"
104
105 SCHEME_LANG_SOURCES = \
106 language/scheme/spec.scm \
107 language/scheme/compile-tree-il.scm \
108 language/scheme/decompile-tree-il.scm
109
110 TREE_IL_LANG_SOURCES = \
111 language/tree-il/primitives.scm \
112 language/tree-il/effects.scm \
113 language/tree-il/fix-letrec.scm \
114 language/tree-il/optimize.scm \
115 language/tree-il/canonicalize.scm \
116 language/tree-il/analyze.scm \
117 language/tree-il/inline.scm \
118 language/tree-il/compile-cps.scm \
119 language/tree-il/debug.scm \
120 language/tree-il/spec.scm
121
122 CPS_LANG_SOURCES = \
123 language/cps.scm \
124 language/cps/arities.scm \
125 language/cps/closure-conversion.scm \
126 language/cps/compile-bytecode.scm \
127 language/cps/constructors.scm \
128 language/cps/contification.scm \
129 language/cps/cse.scm \
130 language/cps/dce.scm \
131 language/cps/dfg.scm \
132 language/cps/effects-analysis.scm \
133 language/cps/elide-values.scm \
134 language/cps/intmap.scm \
135 language/cps/intset.scm \
136 language/cps/primitives.scm \
137 language/cps/prune-bailouts.scm \
138 language/cps/prune-top-level-scopes.scm \
139 language/cps/reify-primitives.scm \
140 language/cps/renumber.scm \
141 language/cps/self-references.scm \
142 language/cps/slot-allocation.scm \
143 language/cps/simplify.scm \
144 language/cps/spec.scm \
145 language/cps/specialize-primcalls.scm \
146 language/cps/type-fold.scm \
147 language/cps/verify.scm
148
149 BYTECODE_LANG_SOURCES = \
150 language/bytecode.scm \
151 language/bytecode/spec.scm
152
153 VALUE_LANG_SOURCES = \
154 language/value/spec.scm
155
156 ECMASCRIPT_LANG_SOURCES = \
157 language/ecmascript/tokenize.scm \
158 language/ecmascript/parse.scm \
159 language/ecmascript/impl.scm \
160 language/ecmascript/base.scm \
161 language/ecmascript/function.scm \
162 language/ecmascript/array.scm \
163 language/ecmascript/compile-tree-il.scm \
164 language/ecmascript/spec.scm
165
166 ELISP_LANG_SOURCES = \
167 language/elisp/falias.scm \
168 language/elisp/lexer.scm \
169 language/elisp/parser.scm \
170 language/elisp/bindings.scm \
171 language/elisp/compile-tree-il.scm \
172 language/elisp/runtime.scm \
173 language/elisp/runtime/function-slot.scm \
174 language/elisp/runtime/value-slot.scm \
175 language/elisp/spec.scm
176
177 BRAINFUCK_LANG_SOURCES = \
178 language/brainfuck/parse.scm \
179 language/brainfuck/compile-scheme.scm \
180 language/brainfuck/compile-tree-il.scm \
181 language/brainfuck/spec.scm
182
183 SCRIPTS_SOURCES = \
184 scripts/compile.scm \
185 scripts/disassemble.scm \
186 scripts/display-commentary.scm \
187 scripts/doc-snarf.scm \
188 scripts/frisk.scm \
189 scripts/generate-autoload.scm \
190 scripts/help.scm \
191 scripts/lint.scm \
192 scripts/list.scm \
193 scripts/punify.scm \
194 scripts/read-scheme-source.scm \
195 scripts/read-text-outline.scm \
196 scripts/use2dot.scm \
197 scripts/snarf-check-and-output-texi.scm \
198 scripts/summarize-guile-TODO.scm \
199 scripts/api-diff.scm \
200 scripts/read-rfc822.scm \
201 scripts/snarf-guile-m4-docs.scm \
202 scripts/autofrisk.scm \
203 scripts/scan-api.scm
204
205 SYSTEM_BASE_SOURCES = \
206 system/base/pmatch.scm \
207 system/base/syntax.scm \
208 system/base/compile.scm \
209 system/base/language.scm \
210 system/base/lalr.scm \
211 system/base/message.scm \
212 system/base/target.scm \
213 system/base/types.scm \
214 system/base/ck.scm
215
216 ICE_9_SOURCES = \
217 ice-9/r5rs.scm \
218 ice-9/deprecated.scm \
219 ice-9/and-let-star.scm \
220 ice-9/binary-ports.scm \
221 ice-9/calling.scm \
222 ice-9/command-line.scm \
223 ice-9/common-list.scm \
224 ice-9/control.scm \
225 ice-9/curried-definitions.scm \
226 ice-9/debug.scm \
227 ice-9/documentation.scm \
228 ice-9/eval-string.scm \
229 ice-9/expect.scm \
230 ice-9/format.scm \
231 ice-9/futures.scm \
232 ice-9/getopt-long.scm \
233 ice-9/hash-table.scm \
234 ice-9/hcons.scm \
235 ice-9/i18n.scm \
236 ice-9/iconv.scm \
237 ice-9/lineio.scm \
238 ice-9/ls.scm \
239 ice-9/mapping.scm \
240 ice-9/match.scm \
241 ice-9/networking.scm \
242 ice-9/null.scm \
243 ice-9/occam-channel.scm \
244 ice-9/optargs.scm \
245 ice-9/peg/simplify-tree.scm \
246 ice-9/peg/codegen.scm \
247 ice-9/peg/cache.scm \
248 ice-9/peg/using-parsers.scm \
249 ice-9/peg/string-peg.scm \
250 ice-9/peg.scm \
251 ice-9/poe.scm \
252 ice-9/poll.scm \
253 ice-9/popen.scm \
254 ice-9/posix.scm \
255 ice-9/q.scm \
256 ice-9/rdelim.scm \
257 ice-9/receive.scm \
258 ice-9/regex.scm \
259 ice-9/runq.scm \
260 ice-9/rw.scm \
261 ice-9/safe-r5rs.scm \
262 ice-9/safe.scm \
263 ice-9/save-stack.scm \
264 ice-9/scm-style-repl.scm \
265 ice-9/session.scm \
266 ice-9/slib.scm \
267 ice-9/stack-catch.scm \
268 ice-9/streams.scm \
269 ice-9/string-fun.scm \
270 ice-9/syncase.scm \
271 ice-9/threads.scm \
272 ice-9/top-repl.scm \
273 ice-9/buffered-input.scm \
274 ice-9/time.scm \
275 ice-9/history.scm \
276 ice-9/channel.scm \
277 ice-9/pretty-print.scm \
278 ice-9/ftw.scm \
279 ice-9/gap-buffer.scm \
280 ice-9/weak-vector.scm \
281 ice-9/list.scm \
282 ice-9/serialize.scm \
283 ice-9/local-eval.scm \
284 ice-9/unicode.scm
285
286 srfi/srfi-64.go: srfi/srfi-64.scm srfi/srfi-64/testing.scm
287
288 SRFI_SOURCES = \
289 srfi/srfi-2.scm \
290 srfi/srfi-4.scm \
291 srfi/srfi-4/gnu.scm \
292 srfi/srfi-6.scm \
293 srfi/srfi-8.scm \
294 srfi/srfi-9.scm \
295 srfi/srfi-9/gnu.scm \
296 srfi/srfi-10.scm \
297 srfi/srfi-11.scm \
298 srfi/srfi-13.scm \
299 srfi/srfi-14.scm \
300 srfi/srfi-16.scm \
301 srfi/srfi-17.scm \
302 srfi/srfi-18.scm \
303 srfi/srfi-19.scm \
304 srfi/srfi-26.scm \
305 srfi/srfi-27.scm \
306 srfi/srfi-28.scm \
307 srfi/srfi-31.scm \
308 srfi/srfi-34.scm \
309 srfi/srfi-35.scm \
310 srfi/srfi-37.scm \
311 srfi/srfi-38.scm \
312 srfi/srfi-41.scm \
313 srfi/srfi-42.scm \
314 srfi/srfi-43.scm \
315 srfi/srfi-39.scm \
316 srfi/srfi-45.scm \
317 srfi/srfi-60.scm \
318 srfi/srfi-64.scm \
319 srfi/srfi-67.scm \
320 srfi/srfi-69.scm \
321 srfi/srfi-88.scm \
322 srfi/srfi-98.scm \
323 srfi/srfi-111.scm
324
325 RNRS_SOURCES = \
326 rnrs/base.scm \
327 rnrs/conditions.scm \
328 rnrs/control.scm \
329 rnrs/enums.scm \
330 rnrs/eval.scm \
331 rnrs/exceptions.scm \
332 rnrs/files.scm \
333 rnrs/hashtables.scm \
334 rnrs/lists.scm \
335 rnrs/mutable-pairs.scm \
336 rnrs/mutable-strings.scm \
337 rnrs/programs.scm \
338 rnrs/r5rs.scm \
339 rnrs/sorting.scm \
340 rnrs/syntax-case.scm \
341 rnrs/unicode.scm \
342 rnrs/arithmetic/bitwise.scm \
343 rnrs/arithmetic/fixnums.scm \
344 rnrs/arithmetic/flonums.scm \
345 rnrs/bytevectors.scm \
346 rnrs/io/simple.scm \
347 rnrs/io/ports.scm \
348 rnrs/records/inspection.scm \
349 rnrs/records/procedural.scm \
350 rnrs/records/syntactic.scm \
351 rnrs.scm
352
353 EXTRA_DIST += scripts/ChangeLog-2008
354 EXTRA_DIST += scripts/README
355
356 OOP_SOURCES = \
357 oop/goops.scm \
358 oop/goops/active-slot.scm \
359 oop/goops/composite-slot.scm \
360 oop/goops/describe.scm \
361 oop/goops/internal.scm \
362 oop/goops/save.scm \
363 oop/goops/stklos.scm \
364 oop/goops/accessors.scm \
365 oop/goops/simple.scm
366
367 SYSTEM_SOURCES = \
368 system/vm/inspect.scm \
369 system/vm/coverage.scm \
370 system/vm/frame.scm \
371 system/vm/loader.scm \
372 system/vm/program.scm \
373 system/vm/trace.scm \
374 system/vm/traps.scm \
375 system/vm/trap-state.scm \
376 system/vm/debug.scm \
377 system/vm/disassembler.scm \
378 system/vm/vm.scm \
379 system/foreign.scm \
380 system/foreign-object.scm \
381 system/xref.scm \
382 system/repl/debug.scm \
383 system/repl/error-handling.scm \
384 system/repl/common.scm \
385 system/repl/command.scm \
386 system/repl/repl.scm \
387 system/repl/server.scm \
388 system/repl/coop-server.scm
389
390 LIB_SOURCES = \
391 statprof.scm \
392 sxml/apply-templates.scm \
393 sxml/fold.scm \
394 sxml/match.scm \
395 sxml/simple.scm \
396 sxml/ssax/input-parse.scm \
397 sxml/ssax.scm \
398 sxml/transform.scm \
399 sxml/xpath.scm \
400 texinfo.scm \
401 texinfo/docbook.scm \
402 texinfo/html.scm \
403 texinfo/indexing.scm \
404 texinfo/string-utils.scm \
405 texinfo/plain-text.scm \
406 texinfo/reflection.scm \
407 texinfo/serialize.scm
408
409 WEB_SOURCES = \
410 web/client.scm \
411 web/http.scm \
412 web/request.scm \
413 web/response.scm \
414 web/server.scm \
415 web/server/http.scm \
416 web/uri.scm
417
418 EXTRA_DIST += oop/ChangeLog-2008
419
420 ELISP_SOURCES = \
421 language/elisp/boot.el
422
423 NOCOMP_SOURCES = \
424 ice-9/match.upstream.scm \
425 ice-9/psyntax.scm \
426 ice-9/r6rs-libraries.scm \
427 ice-9/quasisyntax.scm \
428 srfi/srfi-42/ec.scm \
429 srfi/srfi-64/testing.scm \
430 srfi/srfi-67/compare.scm \
431 system/base/lalr.upstream.scm \
432 system/repl/describe.scm \
433 sxml/sxml-match.ss \
434 sxml/upstream/SSAX.scm \
435 sxml/upstream/SXML-tree-trans.scm \
436 sxml/upstream/SXPath-old.scm \
437 sxml/upstream/assert.scm \
438 sxml/upstream/input-parse.scm