source: project/release/4/r7rs/trunk/r7rs.setup

Last change on this file was 30990, checked in by evhan, 7 years ago

r7rs: bug fixes, type fixes, include expansion, vector-fill!, support code reorg

File size: 1.9 KB
Line 
1;; -*- Scheme -*-
2
3
4(use make srfi-1)
5
6(define scheme-modules
7  '("case-lambda" "char" "complex" "cxr" "eval" "file" "inexact" "lazy" "load" "process-context" "r5rs" "read" "repl" "time" "write"))
8
9(make (("r7rs-support.so" ("r7rs-support.scm")
10        (compile -s -O3 -d1 r7rs-support.scm -J)
11        (compile -s -O3 -d0 r7rs-support.import.scm))
12       ("r7rs-library.so" ("r7rs-library.scm")
13        (compile -s -O3 -d1 r7rs-library.scm -J)
14        (compile -s -O3 -d0 r7rs-library.import.scm))
15       ("r7rs-compile-time.so"
16        ("r7rs-compile-time.scm" "r7rs-compile-time-module.scm" "r7rs-library.so" "r7rs-support.so")
17        (compile -s -O3 -d1 r7rs-compile-time-module.scm -J -o r7rs-compile-time.so)
18        (compile -s -O3 -d0 r7rs-compile-time.import.scm))
19       ("scheme.base.so"
20        ("scheme.base.scm" "scheme.base-interface.scm" "r7rs-support.so")
21        (compile -s -O3 -d1 scheme.base.scm -J -emit-type-file scheme.base.types)
22        (compile -s -O3 -d0 scheme.base.import.scm)))
23  '("r7rs-compile-time.so" "scheme.base.so"))
24
25(for-each
26 (lambda (m)
27   (let* ((mname (string-append "scheme." m))
28          (so (string-append mname ".so"))
29          (scm (string-append mname ".scm")))
30     (make/proc (list (list so (list scm)
31                            (lambda ()
32                              (compile -s -O3 -d1 ,scm -J -emit-type-file ,(string-append mname ".types"))
33                              (compile -s -O3 -d0 ,(string-append mname ".import.scm")))))
34                (list so))))
35 scheme-modules)
36
37(make (("r7rs.so" ("r7rs.scm" "synrules.scm")
38        (compile -s -O3 -d0 r7rs.scm -J)
39        (compile -s -O3 -d0 r7rs.import.scm))))
40
41(install-extension
42 'r7rs
43 `("r7rs.so" "r7rs.import.so" 
44   "r7rs-support.so" "r7rs-support.import.so"
45   "r7rs-library.so" "r7rs-library.import.so"
46   "r7rs-compile-time.so" "r7rs-compile-time.import.so"
47   "scheme.base.so" "scheme.base.import.so" "scheme.base.types"
48   ,@(append-map
49      (lambda (mod)
50        (list (string-append "scheme." mod ".so")
51              (string-append "scheme." mod ".import.so")
52              (string-append "scheme." mod ".types")))
53      scheme-modules))
54 '((version "0.0.1")))
Note: See TracBrowser for help on using the repository browser.