adjust DrRacket to not compile files in installation's "share"

This rule supplements the old (but now less applicable) rule to
never add debugging-compiled files in the main installation's
"collects" directory.

Note that the new rule does not prevent compilation in
main-distribution packages that are linked, as in the development mode
set up by `make' in the Racet repository's top-level directory.
I think that's probably ok, since the intent of the check is mainly
just to not write to shared installation spaces, which shouldn't be
an issue for development mode.
This commit is contained in:
Matthew Flatt 2013-08-25 06:17:31 -06:00
parent 100cc0f84e
commit 94d61b9e96

View File

@ -84,9 +84,11 @@
(log-info "DrRacket: enabling bytecode-file compilation for package ~s" pkg)) (log-info "DrRacket: enabling bytecode-file compilation for package ~s" pkg))
(define skip-path? (define skip-path?
(let* ([cd (find-collects-dir)] (let* ([cd (find-collects-dir)]
[no-dirs (if cd [sd (find-share-dir)]
(list (CACHE-DIR) cd) [no-dirs (append
(list (CACHE-DIR)))]) (list (CACHE-DIR))
(if cd (list cd) null)
(if sd (list sd) null))])
(λ (p) (or (file-stamp-in-paths p no-dirs) (λ (p) (or (file-stamp-in-paths p no-dirs)
(let ([pkg (path->pkg p)]) (let ([pkg (path->pkg p)])
(and pkg (and pkg