racket/collects/compiler/cm-accomplice.rkt
Matthew Flatt 06ffb74d66 compiler/cm-accomplice: add `register-external-module'
The new function allows declaration of a module dependency, as
opposed to a mere file dependency. Misuse of this function opens
the door to cyclic compilation dependencies, so we have to check
for that in `compiler/cm'.
2012-11-11 09:38:16 -07:00

18 lines
552 B
Racket

#lang racket/base
(provide register-external-file
register-external-module)
(define (register-external-file f)
(register-external 'register-external-file f #f))
(define (register-external-module f)
(register-external 'register-external-module f #t))
(define (register-external who f module?)
(unless (and (path? f) (complete-path? f))
(raise-type-error who "complete path" f))
(log-message (current-logger)
'info
(format "file dependency: ~s" f)
`#s(file-dependency ,f ,module?)))