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

Last change on this file since 29977 was 29977, checked in by evhan, 8 years ago

r7rs: Add scheme.case-lambda library

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