diff options
author | Andy Wingo <wingo@pobox.com> | 2011-07-25 18:26:37 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2011-07-25 18:26:37 +0200 |
commit | ab4bc85398a14b62b58694bab83c63be286b2fd5 (patch) | |
tree | 84bfe7b0b6064016bcfadb76ec95d07410654fe8 /module/ice-9 | |
parent | f29c300507da21a667f5b82e75300f8009eab9cc (diff) | |
parent | f4b7d918eff9770f09893b023fd834f5c0bc33d1 (diff) | |
download | guile-ab4bc85398a14b62b58694bab83c63be286b2fd5.tar.gz |
Merge remote-tracking branch 'origin/stable-2.0'
Conflicts:
GUILE-VERSION
test-suite/tests/srfi-4.test
Diffstat (limited to 'module/ice-9')
-rw-r--r-- | module/ice-9/boot-9.scm | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm index 9c3a3e165..3bf492280 100644 --- a/module/ice-9/boot-9.scm +++ b/module/ice-9/boot-9.scm @@ -3414,6 +3414,15 @@ module '(ice-9 q) '(make-q q-length))}." '(#:warnings (unbound-variable arity-mismatch format))) (define* (load-in-vicinity dir path #:optional reader) + (define (canonical->suffix canon) + (cond + ((string-prefix? "/" canon) canon) + ((and (> (string-length canon) 2) + (eqv? (string-ref canon 1) #\:)) + ;; Paths like C:... transform to /C... + (string-append "/" (substring canon 0 1) (substring canon 2))) + (else canon))) + ;; Returns the .go file corresponding to `name'. Does not search load ;; paths, only the fallback path. If the .go file is missing or out of ;; date, and auto-compilation is enabled, will try auto-compilation, just @@ -3425,11 +3434,12 @@ module '(ice-9 q) '(make-q q-length))}." ;; partially duplicates functionality from (system base compile). ;; (define (compiled-file-name canon-path) + ;; FIXME: would probably be better just to append SHA1(canon-path) + ;; to the %compile-fallback-path, to avoid deep directory stats. (and %compile-fallback-path (string-append %compile-fallback-path - ;; no need for '/' separator here, canon-path is absolute - canon-path + (canonical->suffix canon-path) (cond ((or (null? %load-compiled-extensions) (string-null? (car %load-compiled-extensions))) (warn "invalid %load-compiled-extensions" |