scsh-make/packages.scm

78 lines
1.6 KiB
Scheme

(define-interface collect-channels-interface
(export make-tagged-msg
is-tagged-msg?
tagged-msg-tag
tagged-msg-stripped
collect&reply/make-channel
send&collect/make-channel
is-collect&reply-channel?
is-send&collect-channel?
make-link
collect&reply/receive
collect&reply/receive-rv
collect&reply/send
collect&reply/send-rv
send&collect/send
send&collect/send-rv
send&collect/receive
send&collect/receive-rv))
(define-structure collect-channels collect-channels-interface
(open scheme-with-scsh
finite-types
srfi-9
threads
threads-internal
(with-prefix rendezvous cml-rv/)
(with-prefix rendezvous-channels cml-sync-ch/))
(files collect-channels))
(define-interface make-rule-interface
(export make-rule
is-rule?
rule-prereqs
rule-wants-build?
rule-build-func
rule-make))
(define-structure make-rule make-rule-interface
(open scheme-with-scsh
locks
with-lock
threads
srfi-1
srfi-9
finite-types
collect-channels
(with-prefix rendezvous cml-rv/)
(with-prefix rendezvous-channels cml-sync-ch/))
(files make-rule))
(define-interface make-rule-no-cml-interface
(export make-rule
is-rule?
rule-prereqs
rule-wants-build?
rule-build-func
rule-make))
(define-structure make-rule-no-cml make-rule-no-cml-interface
(open scheme-with-scsh
locks
with-lock
srfi-1
srfi-9)
(files make-rule-no-cml))
(define-interface makros-interface
(export (make-is-out-of-date? :syntax)
(makefile :syntax)
(makefile-rule :syntax)
(make :syntax)))
(define-structure makros makros-interface
(open scheme-with-scsh
srfi-1
make-rule)
(files makros))